General Application Structure Ideas
I have some basic ideas for the structure for the main view.
Basically, we have 2 (template) widgets in a leaflet:
- FrctlSidebar, which could be a listview hooked up to models for the room list
- FrctlContent, which would have a GtkStack. This stack would have the views from this mockup: Teams/Design/app-mockups@8015639c (specifically, Notifications, Explore, and chat)
The chat view would be a GtkListView in a AdwClampScrollable bound to a model of messages. The backend would then update the respective models, and the UI will be updated based on that.
For media we can use GtkPicture and GtkVideo in a rounded container. The right click menu should also be much easier to set up, as we can use popovers attached to messages.
All custom widgets should be templates instead of being built in the UI or as regular UI files.