[gnome-screenshot/wip/exalm/cleanups: 3/6] interactive-dialog: Set menu model in xml



commit e45c2c67ea237e0ef17939edce44e43b0237e6e9
Author: Alexander Mikhaylenko <alexm gnome org>
Date:   Tue Mar 10 17:25:43 2020 +0500

    interactive-dialog: Set menu model in xml
    
    Merge screenshot-app-menu.ui into screenshot-interactive.ui and set it
    right there.

 data/gnome-screenshot.gresource.xml |  1 -
 data/ui/screenshot-app-menu.ui      | 14 --------------
 data/ui/screenshot-interactive.ui   | 13 +++++++++++++
 src/screenshot-interactive-dialog.c | 10 ----------
 4 files changed, 13 insertions(+), 25 deletions(-)
---
diff --git a/data/gnome-screenshot.gresource.xml b/data/gnome-screenshot.gresource.xml
index faa537c..566ebf3 100644
--- a/data/gnome-screenshot.gresource.xml
+++ b/data/gnome-screenshot.gresource.xml
@@ -4,7 +4,6 @@
     <file preprocess="xml-stripblanks">icons/display-symbolic.svg</file>
     <file preprocess="xml-stripblanks">icons/selection-symbolic.svg</file>
     <file preprocess="xml-stripblanks">icons/window-symbolic.svg</file>
-    <file preprocess="xml-stripblanks">ui/screenshot-app-menu.ui</file>
     <file preprocess="xml-stripblanks">ui/screenshot-interactive.ui</file>
     <file preprocess="xml-stripblanks">ui/screenshot-dialog.ui</file>
   </gresource>
diff --git a/data/ui/screenshot-interactive.ui b/data/ui/screenshot-interactive.ui
index ff91032..c72778c 100644
--- a/data/ui/screenshot-interactive.ui
+++ b/data/ui/screenshot-interactive.ui
@@ -406,6 +406,7 @@
             <property name="visible">True</property>
             <property name="can_focus">True</property>
             <property name="receives_default">True</property>
+            <property name="menu-model">primary_menu</property>
             <child>
               <object class="GtkImage">
                 <property name="visible">True</property>
@@ -422,4 +423,16 @@
       </object>
     </child>
   </object>
+  <menu id="primary_menu">
+    <section>
+      <item>
+        <attribute name="action">app.help</attribute>
+        <attribute name="label" translatable="yes">Help</attribute>
+      </item>
+      <item>
+        <attribute name="action">app.about</attribute>
+        <attribute name="label" translatable="yes">About Screenshot</attribute>
+      </item>
+    </section>
+  </menu>
 </interface>
diff --git a/src/screenshot-interactive-dialog.c b/src/screenshot-interactive-dialog.c
index b8ac750..ec52ca0 100644
--- a/src/screenshot-interactive-dialog.c
+++ b/src/screenshot-interactive-dialog.c
@@ -225,27 +225,17 @@ screenshot_interactive_dialog_new (CaptureClickedCallback f, gpointer user_data)
   ScreenshotApplication *self = user_data;
   GtkWidget *dialog;
   GtkWidget *capture_button;
-  GtkWidget *menu;
   GtkWidget *listbox;
-  GMenuModel *app_menu;
   GtkBuilder *ui;
   CaptureData *data;
-  guint res;
 
   ui = gtk_builder_new_from_resource ("/org/gnome/Screenshot/ui/screenshot-interactive.ui");
-  res = gtk_builder_add_from_resource (ui, "/org/gnome/Screenshot/ui/screenshot-app-menu.ui", NULL);
-  g_assert (res != 0);
 
   dialog = GTK_WIDGET (gtk_builder_get_object (ui, "screenshot_window"));
   gtk_window_set_application (GTK_WINDOW (dialog), GTK_APPLICATION (self));
 
   capture_button = GTK_WIDGET (gtk_builder_get_object (ui, "capture_button"));
 
-  menu = GTK_WIDGET (gtk_builder_get_object (ui, "menu"));
-  app_menu = G_MENU_MODEL (gtk_builder_get_object (ui, "app-menu"));
-
-  gtk_menu_button_set_menu_model (GTK_MENU_BUTTON (menu), app_menu);
-
   gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER);
 
   listbox = GTK_WIDGET (gtk_builder_get_object (ui, "listbox"));


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]