diff --git a/addons/website/static/src/js/jQuery.transfo.js b/addons/website/static/src/js/jQuery.transfo.js index 074f7a5653a..6c82bfdb285 100644 --- a/addons/website/static/src/js/jQuery.transfo.js +++ b/addons/website/static/src/js/jQuery.transfo.js @@ -197,6 +197,8 @@ OTHER DEALINGS IN THE SOFTWARE. transfo.active = { "type": type, + "scalex": transfo.settings.scalex, + "scaley": transfo.settings.scaley, "pageX": event.pageX, "pageY": event.pageY, "center": transfo.$center.offset(), @@ -257,16 +259,20 @@ OTHER DEALINGS IN THE SOFTWARE. var angle = settings.angle * rad; var dx = cdx*Math.cos(angle) - cdy*Math.sin(-angle); var dy = - cdx*Math.sin(angle) + cdy*Math.cos(-angle); - if (transfo.active.type.indexOf("t") != -1) { + if (transfo.active.type.indexOf("t") != -1 && transfo.active.scaley > 0 || + transfo.active.type.indexOf("b") != -1 && transfo.active.scaley < 0) { settings.scaley = dy / (settings.height/2); } - if (transfo.active.type.indexOf("b") != -1) { + if (transfo.active.type.indexOf("b") != -1 && transfo.active.scaley > 0 || + transfo.active.type.indexOf("t") != -1 && transfo.active.scaley < 0) { settings.scaley = - dy / (settings.height/2); } - if (transfo.active.type.indexOf("l") != -1) { + if (transfo.active.type.indexOf("l") != -1 && transfo.active.scalex > 0 || + transfo.active.type.indexOf("r") != -1 && transfo.active.scalex < 0) { settings.scalex = dx / (settings.width/2); } - if (transfo.active.type.indexOf("r") != -1) { + if (transfo.active.type.indexOf("r") != -1 && transfo.active.scalex > 0 || + transfo.active.type.indexOf("l") != -1 && transfo.active.scalex < 0) { settings.scalex = - dx / (settings.width/2); } if (settings.scaley > 0 && settings.scaley < 0.05) settings.scaley = 0.05; diff --git a/addons/website/static/src/js/website.snippets.editor.js b/addons/website/static/src/js/website.snippets.editor.js index 12c8d438a15..a6c387c73a0 100644 --- a/addons/website/static/src/js/website.snippets.editor.js +++ b/addons/website/static/src/js/website.snippets.editor.js @@ -743,6 +743,7 @@ this.set_active(); this.$el.find('li[data-value] a').on('mouseenter mouseleave click', _.bind(this._mouse, this)); + this.$el.not(':not([data-value])').find("a").on('mouseenter mouseleave click', _.bind(this._mouse, this)); this.$target.on('snippet-style-reset', _.bind(this.set_active, this)); this.start();