diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 17:57:27 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 17:57:27 +0000 |
commit | 6f0f7d1b40a8fa8d46a2d6f4317600001cdbbb18 (patch) | |
tree | d423850ae901365e582137bdf2b5cbdffd7ca266 /src/gs-shell.ui | |
parent | Initial commit. (diff) | |
download | gnome-software-6f0f7d1b40a8fa8d46a2d6f4317600001cdbbb18.tar.xz gnome-software-6f0f7d1b40a8fa8d46a2d6f4317600001cdbbb18.zip |
Adding upstream version 43.5.upstream/43.5upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/gs-shell.ui')
-rw-r--r-- | src/gs-shell.ui | 521 |
1 files changed, 521 insertions, 0 deletions
diff --git a/src/gs-shell.ui b/src/gs-shell.ui new file mode 100644 index 0000000..52e4a43 --- /dev/null +++ b/src/gs-shell.ui @@ -0,0 +1,521 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <requires lib="gtk+" version="3.10"/> + <requires lib="handy" version="1.0"/> + <menu id="primary_menu"> + <item> + <attribute name="label" translatable="yes">_Software Repositories</attribute> + <attribute name="action">app.sources</attribute> + <attribute name="hidden-when">action-disabled</attribute> + </item> + <item> + <attribute name="label" translatable="yes">_Update Preferences</attribute> + <attribute name="action">app.prefs</attribute> + </item> + </menu> + + <template class="GsShell" parent="AdwApplicationWindow"> + <property name="visible">False</property> + <property name="default-width">1200</property> + <property name="default-height">800</property> + <property name="title" translatable="yes">Software</property> + <property name="icon_name">org.gnome.Software</property> + <signal name="map" handler="gs_shell_main_window_mapped_cb"/> + <signal name="realize" handler="gs_shell_main_window_realized_cb"/> + <signal name="close-request" handler="main_window_closed_cb"/> + <child> + <object class="GtkEventControllerKey"> + <property name="propagation-phase">capture</property> + <signal name="key-pressed" handler="window_keypress_handler"/> + </object> + </child> + <child> + <object class="GtkEventControllerKey"> + <signal name="key-pressed" handler="window_key_pressed_cb"/> + </object> + </child> + <child> + <object class="GtkGestureClick"> + <!-- Mouse hardware back button --> + <property name="button">8</property> + <signal name="pressed" handler="window_button_pressed_cb"/> + </object> + </child> + <child> + <object class="AdwViewStack" id="stack_loading"> + <property name="width-request">360</property> + <signal name="notify::visible-child" handler="stack_notify_visible_child_cb"/> + <child> + <object class="AdwViewStackPage"> + <property name="name">main</property> + <property name="child"> + <object class="GtkOverlay" id="overlay"> + <property name="halign">fill</property> + <property name="valign">fill</property> + <property name="vexpand">True</property> + <signal name="get-child-position" handler="overlay_get_child_position_cb"/> + <child type="overlay"> + <object class="GtkRevealer" id="notification_event"> + <property name="halign">GTK_ALIGN_CENTER</property> + <property name="valign">GTK_ALIGN_START</property> + <child> + <object class="GtkBox"> + <property name="orientation">horizontal</property> + <property name="spacing">6</property> + <style> + <class name="app-notification"/> + </style> + <child> + <object class="GtkLabel" id="label_events"> + <property name="halign">fill</property> + <property name="hexpand">True</property> + <property name="label">Some Title</property> + <property name="wrap">True</property> + <property name="wrap_mode">word-char</property> + <property name="max_width_chars">60</property> + <property name="margin_start">9</property> + <property name="margin_end">9</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + <child> + <object class="GtkBox"> + <child> + <object class="GtkButton" id="button_events_sources"> + <property name="visible">False</property> + <property name="label" translatable="yes" comments="button in the info bar">Software Repositories</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="valign">center</property> + <signal name="clicked" handler="gs_shell_plugin_events_sources_cb"/> + </object> + </child> + <child> + <object class="GtkButton" id="button_events_no_space"> + <property name="visible">False</property> + <property name="label" translatable="yes" comments="button in the info bar">Examine Disk</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="valign">center</property> + <signal name="clicked" handler="gs_shell_plugin_events_no_space_cb"/> + </object> + </child> + <child> + <object class="GtkButton" id="button_events_network_settings"> + <property name="visible">False</property> + <property name="label" translatable="yes" comments="button in the info bar">Network Settings</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="valign">center</property> + <signal name="clicked" handler="gs_shell_plugin_events_network_settings_cb"/> + </object> + </child> + <child> + <object class="GtkButton" id="button_events_restart_required"> + <property name="visible">False</property> + <property name="label" translatable="yes" comments="button in the info bar">Restart Now</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="valign">center</property> + <signal name="clicked" handler="gs_shell_plugin_events_restart_required_cb"/> + </object> + </child> + <child> + <object class="GtkButton" id="button_events_more_info"> + <property name="visible">False</property> + <property name="label" translatable="yes" comments="button in the info bar">More Information</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="valign">center</property> + <signal name="clicked" handler="gs_shell_plugin_events_more_info_cb"/> + </object> + </child> + </object> + </child> + <child> + <object class="GtkButton" id="button_events_dismiss"> + <property name="halign">end</property> + <property name="valign">start</property> + <signal name="clicked" handler="gs_shell_plugin_event_dismissed_cb"/> + <style> + <class name="flat"/> + </style> + <child> + <object class="GtkImage"> + <property name="icon_name">window-close-symbolic</property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="AdwLeaflet" id="details_leaflet"> + <property name="can-navigate-back">True</property> + <property name="can-unfold">False</property> + <signal name="notify::visible-child" handler="stack_notify_visible_child_cb"/> + + + <child> + <object class="AdwLeafletPage"> + <property name="name">main</property> + <property name="child"> + <object class="AdwLeaflet" id="main_leaflet"> + <property name="can-navigate-back">True</property> + <property name="can-unfold">False</property> + <signal name="notify::visible-child" handler="stack_notify_visible_child_cb"/> + + <child> + <object class="AdwLeafletPage"> + <property name="name">main</property> + <property name="child"> + <object class="GtkBox" id="main_box"> + <property name="orientation">vertical</property> + <child> + <object class="AdwHeaderBar" id="main_header"> + <property name="hexpand">True</property> + <property name="show-end-title-buttons">True</property> + <property name="centering-policy">strict</property> + <child type="start"> + <object class="GtkToggleButton" id="search_button"> + <property name="can_focus">True</property> + <property name="icon_name">edit-find-symbolic</property> + <property name="active" bind-source="search_bar" bind-property="search-mode-enabled" bind-flags="sync-create|bidirectional"/> + <accessibility> + <property name="label" translatable="yes">Search</property> + </accessibility> + <style> + <class name="image-button"/> + </style> + </object> + </child> + <child type="end"> + <object class="GtkMenuButton" id="menu_button"> + <property name="can_focus">True</property> + <property name="sensitive">True</property> + <property name="primary">True</property> + <property name="icon_name">open-menu-symbolic</property> + <property name="menu_model">primary_menu</property> + <accessibility> + <property name="label" translatable="yes">Primary Menu</property> + </accessibility> + <style> + <class name="image-button"/> + </style> + </object> + </child> + <child type="title"> + <object class="AdwViewSwitcherTitle" id="title_switcher"> + <property name="stack">stack_main</property> + <property name="title" bind-source="GsShell" bind-property="title" bind-flags="sync-create"/> + </object> + </child> + </object> + </child> + + <child> + <object class="GtkSearchBar" id="search_bar"> + <property name="key-capture-widget">GsShell</property> + <signal name="notify::search-mode-enabled" handler="search_bar_search_mode_enabled_changed_cb"/> + <child> + <object class="AdwClamp"> + <property name="hexpand">True</property> + <property name="maximum_size">500</property> + <property name="tightening_threshold">500</property> + <child> + <object class="GtkSearchEntry" id="entry_search"> + <property name="can_focus">True</property> + <property name="activates_default">True</property> + <signal name="search-changed" handler="search_changed_handler"/> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkInfoBar" id="metered_updates_bar"> + <property name="message-type">GTK_MESSAGE_INFO</property> + <property name="show-close-button">False</property> + <property name="revealed">False</property> + <signal name="response" handler="gs_shell_metered_updates_bar_response_cb"/> + <child> + <object class="GtkBox"> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <property name="margin_top">6</property> + <property name="margin_start">6</property> + <property name="margin_bottom">6</property> + <child> + <object class="GtkLabel"> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Automatic Updates Paused</property> + <property name="vexpand">True</property> + <property name="xalign">0.0</property> + <property name="wrap">True</property> + <attributes> + <attribute name="weight" value="PANGO_WEIGHT_BOLD"/> + </attributes> + </object> + </child> + </object> + </child> + <child type="action"> + <object class="GtkBox"> + <property name="margin_end">6</property> + <child> + <object class="GtkButton" id="metered_updates_button"> + <property name="can_focus">True</property> + <property name="use_underline">True</property> + <property name="label" translatable="yes">Find Out _More</property> + </object> + </child> + </object> + </child> + <action-widgets> + <action-widget response="GTK_RESPONSE_OK">metered_updates_button</action-widget> + </action-widgets> + </object> + </child> + <child> + <object class="AdwViewStack" id="stack_main"> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="hhomogeneous">False</property> + <property name="vhomogeneous">False</property> + <signal name="notify::visible-child" handler="stack_notify_visible_child_cb"/> + <child> + <object class="AdwViewStackPage"> + <property name="name">overview</property> + <property name="title" translatable="yes" comments="Translators: A label for a button to show all available software.">Explore</property> + <property name="icon-name">explore-symbolic</property> + <property name="child"> + <object class="GsOverviewPage" id="overview_page"> + </object> + </property> + </object> + </child> + <child> + <object class="AdwViewStackPage"> + <property name="name">installed</property> + <!-- FIXME: Add mnemonics support when it’s supported in GTK (same for the other pages). + See https://gitlab.gnome.org/GNOME/gtk/-/issues/3134 --> + <property name="title" translatable="yes" comments="Translators: A label for a button to show only software which is already installed." context="List of installed apps">Installed</property> + <property name="icon-name">app-installed-symbolic</property> + <property name="child"> + <object class="GsInstalledPage" id="installed_page"> + <property name="is-narrow" bind-source="GsShell" bind-property="is-narrow" bind-flags="sync-create"/> + </object> + </property> + </object> + </child> + <child> + <object class="AdwViewStackPage"> + <property name="name">search</property> + <property name="child"> + <object class="GsSearchPage" id="search_page"> + </object> + </property> + </object> + </child> + <child> + <object class="AdwViewStackPage"> + <property name="name">updates</property> + <property name="title" translatable="yes" comments="Translators: A label for a button to show only updates which are available to install." context="Header bar button for list of apps to be updated">Updates</property> + <property name="icon-name">emblem-synchronizing-symbolic</property> + <property name="badge-number" bind-source="updates_page" bind-property="counter" bind-flags="sync-create"/> + <property name="child"> + <object class="GsUpdatesPage" id="updates_page"> + <property name="is-narrow" bind-source="GsShell" bind-property="is-narrow" bind-flags="sync-create"/> + <signal name="notify::counter" handler="updates_page_notify_counter_cb"/> + </object> + </property> + </object> + </child> + </object> + </child> + <child> + <object class="AdwViewSwitcherBar" id="sidebar_switcher"> + <property name="reveal" bind-source="title_switcher" bind-property="title-visible" bind-flags="sync-create"/> + <property name="stack">stack_main</property> + </object> + </child> + </object> + </property> + </object> + </child> + + <child> + <object class="AdwLeafletPage"> + <property name="name">sub</property> + <property name="child"> + <object class="GtkBox" id="sub_box"> + <property name="orientation">vertical</property> + <child> + <object class="AdwHeaderBar" id="sub_header"> + <property name="show-end-title-buttons">True</property> + <property name="hexpand">True</property> + <child> + <object class="GtkButton" id="button_back"> + <property name="can_focus">True</property> + <signal name="clicked" handler="gs_shell_back_button_cb"/> + <accessibility> + <property name="label" translatable="yes">Go back</property> + </accessibility> + <style> + <class name="image-button"/> + </style> + <child> + <object class="GtkImage" id="back_image"> + <property name="icon_name">go-previous-symbolic</property> + <property name="icon-size">normal</property> + </object> + </child> + </object> + </child> + <child type="title"> + <object class="GtkLabel" id="sub_page_header_title"> + <property name="selectable">False</property> + <property name="ellipsize">end</property> + <style> + <class name="title"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="AdwViewStack" id="stack_sub"> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="hhomogeneous">False</property> + <property name="vhomogeneous">False</property> + <signal name="notify::visible-child" handler="stack_notify_visible_child_cb"/> + <child> + <object class="AdwViewStackPage"> + <property name="name">moderate</property> + <property name="child"> + <object class="GsModeratePage" id="moderate_page"> + </object> + </property> + </object> + </child> + <child> + <object class="AdwViewStackPage"> + <property name="name">category</property> + <property name="child"> + <object class="GsCategoryPage" id="category_page"> + <signal name="app-clicked" handler="category_page_app_clicked_cb"/> + </object> + </property> + </object> + </child> + <child> + <object class="AdwViewStackPage"> + <property name="name">extras</property> + <property name="child"> + <object class="GsExtrasPage" id="extras_page"> + </object> + </property> + </object> + </child> + </object> + </child> + </object> + </property> + </object> + </child> + + </object> + </property> + </object> + </child> + + <child> + <object class="AdwLeafletPage"> + <property name="name">details</property> + <property name="child"> + <object class="GtkBox" id="details_box"> + <property name="orientation">vertical</property> + <child> + <object class="AdwHeaderBar" id="details_header"> + <property name="hexpand">True</property> + <property name="show-end-title-buttons">True</property> + <property name="title-widget"> + <object class="AdwWindowTitle"> + <property name="title" bind-source="details_page" bind-property="title" bind-flags="sync-create"/> + </object> + </property> + <child> + <object class="GtkButton" id="button_back2"> + <property name="can_focus">True</property> + <signal name="clicked" handler="gs_shell_details_back_button_cb"/> + <accessibility> + <property name="label" translatable="yes">Go back</property> + </accessibility> + <style> + <class name="image-button"/> + </style> + <child> + <object class="GtkImage"> + <property name="icon_name">go-previous-symbolic</property> + <property name="icon-size">normal</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GsDetailsPage" id="details_page"> + <property name="is-narrow" bind-source="GsShell" bind-property="is-narrow" bind-flags="sync-create"/> + <signal name="metainfo-loaded" handler="gs_shell_details_page_metainfo_loaded_cb"/> + <signal name="app-clicked" handler="details_page_app_clicked_cb"/> + </object> + </child> + </object> + </property> + </object> + </child> + + </object> + </child> + </object> + </property> + </object> + </child> + <child> + <object class="AdwViewStackPage"> + <property name="name">loading</property> + <property name="child"> + <object class="GtkOverlay"> + <child type="overlay"> + <object class="GtkHeaderBar"> + <property name="show_title_buttons">True</property> + <property name="valign">start</property> + <style> + <class name="flat"/> + </style> + </object> + </child> + <child> + <object class="GtkWindowHandle"> + <child> + <object class="GsLoadingPage" id="loading_page"> + <signal name="refreshed" handler="initial_refresh_done"/> + </object> + </child> + </object> + </child> + </object> + </property> + </object> + </child> + </object> + </child> + </template> +</interface> |