gnome-control-center/panels/printers/printers.ui
Felipe Borges f065f5005f printers: Allow undoing deletion of a printer
Instead of directly applying the deletion of a printer, we should
follow the GNOME in-app notification deletion guidelines.

This patch introduces the in-app notification following the HIG[0]
for the deletion of a printer. It allows to "undo" the deletion.

The default behavior for these notification is to dismiss a previous
notification. In doing so, when deleting multiple printers, the
"Undo" button only restores the last deleted one. We don't do batch/
bulk removal in the printers panel.

[0] https://developer.gnome.org/hig/stable/in-app-notifications.html.en

https://bugzilla.gnome.org/show_bug.cgi?id=693187
2017-05-26 13:16:39 +02:00

278 lines
9.9 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0"?>
<interface>
<requires lib="gtk+" version="3.12"/>
<!-- interface-naming-policy project-wide -->
<object class="GtkStack" id="headerbar-buttons">
<property name="visible">True</property>
<child>
<object class="GtkLockButton" id="lock-button">
<property name="visible">True</property>
</object>
<packing>
<property name="name">_lock</property>
</packing>
</child>
<child>
<object class="GtkButton" id="printer-add-button">
<property name="visible">True</property>
<property name="sensitive">True</property>
<property name="use_underline">True</property>
<property name="label" translatable="yes" comments="Translators: This button adds new printer.">Add…</property>
<style>
<class name="suggested-action"/>
</style>
</object>
<packing>
<property name="name">_addprinter</property>
</packing>
</child>
</object>
<object class="GtkToggleButton" id="search-button">
<property name="visible">True</property>
<property name="margin-end">6</property> <!-- since we don't have access to the shell header bar -->
<style>
<class name="image-button"/>
</style>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="icon_name">system-search-symbolic</property>
</object>
</child>
</object>
<object class="GtkOverlay" id="overlay">
<property name="visible">True</property>
<child type="overlay">
<object class="GtkRevealer" id="notification">
<property name="visible">True</property>
<property name="halign">GTK_ALIGN_CENTER</property>
<property name="valign">GTK_ALIGN_START</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="spacing">6</property>
<style>
<class name="app-notification"/>
</style>
<child>
<object class="GtkLabel" id="notification-label">
<property name="visible">True</property>
<property name="wrap">True</property>
<property name="max_width_chars">50</property>
</object>
</child>
<child>
<object class="GtkButton" id="notification-undo-button">
<property name="visible">True</property>
<property name="can_focus">True</property>
<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="visible">True</property>
<property name="valign">GTK_ALIGN_CENTER</property>
<style>
<class name="flat"/>
</style>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="icon_name">window-close-symbolic</property>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkStack" id="main-vbox">
<child>
<object class="GtkBox">
<property name="visible">True</property>
<child>
<object class="GtkSpinner" id="loading-spinner">
<property name="visible">True</property>
<property name="active">True</property>
<property name="expand">True</property>
</object>
</child>
</object>
<packing>
<property name="name">loading-page</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="orientation">GTK_ORIENTATION_VERTICAL</property>
<child>
<object class="GtkSearchBar" id="search-bar">
<property name="visible">True</property>
<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="visible">True</property>
<property name="width_chars">30</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="hscrollbar-policy">GTK_POLICY_NEVER</property>
<property name="min-content-height">490</property>
<child>
<object class="GtkListBox" id="content">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="selection-mode">GTK_SELECTION_NONE</property>
<style>
<class name="background"/>
</style>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="name">printers-list</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">10</property>
<property name="orientation">vertical</property>
<property name="valign">center</property>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="valign">start</property>
<property name="pixel_size">72</property>
<property name="icon_name">printer-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="margin_bottom">15</property>
<property name="label" translatable="yes">No printers</property>
<style>
<class name="dim-label"/>
</style>
<attributes>
<attribute name="scale" value="1.2"/>
</attributes>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton" id="printer-add-button2">
<property name="label" translatable="yes" comments="Translators: This button adds new printer.">Add a Printer…</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="halign">center</property>
<property name="relief">normal</property>
<style>
<class name="suggested-action"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="name">empty-state</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">10</property>
<property name="orientation">vertical</property>
<property name="valign">center</property>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes" comments="Translators: The CUPS server is not running (we can not connect to it).">Sorry! The system printing service
doesnt seem to be available.</property>
<style>
<class name="dim-label"/>
</style>
<attributes>
<attribute name="scale" value="1.2"/>
</attributes>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="valign">start</property>
<property name="pixel_size">72</property>
<property name="icon_name">computer-fail-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
</object>
<packing>
<property name="name">no-cups-page</property>
</packing>
</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>