diff --git a/tryton/gui/main.py b/tryton/gui/main.py index a59c1c2cee..02ddee461d 100644 --- a/tryton/gui/main.py +++ b/tryton/gui/main.py @@ -1119,6 +1119,14 @@ class Main(object): def sig_shortcuts(self, widget): Shortcuts(self.window).run() + def sig_reload_menu(self): + res = False + for page in range(len(self.pages)): + if self.pages[page].model == 'ir.ui.menu': + self.pages[page].sig_reload() + res = True + return res + def sig_win_menu(self, widget=None, quiet=True, prefs=None): for page in range(len(self.pages)): if self.pages[page].model == 'ir.ui.menu': diff --git a/tryton/gui/window/window.py b/tryton/gui/window/window.py index 32a0c6b813..df1723aae8 100644 --- a/tryton/gui/window/window.py +++ b/tryton/gui/window/window.py @@ -21,6 +21,9 @@ class Window(object): search_value=search_value) Main.get_main().win_add(win) elif view_type == 'tree': + if model == 'ir.ui.menu': + if Main.get_main().sig_reload_menu(): + return from tree import Tree win = Tree(model, window, res_id, view_ids and view_ids[0] or None, domain, context, name=name)