Commit Graph

59 Commits

Author SHA1 Message Date
Niklas von Hertzen
12d85e3c04 Fail with a Promise.reject when no canvas support 2014-03-10 18:46:25 +02:00
Niklas von Hertzen
3101f2007a Fix Firefox DOM clone not being ready 2014-03-05 22:24:53 +02:00
Niklas von Hertzen
85b77ca49f Fix cropping bug 2014-03-05 19:19:24 +02:00
Niklas von Hertzen
bb8c5a973b Limit crop to the maximum size of outputted canvas 2014-03-04 21:54:24 +02:00
Niklas von Hertzen
cfe4137bcc Account for negative bounds in cropping 2014-03-04 20:42:34 +02:00
Niklas von Hertzen
d2c3378c3e Correctly crop content 2014-03-03 21:19:28 +02:00
Niklas von Hertzen
95f4bcea0a Render input elements correctly 2014-03-02 19:51:46 +02:00
Niklas von Hertzen
9bae5b610a Fix IE misalignment of content after scroll 2014-03-02 18:03:30 +02:00
Niklas von Hertzen
15ca3381eb Fix text rendering for IE and Opera 2014-03-02 16:00:59 +02:00
Niklas von Hertzen
18d95d669b Partial implementation for transforms 2014-02-23 17:35:46 +02:00
Niklas von Hertzen
5137e5f35a Render correct element 2014-02-23 17:02:49 +02:00
Niklas von Hertzen
314d26f1f1 Hide iframe container from view during render 2014-02-23 16:26:23 +02:00
Niklas von Hertzen
82e5a8a7c0 Fix image loading for cross-origin resources 2014-02-17 00:04:09 +02:00
Niklas von Hertzen
9af96d3812 Fix render ordering of nodes that form fake stacking contexts 2014-02-15 00:33:09 +02:00
Niklas von Hertzen
d9d516d27e Force doctype for iframe 2014-02-10 19:53:13 +02:00
Niklas von Hertzen
899d5321d4 Fix pseudoelement rendering for Firefox 2014-02-08 17:42:40 +02:00
Niklas von Hertzen
5d20493f46 Add support for pseudoelements 2014-02-08 16:52:41 +02:00
Niklas von Hertzen
b5891c49b4 Correctly assign image loading method for <img> elements 2014-02-08 14:07:20 +02:00
Niklas von Hertzen
467ff87482 Switch to using Promises 2014-02-03 19:42:42 +02:00
Niklas von Hertzen
b4bb34c95b Move NodeParser to seperate file 2014-02-01 18:52:53 +02:00
Niklas von Hertzen
64668fe694 ios window size and scroll fixes 2014-02-01 18:32:05 +02:00
Niklas von Hertzen
74cb3466ec Draw <img> elements 2014-01-26 18:10:04 +02:00
Niklas von Hertzen
1070cec852 Implement background rendering 2014-01-26 16:06:16 +02:00
Niklas von Hertzen
f474542382 Begin implementing background-image rendering 2014-01-21 21:41:00 +02:00
Niklas von Hertzen
8b8c080841 0.5.0 rewrite 2014-01-19 18:04:27 +02:00
Niklas von Hertzen
517fd8cd1d Refactor background parsing 2013-12-23 16:07:49 +02:00
Niklas von Hertzen
e9afe03960 Implement background-size cover/contain 2013-11-12 19:35:28 +02:00
Niklas von Hertzen
7cc7f80ee2 Add dom depth information to render queue 2013-10-27 22:08:12 +02:00
ssafejava
8bea01b81d Speed & accuracy improvements to pseudo element rendering.
Previously, pseudo elements would be processed as they were found in the DOM tree, which was
an expensive operation as each element's computed :before and :after style was checked for
'content' styles.

This commit traverses the user's stylesheets for :before and :after selectors, gathers the classes
affected, selects all elements that likely have a pseudo element present, then checks computed style.
If there is actually an element present, it is created but *not* appended to the DOM until after
all elements have been processed.

After all elements have been found and created, they are added to the DOM in a single batch, and the original
pseudo elements are hidden in a single batch. This prevents the layout invalidation / relayout loop that was
occuring previously, and in my tests speeds parsing by as much as 50% or more, depending on how many
pseudo elements your page uses.

Additionally, this commit contains a bugfix to the handling of ":before" pseudo elements; the browser effectively
inserts them as the first child of the element, not before the element. This fixes a few rendering inconsistencies
and complicated pages look almost perfect in my tests.
2013-09-18 13:38:21 +08:00
ssafejava
e115180731 Add async parsing option.
In my testing, the major time sink is parsing. This commit adds a setTimeout() around parsing
of each item so control can return to the browser. This increases the total time it takes to finish
a screenshot but will not freeze the browser when it does. This is a good option when e.g. doing
error reporting, where you might not want to freeze the browser while sending debugging information
back to your server.
2013-09-18 13:38:21 +08:00
Niklas von Hertzen
0fd25f048d Add bower.json 2013-09-07 21:24:41 +03:00
Obexer Christoph
03495f851d drop obsolete files from the build folder 2011-11-16 00:36:44 +01:00
Niklas von Hertzen
ff635115dc Enabled list-style-type's for position inside 2011-09-13 17:25:51 +03:00
The Brain
52150b09cd Fixed webkit-gradient regular expr 2011-09-13 09:59:12 +03:00
Niklas von Hertzen
6fe3218b50 Added some support for CSS gradients (by cthackers) 2011-09-12 23:50:43 +03:00
Niklas von Hertzen
27ee971bba merged from dev 2011-09-12 21:35:37 +03:00
Niklas von Hertzen
1c44b94817 Added support for some list-style-type's with list-style-position: inside 2011-08-11 22:43:42 +03:00
Niklas von Hertzen
6fe937eb66 fixed IE 9 text issues 2011-08-11 16:19:42 +03:00
Niklas von Hertzen
dcd2a03f79 fixed fatal error with multiple background images 2011-08-11 15:32:20 +03:00
Niklas von Hertzen
d8b4398278 rewrote z-index ordering logic 2011-08-02 21:07:51 +03:00
Niklas von Hertzen
29b580dbb7 added support for form element text value rendering 2011-07-29 22:55:01 +03:00
Niklas von Hertzen
78e1f9829f fixed z-index ordering bug with backgrounds 2011-07-29 19:22:38 +03:00
Niklas von Hertzen
d5c443a14c fixed few minor bugs, added some support for overflow (hidden|scroll|auto) 2011-07-28 21:22:13 +03:00
Niklas von Hertzen
9d04b0bbec added support for proxys, fixed a lot of background position issues, added test console 2011-07-21 03:12:17 +03:00
Niklas von Hertzen
e64416ea44 updated build 2011-07-18 22:45:39 +03:00
Niklas von Hertzen
7ac9042f33 minor fix for text positioning 2011-07-18 19:21:55 +03:00
Niklas von Hertzen
f8012224f9 added performance boost for text rendering for Chrome & Firefox,
while retainining compatibility with Opera & custom text settings.
2011-07-18 15:57:21 +03:00
Niklas von Hertzen
f1f15bb92d rebuilt source 2011-07-18 13:20:04 +03:00
Niklas von Hertzen
630b435767 support for opacity 2011-07-18 00:59:36 +03:00
Niklas von Hertzen
a27290caae added support for font-variant 2011-07-17 23:52:11 +03:00