also, I'm not comfortable with changing the counter both here and in ThreadUI (same for sendButton.disabled). I think only compose.js should have the responsibility to update sendButton stuff. Can you have a look to make this more consistent too? Maybe all "updateCounter" things should move here...