Closed wfr closed 2 years ago
ChatWindow.qml:
onClosed: {
// If not also in combined window mode, clear chat history when closing
if (!uiSettings.data.combinedChatWindow)
chatPage.conversationModel.clear()
}
If the above is executed before the sent message is acknowledged, the following assertion is triggered:
ConversationModel.cpp:
void ConversationModel::messageAcknowledged(tego_message_id_t messageId, bool accepted)
{
auto row = this->indexOfOutgoingMessage(messageId);
Q_ASSERT(row >= 0);
@wfr thanks for the patch, I'll review and likely merge w/ the next release.
btw: your ricochet-irc project is neat, though I do somewhat question to decision to go through the shims in libtego_ui rather than through the libtego C API directly ^^; ( there is still the hidden qt dependency behind that C API but you know vOv )
btw: your ricochet-irc project is neat, though I do somewhat question to decision to go through the shims in libtego_ui rather than through the libtego C API directly ^^;
Thanks :) It was a good idea of yours to split Ricochet into libtego and the UI, and I concur, the irc fork should use libtego directly. It used to be based on the original Ricochet and the quickest way to forward-port it to R² was to plug into libtego_ui. I will work on it at some point.
( there is still the hidden qt dependency behind that C API but you know vOv )
libtego doesn't have many Qt GUI dependencies; it should be feasible to make it completely headless, e.g. by replacing QRegularExpressionValidator
. Should we open a ticket for this endeavor?
I'd be happy to review/merge patches, but my current dev focus (beyond some current grant work) is on redoing the entire libtego backend (see https://github.com/blueprint-freespeech/gosling for the authentication part).
The next backend will be in Rust (with a C FFI) and will not be backwards compatible with the Ricochet-Refresh 3 series.
When the user closes a chat window immediately after sending a message, the GUI crashes.
Version:
b0a274c07f0e8afd7b6727e3fe8428e1f9ad5249
(main)Steps to reproduce: