Recent mockups define a new interaction model for some panels (namely, Background and Applications), where contents of the panel show up in the sidebar. They assume the ability to set custom widgets in the sidebar, something that is not currently possible with Settings. We need to modify the sidebar architecture, and its interaction between the main window, in order implement them.
In order to add custom panel widgets in the sidebar, the need to be able to prototype the feature without actually writing whole new panels to do that arose. Having interactive tests where we can build minimal examples of the target feature, to then use it on real panels, is a desired workflow.
This merge request adds a new interactive test:
So far, 3 test panels were added:
- Dynamic panels: panel exercising the ability to show and hide itself at runtime.
- Header: panel that embeds a header widget.
- Static Initializer: panel that sets a static init function to run at startup.
The entirety of GNOME Settings is used in this test. The only difference is that it injects another panel vtable for the window to consume - everything else is already existing, mostly unmodified code. It even remembers the last test panel!