forked from CreateJS/EaselJS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
VERSIONS.txt
468 lines (432 loc) · 24 KB
/
VERSIONS.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
Version NEXT [not yet released]
****************************************************************************************************
CRITICAL (may break existing content):
- Graphics.command now returns null after empty fill / stroke calls.
*****
OTHER:
- added Graphics.StrokeDash and Graphics.setStrokeDash()
- Graphics no longer appends redundant StrokeStyle commands
Version 0.8.0 [December 12, 2014]
****************************************************************************************************
CRITICAL (may break existing content):
- modified behaviour of SpriteSheetBuilder.addFrame setupFunction, setupParams & setupScope params
- removed the deprecated mousemove & mouseup events on MouseEvent
- removed Graphics.inject() in favour of Graphics.append()
- Sprite now properly displays the first frame of animations after calling gotoAndPlay() (thanks MannyC)
- Moved Ticker into the "createjs" package since it will be included with TweenJS in future releases.
- re-architected the class and inheritance model
- initialize methods removed, use MySuperClass_constructor instead
- helper methods: extend & promote (see the "Utility Methods" docs)
- property definitions are now instance level, and in the constructor (performance gains)
- the .constructor is now set correctly on all classes (thanks kaesve)
- renamed initialize on geom classes to "setValues()"
- removed secondary properties (visible, alpha, compositeOperation, shadow) and related functionality from Matrix2D
- added DisplayProps to hold these properties + a matrix instance
- Matrix2D was updated to be internally consistent with regards to matrix orientation
- Matrix2D transform methods (ex. translate, rotate) now behave as append instead of prepend operations
- renamed ColorMatrix.copyMatrix() to .copy() to reflect geom classes
*****
DEPRECATED (will be removed in a future version):
- Container.getNumChildren() in favour of Container.numChildren
- DisplayObject.getStage() in favour of DisplayObject.stage
- Graphics.getInstructions() in favour of Graphics.instructions
- MovieClip.getLabels() in favour of MovieClip.labels
- MovieClip.getCurrentLabel() in favour of MovieClip.currentLabel
- SpriteSheet.getAnimations() in favour of SpriteSheet.animations
- Ticker.getInterval() in favour of Ticker.interval
- Ticker.getFPS() in favour of Ticker.framerate
- Ticker.getPaused() / setPaused() in favour of Ticker.paused
***********
PERFORMANCE:
- added performance tests to extras
- significant performance improvements:
- vector graphics (especially in Graphics instances with large numbers of instructions)
- filters (thanks pfirpfel & quasimondo) (~2-4x faster)
- overall display list performance (~2x faster)
- display object property access (~2x faster)
- tick event propagation (~3x faster)
*****
OTHER:
- replaced a number of get/set methods with getter / setters. See the DEPRECATED section above for a list.
- added setupFunction, setupData, labelFunction to SpriteSheetBuilder.addMovieClip
- added SpriteStage & SpriteContainer for WebGL rendering
- changes to how BitmapText works to support WebGL
- added WebGL examples
- added .visible to Matrix2D for use by DOMElement
- updates to how DisplayObject.snapToPixel & Stage.snapToPixelEnabled interact
- major improvements to Stage.nextStage to better handle layered canvases
- ButtonHelper now sets mouseChildren to false, and reverts to default cursor when disabled
- fixed issue introduced in 0.7.1 where getObjectsUnderPoint ignore elements without mouse listeners
- doc updates
- fixed example formatting in docs
- simplified handling of custom data passed into Stage.update()
- display object tick events will now include delta, time, paused, and runTime properties if a Ticker tick event object is passed as the first param to Stage.update()
- added Stage.tick()
- added Event.set()
- added MovieClip.framerate and support for time based movieclips
- Added Bower support, including grunt task for automatically updating bower.json
- fixed an issue with Ticker.reset()
- Ticker.getTime()/getEventTime() now return -1 if the Ticker has not been initialized
- preventDefault support added to the tickstart and drawstart events
- added Stage.drawRect to support selective rendering
- major rewrite of Graphics to use specific command objects
- added Graphics.getInstructions()
- added Text.getMetrics()
- fix for Text.getMeasuredWidth() when no font or an invalid font is specified
- fix for spritesheets that included 0 width/height frames
- the CreateJS CDN now supports https / SSL
- improved how Sprite handles sequencing between animations with different speed values
- added "change" event to Sprite
- added "added" and "removed" events to DisplayObject
- added the extras folder, with: SVGExport, Context2DLog, and PerformanceTests
- added Graphics.store() / unstore()
- examples now all use the combined lib
- SpriteSheet.getNumFrames() now returns 0 instead of null if images are not loaded.
- added some initial unit tests for the library
- added helper methods to Rectangle: union, intersects, extend, intersection, pad, isEmpty, & contains.
- updated clone() method for all classes
- added Matrix2D.equals() method
- added DisplayObject.transformMatrix
- mouse interactions and getObjectsUnderPoint now respect masks
- added a mode param to getObjectsUnderPoint() to respect mouseEnabled/mouseChildren and event listeners
- added Stage.preventSelection to block accidental selection of document elements
- added `pt` param to DisplayObject.localToGlobal, globalToLocal, and localToLocal methods
- BlurFilter provides higher quality results (thanks quasimondo)
- added MouseEvent.isTouch
- added support for margin and spacing in sprite sheet data (thanks renatopp)
Version 0.7.1 [December 12, 2013]
****************************************************************************************************
- fixed issue with mouseChildren not working with nested Containers
- fixed issue where first call to Ticker.addEventListener() did not return the listener
- added DisplayObject.tickEnabled & Container.tickChildren
- fixed an issue related to modal dialogs and pointer position for mouse down
- fixed an issue when calling gotoAndStop(animation) in the animationend event stack for the same animation
- ColorMatrix no longer extends Array
- fixed ColorMatrix.toArray(), .concat(), and .clone()
- changed dblclick to use a canvas listener instead of global listener
- added MouseEvent.localX/Y
- fixed touch/multitouch in IE11
- fixed issue with -1 mouse pointers (thanks cubica)
- fixed issue with AlphaMapFilter (thanks Dave)
- added willTrigger() to EventDispatcher
- modified mouse event flow so items with no listeners are not checked for a hitTest.
- avoids unnecessary cross-domain issues introduced in EaselJS 0.7.0, when loaded images don't have any mouse listeners on them.
- getObjectsUnderPoint() and getObjectUnderPoint() now account for hitAreas
Version 0.7.0 [September 25, 2013]
****************************************************************************************************
CRITICAL (may break existing content):
- removed all onEvent handlers (ex. onClick, onTick, onAnimationEnd, etc)
- removed Ticker.addListener and .removeListener
- most mouse events now bubble
- BitmapAnimation renamed to Sprite
- MouseEvent now inherits from new Event class
- sprite sheet data's animation .frequency property removed in favour of .speed
- removed "target" from MouseEvent's param list
- returning false from an event handler no longer causes dispatchEvent to return false, see Event.preventDefault
- Added "use strict"; to everything.
- renamed BoxBlurFilter to BlurFilter
*****
DEPRECATED (will be removed in a future version):
- MouseEvent mousemove/mouseup events, see DisplayObject pressmove/pressup
- SpriteSheetUtils.flip()
- SpriteSheetUtils.mergeAlpha()
*****
OTHER:
- implemented createjs Utils
- implemented "use strict" mode
- BitmapAnimation renamed to Sprite
- renamed the "frequency" property in sprite sheet data to "speed" and changed functionality:
* support for non-integer values
* inverted outcome vs frequency. Ex. a "speed" value of 2 doubles playback speed, 0.5 halves it
- added Sprite.framerate and SpriteSheet.framerate
- added frameOrAnimation param to Sprite constructor
- deprecated Sprite.offset (no longer functional)
- added Ticker.timingMode and deprecated Ticker.useRAF
* added Ticker.TIMEOUT, Ticker.RAF, Ticker.RAF_SYNCHED timing mode constants
- added Ticker.getMeasuredTickTime()
- Ticker now does not automatically init until a listener is added to it
- added Ticker.reset()
- added Stage.nextStage to relay interaction events
- added Graphics.inject()
- added Text.getMeasuredHeight()
- fixes and improvements to Touch support
- fixed setChildIndex when adding to an index lower than the item exists at already.
- added Graphics.Command
- merged lots of doc updates (thanks @peteshand)
- lots of doc, example, & tutorial updates
- included MouseEvent.nativeEvent for mouseover/out events
- added rollover / rollout events to DisplayObject
- prevented mouseover/out and rollover/out events from triggering if the mouse is not over the canvas
* ex. within a scrolling div or DOM element layered over top
- added pressmove / pressup events to DisplayObject
- added Matrix2D.transformPoint() method
- fixed an issue when adding the same listener to an event twice
- added Event class, used by all events
- MouseEvent inherits from new Event class
- added .on and .off methods to EventDispatcher
- fixed an issue with extending EventDispatcher
- DisplayObject, SpriteSheet, and SpriteSheetBuilder now inherit from EventDispatcher
- fixed an issue with the tick event's time value being epoch time instead of Timer time
- added Ticker.getEventTime()
- added Ticker.maxDelta
- the initialize methods for Point, Rectangle, and Matrix2D are now public
- added .copy() to Point, Rectangle, and Matrix2D
- fixed an issue that could occur when reinitializing Matrix2D
- added MovieClip.frameBounds
- fixed errors when the lib was loaded in a browser with no canvas support (ex. IE8)
- added support for .next on single frame spritesheet animations
- added the BitmapText class
- improved DOMElement redraw handling to avoid flicker and layout costs
- added Stage mouseleave and mouseenter events
- added tickstart, tickend, drawstart, and drawend events to Stage
- added getBounds() functionality for all display objects
- added MovieClip.getLabels() & getCurrentLabel()
- Filter.getBounds() now returns null as its default value
- bounds for cache() are now automatically adjusted for filters
- improved BlurFilter performance and results (thanks to Mario Klingemann)
- objects added to a MovieClip via addChild will now display over objects managed by the MovieClip
- Fixed clone on AlphaMapFilter
- Updated the build process to use NodeJS & Grunt.js. Please refer to the README in the build folder.
Version 0.6.1 [May 14, 2013]
****************************************************************************************************
- Updated demos:
* propagate the tick event to the stage. This is a best practice.
* Added AlphaMaskFilter demo.
* Added a "Graphics Winding" demo
* Added Safari note to the Cache demo
- Updated documentation:
* Added lots more examples.
* Matrix2D.rotate
* Matrix2D.tx named incorrectly
* Stage.stagemousedown event (stagemouseup was doc'd twice)
* DisplayObject.dblclick (case incorrect)
* Fixed example in Stage documentation (incorrect)
* Fixed example in Text documentation (missing quote)
* Fixed updateContext method name in docs (was incorrectly set to "setupContext")
* Added sample code to MovieClip documentation, and a MovieClip example.
* Added optional parameters to MovieClip constructor
* Updated description of DisplayObject.mouseEnabled
* Fixed setPaused/getPaused descriptions in Ticker, and added some better descriptions, a few examples, and updated
documentation throughout.
* Updated SpriteSheetUtils/extractFrame documentation to mention Bitmap/sourceRect and security concerns
* Updated Bitmap/cache methods to clarify caching usage for Bitmaps
* Updated optional parameter for DisplayObject/cache
* Added initial example in EaselJS to show interaction
- Modified EventDispatcher to avoid unnecessary instanceof and apply
- Replaced the width=0 hack (for clearing canvases) with a setTransform/clearRect in DisplayObject,
Container, and SpriteSheetUtils.
- Updated clearRect usages to use +1 on width and height to prevent crashes on Android (thanks mikelito)
- Fixed Matrix2D.scale method to properly apply scale when rotated (thanks fumio)
- Fixed bug with mouse and touch events in iOS's UIWebView (thanks cubica)
Version 0.6.0 [Feb 12, 2013]
****************************************************************************************************
- added new event model with EventDispatcher class
- added DisplayObject.cursor property
- added Container.getChildByName() method
- added ButtonHelper class
- fixed error with AlphaMaskFilter
- hitArea position now ignores the regX/Y of the target instance
- added Log class to provide verbose errors while debugging
- simplified & updated MovieClipPlugin to work with revised TweenJS plugin model
- added DisplayObject.set() shortcut method
- added MovieClip.autoReset property
- added Graphics.isEmpty() method
- improved support for empty masks
- added SpriteSheetBuilder.progress
- added SpriteSheetBuilder.timeSlice
- removed the callback param on SpriteSheetBuilder.buildAsync, replaced with .onComplete
- added SpriteSheetBuilder.onComplete and .onProgress
- fixes for various MovieClip bugs
- SpriteSheetBuilder now works correctly when adding more than one MovieClip
- fixed an issue with SpriteSheetBuilder defining frames that exceeded the image bounds
- added SpriteSheet.getFrameBounds()
- added BitmapAnimation.getBounds()
- added closePath support to Graphics.decodePath()
- changed how animationEnd events are fired, to support calling stop() in the handler
- animationEnd events now include a "next" value with the name of the next animation
- event types for MouseEvents now follow DOM standards (mousedown, click, dblclick etc)
- improved hitArea handling
- added version.js
- added MovieClip.currentFrame
- documentation updates
- new and improved build process, tools & documentation format
- added Stage.enableDOMEvents() method
- added default Stage.handleEvent() for integration with Ticker and new event model
- deprecated Stage.snapToPixel API
- added Graphics.ignoreScale API
- added a matrix parameter to Graphics.beginBitmapFill
Version 0.5.0 [Aug 24, 2012]
****************************************************************************************************
- moved all classes into a configurable createjs namespace
- added support for multitouch
- complete rewrite of drawing model to use a hybrid approach (save/restore & matrix)
- added DisplayObject.mask
- added Graphics.drawAsPath(ctx)
- added Text.getMeasuredHeight()
- added DisplayObject.updateContext(ctx)
- added DisplayObject.getMatrix(matrix)
- added DisplayObject.hitArea
- fixed issue with Text not displaying if .text is 0 or false
- fix for setChildIndex
- fix for addChildAt with multiple params
- added SpriteSheetBuilder
- added MovieClip.actionsEnabled
- updates to Ticker to improve support for requestAnimationFrame
- better support for negative corner values on .drawRoundRectComplex
- added stage.mouseMoveOutside & mouseEvent.rawX/Y
- added "createjs.createCanvas()" to support for alternative canvases (ex. exCanvas)
- added "scale" parameter to cache() and cleaned up the implementation
- fix for DOMElement with Opera
- various bug fixes and doc updates
- changed setTransform to return the instance for use in chaining
- started adding tutorials to address common questions and make it easier to get started
- stage.mouseX/Y now defaults to 0 instead of null
- text.textBaseline now defaults to "top" instead of null (resolved to "alphabetic")
- text.textAlign now defaults to "left" instead of null
- text.color now defaults to "#000" instead of null
- parameters passed to Stage.update are now passed on to onTick handlers
- for example, Ticker elapsedTime and paused params
- correctly resolves mouse positions for CSS scaled canvases & canvases with borders/padding
- added AlphaMapFilter & AlphaMaskFilter
- added Touch.disable(stage)
Version 0.4.2 [Apr 18, 2012]
****************************************************************************************************
- hot fix for issues with Ticker that caused reduced frame rates.
- NO API CHANGES
Version 0.4.1 [Apr 14, 2012]
****************************************************************************************************
- DisplayObject.tick has been renamed to onTick
- fixed a problem with preloading sprite sheet images when using tile based sheets
- worked around a bug in Safari with addFlippedFrames
- added setChildIndex(), swapChildrenAt(), and swapChildren() to Container
- made frequency param on enableMouseOver optional
- worked around a Chrome 17 bug that would prevent text w/o maxwidth from rendering
- additional fixes for video as a Bitmap source
- rewrite of Ticker to simplify implementation and solve issues with useRAF in Safari
- animations in BitmapAnimation now default to looping
- added BitmapAnimation.play/stop()
- added Bitmap.sourceRect
- Ticker now supports an object with a tick method, or a function as a listener
- renamed DisplayObject.tick to .onTick
- added MovieClip class
- added onComplete to SpriteSheet
- added ColorMatrix class
- added Graphics.decodePath for compressed vector paths
- support for passing a canvas string id to the Stage constructor
- various bug fixes and doc updates
- updateCache now clears the cacheCanvas correctly
Version 0.4 [Nov 30, 2011]
****************************************************************************************************
- completely rewrote BitmapSequence (now BitmapAnimation) & SpriteSheet including data format
- BitmapSequence was renamed BitmapAnimation
- SpriteSheet now handles calculating frame rects
- support for multi-image sprite sheets
- support for variable frame sizes
- support for frame reuse (non-linear frame order)
- support for frame registration points
- SpriteSheet supports URIs as sources (and will handle preloading)
- rewrote SpriteSheetUtils to support SpriteSheet changes
- renamed .flip() to .addFlippedFrames() and changed functionality significantly
- removed .frameDataToString()
- fixed support for video sources in Bitmap
- added support for null canvas for Stage
- added DOMElement, an experimental display object for including DOM elements in the display list
- separated tick and draw into separate phases to fix possible race conditions
- added Matrix2D.isIdentity()
- support for double click events (thanks to rbarazi)
- added MouseEvent.nativeEvent and MouseEvent.target properties
- fixes to Ticker, added second "paused" param when it calls tick
- added experimental support for requestAnimationFrame to Ticker
- fixed a problem with caching Container instances
- fixed an issue with .parent not being assigned on children of cloned Containers
- added filter support via DisplayObject.filters and Filter objects
- added sample filters: ColorFilter, ColorMatrixFilter, and BoxBlurFilter
- added DisplayObject.setTransform()
- added DisplayObject.onDoubleClick handler (thanks to rbarazi)
- added DisplayObject.cacheID and DisplayObject.getCacheDataURL()
- performance optimization for DisplayObject drawing (6910e6849856bd0740f8)
- added support for touch input (single point) via the Touch class
- added support for passing an image URI to the Bitmap constructor
- fixes to Shadow
- optimizations
- documentation updates
Version 0.3.2 [Mar 2, 2011]
****************************************************************************************************
- added stage.mouseInBounds
- added DisplayObject.onMouseOver and onMouseOut callbacks
- added stage.enableMouseOver(freq)
- improved support for calculating mouseX/Y in divs with relative positioning
- fixed Graphics.clone()
- fixed an issue with shadows not being reset properly
- migrated to use YUIDocs instead of JSDocs
- fixed an issue that prevented BitmapSequence instances with frameData from working with gotoAndPlay(frameNumber)
Version 0.3.1 [Feb 13, 2011]
****************************************************************************************************
- fixed issues with hitTest and mouse event callbacks on Container instances.
- added recursive clone option to Container and Shape
- fix for snapToPixel
- added cache, updateCache, and HelloWorld demos
- extensive code cleanup, including improved support for jsdoc
Version 0.3 [Feb 8, 2011]
****************************************************************************************************
- renamed Tick to Ticker
- adding a listener to Ticker twice will now move it to the end of the listener list
- added Ticker.getMeasuredFPS()
- added Ticker.setFPS()
- renamed Stage.tick to Stage.update and made Stage.tick point to Stage.update
- made the pauseable param "true" by default on Ticker.addListener()
- added Stage.toDataURL(backgroundColor, mimeType)
- renamed Rectangle.w/h to width/height
- improvements to commenting and documentation
- formalized inheritance model to make code more readable
- changed color to null instead of 0 in Shadow.IDENTITY
- fixed an error with simple sprite sheets that weren't set to loop
- implemented "tiny" instructions for Graphics. (ex. myGraphics.f("#0FF").c(x,y,r) )
- fixed problems with Graphics.clone()
- fixed bug with passing instructions to a Graphics object constructor
- complete rewrite of the render engine to be cleaner and more flexible
- added .decompose() method to Matrix2D
- added .skew() method to Matrix2D
- added .skewX/Y on DisplayObject
- added SpriteSheetUtils.extractFrame(spriteSheet,frame) method
- added basic multi-line support for Text
- added DisplayObject.suppressCrossDomainErrors property
- complete rewrite of the hit testing system to be cleaner and run 5-10x faster
- improved the interaction model:
- added .onPress, .onClick callbacks on DisplayObject
- removed .mouseChildren from Container
- made .mouseEnabled true by default
- added .onMouseDown, .onMouseUp, and .onMouseMove callbacks on Stage
- added MouseEvent
- Stage.getObjectsUnderPoint() has been moved to Container
- added Container.contains(child) method
- added DisplayObject.compositeOperation
- added appendProperties() and prependProperties methods to Matrix2D
- added DisplayObject.hitTest() method
- added stage.snapToPixelEnabled and displayObject.snapToPixel
- added DisplayObject.updateCache()
- renamed minified file from easeljs.js to easel.js
- Re-factored directory layout
Version 0.2.1 [Jan 12, 2011]
****************************************************************************************************
- optimized Graphics: reduced overhead by 80-90%
- added drawPolyStar method to Graphics
- fixed bug with using canvas as an image source for Bitmap
- made mouseChildren true by default for stage
- fixed major bug with Ticker.getTime()
Version 0.2 [Jan 6, 2011]
****************************************************************************************************
Focus on vector graphics and text.
- repackaged all class files to "easeljs" instead of "com.gskinner"
- added Graphics API, and revised Shape to use a Graphics instance
- added Text class
- added Point class and updated CoordTransform to use it
- added Rectangle class
- fixed minor issue with Ticker
- added initial implementation of Stage.mouseX/Y (likely to change)
- added new examples, updated others to work with revised APIs
- minor tweaks, fixes to code and documentation
- added support for multiple params on Container.addChild, addChildAt, removeChild & removeChildAt
Version 0.1 [Dec 17, 2010]
****************************************************************************************************
Initial release.