From 41dc5a6624e5c51261da233cd7b711ba58360698 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sun, 8 Jan 2023 20:29:30 +0100 Subject: [PATCH] Add domain on view of action window view based on action window model Closes #1565 --- trytond/trytond/ir/action.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/trytond/trytond/ir/action.py b/trytond/trytond/ir/action.py index dbf1e75072..646116e06f 100644 --- a/trytond/trytond/ir/action.py +++ b/trytond/trytond/ir/action.py @@ -962,10 +962,14 @@ class ActionActWindowView( sequence_ordered(), DeactivableMixin, ModelSQL, ModelView): "Action act window view" __name__ = 'ir.action.act_window.view' - view = fields.Many2One('ir.ui.view', 'View', required=True, - ondelete='CASCADE') + view = fields.Many2One( + 'ir.ui.view', "View", required=True, ondelete='CASCADE', + domain=[ + ('model', '=', Eval('model')), + ]) act_window = fields.Many2One('ir.action.act_window', 'Action', ondelete='CASCADE') + model = fields.Function(fields.Char("Model"), 'on_change_with_model') @classmethod def __register__(cls, module_name): @@ -976,6 +980,11 @@ class ActionActWindowView( # Migration from 5.0: remove required on sequence table.not_null_action('sequence', 'remove') + @fields.depends('act_window', '_parent_act_window.res_model') + def on_change_with_model(self, name=None): + if self.act_window: + return self.act_window.res_model + @classmethod def create(cls, vlist): pool = Pool()