[rhel7-branch][PATCH] Put spokes' windows into our windows group
Vratislav Podzimek
vpodzime at redhat.com
Mon Sep 8 15:11:40 UTC 2014
And use the window group to get the top-level window when asked for a lightbox.
This way we can use the global (singleton, if you prefer) window group to get
the current window to show lightbox over.
Related: rhbz#1073679
Signed-off-by: Vratislav Podzimek <vpodzime at redhat.com>
---
pyanaconda/ui/gui/__init__.py | 10 +++++-----
pyanaconda/ui/gui/hubs/__init__.py | 5 ++++-
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/pyanaconda/ui/gui/__init__.py b/pyanaconda/ui/gui/__init__.py
index 4df9426..c80833b 100644
--- a/pyanaconda/ui/gui/__init__.py
+++ b/pyanaconda/ui/gui/__init__.py
@@ -339,11 +339,11 @@ class GraphicalUserInterface(UserInterface):
from gi.repository import AnacondaWidgets
- # if there are no actions (not populated yet), we can do nothing
- if len(self._actions) > 0 and self._currentAction:
- lightbox = AnacondaWidgets.lb_show_over(self._currentAction.window)
- ANACONDA_WINDOW_GROUP.add_window(lightbox)
- window.main_window.set_transient_for(lightbox)
+ # show lightbox over the current top-level window
+ top_window = ANACONDA_WINDOW_GROUP.list_windows()[-1]
+ lightbox = AnacondaWidgets.lb_show_over(top_window)
+ ANACONDA_WINDOW_GROUP.add_window(lightbox)
+ window.main_window.set_transient_for(lightbox)
def _instantiateAction(self, actionClass):
from spokes import StandaloneSpoke
diff --git a/pyanaconda/ui/gui/hubs/__init__.py b/pyanaconda/ui/gui/hubs/__init__.py
index 3bec451..ec47707 100644
--- a/pyanaconda/ui/gui/hubs/__init__.py
+++ b/pyanaconda/ui/gui/hubs/__init__.py
@@ -30,7 +30,7 @@ from pyanaconda.i18n import _
from pyanaconda.product import distributionText
from pyanaconda.ui import common
-from pyanaconda.ui.gui import GUIObject
+from pyanaconda.ui.gui import GUIObject, ANACONDA_WINDOW_GROUP
from pyanaconda.ui.gui.categories import collect_categories
from pyanaconda.ui.gui.spokes import StandaloneSpoke, collect_spokes
from pyanaconda.ui.gui.utils import gtk_call_once
@@ -101,6 +101,9 @@ class Hub(GUIObject, common.Hub):
def _runSpoke(self, action):
from gi.repository import Gtk
+ # add the spoke's window to our window group
+ ANACONDA_WINDOW_GROUP.add_window(action.window)
+
# This duplicates code in widgets/src/BaseWindow.c, but we want to make sure
# maximize gets called every time a spoke is displayed to prevent the 25%
# UI from showing up.
--
1.9.3
More information about the anaconda-patches
mailing list