Matrix KAccounts Provider
(This is technically not entirely a NeoChat issue, but it's closely related and would need some work on NeoChat itself)
By having a KAccounts plugin for matrix account, we can unify the logins for NeoChat, Itinerary, other future KDE apps and potentially third-party software. Rough sketch:
- Write a KAccounts plugin for neochat that logs into the matrix account with some nice name like "Plasma Matrix Integration"
- Create some API between the kaccounts plugin and the application to make the plugin create an access token for the app using MSC3882.
- The plugin remembers, which clients were logged in by itself and presents them in a list, with the option of logging them out
- (Should clients be automatically logged out when the plugin account is logged out? that might not be possible in a reliable way)
- Setup E2EE using MSC3906
On NeoChat's side, we would:
- Present all Matrix KAccounts that are logged in, allowing the user to make one of them active
- Should all logged-in Matrix kaccounts automatically be loaded in NeoChat?
The client-side parts of this should be put... somewhere? KMatrix? so that we don't have to duplicate them