diff --git a/gramps/gui/configure.py b/gramps/gui/configure.py index 352dd0b7d..0f5b17d0f 100644 --- a/gramps/gui/configure.py +++ b/gramps/gui/configure.py @@ -1325,7 +1325,8 @@ class GrampsPreferences(ConfigureDialog): if len(addon_update_list) > 0: try: - PluginWindows.UpdateAddons(self.uistate, [], addon_update_list) + PluginWindows.UpdateAddons(self.uistate, [], addon_update_list, + parent=self.window) except WindowActiveError: pass else: diff --git a/gramps/gui/plug/_windows.py b/gramps/gui/plug/_windows.py index c07b44a4f..9d9a098db 100644 --- a/gramps/gui/plug/_windows.py +++ b/gramps/gui/plug/_windows.py @@ -1070,7 +1070,7 @@ class ToolManagedWindow(tool.Tool, ToolManagedWindowBase): #------------------------------------------------------------------------- class UpdateAddons(ManagedWindow): - def __init__(self, uistate, track, addon_update_list): + def __init__(self, uistate, track, addon_update_list, parent=None): self.title = _('Available Gramps Updates for Addons') ManagedWindow.__init__(self, uistate, track, self.__class__) @@ -1079,9 +1079,9 @@ class UpdateAddons(ManagedWindow): self.set_window(self.update_dialog, glade.get_object('title'), self.title) self.window.set_size_request(750, 400) - - if win() and Gtk.get_minor_version() < 11: - self.window.set_transient_for(self.window.get_toplevel()) + + if win(): + self.window.set_transient_for(parent) apply_button = glade.get_object('apply') cancel_button = glade.get_object('cancel') diff --git a/gramps/gui/viewmanager.py b/gramps/gui/viewmanager.py index ee861e80f..a41876eff 100644 --- a/gramps/gui/viewmanager.py +++ b/gramps/gui/viewmanager.py @@ -344,7 +344,8 @@ class ViewManager(CLIManager): Called when add-on updates are available. """ try: - PluginWindows.UpdateAddons(self.uistate, [], addon_update_list) + PluginWindows.UpdateAddons(self.uistate, [], addon_update_list, + parent=self.window) except WindowActiveError: pass