diff --git a/CHANGELOG.md b/CHANGELOG.md index acf69471..d65e4d0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ This project adheres to [Semantic Versioning](http://semver.org/). ## [new version][unreleased] +## [2.5.0][2018-10-24] + ### Added * New `anchorCornerRadius` for `Konva.Transformer` @@ -14,7 +16,7 @@ This project adheres to [Semantic Versioning](http://semver.org/). ### Changed -* ``dragstart` event behaviour is a bit changed. It will fire BEFORE actual position of a node is changed. +* `dragstart` event behavior is a bit changed. It will fire BEFORE actual position of a node is changed. ## [2.4.2][2018-10-12] diff --git a/konva.js b/konva.js index 0b2f36f4..7cd2a3da 100644 --- a/konva.js +++ b/konva.js @@ -2,7 +2,7 @@ * Konva JavaScript Framework v2.4.2 * http://konvajs.github.io/ * Licensed under the MIT - * Date: Mon Oct 22 2018 + * Date: Wed Oct 24 2018 * * Original work Copyright (C) 2011 - 2013 by Eric Rowell (KineticJS) * Modified work Copyright (C) 2014 - present by Anton Lavrenov (Konva) diff --git a/konva.min.js b/konva.min.js index e07652c8..a3b49981 100644 --- a/konva.min.js +++ b/konva.min.js @@ -2,7 +2,7 @@ * Konva JavaScript Framework v2.4.2 * http://konvajs.github.io/ * Licensed under the MIT - * Date: Mon Oct 22 2018 + * Date: Wed Oct 24 2018 * * Original work Copyright (C) 2011 - 2013 by Eric Rowell (KineticJS) * Modified work Copyright (C) 2014 - present by Anton Lavrenov (Konva) diff --git a/test/unit/shapes/Transformer-test.js b/test/unit/shapes/Transformer-test.js index 15e0b0a8..5e1c0981 100644 --- a/test/unit/shapes/Transformer-test.js +++ b/test/unit/shapes/Transformer-test.js @@ -753,6 +753,59 @@ suite('Transformer', function() { assert.equal(rect.height(), 100); }); + test.skip('test padding + keep ratio', function() { + var stage = addStage(); + var layer = new Konva.Layer(); + stage.add(layer); + + const rect = new Konva.Rect({ + x: 50, + y: 50, + width: 200, + height: 10, + fill: 'red' + }); + layer.add(rect); + + var tr = new Konva.Transformer({ + node: rect, + padding: 50, + keepRatio: true + }); + layer.add(tr); + layer.draw(); + + stage.simulateMouseDown({ + x: 200, + y: 150 + }); + var top = stage.content.getBoundingClientRect().top; + tr._handleMouseMove({ + target: tr.findOne('.bottom-right'), + clientX: 200, + clientY: 150 + top + }); + + // here is duplicate, because transformer is listening window events + tr._handleMouseUp({ + clientX: 200, + clientY: 150 + top + }); + stage.simulateMouseUp({ + x: 200, + y: 150 + }); + + layer.draw(); + + assert.equal(rect.x(), 50); + assert.equal(rect.y(), 50); + assert.equal(rect.width(), 100); + assert.equal(rect.height(), 50); + assert.equal(rect.scaleX(), 1); + assert.equal(rect.scaleY(), 1); + }); + test('can add padding with rotation', function() { var stage = addStage(); var layer = new Konva.Layer();