Jürg Lehni
aca3059814
Move color owner handling directly to Color class
...
There was already Color#_owner, now there is Color#_setter too
2019-06-09 18:01:42 +02:00
sasensi
06e0c43325
Fix change propagation with colors on groups
...
Closes #1152
2019-06-09 17:54:18 +02:00
Jürg Lehni
5d14559116
Fix linting error and some minor cleanup
2019-06-09 16:54:15 +02:00
sasensi
25f2a0e779
Fix drawing with compound-paths as clip-items
...
Closes #1361
2019-06-09 16:37:38 +02:00
sasensi
0eae0b6e4d
Prevent Item#importJSON() from overriding Item#insert()
...
Closes #1392
2019-06-09 16:28:20 +02:00
sasensi
eeb26436b0
Fix bounds error with nested empty items
...
Closes #1467
2019-06-09 16:10:54 +02:00
Jürg Lehni
1e2bbbdef2
Fix handling of native classes in tests again
...
Reverting breaking change in 10bdafa826
2019-06-09 14:34:32 +02:00
sasensi
4f282cec4b
Fix SVG imported gradients default values
...
Add default values based on SVG specification document.
Closes #1632
2019-06-09 14:01:34 +02:00
Jürg Lehni
10bdafa826
Simplify preserving of native classes in tests
2019-06-09 13:42:20 +02:00
sapics
c30767ed2e
Fix SvgExport when item.matrix is not invertible
2019-06-07 22:44:44 +02:00
Samuel Asensi
de824e1846
Fix exported SVG missing viewBox attribute ( #1576 )
...
SVG viewBox attribute was not added when bounds rectangle point was 0,0.
2019-06-07 22:30:01 +02:00
sasensi
314390d789
Improve new Raster(size[, position])
constructor
...
Closes #1621
2019-06-07 22:25:44 +02:00
Samuel Asensi
43ec699063
Fix path selection drawing with low handle size ( #1600 )
...
Closes #1327
2019-06-07 17:19:58 +02:00
Samuel Asensi
598d9a3356
Add SVG switch support ( #1597 )
...
SVG <switch> is simply parsed as a group because conditional attributes
cannot be evaluated in paper.js context.
Relates to #1389
2019-06-07 15:06:46 +02:00
Jürg Lehni
bcfc0eb413
Release version 0.12.1
2019-06-06 00:13:07 +02:00
Jürg Lehni
c1d14bf472
Fix spelling mistakes
2019-06-06 00:04:28 +02:00
Jürg Lehni
5e64b78e40
Minor comment fixes
2019-06-05 20:03:11 +02:00
Samuel Asensi
bdc311e99f
Fix node tests crash with node latest versions
2019-06-05 19:58:22 +02:00
Jürg Lehni
da137fa8e4
Use comparePixels() instead of compareCanvas()
2019-06-05 18:16:56 +02:00
Jürg Lehni
2cb55a839d
Update dependencies
2019-06-05 18:13:22 +02:00
Jürg Lehni
9cafb6d55f
Only set src attribute if it’s not empty
...
window.Image does not support clearing the attribute by setting it to null
2019-06-05 17:35:21 +02:00
Jürg Lehni
de36f39cbf
Fix Raster#clear() to propagate content change
2019-06-05 15:31:09 +02:00
Jürg Lehni
ea91efe810
Add Raster.clear() to clear associated canvas
2019-04-11 19:38:19 +02:00
Jürg Lehni
e436d44f14
Allow new Raster(size)
constructor
2019-04-11 19:38:19 +02:00
Jürg Lehni
fcfebdc43b
Include Raster.context accessor
2019-04-11 19:38:19 +02:00
sapics
be4199b6eb
Update copyright year to 2019
2018-12-27 16:13:01 +09:00
sapics
5904a288e7
Fix css color parse
2018-12-14 11:44:24 +01:00
sasensi
449c5c3e6d
Fix Tween#then()
documentation.
...
Bug introduced in 9c684091f4
: example
variable was renamed from `item` to `circle` in declaration but later
calls were still done with `item`.
2018-12-03 15:04:22 +01:00
sasensi
a7c2fb3ddf
Improve Color.random()
documentation.
2018-12-03 14:46:50 +01:00
sasensi
bbd65324bc
Add typescript definition generation
...
This add a gulp task (`gulp docs:typescript`) to automatically generate
a typescript definition for the library. This should solve the problem
of having an out of sync type definition when we change the API.
This task takes advantage of existing JSDoc parsing to generate a
temporary file which is later formatted through a mustache template to
generate the final definition. This definition is then tested by
compiling a typescript file that use it.
The generated definition is added to the `gulp zip` task in order to be
published along with the bundled library.
So 2 new dev-dependencies are added with this change: `mustache` and
`typescript` packages. Using node and mustache to generate the
definition instead of relying on existing templating system is
motivated by a better development experience, with easier debugging
possibilities... through the usage of more modern tools.
As a side note, support of "rest parameters" (when a parameter can be
present multiple times) is added to existing JSDoc parser in order to
support this pattern on typescript side (E.g. for `Color#set()` method
which accept any sequence of parameters that is supported by `Color`
constructors).
2018-12-03 14:41:47 +01:00
Jürg Lehni
a66391678e
Release version 0.12.0
2018-12-03 14:26:23 +01:00
Jürg Lehni
4a5f558057
Some minor tween example changes
2018-12-03 13:59:51 +01:00
Jürg Lehni
9c684091f4
Move Tween class to anim namespace + changes
...
- Change from item to object, as it can be used to tween any property on any object really
- Make _handleFrame() private
- Minor documentation tweaks
2018-12-03 12:51:31 +01:00
sasensi
a97382d1c5
Document tween update event as Tween#onUpdate
.
2018-12-03 09:44:37 +01:00
sasensi
6d411e9b7f
Add Tween documentation
2018-11-30 15:10:31 +01:00
sasensi
f2b6e67bcb
Fix Item#tweenFrom()
documentation example.
...
Example code was not matching example title.
2018-11-30 12:07:01 +01:00
sasensi
266cf365f5
Fix Item#tween()
documentation.
2018-11-30 11:50:10 +01:00
Jürg Lehni
e52a33b9cb
Fix linting errors
2018-11-29 14:10:08 +01:00
arnoson
684f504930
Implement tweening
2018-11-29 12:04:03 +01:00
Jürg Lehni
d46b6cbef4
Fix Emitter.once()
2018-11-28 11:40:17 +01:00
Jürg Lehni
b1705f628b
Fix typos
2018-11-21 11:58:22 +01:00
sasensi
a4a2fb7eef
Fix various documentation problems
...
- typos in comments
- wrong or missing types
- missing default values
2018-11-21 11:27:51 +01:00
sasensi
b363a5cc95
Remove Line from documentation
...
Line class was not displayed in online documentation but it was parsed
and a file was created for it because it lacked a @private JSDoc tag.
2018-11-21 11:21:51 +01:00
sasensi
dd2c15ac83
Add documentation for Color.random()
2018-11-21 11:18:02 +01:00
sapics
531479c0a0
Add param type in raster method
...
Add param type in Raster#getPixel and Raster#setPixel
2018-11-20 08:44:38 +09:00
sasensi
ef7beacd8b
Fix several return values documentation
2018-11-17 09:37:06 +01:00
sasensi
12731f2fd1
Fix typo in Raster#getCanvas documentation
2018-11-16 18:58:18 +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
d8f9eb8890
Replace http to https in comment
...
http://www.w3.org/TR/SVG/ * to https://www.w3.org/TR/SVG/ *
2018-11-14 11:24:04 +01:00
sapics
c219bb7345
Replace http to https in comment
2018-11-14 11:22:29 +01:00
Samuel Asensi
2968faad51
Fix empty image drawing ( #1605 )
...
Empty raster (for example coming from path with empty bound
rasterization, ...) drawing threw error.
This change prevent raster drawing in that case.
Closes #1320
2018-11-14 11:21:40 +01:00
sasensi
8202f78453
Fix typo in Color#convert documentation
2018-11-13 10:12:59 +01:00
sasensi
1462178799
Fix typo in Path(pathData) documentation
...
Empty parameter was resulting in `Path(pathData)` being documented as
`Path(, pathData)` with an empty first parameter.
2018-11-13 09:52:19 +01:00
sasensi
910aecb7e5
Fix CurveLocation#distance documentation
...
@see tag was pointing to an inherited method which is not compatible
with current jsdoc parser implementation.
Problem is resolved by making reference point to the parent class
owning the method.
2018-11-12 16:44:36 +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
0b52720bdf
Fix CompoundPath#lastSegment documentation
2018-11-12 16:27:23 +01:00
sasensi
6301aeb82d
Fix Raster#context documented type
2018-11-12 16:20:39 +01:00
sasensi
4f545d243b
Fix unexisting type Symbol
in documentation
2018-11-12 16:18:05 +01:00
sasensi
bb63310578
Fix CurveLocation#index documented type
2018-11-12 16:12:01 +01:00
sasensi
df109ab096
Fix typo in PathItem documentation
...
PathItem was misspelled PahtItem, breaking documentation links.
2018-11-12 16:08:04 +01:00
sasensi
d3f617b98e
Fix Path#divide() documentation
...
Divide operation was described as subtract & subtract instead of
subtract & intersect.
2018-11-09 14:24:04 +01:00
sasensi
2e75467fb4
Fix group selected bounds and position color
...
Group selected color was applied differently to its bounds and position
depending on whether it had children or not when selected color was set.
This resulted in an unpredictable behaviour from a user point of view.
To change that:
- When `item.setSelectedColor()` is called, value is now always stored
in `item._style._values`, independently from the fact that item has
children or not.
- An helper method `compareCanvas()` is added to the test suite to allow
comparing selection rendering of a known working case to a failing one.
Two provided callbacks are executed in a dedicated `<canvas>`/`Project`
context and both results are compared with `resemble.js`.
2018-11-06 11:26:12 +01:00
sasensi
c44f56d52f
Fix Rectangle documentation
...
Add missing return values in Rectangle boolean operations.
Closes #1399
2018-11-05 08:34:50 +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
bd70511b70
Add documentation for PaperScope#setup(size)
...
Documentation did not mention that a size can be passed as argument to
PaperScope#setup() and Project#initialize() for usage of paper.js in
web workers.
Closes #1412
2018-10-17 17:43:06 +02:00
Jürg Lehni
e5cedd3cef
Release version 0.11.8
2018-10-17 17:05:40 +02:00
Jürg Lehni
3cc3ce8f13
Release version 0.11.7
2018-10-17 16:56:58 +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
sapics
e3ed85e395
Fix error in single segment closed path flatten
2018-10-15 11:01:51 +02:00
sapics
623c554dfe
Remove PaperScript code from core version
2018-10-15 10:53:06 +02:00
sapics
3e15cf09c2
Trim space in jsdoc comment
2018-10-15 10:19:45 +02:00
Jürg Lehni
348886365a
Revert "Improve use of global matrix in selected position"
...
This reverts commit 91d3499191
.
2018-10-15 10:12:15 +02:00
Jürg Lehni
91d3499191
Improve use of global matrix in selected position
...
Relates to #1545
2018-10-14 23:12:03 +02:00
Takahiro Nishino
6f2d75442c
Improve color parsing for 4 characters hex code ( #1565 )
2018-10-14 21:44:22 +02:00
Samuel Asensi
54b20c0268
Improve global matrix cache invalidation performance ( #1563 )
2018-10-13 19:53:45 +02:00
Jürg Lehni
70e58162f0
PaperScript: Better deal with compile exceptions
2018-10-13 18:49:54 +02:00
Jürg Lehni
d6d5accd1a
Allow PaperScripts to export from their code
...
Supporting `export default`, named exports, as well as `module.exports`
2018-10-13 18:44:25 +02:00
Jürg Lehni
c41509479f
Use separate ChangeFlag for matrix changes
...
See https://github.com/paperjs/paper.js/pull/1552#issuecomment-429547010
2018-10-13 16:44:35 +02:00
Jürg Lehni
c5b822da79
Improve validity check for cached global matrix
...
Relates to #1552 , #1448
2018-10-13 16:32:53 +02:00
Samuel Asensi
8bef865892
Fix children global matrices are not cleared ( #1552 )
...
Between a parent transformation and next view update, children global
matrix was invalid, leading to wrong global coordinates calculation.
Closes #1448
2018-10-13 16:28:20 +02:00
Samuel Asensi
60f9d868a6
Fix Path#arcTo() do not pass by through point ( #1543 )
...
Closes #1477
2018-10-13 15:33:21 +02:00
Samuel Asensi
5cd1ca13c5
Fix item global matrix error ( #1562 )
...
Bug happen when item is drawn after an empty symbol that should be drawn
in a separate canvas context (partial opacity or special blend mode).
As bounds are empty, symbol drawing process is interrupted but its
global matrix is not removed from the stack.
Closes #1561
2018-10-13 14:41:38 +02:00
Jürg Lehni
5245436e36
Do not polute global scope with paper object
...
Closes #1544
2018-10-10 23:10:51 +02:00
Jürg Lehni
4c035ada36
Minor fixes in comments and tests.
2018-10-10 23:03:57 +02:00
Samuel Asensi
76d07892d1
Add Item#locked to documentation ( #1556 )
...
Closes #1436
2018-10-09 22:05:22 +02:00
Samuel Asensi
bca5480640
Fix first mouse drag event is emitted twice ( #1553 )
...
Closes #1447
2018-10-09 22:04:18 +02:00
Samuel Asensi
dfe4397a96
Improve hit test point documentation ( #1559 )
...
Specifies that hit test point should be provided in global coordinates
system.
Closes #1430
2018-10-09 21:44:04 +02:00
Samuel Asensi
c0abbe1459
Fix raster shadow is not drawn ( #1555 )
...
Closes #1437
2018-10-09 11:38:52 +02:00
Jürg Lehni
fd1a517e84
Improve hex Color parser
...
Addresses changes in #1469
2018-10-06 21:57:30 +02:00
sasensi
f7ce43a9e9
Fix item selected position with matrix not applied
...
Make sure selected position is drawn in global coordinates system
whether item is in a group or not and whether matrix is applied or not.
Correct a bug introduced in 34679614c0
.
2018-10-06 13:15:27 +02:00
PeterLazar
a8f78859cb
Add hexadecimal with alpha color parsing
...
Closes #1468
2018-10-05 20:14:20 +02:00
Jürg Lehni
f5366fb3cb
Some minor adjustments for #1530
2018-10-05 10:01:51 +02:00
Samuel Asensi
c235d6a917
Implement Curve#getTimesWithTangent()
...
and Path#getOffsetsWithTangent()
2018-10-05 09:44:42 +02:00
Jürg Lehni
47af603173
Support alpha channel in named CSS colors
...
Closes #1539
2018-10-04 17:26:48 +02:00
Jürg Lehni
28dec90a88
Wrap up Raster#smoothing feature
2018-10-03 19:01:02 +02:00
Jürg Lehni
144370169e
Merge pull request #1529 from sasensi/Fix_#1521_adding_raster.smoothing_property
...
Fix #1521 adding Raster.smoothing property
2018-10-03 18:38:01 +02:00
Jürg Lehni
6a278c040a
Minor clean-ups for the past few PRs
2018-10-03 18:21:26 +02:00