From 860ed6142e5f6a35495d4467b1817300e9fb1b54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> Date: Tue, 31 Mar 2020 19:20:56 +0200 Subject: [PATCH] applet: Replace menu by a menu button --- data/ui/ppm.ui | 142 ++++++++++++++-------------------- src/prepaid-manager-applet.py | 11 ++- 2 files changed, 66 insertions(+), 87 deletions(-) diff --git a/data/ui/ppm.ui b/data/ui/ppm.ui index 2bd6054..33f1238 100644 --- a/data/ui/ppm.ui +++ b/data/ui/ppm.ui @@ -1,80 +1,57 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.22.2 --> <interface> <requires lib="gtk+" version="3.16"/> + <object class="GtkPopoverMenu" id="menu_main"> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="margin">10</property> + <child> + <object class="GtkModelButton"> + <property name="visible">True</property> + <property name="action-name">win.about</property> + <property name="text" translatable="yes">About PPM</property> + </object> + </child> + </object> + </child> + </object> <template class="PPMDialog" parent="GtkApplicationWindow"> <property name="can_focus">False</property> + <property name="show_menubar">False</property> <signal name="delete-event" handler="on_delete" swapped="no"/> - <child> - <object class="GtkBox" id="vbox_main"> + <child type="titlebar"> + <object class="GtkHeaderBar"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="orientation">vertical</property> + <property name="title" translatable="yes">Prepaid Manager</property> + <property name="show_close_button">True</property> <child> - <object class="GtkMenuBar" id="menubar1"> + <object class="GtkMenuButton"> <property name="visible">True</property> - <property name="can_focus">False</property> - <child> - <object class="GtkMenuItem" id="menu_item_file"> - <property name="use_action_appearance">False</property> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">_File</property> - <property name="use_underline">True</property> - <child type="submenu"> - <object class="GtkMenu" id="menu_file"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <child> - <object class="GtkImageMenuItem" id="menuitem_quit"> - <property name="label">gtk-quit</property> - <property name="use_action_appearance">False</property> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="use_underline">True</property> - <property name="use_stock">True</property> - <signal name="activate" handler="on_close_clicked" swapped="no"/> - </object> - </child> - </object> - </child> - </object> - </child> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="popover">menu_main</property> <child> - <object class="GtkMenuItem" id="menu_item_help"> - <property name="use_action_appearance">False</property> + <object class="GtkImage"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes">_Help</property> - <property name="use_underline">True</property> - <child type="submenu"> - <object class="GtkMenu" id="menu_help"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <child> - <object class="GtkImageMenuItem" id="imagemenuitem_about"> - <property name="label">gtk-about</property> - <property name="use_action_appearance">False</property> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="use_underline">True</property> - <property name="use_stock">True</property> - <signal name="activate" handler="on_about_activated" swapped="no"/> - </object> - </child> - </object> - </child> + <property name="icon_name">open-menu-symbolic</property> </object> </child> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="pack_type">end</property> </packing> </child> - <child> - <placeholder/> - </child> + </object> + </child> + <child> + <object class="GtkBox" id="vbox_main"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> <child> <object class="GtkNotebook" id="notebook1"> <property name="visible">True</property> @@ -87,6 +64,9 @@ <property name="n_columns">3</property> <property name="column_spacing">4</property> <property name="row_spacing">4</property> + <child> + <placeholder/> + </child> <child> <object class="GtkLabel" id="label_provider"> <property name="visible">True</property> @@ -94,8 +74,8 @@ <property name="label" translatable="yes">Provider:</property> </object> <packing> - <property name="x_options"></property> - <property name="y_options"></property> + <property name="x_options"/> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -112,7 +92,7 @@ <packing> <property name="left_attach">1</property> <property name="right_attach">2</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -127,14 +107,13 @@ <property name="has_tooltip">True</property> <property name="tooltip_markup" translatable="yes">Change provider</property> <property name="tooltip_text" translatable="yes">Change provider</property> - <property name="use_action_appearance">False</property> <signal name="clicked" handler="on_provider_change_clicked" swapped="no"/> </object> <packing> <property name="left_attach">2</property> <property name="right_attach">3</property> <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -147,8 +126,8 @@ <packing> <property name="top_attach">1</property> <property name="bottom_attach">2</property> - <property name="x_options"></property> - <property name="y_options"></property> + <property name="x_options"/> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -163,7 +142,7 @@ <property name="right_attach">2</property> <property name="top_attach">1</property> <property name="bottom_attach">2</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -183,7 +162,7 @@ <property name="right_attach">2</property> <property name="top_attach">2</property> <property name="bottom_attach">3</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -198,7 +177,6 @@ <property name="has_tooltip">True</property> <property name="tooltip_markup" translatable="yes">Check your prepaid cards balance.</property> <property name="tooltip_text" translatable="yes">Check your prepaid cards balance.</property> - <property name="use_action_appearance">False</property> <signal name="clicked" handler="on_balance_info_renew_clicked" swapped="no"/> </object> <packing> @@ -207,14 +185,11 @@ <property name="top_attach">2</property> <property name="bottom_attach">3</property> <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> </child> - <child> - <placeholder/> - </child> </object> </child> <child type="tab"> @@ -242,8 +217,8 @@ <property name="label" translatable="yes">Provider:</property> </object> <packing> - <property name="x_options"></property> - <property name="y_options"></property> + <property name="x_options"/> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -260,7 +235,7 @@ <packing> <property name="left_attach">1</property> <property name="right_attach">2</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -272,14 +247,13 @@ <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">True</property> - <property name="use_action_appearance">False</property> <signal name="clicked" handler="on_provider_change_clicked" swapped="no"/> </object> <packing> <property name="left_attach">2</property> <property name="right_attach">3</property> <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -295,7 +269,6 @@ <property name="has_tooltip">True</property> <property name="tooltip_markup" translatable="yes">Top up your prepaid accounts balance</property> <property name="tooltip_text" translatable="yes">Top up your prepaid accounts balance</property> - <property name="use_action_appearance">False</property> <signal name="clicked" handler="on_balance_top_up_clicked" swapped="no"/> </object> <packing> @@ -304,7 +277,7 @@ <property name="top_attach">1</property> <property name="bottom_attach">2</property> <property name="x_options">GTK_FILL</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -317,7 +290,6 @@ <property name="tooltip_markup" translatable="yes">Enter code to top up credit to your prepaid card.</property> <property name="tooltip_text" translatable="yes">Enter code to top up credit to your prepaid card.</property> <property name="invisible_char">â—</property> - <property name="invisible_char_set">True</property> <property name="placeholder_text">01234567890123</property> <signal name="changed" handler="on_entry_code_insert" swapped="no"/> </object> @@ -326,7 +298,7 @@ <property name="right_attach">2</property> <property name="top_attach">1</property> <property name="bottom_attach">2</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -340,8 +312,8 @@ <packing> <property name="top_attach">1</property> <property name="bottom_attach">2</property> - <property name="x_options"></property> - <property name="y_options"></property> + <property name="x_options"/> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -355,7 +327,7 @@ <property name="right_attach">3</property> <property name="top_attach">2</property> <property name="bottom_attach">3</property> - <property name="y_options"></property> + <property name="y_options"/> <property name="x_padding">5</property> <property name="y_padding">5</property> </packing> @@ -379,7 +351,7 @@ </child> </object> <packing> - <property name="expand">False</property> + <property name="expand">True</property> <property name="fill">True</property> <property name="pack_type">end</property> <property name="position">2</property> diff --git a/src/prepaid-manager-applet.py b/src/prepaid-manager-applet.py index eec3966..1c0b79c 100755 --- a/src/prepaid-manager-applet.py +++ b/src/prepaid-manager-applet.py @@ -349,6 +349,13 @@ class PPMDialog(Gtk.ApplicationWindow): self._init_infobars() self._init_subdialogs() + def _add_actions(self): + action = Gio.SimpleAction(name='about') + action.set_enabled(True) + action.connect('activate', self.on_about_activated, None) + + self.add_action(action) + def __init__(self, controller): Gtk.ApplicationWindow.__init__(self) self.code_len = 0 @@ -356,6 +363,7 @@ class PPMDialog(Gtk.ApplicationWindow): # Register ourself to the controller self.controller.view = self + self._add_actions() self._setup_ui() self.show() @@ -385,8 +393,7 @@ class PPMDialog(Gtk.ApplicationWindow): self.clear_top_up_information() self.controller.top_up_balance() - @Gtk.Template.Callback("on_about_activated") - def on_about_activated(self, dummy): + def on_about_activated(self, *argv): self.about_dialog.run() self.about_dialog.hide() -- GitLab