The empty state of the printer panel is not consistent with other panels of the GNOME Settings app. There are two empty states, either the system cannot connect to the printer service or there are no printers registered yet. To fix this issue, AdwStatusPage has been introduced for both cases, which takes care of the layout and reduces the amount of code needed to create these two pages. With this change, both empty states of the printer panel have the same look as other panels in their empty state.
194 lines
7 KiB
XML
194 lines
7 KiB
XML
<?xml version="1.0"?>
|
||
<interface>
|
||
<requires lib="gtk+" version="3.12"/>
|
||
<object class="GtkBox" id="top-right-buttons">
|
||
<property name="spacing">6</property>
|
||
<child>
|
||
<object class="GtkButton" id="printer-add-button">
|
||
<property name="sensitive">False</property>
|
||
<property name="use_underline">True</property>
|
||
<property name="label" translatable="yes" comments="Translators: This button adds new printer.">Add Printer…</property>
|
||
<style>
|
||
<class name="suggested-action"/>
|
||
</style>
|
||
</object>
|
||
</child>
|
||
<child>
|
||
<object class="GtkToggleButton" id="search-button">
|
||
<property name="margin-end">6</property> <!-- since we don't have access to the shell header bar -->
|
||
<property name="icon_name">edit-find-symbolic</property>
|
||
<style>
|
||
<class name="image-button"/>
|
||
</style>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
|
||
<object class="GtkOverlay" id="overlay">
|
||
<child type="overlay">
|
||
<object class="GtkRevealer" id="notification">
|
||
<property name="halign">GTK_ALIGN_CENTER</property>
|
||
<property name="valign">GTK_ALIGN_START</property>
|
||
<child>
|
||
<object class="GtkBox">
|
||
<property name="spacing">6</property>
|
||
<style>
|
||
<class name="app-notification"/>
|
||
</style>
|
||
<child>
|
||
<object class="GtkLabel" id="notification-label">
|
||
<property name="wrap">True</property>
|
||
<property name="max_width_chars">50</property>
|
||
</object>
|
||
</child>
|
||
<child>
|
||
<object class="GtkButton" id="notification-undo-button">
|
||
<property name="valign">GTK_ALIGN_CENTER</property>
|
||
<property name="label" translatable="yes" comments="Translators: This is the button which allows undoing the removal of the printer.">Undo</property>
|
||
</object>
|
||
</child>
|
||
<child>
|
||
<object class="GtkButton" id="notification-dismiss-button">
|
||
<property name="valign">GTK_ALIGN_CENTER</property>
|
||
<property name="icon_name">window-close-symbolic</property>
|
||
<style>
|
||
<class name="flat"/>
|
||
</style>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</child>
|
||
<child>
|
||
|
||
<object class="GtkBox">
|
||
<property name="orientation">GTK_ORIENTATION_VERTICAL</property>
|
||
<child>
|
||
<object class="CcPermissionInfobar" id="permission-infobar">
|
||
</object>
|
||
</child>
|
||
<child>
|
||
|
||
<object class="GtkStack" id="main-vbox">
|
||
<property name="hexpand">True</property>
|
||
<property name="vexpand">True</property>
|
||
|
||
<child>
|
||
<object class="GtkStackPage">
|
||
<property name="name">loading-page</property>
|
||
<property name="child">
|
||
<object class="GtkBox">
|
||
<child>
|
||
<object class="GtkSpinner" id="loading-spinner">
|
||
<property name="spinning">True</property>
|
||
<property name="hexpand">True</property>
|
||
<property name="vexpand">True</property>
|
||
<property name="halign">center</property>
|
||
<property name="valign">center</property>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</property>
|
||
</object>
|
||
</child>
|
||
|
||
<child>
|
||
<object class="GtkStackPage">
|
||
<property name="name">printers-list</property>
|
||
<property name="child">
|
||
<object class="GtkBox">
|
||
<property name="orientation">vertical</property>
|
||
<child>
|
||
<object class="GtkSearchBar" id="search-bar">
|
||
<property name="hexpand">True</property>
|
||
<property name="search_mode_enabled" bind-source="search-button" bind-property="active" bind-flags="bidirectional" />
|
||
<child>
|
||
<object class="GtkSearchEntry" id="search-entry">
|
||
<property name="width_chars">30</property>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</child>
|
||
<child>
|
||
<object class="GtkScrolledWindow" id="scrolled-window">
|
||
<property name="hscrollbar-policy">never</property>
|
||
<property name="min-content-height">490</property>
|
||
<property name="vexpand">True</property>
|
||
<child>
|
||
<object class="GtkBox">
|
||
<child>
|
||
<object class="GtkListBox" id="content">
|
||
<property name="selection-mode">GTK_SELECTION_NONE</property>
|
||
<property name="margin-top">32</property>
|
||
<property name="margin-bottom">32</property>
|
||
<style>
|
||
<class name="background"/>
|
||
</style>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</property>
|
||
</object>
|
||
</child>
|
||
|
||
<child>
|
||
<object class="GtkStackPage">
|
||
<property name="name">empty-state</property>
|
||
<property name="child">
|
||
<object class="AdwStatusPage">
|
||
<property name="icon_name">printer-symbolic</property>
|
||
<property name="title" translatable="yes">No Printers</property>
|
||
<child>
|
||
<object class="GtkButton" id="printer-add-button2">
|
||
<property name="label" translatable="yes" comments="Translators: This button adds a new printer.">Add Printer…</property>
|
||
<property name="receives_default">True</property>
|
||
<property name="halign">center</property>
|
||
<style>
|
||
<class name="suggested-action"/>
|
||
<class name="pill"/>
|
||
</style>
|
||
</object>
|
||
</child>
|
||
</object>
|
||
</property>
|
||
</object>
|
||
</child>
|
||
|
||
<child>
|
||
<object class="GtkStackPage">
|
||
<property name="name">no-cups-page</property>
|
||
<property name="child">
|
||
<object class="AdwStatusPage">
|
||
<property name="icon_name">computer-fail-symbolic</property>
|
||
<property name="title" translatable="yes" comments="Translators: Title if the CUPS server is not running (we can not connect to it).">No Print Service</property>
|
||
<property name="description" translatable="yes" comments="Translators: Description if the CUPS server is not running (we can not connect to it).">The system printing service doesn’t seem to be available.</property>
|
||
</object>
|
||
</property>
|
||
</object>
|
||
</child>
|
||
|
||
</object>
|
||
</child>
|
||
</object>
|
||
|
||
</child>
|
||
</object>
|
||
|
||
<object class="GtkSizeGroup" id="sizegroup1">
|
||
<widgets>
|
||
<widget name="back-button-1"/>
|
||
<widget name="back-spacer-label-1"/>
|
||
</widgets>
|
||
</object>
|
||
<object class="GtkSizeGroup" id="sizegroup2">
|
||
<widgets>
|
||
<widget name="back-button-2"/>
|
||
<widget name="back-spacer-label-2"/>
|
||
</widgets>
|
||
</object>
|
||
</interface>
|