same here, it's better to keep a `ThreadListUI.onMessageReceived` and make it call whatever you want. It helps splitting correctly the responsability.

Moreover, I think you want to always call it now, so that the thread list is updated even if the user is not in the thread view.