diff options
| author | Christophe Simonis <chs@odoo.com> | 2019-02-11 12:47:52 +0100 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2019-02-11 12:47:52 +0100 |
| commit | 75eec26da39614b4749ae84e588af0a0b29ddaa0 (patch) | |
| tree | 075cfe4562bf5e0afd14001aa31287e73f49dfba /addons/web_editor/static/src/js | |
| parent | b6d62f8ce38774fcffd94ee8450ae570def8e900 (diff) | |
| parent | 728bb2a28ec84514e3fd63a3732822ed34c028a8 (diff) | |
[MERGE] forward port branch saas-11.3 up to 728bb2a28ec
Diffstat (limited to 'addons/web_editor/static/src/js')
| -rw-r--r-- | addons/web_editor/static/src/js/editor/snippets.editor.js | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/addons/web_editor/static/src/js/editor/snippets.editor.js b/addons/web_editor/static/src/js/editor/snippets.editor.js index 7ca077907a8..4a9e6cb91d6 100644 --- a/addons/web_editor/static/src/js/editor/snippets.editor.js +++ b/addons/web_editor/static/src/js/editor/snippets.editor.js @@ -665,6 +665,10 @@ var SnippetsMenu = Widget.extend({ class: 'oe_drop_zone oe_insert', }); + function isFullWidth($elem) { + return $elem.parent().width() === $elem.outerWidth(true); + } + if ($selectorChildren) { $selectorChildren.each(function () { var $zone = $(this); @@ -685,7 +689,10 @@ var SnippetsMenu = Widget.extend({ display: 'inline-block', }); } else if (float === 'left' || float === 'right' || (parentDisplay === 'flex' && parentFlex === 'row')) { - $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.children().last().outerHeight()), 30)); + $drop.css('float', float); + if (!isFullWidth($zone)) { + $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.children().last().outerHeight()), 30)); + } } $drop = $drop.clone(); @@ -700,7 +707,10 @@ var SnippetsMenu = Widget.extend({ display: 'inline-block' }); } else if (float === 'left' || float === 'right' || (parentDisplay === 'flex' && parentFlex === 'row')) { - $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.children().first().outerHeight()), 30)); + $drop.css('float', float); + if (!isFullWidth($zone)) { + $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.children().first().outerHeight()), 30)); + } } if (test) { $drop.css({'float': 'none', 'display': 'inline-block'}); @@ -724,14 +734,20 @@ var SnippetsMenu = Widget.extend({ if ($zone.prev('.oe_drop_zone:visible').length === 0) { $drop = zone_template.clone(); if (float === 'left' || float === 'right' || (parentDisplay === 'flex' && parentFlex === 'row')) { - $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.prev().outerHeight() || Infinity), 30)); + $drop.css('float', float); + if (!isFullWidth($zone)) { + $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.prev().outerHeight() || Infinity), 30)); + } } $zone.before($drop); } if ($zone.next('.oe_drop_zone:visible').length === 0) { $drop = zone_template.clone(); if (float === 'left' || float === 'right' || (parentDisplay === 'flex' && parentFlex === 'row')) { - $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.next().outerHeight() || Infinity), 30)); + $drop.css('float', float); + if (!isFullWidth($zone)) { + $drop.addClass('oe_vertical').css('height', Math.max(Math.min($zone.outerHeight(), $zone.next().outerHeight() || Infinity), 30)); + } } $zone.after($drop); } |
