Commit Graph

501 Commits

Author SHA1 Message Date
Niklas von Hertzen
96cde64c6e Normalize more tests 2017-08-11 22:22:39 +08:00
Niklas von Hertzen
af09280c38 Draw checkboxes as vector path 2017-08-11 22:21:23 +08:00
Niklas von Hertzen
18761b7352 Fix textShadow parsing 2017-08-11 20:40:49 +08:00
Niklas von Hertzen
ad487f4585 Set overflow hidden for input elements 2017-08-11 20:40:37 +08:00
Niklas von Hertzen
fb58d1f0b6 Fix incorrect value 2017-08-11 20:40:08 +08:00
Niklas von Hertzen
97b0a1f21d Fix reftest precision 2017-08-10 23:26:01 +08:00
Niklas von Hertzen
5bd06895e9 Begin implementing webkit-gradient parsing 2017-08-10 23:25:50 +08:00
Niklas von Hertzen
eb380f023f Fix zIndex value 2017-08-10 23:24:38 +08:00
Niklas von Hertzen
82cfcf8704 Round reftest repeat values 2017-08-10 21:58:56 +08:00
Niklas von Hertzen
c287f51cb6 Fix incorrect render order in Firefox for position: static an z-index value 2017-08-10 21:58:36 +08:00
Niklas von Hertzen
edebe082f3 Remove animations from reftests 2017-08-09 12:05:16 +08:00
Niklas von Hertzen
77393074ba Use tree order when z-index is the same 2017-08-09 11:52:42 +08:00
Niklas von Hertzen
58d1bef3b6 Beging implementing reftests 2017-08-09 00:52:56 +08:00
Niklas von Hertzen
93f08c7547 Implement RefTestRenderer 2017-08-07 00:26:09 +08:00
Niklas von Hertzen
a2895691ba Extract render target logic out of renderer to be target agnostic 2017-08-06 20:21:35 +08:00
Niklas von Hertzen
f7f445c71e Add license info to builds (Fix #1126) 2017-08-06 18:14:27 +08:00
Niklas von Hertzen
8da77eb689 Add options to define window dimensions 2017-08-06 17:53:38 +08:00
Niklas von Hertzen
965f850e68 Assign cssText string to same named property on target 2017-08-06 17:50:01 +08:00
Niklas von Hertzen
216c290c4b Check availability of console before using it (Fix IE9) 2017-08-06 17:37:34 +08:00
Niklas von Hertzen
68900c3087 Copy CSS properties individual with IE 2017-08-06 17:37:10 +08:00
Niklas von Hertzen
f0fdeac703 Fix formatting 2017-08-06 15:52:56 +08:00
Niklas von Hertzen
6baa847092 Handle undefined values for textShadow/transform (IE9) 2017-08-06 15:44:30 +08:00
Niklas von Hertzen
10ec079762 Remove direct console call (breaks IE9 when console is not open) 2017-08-06 15:43:53 +08:00
Niklas von Hertzen
6554d4c8c8 Implement textShadow rendering (Fix #499 and #908) 2017-08-05 23:34:12 +08:00
Niklas von Hertzen
30a2578f38 Fix pseudo-element css text assignment for Edge 2017-08-05 21:59:48 +08:00
Niklas von Hertzen
82a7349e43 Use first background repeat value for multiple backgrounds if only 1 available (Edge bug) 2017-08-05 21:41:37 +08:00
Niklas von Hertzen
0224592a96 Don't parse TEXTAREA child nodes (Edge bug) 2017-08-05 21:40:22 +08:00
Niklas von Hertzen
12672839f1 Use correct JS context to find cloned element in Edge 2017-08-05 21:40:03 +08:00
Niklas von Hertzen
9bdb871307 Implement linear-gradient rendering 2017-08-05 21:13:53 +08:00
Niklas von Hertzen
56b3b6df27 Implement input/textarea/select element rendering 2017-08-05 00:00:17 +08:00
Niklas von Hertzen
adb1f50f00 Support percentage border-radius values (Fix #1154) 2017-08-04 20:41:36 +08:00
Niklas von Hertzen
e380e2c873 Use correct JS context to enable use of instanceof 2017-08-04 19:27:35 +08:00
Niklas von Hertzen
3977ebeadd Log errors in __DEV__ mode (Fix #905) 2017-08-04 00:13:20 +08:00
Niklas von Hertzen
9a7075252b Fix ImageLoader flow types to reflect possible error'd images 2017-08-04 00:00:02 +08:00
Niklas von Hertzen
96fbe954e9 Correctly strip quotes from pseudoelement url() 2017-08-03 23:54:44 +08:00
Niklas von Hertzen
b8450f4d4a Allow image loads to fail without crashing render 2017-08-03 23:54:23 +08:00
Niklas von Hertzen
b3db735415 Render :before and :after pseudoelements 2017-08-03 23:46:29 +08:00
Niklas von Hertzen
f6a5153d99 Implement support for multiple text-transforms with independent colors 2017-08-03 21:47:35 +08:00
Niklas von Hertzen
ad1119a76c Apply border radius correctly on image elements 2017-08-03 21:05:17 +08:00
Niklas von Hertzen
fe97851988 Implement HTMLCanvasElement rendering 2017-08-03 20:57:55 +08:00
Niklas von Hertzen
f2b8c16c2c Implement visibility css prop 2017-08-03 20:28:39 +08:00
Niklas von Hertzen
f278ba4f22 Begin implementing overflow clipping 2017-08-02 21:35:54 +08:00
Niklas von Hertzen
52a815a13f Fix background-clip and background-origin rendering 2017-08-02 20:29:45 +08:00
Niklas von Hertzen
7cc2b856cb Use correct canvas size for full document render 2017-08-01 23:41:12 +08:00
Niklas von Hertzen
aafb0cfb9c Calculate correct bounds for text/elements under nested transforms 2017-08-01 23:27:12 +08:00
Niklas von Hertzen
c5135f4839 Assign default options values 2017-08-01 22:51:59 +08:00
Niklas von Hertzen
478155af64 Clone document before parsing it 2017-08-01 20:54:18 +08:00
Niklas von Hertzen
7a3bad2fcb Add missing Flow tags 2017-08-01 18:51:59 +08:00
Niklas von Hertzen
ba089b4771 Render multiple backgrounds in correct order 2017-08-01 18:25:32 +08:00
Niklas von Hertzen
9f8bae4b09 Correctly parse multi background-repeat values 2017-08-01 18:25:20 +08:00
Niklas von Hertzen
8a6fb5f733 Library rewrite 2017-08-01 00:25:58 +08:00
Niklas von Hertzen
3b49cba21c Fix rendering of content when window is scrolled 2016-01-23 22:05:43 +02:00
Niklas von Hertzen
4ebe9c5fcc Don't require logger to be exposed to window object 2016-01-23 20:41:53 +02:00
Usman Akeju
318ca48157 Linear gradients now parse color names
Also:
- Cleans up color stop and linear gradient regular expressions.
- Handles percentage-based linear gradient positions (fixes Firefox).

Fixes niklasvh/html2canvas#469.
2015-10-25 09:44:14 -04:00
Niklas von Hertzen
e88ac871a3 Remove Promise polyfill 2015-10-19 01:25:03 +03:00
Niklas von Hertzen
aa05241ff8 Fix gradient tests 2015-10-18 23:57:41 +03:00
Niklas von Hertzen
364a8aac1c Merge remote-tracking branch 'origin/pr/645' 2015-10-18 23:15:12 +03:00
Niklas von Hertzen
46078acf71 Fix #688 fatal exception on unmatched color stop 2015-10-18 16:51:53 +03:00
Niklas von Hertzen
4b37909f09 Fix support for requirejs/amd 2015-08-30 02:27:38 +03:00
hyojin.kwak
90f9eeba83 Fix #599 2015-06-10 16:13:17 +09:00
Niklas von Hertzen
98ee30643a Fix iOS scrolling issue on clone 2015-03-30 00:58:50 +03:00
Niklas von Hertzen
a49c3a2320 Correctly handle named colors in gradients 2015-03-29 23:20:17 +03:00
Corné Dorrestijn
9201cf7e95 Accept matrix3d and convert it 2015-03-05 15:52:23 +01:00
Niklas von Hertzen
c2baf42145 Fix fail on transparent colors in linear gradients 2015-03-01 17:43:18 +02:00
Niklas von Hertzen
585a96a918 Preserve scrolling positions of nodes on clone (#511) 2015-02-28 16:51:52 +02:00
Niklas von Hertzen
3671de81f9 Fix module name casing 2015-02-03 21:39:57 +02:00
Niklas von Hertzen
f3b6df267e Switch build to use browserify (#502) 2015-02-03 21:34:05 +02:00
Niklas von Hertzen
60619dca72 Fix #517 2015-01-26 22:55:10 +02:00
Niklas von Hertzen
ed299b3db1 Remove dead code 2015-01-20 19:51:52 +02:00
Niklas von Hertzen
edb113c230 Make html2canvas requireable in nodejs 2015-01-19 23:33:29 +02:00
Niklas von Hertzen
fc01263f68 Add comment regarding IE9 clone node 2015-01-19 22:30:10 +02:00
Niklas von Hertzen
399ae9f33d Fix #503 2015-01-19 22:28:10 +02:00
Niklas von Hertzen
77c73c478f Fix iframe proxy 2015-01-18 21:38:05 +02:00
Niklas von Hertzen
7a58ad019f Fix background rendering regression #496 2015-01-10 20:53:06 +02:00
Niklas von Hertzen
9b372a4399 Correctly clone <select> and <textarea> value property 2015-01-05 22:58:36 +02:00
Niklas von Hertzen
498527918c Correctly render input[type="password"] value 2015-01-05 21:36:53 +02:00
Usman Akeju
e2713cd6f9 Temporarily add manual update to es6-promise polyfill
This replaces an old and outdated Promise polyfill that was included
with previous versions of html2canvas, and which consistently overwrote
native browser implementations when it shouldn't have. It is essentially
a (slightly modified) paste of the most current minified version of
es6-promise, found here:
https://es6-promises.s3.amazonaws.com/es6-promise-2.0.1.min.js

The plan is to eventually include this polyfill as a submodule
dependency, but the build process for es6-promise is a bit
cumbersome/opaque/painful at the moment, so this manual update was an
easier interim solution.

Please note that I had to manually add the actual call to
`ES6Promise.polyfill()` to load the polyfill--this will become
unnecessarry in future versions of es6-promise. Note also that I had to
manually pass `window` to the polyfill's IIFE, since `this` is an empty
object in the current scope.

Ref niklasvh/html2canvas#494.
2014-12-29 16:35:39 +01:00
Niklas von Hertzen
2f5f9f6e59 Allow multiple renders to occur simultaneously 2014-12-24 17:34:31 +02:00
Niklas von Hertzen
f5e318d968 Manually call toString for colors 2014-12-13 19:23:00 +02:00
Niklas von Hertzen
612e59c3d3 Implement border-inset color transforms 2014-12-13 19:00:29 +02:00
Niklas von Hertzen
fcbcb9bfaa Add color object to accept array of rgb(a) 2014-12-13 18:30:52 +02:00
Niklas von Hertzen
3b0352a3d7 Use Color objects for colors 2014-12-13 18:10:41 +02:00
Niklas von Hertzen
313c227a1f Add color parsing 2014-12-13 17:24:54 +02:00
Niklas von Hertzen
893ce74a33 Implement checkbox and radio input element rendering 2014-12-06 18:17:04 +02:00
Niklas von Hertzen
069140974b Don't scroll owner document after cloned document load 2014-11-30 14:23:52 +02:00
Niklas von Hertzen
1e826e32ae Fix scroll to top with pages using hashtag anchors 2014-11-30 14:16:02 +02:00
Dan Alstadt
d4cb7e8868 add html2canvas-container classname to iframe 2014-11-20 14:27:34 -06:00
Niklas von Hertzen
657eb983cf Add options.background option 2014-11-04 21:53:26 +02:00
Niklas von Hertzen
fc800bff9d Partial fix for borders 2014-11-04 21:40:09 +02:00
Niklas von Hertzen
aa3aafbc0c Fix race condition for content load 2014-11-03 23:29:57 +02:00
Niklas von Hertzen
525b5c4f36 Fix font rendering for IE with multiple inherited fonts 2014-11-02 22:15:48 +02:00
Niklas von Hertzen
772767d0d9 Disable transitions for cloned page 2014-11-02 20:26:25 +02:00
Niklas von Hertzen
7ebd191488 Fix form placeholder/value positioning for scrolled pages 2014-11-02 19:18:39 +02:00
Niklas von Hertzen
6ece2a3d5a Fix svg matching performance issue 2014-11-02 18:54:39 +02:00
Niklas von Hertzen
1793b802b1 Add onclone callback option to allow modifying cloned document prior to rendering 2014-10-26 19:10:09 +02:00
Niklas von Hertzen
04bdb48cba Fix layer ordering with multiple stacks on same auto z-index 2014-10-19 22:29:34 +03:00
Niklas von Hertzen
7e13231807 Fix canvas cropping with type: 'view' 2014-10-15 20:28:26 +03:00
Niklas von Hertzen
199685ebd1 Disable animations on rendered page 2014-10-12 20:44:39 +03:00
Niklas von Hertzen
444869e3ca Implement css clipping for rect() (with pixel values) 2014-10-12 20:32:47 +03:00
Niklas von Hertzen
5712b621ca Correctly clip content that has border-radius (#399) 2014-10-07 19:11:24 +03:00