Commit graph

195 commits

Author SHA1 Message Date
kangax
a6a5cb4a54 Load image via fabric.util.loadImage in cloneAsImage. Add fabric.util.createImage helper. Closes #593 2013-04-29 15:16:59 -04:00
kangax
c16dcf88a4 Change inline docs to conform to jsdoc3 2013-04-24 12:58:04 -04:00
kangax
e56d37d9da Fix text and line rendering in path group. Add support for multiple declarations in "transform" attribute. Fix stroke color of line. Version 1.1.7 2013-04-18 21:42:46 -04:00
Tim Andres
3950298c75 Changed nestTransformMatrices to mutilplyTransformMatrices 2013-04-17 13:54:11 -04:00
Tim Andres
63809278d2 Documented new matrix multiplication utility 2013-04-16 02:26:22 -04:00
Tim Andres
e2bba99e98 Fixed path translation bug with SVG parsing 2013-04-16 01:49:42 -04:00
kangax
85fd7ee852 Add support for clipping objects. Closes #64 2013-03-10 21:06:17 +01:00
Atis
70d3c702b1 fix infinity check so that Closure Compiler does not choke on it 2013-03-08 19:41:33 +02:00
kangax
43dd170f5b Add fabric.Object#visible property. Closes #342. Version 1.0.13. 2013-03-06 18:45:18 +01:00
llocust
ff8b09fb35 Update dom_event.js
Sorry.. Copy+Past from .min version...
e->event
2013-03-05 04:54:41 +04:00
llocust
5662472f81 Update dom_event.js
On a mobile (touchbased) platform at an event 'touchend' data are stored in the changedTouches array.
2013-03-05 04:14:43 +04:00
kangax
293227811f Doc additions 2013-02-27 00:48:27 +01:00
kangax
80469a23eb Fix createCanvasElement canvas initialization. IE<9 now works again. 2013-02-19 13:34:50 +01:00
kangax
9df85553b9 [BACK_INCOMPAT] Add fabric.util.createAccessors. Add accessors for fabric.Text -specific properties (setTextDecoration, setFontWeight, setFontStyle, etc.). Make text object dimensions change when setting dimension-affecting properties. fabric.Text#setFontsize becomes setFontSize. Version 1.0.11. 2013-02-18 16:22:48 +01:00
Kienz
ddaf8ba796 Fix touch events if canvas is inside a scrolled container (see issue #123).
Fix bug if mouse moves over absolute scrolled element while object scaling (see issue #385). Also if mouse is moved over documentElement (fabric.document) while scaling object is fixed (same issue like #385).

Tested with Safari 5.1.7, 6.1, Firefox 18, 3.6.28, Chrome 24/25beta, Opera 12.12 and iPhone iOS 6.1, iPad iOS 6.1 in non-scrolled and scrolled containers.
2013-02-01 18:27:20 +01:00
kangax
87a1bb31bf Amalgamate canvas creation + VML initialization into one place. Add new method fabric.util.createCanvasElement. Version 1.0.3. 2013-01-25 14:23:13 +01:00
kangax
70119f7095 Refactor some logic from canvas and object classes into mixins 2013-01-20 20:40:26 +01:00
Josh Pearce
d56bf59137 Add image load onerror handler
Make sure, when loading from json, that
a bad image path doesn't fail the desserialization

Signed-off-by: kangax <kangax@gmail.com>
2013-01-04 19:14:24 +01:00
kangax
dc2e5210ae Work around VML's clearRect bug 2013-01-03 01:18:29 +01:00
kangax
c4bec70455 Performance optimizations 2013-01-02 23:25:13 +01:00
kangax
fb915851db Fix lost event in IE7/8. Closes #364. 2012-12-29 20:00:24 +01:00
kangax
2735d543e2 Merge master. Enable hasRotatingPoint by default (now that objects are not rotated via corners) 2012-12-26 11:18:17 +01:00
kangax
c11abb377f Fix tests. Build distribution. Version 0.9.35. 2012-12-23 15:28:08 +01:00
kangax
a37fcc92d4 Fix incorrect rendering of text + path SVG. Closes #355. 2012-12-23 15:17:45 +01:00
kangax
e12b6598cd Merge master 2012-12-18 18:12:08 +01:00
kangax
203ea6b51f Doc fixes 2012-12-18 11:46:51 +01:00
kangax
c8172be31d Final doc additions. Every public method is now documented! 2012-12-16 20:44:26 +01:00
kangax
6ed3dda6f5 Merge master 2012-12-15 17:16:39 +01:00
kangax
3416d8a090 Documentation additions. 2012-12-13 15:46:06 +01:00
Kienz
4b56e3f8ae Fix for touch devices - only works if page is has no scrolling. I've tested it no iPad with iOS 6.01. 2012-12-10 13:44:26 +01:00
kangax
0c1fd43fc1 First stab at dynamic origin of transformation (based on the excellent work of https://github.com/stormbreakerbg). 2012-12-06 19:12:54 +01:00
kangax
832e754d9e Prevent FF<4 from throwing errors on getComputedStyle. 2012-12-04 14:14:08 +01:00
kangax
2329ef59fe Add support for specifying additional properties to return in toObject, toJSON. Fix #272. 2012-11-30 23:46:09 +01:00
kangax
315a2c9bf3 Move callSuper out of fabric.Object.prototype and create it dynamically in createClass. 2012-11-23 13:39:50 +01:00
kangax
f0b5329157 Doc additions, fixes. 2012-11-23 13:38:26 +01:00
kangax
2e1d02148b Get rid of _theta and update "angle" property dynamically. Version 0.9.22. Fix #283. 2012-11-15 14:20:45 +01:00
kangax
01982a446c Do not use uniqueID in IE as it's not always unique. Fix #311. 2012-11-15 12:49:10 +01:00
Steve Pemberton
e8a696c4b1 fix for retreiving scrolled & Fixed Descendants, Mouse Position 2012-10-24 19:56:48 +01:00
kangax
84a956c4b6 Lint everything with JSHint. Version 0.9.14. 2012-10-14 02:53:12 +02:00
kangax
232f671b24 Fix loadFromJSON with async content. 2012-09-02 10:39:07 -04:00
kangax
581d5a54b9 Fix compatibility with Node (including loadSVGFromString). 2012-07-31 20:55:49 +02:00
kangax
edbce2b32a Documentation fixes. 2012-07-19 11:43:46 +02:00
kangax
249c330ed6 Add fabric.util.groupSVGElements for creating fabric.<Element> or fabric.PathGroup out of a group of elements. 2012-06-23 19:28:53 +02:00
kangax
126c2aa507 Merge master 2012-06-20 17:43:39 +02:00
kangax
da2ed018d8 Fix fabric.util.requestAnimFrame erroring out due to wrong "context". 2012-06-15 17:35:05 +02:00
kangax
9e605340c1 Fix subclassing mechanism to work correctly with 2+ level deep inheritance. Closes #134. Closes #141. 2012-06-07 16:24:44 +02:00
Tim de Koning
a64ae3d9eb XML entities should be escaped globally! 2012-06-07 15:24:00 +02:00
kangax
78eda278d1 Fix double tap issue in iOS. Closes #146. 2012-06-01 01:42:11 +04:00
Balthazar Auger
d3abeeb957 Merge branch 'master' of github.com:balthazar/fabric.js
Conflicts:
	build.js
2012-04-26 00:07:52 -03:00
Balthazar Auger
8724fa2bc1 Update default easing function 2012-04-26 00:01:42 -03:00
Balthazar Auger
383665d236 Debug and test remaining equations. 2012-04-24 17:35:53 -03:00
Balthazar Auger
4945372f05 Add most common easing functions
TODO: find out why easeOutBack and easeInOutBack mess up build
2012-04-24 02:29:38 -03:00
Balthazar Auger
f2a37a3bc0 Adapt fabric.util.animate to work with general easing equations 2012-04-24 02:28:45 -03:00
Balthazar Auger
b2853e8717 Study how to insert easing functions 2012-04-24 00:27:18 -03:00
kangax
b3768bcdd3 Check event.touches[0] exists before accessing a property. Thanks @zj831007. Closes #149. 2012-04-08 18:20:19 +02:00
kangax
83e3c8bd9e Initial implementation of generic groups. See https://github.com/kangax/fabric.js/wiki/Working-with-groups for more info. 2012-04-08 15:15:31 +02:00
Tim de Koning
0ed5f80248 escape XML in SVG strings 2012-02-09 09:54:30 +01:00
kangax
0bb80dddf0 Fix fabric.Canvas#setOverlayImage('') not removing overlay image. 2012-01-21 23:07:16 -05:00
kangax
cb7a4bdf86 Remove reference to window in util/misc.js for node compat. 2011-12-09 16:24:37 -05:00
kangax
a8758ffbe1 Use requestAnimFrame polyfill instead of setInterval in fabric.util.animate. Add fabric.util.requestAnimFrame. 2011-12-08 09:44:05 -05:00
kangax
b8ea6b7cec [BACK_INCOMPAT] Add support for static canvases — fabric.StaticCanvas. fabric.Canvas#loadImageFromURL -> fabric.util.loadImage. Add fabric.Canvas#centerObject. 2011-11-27 23:57:28 -05:00
kangax
343a5a2605 Add fabric.util.makeElementSelectable (the opposite of makeElementUnselectable). 2011-11-08 12:35:20 -05:00
Diogo Campos
a8166b355b Remove unnecessary test in fabric.util.animate 2011-10-29 17:04:20 -02:00
kangax
94db7bfc8f fabric.Image.GrayscaleFilter --> fabric.Image.filters.Grayscale as per users request; Make image filters serializable. 2011-10-27 20:06:19 -04:00
kangax
19f7736658 Update documentation and fix JSDoc templates. 2011-09-22 12:40:31 -04:00
kangax
efd2aba325 Add basic touch event support. 2011-09-21 19:29:00 -04:00
kangax
99e64c30ee Closes #52. Fix initialization of fabric.Group with undefined "paths". 2011-09-20 14:25:25 -04:00
kangax
8ea5f0d52c Closes #47. More conforming Function.prototype.bind. 2011-08-29 12:09:32 -04:00
kangax
709348f96f More compliant Array.prototype.indexOf. 2011-08-28 21:28:46 -04:00
kangax
b53d794af6 [BACK_INCOMPAT] Custom fabric build is now created with node.js and is much more flexible. Sprockets is no longer required to build fabric. Parser and node are now optional modules, which means that parseSVGDocument is no longer included in default fabric build. 2011-08-14 17:35:36 -04:00
kangax
8f819bb760 Fabric can now run under node.js 2011-08-11 15:18:18 -04:00
kangax
27999a327c Add unit tests for fabric.loadSVGFromString. 2011-08-04 20:48:25 -04:00
kangax
044866cf44 Document fabric.loadSVGFromString. Replace canvas.loadSVGFromURL with fabric.loadSVGFromURL. 2011-08-04 11:05:40 -04:00
kangax
ace016c694 [BACK_INCOMPAT] fabric.Canvas#loadSVGFromURL --> fabric.loadSVGFromURL. Add fabric.loadSVGFromString. 2011-08-04 10:59:32 -04:00
kangax
2b3a166d2f fabric.util.animate is now defined in util/misc.js rather than util/dom_misc.js as it has nothing to do with DOM. 2011-07-06 14:38:56 -04:00
kangax
6845db3670 Rework observable mechanism: All events are now scoped to canvas instances. fabric.util.observeEvent(...) becomes canvas.observe(...) and only observes events of that particular canvas instance. fabric.util.observeEvent becomes fabric.util.observe, fabric.util.stopObservingEventfabric.util.stopObserving, and fabric.util.fireEventfabric.util.fire. These could still serve as a generic pub-sub mechanism. Add "mouse:down" event (to be consistent with "mouse:up"). Add "Event inspector" demo page. 2011-06-27 18:25:45 -04:00
kangax
74dcd851dd Animation benchmark now allows to dynamically change scale of animated objects, load different shapes, and change canvas size. This allows us to see how all these aspects (e.g. canvas size or shape size) influence canvas rendering performance. 2011-04-23 17:39:56 -04:00
kangax
e7e19c2247 Add fabric.util.stopObservingEvent. Needs tests. 2011-03-01 19:06:56 -05:00
kangax
ca11620451 Replace map with for loop for perf. reasons (as this method is likely to be called thousands of times). 2011-02-09 01:03:04 -05:00
kangax
ba4486e5be Use Array.prototype.slice to convert nodelist to an array (slice is usually faster; it makes sense in this context where nodelists (i.e. shapes) could consist of thousands of elements). 2011-02-09 00:14:12 -05:00
kangax
f497327131 Fabric now runs fully under ES5 strict mode (except certain 3rd party dependencies, like cufon.js and json2.js). 2010-10-21 22:54:00 -04:00
kangax
f052a067ef More documentation. 2010-10-19 16:27:24 -04:00
kangax
33e929053e More documentation. 2010-10-15 12:55:53 -04:00
kangax
639aa12e2a Another chunk of documentation (which is a bitch, by the way). 2010-10-14 22:16:24 -04:00
kangax
b35b559c6a String.prototype.trim now strips '\xA0' characters in engines which fail to match that character via \s. Fix a couple of unit tests. 2010-09-14 18:57:55 -04:00
kangax
769c0c1eb7 Function.prototype.bind now calls object it's being invoked on indirectly (better spec compliance), thanks Garrett Smith;
Unit test `fabric.util.makeElementUnselectable` and make test names in util module more descriptive.
2010-09-14 12:53:29 -04:00
kangax
8ed28fa260 Typo in Function.prototype.bind. Fix incorrect positioning when drawing circles and ellipses. 2010-09-08 23:07:52 -04:00
kangax
d00a37d593 More effecient Function.prototype.bind and unit tests for bind, getById, and toArray. 2010-09-06 12:33:57 -04:00
kangax
371d38c0de Fix typo. 2010-09-01 17:58:42 -04:00
kangax
6ba986da49 Add unit tests for fabric.util.object.extend and fabric.util.object.clone. 2010-09-01 17:56:59 -04:00
kangax
7d2c7a35f2 Various IE fixes (most of the demo pages now function). 2010-08-27 12:27:49 -04:00
kangax
536d532d41 Various compatibility fixes. Add fabric.util.falseFunction. 2010-07-27 17:58:23 -04:00
kangax
313cffa57f Remove try/catch from around event handlers (for perf. reasons). Remove APE.anim references from fxCenterObjectH and fxCenterObjectV. 2010-07-27 14:07:59 -04:00
Juriy Zaytsev
5f04e2d495 Add fabric.Triangle class (untested for now). Start beefing up demo. 2010-07-24 01:03:28 -04:00
Juriy Zaytsev
2340a98526 Rename canvas_*.class.js files to just *.class.js 2010-07-09 21:50:13 -04:00