remove usless code
update logging
add logs
add isEmpty to buffer
remove unused field
no key window for candidate window
add test case to show failure on double delete
better cleanup on close
update marked text using attar string
use properties
fix bug of delete character
catch error of passing unexpected string
restore composedString code