Florian Müllner
2c592059bc
extensions-app: Use property bindings in row
...
Now that extensions are represented as GObjects, we can update
the UI via property bindings instead of manually handling the
logic in the code.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3067 >
2023-12-21 15:24:23 +00:00
Florian Müllner
1f7ca2bf38
extensions-app: Bind actions' enabled properties
...
Most properties that determine the availability of an action are
not expected to change, but now that extensions are represented
as a GObject, we can just generically set up bindings for all
actions instead of explicitly tracking the properties that we
expect to change.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3067 >
2023-12-21 15:24:23 +00:00
Florian Müllner
198c7bbd9c
extensions-app: Turn Extension into a GObject
...
This makes the Extension class usable as item-type in models,
and allows us to use property bindings.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3067 >
2023-12-21 15:24:23 +00:00
Florian Müllner
f7ded3e509
extensions-app: Split out ExtensionManager
...
The extension handling is currently intertwined with the UI.
Splitting it out provides a clearer separation, and will allow
us to switch to a model-based UI later.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3067 >
2023-12-21 15:24:23 +00:00
Florian Müllner
3d070fdc6b
extensions-app: Move classes to their own files
...
Using a single source file is getting unwieldy, so start
splitting it up.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3067 >
2023-12-21 15:24:23 +00:00