Make GtkApplication suitable for applications with plugins
gnome-builder is a prototypical example here. It has many plugins that can add their own icons, theme fragments, actions, shortcuts and menu items.
Here is an unsorted list of things that were added in DzlApplication to support this:
- Make theme loading load theme fragments from <resource_path>/themes
- Needs a convention for file names to load. gnome-builder loads
<resource-path>/theme/<theme-variant>.css
falling back toshared.css
- Needs a convention for file names to load. gnome-builder loads
- An api to set compatible themes:
- gtk_css_provider_set_supported_themes (theme1, theme2,...)
- A way to add and remove resource paths for icons, menus and themes:
- GtkApplication::extra-resource-paths
- gtk_application_add/remove_extra_resource_path
- A way to set shortcuts in a more granular way (not just always active on the toplevel)
- A way to show shortcuts in model buttons
- A way to redefine shortcuts ("shortcut themes")
- Menu merging - this does not need new api, but it needs new conventions
Edited by Matthias Clasen