From a6abc1ea31319d23ca14763f6058784ae69b4830 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1s=20Touceda?= Date: Tue, 6 Aug 2013 14:45:21 -0300 Subject: Update hide/show menu text when visibility changes --- changes/bug_update_hideshow | 2 ++ src/leap/gui/mainwindow.py | 23 ++++++++++++++++------- 2 files changed, 18 insertions(+), 7 deletions(-) create mode 100644 changes/bug_update_hideshow diff --git a/changes/bug_update_hideshow b/changes/bug_update_hideshow new file mode 100644 index 00000000..6ebbaaf1 --- /dev/null +++ b/changes/bug_update_hideshow @@ -0,0 +1,2 @@ + o Update text from the tray menu based on the visibility of the + window. Fixes #3400. \ No newline at end of file diff --git a/src/leap/gui/mainwindow.py b/src/leap/gui/mainwindow.py index 87dd4f5c..72f86e09 100644 --- a/src/leap/gui/mainwindow.py +++ b/src/leap/gui/mainwindow.py @@ -580,13 +580,7 @@ class MainWindow(QtGui.QMainWindow): Displays the context menu from the tray icon """ - get_action = lambda visible: ( - self.tr("Show Main Window"), - self.tr("Hide Main Window"))[int(visible)] - - # set labels - visible = self.isVisible() - self._action_visible.setText(get_action(visible)) + self._update_hideshow_menu() context_menu = self._systray.contextMenu() if not IS_MAC: @@ -596,6 +590,19 @@ class MainWindow(QtGui.QMainWindow): # this works however. context_menu.exec_(self._systray.geometry().center()) + def _update_hideshow_menu(self): + """ + Updates the Hide/Show main window menu text based on the + visibility of the window. + """ + get_action = lambda visible: ( + self.tr("Show Main Window"), + self.tr("Hide Main Window"))[int(visible)] + + # set labels + visible = self.isVisible() + self._action_visible.setText(get_action(visible)) + def _toggle_visible(self): """ SLOT @@ -609,6 +616,8 @@ class MainWindow(QtGui.QMainWindow): else: self.hide() + self._update_hideshow_menu() + def _center_window(self): """ Centers the mainwindow based on the desktop geometry -- cgit v1.2.3