extensions-app: Use AdwPreferencesPage and AdwPreferencesGroup
Give consistent styling and sizing to extensions lists. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1997>
This commit is contained in:
parent
1359cedc00
commit
ab5977713b
@ -89,7 +89,6 @@
|
|||||||
<child>
|
<child>
|
||||||
<object class="GtkLabel" id="descriptionLabel">
|
<object class="GtkLabel" id="descriptionLabel">
|
||||||
<property name="ellipsize">end</property>
|
<property name="ellipsize">end</property>
|
||||||
<property name="max-width-chars">60</property>
|
|
||||||
<property name="xalign">0</property>
|
<property name="xalign">0</property>
|
||||||
<property name="yalign">0</property>
|
<property name="yalign">0</property>
|
||||||
</object>
|
</object>
|
||||||
@ -171,7 +170,6 @@
|
|||||||
<property name="visible">False</property>
|
<property name="visible">False</property>
|
||||||
<property name="selectable">True</property>
|
<property name="selectable">True</property>
|
||||||
<property name="wrap">True</property>
|
<property name="wrap">True</property>
|
||||||
<property name="max-width-chars">60</property>
|
|
||||||
<property name="xalign">0</property>
|
<property name="xalign">0</property>
|
||||||
<layout>
|
<layout>
|
||||||
<property name="column">1</property>
|
<property name="column">1</property>
|
||||||
|
@ -124,65 +124,29 @@
|
|||||||
<object class="GtkStackPage">
|
<object class="GtkStackPage">
|
||||||
<property name="name">main</property>
|
<property name="name">main</property>
|
||||||
<property name="child">
|
<property name="child">
|
||||||
<object class="GtkScrolledWindow" id="scrolledWindow">
|
<object class="AdwPreferencesPage">
|
||||||
<property name="hscrollbar-policy">never</property>
|
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkViewport">
|
<object class="AdwPreferencesGroup" id="userGroup">
|
||||||
<property name="scroll-to-focus">True</property>
|
<property name="title" translatable="yes">Manually Installed</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox">
|
<object class="GtkListBox" id="userList">
|
||||||
<property name="orientation">vertical</property>
|
<property name="selection-mode">none</property>
|
||||||
<property name="halign">center</property>
|
<style>
|
||||||
<property name="margin-start">36</property>
|
<class name="content"/>
|
||||||
<property name="margin-end">36</property>
|
</style>
|
||||||
<property name="margin-top">36</property>
|
</object>
|
||||||
<property name="margin-bottom">36</property>
|
</child>
|
||||||
<property name="spacing">12</property>
|
</object>
|
||||||
<child>
|
</child>
|
||||||
<object class="GtkLabel">
|
<child>
|
||||||
<property name="visible"
|
<object class="AdwPreferencesGroup" id="systemGroup">
|
||||||
bind-source="userList"
|
<property name="title" translatable="yes">Built-In</property>
|
||||||
bind-property="visible"
|
<child>
|
||||||
bind-flags="sync-create"/>
|
<object class="GtkListBox" id="systemList">
|
||||||
<property name="halign">start</property>
|
<property name="selection-mode">none</property>
|
||||||
<property name="hexpand">True</property>
|
<style>
|
||||||
<property name="label" translatable="yes">Manually Installed</property>
|
<class name="content"/>
|
||||||
<style>
|
</style>
|
||||||
<class name="heading"/>
|
|
||||||
</style>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkListBox" id="userList">
|
|
||||||
<property name="selection-mode">none</property>
|
|
||||||
<property name="margin-bottom">24</property>
|
|
||||||
<style>
|
|
||||||
<class name="content"/>
|
|
||||||
</style>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkLabel">
|
|
||||||
<property name="visible"
|
|
||||||
bind-source="systemList"
|
|
||||||
bind-property="visible"
|
|
||||||
bind-flags="sync-create"/>
|
|
||||||
<property name="halign">start</property>
|
|
||||||
<property name="hexpand">True</property>
|
|
||||||
<property name="label" translatable="yes">Built-In</property>
|
|
||||||
<style>
|
|
||||||
<class name="heading"/>
|
|
||||||
</style>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkListBox" id="systemList">
|
|
||||||
<property name="selection-mode">none</property>
|
|
||||||
<style>
|
|
||||||
<class name="content"/>
|
|
||||||
</style>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
@ -74,10 +74,11 @@ var ExtensionsWindow = GObject.registerClass({
|
|||||||
GTypeName: 'ExtensionsWindow',
|
GTypeName: 'ExtensionsWindow',
|
||||||
Template: 'resource:///org/gnome/Extensions/ui/extensions-window.ui',
|
Template: 'resource:///org/gnome/Extensions/ui/extensions-window.ui',
|
||||||
InternalChildren: [
|
InternalChildren: [
|
||||||
|
'userGroup',
|
||||||
'userList',
|
'userList',
|
||||||
|
'systemGroup',
|
||||||
'systemList',
|
'systemList',
|
||||||
'mainStack',
|
'mainStack',
|
||||||
'scrolledWindow',
|
|
||||||
'searchBar',
|
'searchBar',
|
||||||
'searchButton',
|
'searchButton',
|
||||||
'searchEntry',
|
'searchEntry',
|
||||||
@ -316,10 +317,10 @@ var ExtensionsWindow = GObject.registerClass({
|
|||||||
}
|
}
|
||||||
|
|
||||||
_syncListVisibility() {
|
_syncListVisibility() {
|
||||||
this._userList.visible = [...this._userList].length > 1;
|
this._userGroup.visible = [...this._userList].length > 1;
|
||||||
this._systemList.visible = [...this._systemList].length > 1;
|
this._systemGroup.visible = [...this._systemList].length > 1;
|
||||||
|
|
||||||
if (this._userList.visible || this._systemList.visible)
|
if (this._userGroup.visible || this._systemGroup.visible)
|
||||||
this._mainStack.visible_child_name = 'main';
|
this._mainStack.visible_child_name = 'main';
|
||||||
else
|
else
|
||||||
this._mainStack.visible_child_name = 'placeholder';
|
this._mainStack.visible_child_name = 'placeholder';
|
||||||
|
Loading…
Reference in New Issue
Block a user