Commit graph

111 commits

Author SHA1 Message Date
Jürg Lehni
da137fa8e4 Use comparePixels() instead of compareCanvas() 2019-06-05 18:16:56 +02:00
sapics
be4199b6eb Update copyright year to 2019 2018-12-27 16:13:01 +09:00
Jürg Lehni
b1705f628b Fix typos 2018-11-21 11:58:22 +01:00
sapics
cfc5a912da Replace url to avoid redirection
Replace http://jonathanpuckey.com to https://puckey.studio
2018-11-14 11:24:32 +01:00
sapics
c219bb7345 Replace http to https in comment 2018-11-14 11:22:29 +01:00
sasensi
8b33eccd52 Fix beans documentation links
Several documentation "see also" links concerning beans were broken
because they were referenced as `ClassName#getProperty()` instead of
`ClassName#property`.
2018-11-12 16:38:34 +01:00
sasensi
8ce5cc97cc Minor code cleaning 2018-10-20 15:59:18 +02:00
sasensi
e9135589b1 Fix mousedrag error with in front items
When dragging item A behind item B, mousedrag event was emitted on
item B instead of mousemove.
Bug introduced in fbd5eeb
Closes #1465
2018-10-20 15:59:18 +02:00
sapics
f50a81e089 Minor code minifier
We can minify some codes which relate matrix.decompose(),
because matrix.decompose() must return non-null object
2018-10-20 15:14:41 +02:00
sasensi
3fd73f92f2 Minor code refactoring 2018-10-17 14:40:05 +02:00
sasensi
1bd67b2d9b Add mouse interaction tests
- Tests common mouse interactions scenarios to prevent regressions
when making changes. These tests are not run in node context.
- Prevent name collision between Javascript native classes and Paper.js
classes (Event and MouseEvent) by patching load.js.
- Uses a polyfill for MouseEvent which is missing in PhantomJS.
- Adds View._clearState() method and use it in tests to make sure that
each new test is started with a fresh state.
2018-10-17 14:40:05 +02:00
sasensi
c034ebf554 Refactor code to fit style rules 2018-10-02 19:20:12 +02:00
sasensi
54e1a0c1ef Fix: calling event.preventDefault() on not cancelable events produces errors 2018-10-02 10:31:49 +02:00
Jürg Lehni
fbd5eeb7ef Mouse Events: Fix item-based doubleclick events.
Closes #1316
2017-04-22 20:01:08 +02:00
Jürg Lehni
7dea96c6f2 Docs: Fix wrong @link references to bean properties. 2017-04-13 12:24:56 +02:00
Jürg Lehni
5c3e3ec34c Mouse Events: Improve mousedrag handling.
Relates to #1247, closes #1286
2017-03-19 16:15:34 +01:00
Jürg Lehni
e145b1d4c2 Mouse Events: Only handle dragItem if the hitItem responds to mousedrag events.
Closes #1247
2017-03-08 23:42:03 +01:00
Jürg Lehni
eceb99ea59 Clean up comments. 2016-12-31 13:32:59 +01:00
Jürg Lehni
79661c35e6 Some code cleanup in View#setViewSize() 2016-08-03 13:33:58 +02:00
Jürg Lehni
91371c1b47 Keep view.bounds in sync during 'resize' events.
Closes #1127
2016-08-03 13:08:08 +02:00
Jürg Lehni
fa3456341c Fix view flickering during window resizes.
Closes #1126
2016-08-01 17:10:00 +02:00
Jürg Lehni
f874b927bf Reflect View#zoom through matrix decomposition, and implement additional decomposed properties.
Closes #1107
2016-07-20 00:04:24 +02:00
Jürg Lehni
e539633852 Implement new and shorter segments array notation.
Supporting:

- Closing paths by including `true` as the last entry
- Nested segment arrays that can be passed to PathItem.create() and the CompoundPath constructor to create all sub-paths
2016-07-19 13:08:21 +02:00
Jürg Lehni
32d8c969fb Clean up handling of #_set(), #set() and #initialize()
Convention:

- #_set() is for actually setting properties, e.g. on Point, Size, so that derived classes can reuse other parts (e.g. SegmentPoint)
- #set() is a shortcut to #initialize() on all basic types, to offer the same amount of flexibility when setting values.
2016-07-18 20:11:01 +02:00
Jürg Lehni
e15de78347 Update JSHint and fix some some hinting errors. 2016-07-09 14:32:01 +02:00
Jürg Lehni
ab24f92373 Bring back accidentally removed hit-test optimization in event handling.
See comment.
2016-06-19 11:02:54 +02:00
Jürg Lehni
f97143d37d Fix jshint issue introduced by a03631f620 2016-06-17 00:50:06 +02:00
Jürg Lehni
a03631f620 Remove MouseEvent#target hitTest() getter magic again.
Relates to #995
2016-06-17 00:42:40 +02:00
Jürg Lehni
c378050783 Fix linting error. 2016-06-14 17:02:05 +02:00
Jürg Lehni
724bcb2e35 Make sure mouse events propagate to the view while their targets remain consistent.
Closes #995
2016-06-14 16:52:31 +02:00
Jürg Lehni
93e4d81645 Clean up previous fix for #1069 by better handling mouseenter / leave events. 2016-06-14 16:15:50 +02:00
Jürg Lehni
68be3f102e Prevent mousedown events from disturbing mousenter / mouseleave.
Closes #1069
2016-06-11 11:14:19 +02:00
Jürg Lehni
08bf7bfe60 Fix #995: Improve handling of event propagation on View and Item. 2016-02-26 15:13:49 +01:00
Jürg Lehni
b71e3a44d9 Fix #981: Make sure event.delta is always calculated correctly.
The first mousemove / mousedrag events wrongly received the delta from the last mouseup event.
2016-02-19 13:49:06 +01:00
Jürg Lehni
9f9222f416 List all supported events in event methods on View. 2016-02-14 23:04:48 +01:00
Jürg Lehni
06d6b5195b Do not cancel mousedrag events on stopPropagation()
Use preventDefault() instead.
Closes #952
2016-02-12 19:01:34 +01:00
Jürg Lehni
de9653ab45 Fix new exception in unit tests. 2016-02-09 10:07:28 +01:00
Jürg Lehni
da216aa581 Improve handling of view updates and detection of invisible documents.
Switch to the new HTML5 Page Visibility API.
2016-02-09 09:59:19 +01:00
Jürg Lehni
8fb7c41537 Implement support for web-workers.
Relates to #634, closes #582
2016-02-02 17:30:38 +01:00
Jürg Lehni
e7c4e3c990 Implement View#autoUpdate to control automatic updates.
Closes #921
2016-01-27 13:10:04 +01:00
Jürg Lehni
1e649362bd Fix issue in View#exportImage() 2016-01-27 12:51:02 +01:00
Jürg Lehni
b40ff49523 Add explanation about View#_itemEvents.native. 2016-01-27 12:17:38 +01:00
Jürg Lehni
5fa0810ca3 Streamline View#_countItemEvent() code a bit. 2016-01-27 12:15:00 +01:00
Jürg Lehni
0cfa83fc32 Make item-level mousedrag events work again. 2016-01-27 12:11:59 +01:00
Jürg Lehni
d92628a432 Make click and doubleclick events work on View. 2016-01-27 11:38:45 +01:00
Jürg Lehni
3276616f53 Introduce Item._itemHandlers to remove code redundancy. 2016-01-27 11:38:14 +01:00
Jürg Lehni
849688833e Implement key events on View.
Closes #896
2016-01-27 11:36:39 +01:00
Jürg Lehni
8391543115 Further improve Raster documentation. 2016-01-27 10:39:03 +01:00
Jürg Lehni
c5632d8a6a Improve documentation for event handlers on View and Item. 2016-01-27 10:27:14 +01:00
Jürg Lehni
52017340d2 Do not fire two subsequent mousedown events.
This should fix #922, but needs testing.
2016-01-27 09:53:09 +01:00