Commit Graph

1199 Commits

Author SHA1 Message Date
ippo615
3e2024b3f3 Fixed Issue #462
When image filters were being applied they were cached or buffered in
`filterCanvas`. It seemed like image would be drawn multiple times (ie
calling `layer.draw()` would cause the `drawFunc` to run about 2 to 4 times).
Each time it ran it would draw on top of the cached `filterCanvas`. The
non-zero alpha values accumulated until they reached 255, effectively
removing the alpha-channel.

To fix it, I create a new `filterCanvas` everytime. I don't check for or
use the previous `filterCanvas`. I haven't notice other issues by removing
it.
2013-08-23 21:55:11 -04:00
jfollas
dd306dc7fd Update presentation-schedule.md 2013-08-22 08:18:38 -04:00
Eric Rowell
ec81250637 Merge pull request #552 from ElliotChong/patch-1
Fixes #543 - mouseout should fire before mouseover
2013-08-16 15:41:53 -07:00
Eric Rowell
e8c27254ef promoted to v4.6.1 2013-08-14 04:39:02 -07:00
Eric Rowell
a7666eee39 rearranged some tests 2013-08-12 20:15:36 -07:00
Eric Rowell
2cf0a690f9 fixed up dd regression 2013-08-12 03:00:08 -07:00
Eric Rowell
355c80088f resolved some more merge issues 2013-08-11 22:02:49 -07:00
Eric Rowell
a4172088f1 resolving conflicts 2013-08-11 21:36:18 -07:00
Eric Rowell
d49ae15207 getStage() result is now cached. refactored caching system even further. 2013-08-11 20:34:54 -07:00
ippo615
08abb22072 Fixed broken filters. Improved documentation comments.
I tried to use imageData to speed up the transfer of pixel data. The
modified image would appear "behind" (ie obscured by) the original. I
manually copy the array of pixel data.
2013-08-11 22:20:39 -04:00
Eric Rowell
8654391de4 deprecated the clipFunc method. replaced it with clip, which has an x, y, width, and height 2013-08-10 22:00:29 -07:00
Eric Rowell
64d6c79a6a moved factory logic out of Node.js to Factory.js 2013-08-10 21:11:34 -07:00
Eric Rowell
db98fec243 added new crop methods 2013-08-10 20:30:25 -07:00
Eric Rowell
b8e3f10d3a getVisible returns the visible attr. isVisible takes ancestors into account. getListening returns listening attr. isListening takes ancestors into account. added unit tests. 2013-08-10 16:19:33 -07:00
Eric Rowell
12ed500570 updated tests 2013-08-10 14:30:17 -07:00
Eric Rowell
35db1f7a8b improved transform caching 2013-08-10 14:19:53 -07:00
Eric Rowell
0d6b8bdd79 fixed drag and drop regression by busting the transform cache inside the clearTransform method 2013-08-10 13:59:31 -07:00
Eric Rowell
1c51d65a93 caching system now relies on attr change events to clear the appropriate cache attrs 2013-08-10 13:04:02 -07:00
Eric Rowell
6f078dc127 now caching absolute opacity 2013-08-10 11:55:52 -07:00
Eric Rowell
86bd4ddfa9 reworked caching system 2013-08-10 11:24:24 -07:00
Eric Rowell
d902e6dca0 absolute transforms are now cached 2013-08-10 00:58:53 -07:00
Eric Rowell
a0a2d9a676 visible attr is now cacheable 2013-08-09 23:00:35 -07:00
Eric Rowell
41dea5300a reworked _getCache implementation 2013-08-09 22:31:25 -07:00
Eric Rowell
3933568b45 implemented _getCache() method which every getter will use to try and get/set cached attrs 2013-08-09 22:23:27 -07:00
Eric Rowell
cb5cb66256 started setting up new caching system 2013-08-09 21:09:06 -07:00
Eric Rowell
7700ecc70b draw events no longer bubble. It was causing too much of a performance hit, and didn't provide a whole lot of value. Now, only layers fire draw events 2013-08-09 20:22:51 -07:00
Elliot Chong
3f2e7b88be Fixing issue #543 - mouseout should fire before mouseover
A mouseout event for the current node should be fired before another node fires its mouseover event.
2013-08-06 20:35:44 -07:00
ippo615
d355b1fe97 Improved performance of convolution filters.
Previously, I would work with a regular array and compute/store/copy
to/from that array. It should be faster to create an imageData object,
create the convolution result in that object and finally:
`context.putImageData(result)`.
2013-08-04 14:34:56 -04:00
ippo615
e631eff6b4 Cleaned convolve pack, separated filter tests.
I removed the ability to do a convolution with a 1D matrix because I was
using all 2D matrices. I also cleaned up some unused variables and filters.

I took the entire group of tests dealing with image filters and put them
into `filterTests.html` and `filterTests.js`. I removed them from
`visualTests.js`.
2013-08-04 14:02:17 -04:00
Eric Rowell
992be5dd2e promoted version to 4.6.0 for next release 2013-07-28 17:29:58 -07:00
Eric Rowell
44cc127922 fixed up Ellipse docs 2013-07-28 17:28:56 -07:00
Eric Rowell
4cd658a1f1 mousemove should fire before mouseout 2013-07-28 01:01:39 -07:00
Eric Rowell
966c690966 stage.draw() was triggering two canvas clears 2013-07-28 00:31:44 -07:00
Eric Rowell
a3da0211d8 fixed blob regression bug. added unit test for setTension() 2013-07-28 00:03:56 -07:00
Eric Rowell
7e660d0587 added beta task runner, and updated README 2013-07-27 23:26:06 -07:00
Eric Rowell
e5c52a92f0 updated build process. dev version no longer pulls the version number from the package.json file. It instead always uses dev. Also set some things up for -beta build support 2013-07-27 21:09:33 -07:00
Eric Rowell
57a9313a7b all kinetic specific listeners now have the kinetic namespace. off no longer removes listeners with a kinetic namespace, unless you force remove it via .kinetic 2013-07-24 22:56:21 -07:00
Eric Rowell
7a1b854a12 #291 added unit test for creating a blob via json who has the tension defined before the points array 2013-07-24 21:57:45 -07:00
ippo615
27ea8ce3e4 Made convolution filters tweenable.
Unsharp mask, soft blur, sharpen, emboss, edge detect are now "tweenable";
however, I think I need to tweak the convolution matricies. At 0 there
should be no effect applied which corresponds to a matrix with just a
`1` in the middle (ie [...1...]). If the `filterAmount` is small then
the matrix is all near 0's causing the image to 'flash black'. If I always
add a 1 in the middle then the images become too bright...
2013-07-23 21:07:56 -04:00
ippo615
46eff4dec5 Made convolutions tileable, added test for tweening hue shift. 2013-07-23 19:10:52 -04:00
Eric Rowell
e65b975a6a did further refactoring of event flag handling in stage 2013-07-23 11:42:38 -07:00
Eric Rowell
4f8bd0bd3f fixed #357 and did a lot of event refactoring 2013-07-23 11:39:44 -07:00
Eric Rowell
06a8e42bee fixed up functional tests 2013-07-23 11:15:04 -07:00
Eric Rowell
85c99c1bb9 fixes 400 2013-07-23 10:47:06 -07:00
Eric Rowell
3eea92d72e added validation for add(). An error is thrown if an invalid node is added 2013-07-22 22:47:13 -07:00
Eric Rowell
1fc57bed4c removed createAttrs method and cleaned up init logic 2013-07-22 22:05:21 -07:00
Eric Rowell
37a15817b5 removed setDrawFuncs dependency from leaf node classes. It's handled in Shape now 2013-07-22 21:49:30 -07:00
Eric Rowell
9324c366ea standardized init method names with underscores 2013-07-22 21:41:41 -07:00
ippo615
4d3575ecea Renamed some files. Removed lighten and darken.
Renamed Colors.js to ColorPack.js and Colvolution.js to ConvolvePack.js.
Also removed convolution based 'lighten' and 'darken' (from the code
and the tests).
2013-07-22 22:53:04 -04:00
Eric Rowell
ecdd5cc59a new stage batchDraw() method. draw events are now triggered on drawScene() as well as draw() 2013-07-21 23:41:05 -07:00