UI: avoid needless update of attribute value
UI: improve |showMessage| function

* avoid needless update to the same value
* stop setting attribute 'crop=end'. it's the default value
* restore the hidden status when a message is cleared