summaryrefslogtreecommitdiff
path: root/addons/web_editor/static/src/js/snippets.editor.js
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2016-09-03 23:57:57 +0200
committerChristophe Simonis <chs@odoo.com>2016-09-03 23:57:57 +0200
commit1a77d9d02a9cdfc13cb38a1f60a027310a278dce (patch)
treecd11d1fb7b0d171d740a0edcf5e0fe0669bdae5e /addons/web_editor/static/src/js/snippets.editor.js
parent6d9b4de9392a6bad605229401832db876885cdaf (diff)
parent476cb5a0902fefc528b9c472e4b1f14f0fdba47d (diff)
[MERGE] forward port branch saas-12 up to 476cb5a0
Diffstat (limited to 'addons/web_editor/static/src/js/snippets.editor.js')
-rw-r--r--addons/web_editor/static/src/js/snippets.editor.js15
1 files changed, 11 insertions, 4 deletions
diff --git a/addons/web_editor/static/src/js/snippets.editor.js b/addons/web_editor/static/src/js/snippets.editor.js
index 1549db18689..e4885593029 100644
--- a/addons/web_editor/static/src/js/snippets.editor.js
+++ b/addons/web_editor/static/src/js/snippets.editor.js
@@ -1082,28 +1082,35 @@ data.Editor = Class.extend({
var $style_button = this.$overlay.find(".oe_options");
var $ul = $style_button.find("ul:first");
var $headers = $ul.find(".dropdown-header:data(editor)");
- _.each($headers, function (el) {
+ _.each($headers, (function (el) {
var $el = $(el);
var styles = _.values($el.data("editor").styles);
if ($el.data("editor") !== this) {
styles = _.filter(styles, function (option) { return !option.preventChildPropagation; });
}
+
+ var count = 0;
_.each(_.sortBy(styles, "__order").reverse(), function (style) {
- do_action(style, $el);
+ if (do_action(style, $el)) {
+ count++;
+ }
});
- });
+ $el.toggleClass("hidden", count === 0);
+ }).bind(this));
// Activate the overlay
- $style_button.toggleClass("hidden", $ul.children(":not(.dropdown-header):not(.divider):not(.hidden)").length === 0);
+ $style_button.toggleClass("hidden", $ul.children(":not(.divider):not(.hidden)").length === 0);
this.$overlay.toggleClass("oe_active", !!focus);
function _do_action_focus(style, $dest) {
style.$el.insertAfter($dest);
style.on_focus();
+ return (style.$el.length > 0);
}
function _do_action_blur(style, $dest) {
style.$el.detach();
style.on_blur();
+ return false;
}
},
});