diff --git a/addons/web/static/src/js/framework/view.js b/addons/web/static/src/js/framework/view.js index e34a8f486ec..b234d02390f 100644 --- a/addons/web/static/src/js/framework/view.js +++ b/addons/web/static/src/js/framework/view.js @@ -16,10 +16,12 @@ var View = Widget.extend({ }, // name displayed in view switchers display_name: '', - /** - * Define a view type for each view to allow automatic call to fields_view_get. - */ + // define a view type for each view to allow automatic call to fields_view_get. view_type: undefined, + // used by views that need a searchview. + searchable: true, + // used by views that need a searchview but don't want it to be displayed. + searchview_hidden: false, // multi_record is used to distinguish views displaying a single record // (e.g. FormView) from those that display several records (e.g. ListView) multi_record: true, diff --git a/addons/web/static/src/js/view_manager.js b/addons/web/static/src/js/view_manager.js index bf2e5beb185..cd773dc0c76 100644 --- a/addons/web/static/src/js/view_manager.js +++ b/addons/web/static/src/js/view_manager.js @@ -183,7 +183,7 @@ var ViewManager = Widget.extend(ControlPanelMixin, { cp_content: _.extend({}, self.control_elements, view_control_elements), hidden: self.flags.headless, searchview: self.searchview, - search_view_hidden: view_controller.searchable === false, + search_view_hidden: view_controller.searchable === false || view_controller.searchview_hidden, }; self.update_control_panel(cp_status);