Nightly flatpak build STEPS TO REPRODUCE 1. Have an unverified session in NeoChat 2. Configure button in the footer > "Devices" page > Click "Verify this device" 3. Open Element, log in if needed 4. Click the prompt in Element to start verifying NeoChat 5. Tell it to verify with Emojis OBSERVED RESULT NeoChat's Session Verification window appears, but it's blank. After a minute or two, that window as well as the one in Element say that verification timed out. EXPECTED RESULT Some Emojis I can see, verification works ADDITIONAL INFORMATION The console log says this when the Session Verification window appears: qrc:/qt/qml/org/kde/neochat/qml/KeyVerificationDialog.qml:13:1: QML KeyVerificationDialog: Created graphical object was not placed in the graphics scene.
Created attachment 184267 [details] Empty Session Verification window
Closing as this is libQuotient's fault and I'll try to fix it upstream: https://github.com/quotient-im/libQuotient/pull/902
Git commit 83415d202a5f11947bc9de24ee44512ae175b10d by Joshua Goins. Committed on 20/08/2025 at 12:58. Pushed by redstrate into branch 'master'. Handle more states in KeyVerificationDialog We were specifically missing WAITINGFORKEY and WAITINGFORACCEPT, which does happen and could be delayed - resulting in a blank screen for a few seconds. M +24 -2 src/app/qml/KeyVerificationDialog.qml https://invent.kde.org/network/neochat/-/commit/83415d202a5f11947bc9de24ee44512ae175b10d
The proper fix is now merged in libQuotient dev, so the next Flatpak build should have it
Super great, thanks a ton!
Created attachment 184292 [details] Each one is still waiting for the other one Hmm, I just did a build of the Flatpak from source (which includes libquotient dev also built from source, can confirm it updated to https://github.com/quotient-im/libQuotient/commit/1b9abadf27003a499d7d638703dc7663b190c689) and I'm not seeing an improvement here. See attached screenshot, and also here are some logs from NeoChat: quotient.e2ee: Allocated 32 bytes of secure heap (requested 32 bytes), 1792 / 65536 bytes of secure heap used in total quotient.e2ee: Deallocated 32 bytes, 1760 / 65536 bytes of secure heap used quotient.e2ee: KeyVerificationSession state INCOMING -> WAITINGFORREADY quotient.e2ee: Starting device verification session towards "DXTZDGRUEQ" quotient.e2ee: Allocated 32 bytes of secure heap (requested 32 bytes), 1792 / 65536 bytes of secure heap used in total quotient.e2ee: Deallocated 32 bytes, 1760 / 65536 bytes of secure heap used quotient.e2ee: KeyVerificationSession state INCOMING -> WAITINGFORREADY quotient.e2ee: Starting device verification session towards "IQYGPVMIZY" quotient.e2ee: Allocated 32 bytes of secure heap (requested 32 bytes), 1792 / 65536 bytes of secure heap used in total quotient.e2ee: Deallocated 32 bytes, 1760 / 65536 bytes of secure heap used quotient.e2ee: KeyVerificationSession state INCOMING -> WAITINGFORREADY quotient.e2ee: Starting device verification session towards "SMIWRIBPYW" quotient.e2ee: Allocated 32 bytes of secure heap (requested 32 bytes), 1792 / 65536 bytes of secure heap used in total quotient.e2ee: Deallocated 32 bytes, 1760 / 65536 bytes of secure heap used quotient.e2ee: KeyVerificationSession state INCOMING -> WAITINGFORREADY quotient.e2ee: Starting device verification session towards "LCRGPORTVW" quotient.e2ee: Allocated 32 bytes of secure heap (requested 32 bytes), 1792 / 65536 bytes of secure heap used in total quotient.e2ee: Deallocated 32 bytes, 1760 / 65536 bytes of secure heap used quotient.e2ee: KeyVerificationSession state INCOMING -> WAITINGFORREADY quotient.e2ee: Starting device verification session towards "XCIEQJDFGR" quotient.e2ee: Consuming 1 to-device events quotient.e2ee: Allocated 32 bytes of secure heap (requested 32 bytes), 1792 / 65536 bytes of secure heap used in total quotient.e2ee: Deallocated 32 bytes, 1760 / 65536 bytes of secure heap used quotient.e2ee: Incoming device verification session from "FKTOLVNPGB" qrc:/qt/qml/org/kde/neochat/qml/KeyVerificationDialog.qml:13:1: QML KeyVerificationDialog: Created graphical object was not placed in the graphics scene. quotient.e2ee: KeyVerificationSession state INCOMING -> READY quotient.e2ee: KeyVerificationSession state READY -> WAITINGFORACCEPT
With today's nightly NeoChat build, Emoji verification is now working as expected.