summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/views/abstract_renderer.js2
-rw-r--r--addons/web/static/src/js/views/abstract_renderer_owl.js2
-rw-r--r--addons/web/static/src/js/views/abstract_view.js16
-rw-r--r--addons/web/static/src/js/widgets/pie_chart.js1
4 files changed, 16 insertions, 5 deletions
diff --git a/addons/web/static/src/js/views/abstract_renderer.js b/addons/web/static/src/js/views/abstract_renderer.js
index e1ae3fe5370..b1e30ca29bd 100644
--- a/addons/web/static/src/js/views/abstract_renderer.js
+++ b/addons/web/static/src/js/views/abstract_renderer.js
@@ -161,7 +161,7 @@ return mvc.Renderer.extend({
* @see sampleDataTargets
*/
_suppressFocusableElements() {
- if (!this.state.isSample) {
+ if (!this.state.isSample || this.isEmbedded) {
return;
}
const rootEls = [];
diff --git a/addons/web/static/src/js/views/abstract_renderer_owl.js b/addons/web/static/src/js/views/abstract_renderer_owl.js
index 78e0c097854..0c97159e294 100644
--- a/addons/web/static/src/js/views/abstract_renderer_owl.js
+++ b/addons/web/static/src/js/views/abstract_renderer_owl.js
@@ -41,7 +41,7 @@ odoo.define('web.AbstractRendererOwl', function () {
* @see sampleDataTargets
*/
_suppressFocusableElements() {
- if (!this.props.isSample) {
+ if (!this.props.isSample || this.props.isEmbedded) {
const disabledEls = this.el.querySelectorAll(`.o_sample_data_disabled`);
disabledEls.forEach(el => el.classList.remove('o_sample_data_disabled'));
return;
diff --git a/addons/web/static/src/js/views/abstract_view.js b/addons/web/static/src/js/views/abstract_view.js
index 96767858f79..ae572739c4e 100644
--- a/addons/web/static/src/js/views/abstract_view.js
+++ b/addons/web/static/src/js/views/abstract_view.js
@@ -95,6 +95,7 @@ var AbstractView = Factory.extend({
* @param {Array[]} [params.searchQuery.domain=[]]
* @param {string[]} [params.searchQuery.groupBy=[]]
* @param {Object} [params.userContext={}]
+ * @param {boolean} [params.useSampleModel]
* @param {boolean} [params.withControlPanel=AbstractView.prototype.withControlPanel]
* @param {boolean} [params.withSearchPanel=AbstractView.prototype.withSearchPanel]
*/
@@ -159,12 +160,16 @@ var AbstractView = Factory.extend({
res_ids: controllerState.resIds || params.ids || (currentId ? [currentId] : undefined),
};
+ const useSampleModel = 'useSampleModel' in params ?
+ params.useSampleModel :
+ !!(this.arch.attrs.sample && JSON.parse(this.arch.attrs.sample));
+
this.modelParams = {
fields: this.fields,
modelName: params.modelName,
- useSampleModel: !!(this.arch.attrs.sample && JSON.parse(this.arch.attrs.sample))
+ useSampleModel,
};
- if (this.modelParams.useSampleModel) {
+ if (useSampleModel) {
this.modelParams.SampleModel = this.config.Model;
}
@@ -354,13 +359,14 @@ var AbstractView = Factory.extend({
* @param {string} [action.name]
* @param {string} [action.res_model]
* @param {string} [action.target]
+ * @param {boolean} [action.useSampleModel]
* @returns {Object}
*/
_extractParamsFromAction: function (action) {
action = action || {};
var context = action.context || {};
var inline = action.target === 'inline';
- return {
+ const params = {
actionId: action.id || false,
actionViews: action.views || [],
activateDefaultFavorite: !context.active_id && !context.active_ids,
@@ -378,6 +384,10 @@ var AbstractView = Factory.extend({
withSearchBar: inline ? false : this.withSearchBar,
withSearchPanel: this.withSearchPanel,
};
+ if ('useSampleModel' in action) {
+ params.useSampleModel = action.useSampleModel;
+ }
+ return params;
},
/**
* Processes a fieldsView. In particular, parses its arch.
diff --git a/addons/web/static/src/js/widgets/pie_chart.js b/addons/web/static/src/js/widgets/pie_chart.js
index 7cfc3fdacce..f4254ff3501 100644
--- a/addons/web/static/src/js/widgets/pie_chart.js
+++ b/addons/web/static/src/js/widgets/pie_chart.js
@@ -45,6 +45,7 @@ var PieChart = Widget.extend({
withControlPanel: false,
withSearchPanel: false,
isEmbedded: true,
+ useSampleModel: record.isSample,
mode: 'pie',
};
this.subViewParams.searchQuery = {