MainLogModel should also become a handler that calls ensureAndHandleTextChannel() when tapping on a conversation in the list and then it should operate with KTp::Conversation* objects.
The flow would then be - tap the conversation - ensureAndHandle() - display busy spinner - channel ready - enable the inputs.