00cf496acb
Added word break on characters in CJK range
Yuri Kobets
2014-12-30 12:29:12 +03:00
3573241f41
Use gumbo-parser as HTML parser engine.
Yuri Kobets
2014-12-29 15:41:17 +03:00
21c91a4b23
Added project for Visual Studio 2013
Yuri Kobets
2014-12-04 23:48:02 +03:00
81af2a8162
fixed linux container
Yuri Kobets
2014-10-23 02:41:48 +04:00
5bf5f1e81a
some code improvements
Yuri Kobets
2014-10-23 02:06:07 +04:00
4da59f1a89
tokenize function is replaced to split_string. some fixes in CSS parsing.
Yuri Kobets
2014-10-21 00:10:16 +04:00
3d4cd350e4
document::get_fixed_boxes returns boxes with overflows add support for CDATA
Yuri Kobets
2014-10-18 08:13:02 +04:00
064a6a66f0
Fix: problems with :after :before elements in refresh_styles children must be processed after removing and before adding :after :before elements
Yuri Kobets
2014-10-17 18:25:30 +04:00
b4b28194d0
Added support for box-sizing CSS property.
Yuri Kobets
2014-10-17 13:44:03 +04:00
4df6fe9cfb
Fix: css selector can have more then one condition for attribute. css_attribute_selector::map is replaced to css_attribute_selector::vector example: .input-group[class*="col-"]
Yuri Kobets
2014-10-17 13:13:05 +04:00
f1f752af15
fixed incorrect table width and width of the inline blocks.
Yuri Kobets
2014-10-14 04:00:25 +04:00
cef648d83f
Fixed length rounding with css_units_percentage to return the smallest value.
Yuri Kobets
2014-10-13 05:43:28 +04:00
ad859f01f6
Fix: elements can ignore mouse with some conditions
Yuri Kobets
2014-10-10 07:15:53 +04:00
f51196c89c
Fixed incorrect rendering of elements with margins and percent value of CSS width property
Yuri Kobets
2014-10-09 02:32:58 +04:00
d6f5885ba8
Added default predefined value parameter into css_length::fromString This fixes the bug in CSS text when length is not a number or valid keyword
Yuri Kobets
2014-10-09 02:31:37 +04:00
51a0d0c05e
<!DOCTYPE can be in lowercase, ignore all tags that begins with '!' char
Yuri Kobets
2014-10-07 05:04:28 +04:00
5630d68bc4
added cairo_container::remove_image, add_image with NULL image does not remove image from cache
Yuri Kobets
2014-10-07 02:57:01 +04:00
3454b1b7a1
delete image from cache by passing NULL into cairo_container::add_image
Yuri Kobets
2014-10-06 06:29:48 +04:00
3ca5fe3a7e
container_linux is updated for latest litehtml changes
Yuri Kobets
2014-10-05 06:03:25 +04:00
bce4c656c0
improved support for ommited start/end tags
Yuri Kobets
2014-09-30 03:25:19 +04:00
5230f28ac7
Improved UTF8 support define LITEHTML_UTF8 to compile litehtml with UTF8 support on Windows document_container::toupper and document_container::tolower are replaced with document_container::transform_text. Added document::createFromUTF8 to parse UTF8 source. Added word break on chars in CJK characters range.
Yuri Kobets
2014-09-26 02:55:59 +04:00
090a2e48e9
fix: incorrect position of the fixed elements when client rectangle is not in (0,0)
Yuri Kobets
2014-09-11 05:27:21 +04:00
ebbee5d0f4
fixed: incorrect base line for inline boxes
Yuri Kobets
2014-09-10 00:52:46 +04:00
121a33006d
fix: run render with second_pass parameter from render_positioned This fix the problem with text-align in fixed and absolute elements
Yuri Kobets
2014-09-09 08:45:08 +04:00
95c9efe9ac
Added "bool root" parameter into document_container::draw_borders This parameter is true for the root element (<html>).
Yuri Kobets
2014-09-04 07:36:40 +04:00
0afcf0c06a
Separate fixed elements rendering, mark root element background. document::render accept render_type parameter: render_all - render all elements render_no_fixed - don't render fixed elements render_fixed_only - render the fixed elements only background_paint now have is_root member. You can check is_root to draw background in entire window (not in paint rectangle only).
Yuri Kobets
2014-09-04 04:48:47 +04:00
29fd19c003
Improved background processing for <body> and <html> tags. litehtml expands <html> element to entire client/document area. Also fixed bug with margin collapse for body element.
Yuri Kobets
2014-09-01 06:22:20 +04:00
4071aa824e
Removed check for <ul> -> <li> Looks like it is possible to use other tags then <li> in <ul>/<ol>.
Yuri Kobets
2014-09-01 01:44:18 +04:00
db92356780
HTML entities are case-sensitive.
Yuri Kobets
2014-08-31 21:02:26 +04:00
4c6aa944a2
html_tag::render returns incorrect width for elements with floats.
Yuri Kobets
2014-08-30 22:48:14 +04:00
9dd887c109
Position of floating boxes is incorrect inside inline/float boxes Relative positioning is fixed
yuri.kobets@gmail.com
2014-08-24 15:28:13 +00:00
f5d988a454
Updated cairo_container_linux for API changes
yuri.kobets@gmail.com
2014-08-14 18:39:01 +00:00
8a50df45b0
Added support for CSS media (@media at-rule, media attribute in <style> and <link> tags). Fixed: the elements with the fixed position ignore the mouse events. Fixed: Bugs when compile solution with Microsoft Visual Studio Express 2013 for Windows Desktop.
yuri.kobets@gmail.com
2014-08-14 00:24:07 +00:00
d3c9c5df6f
Some optimization in tables rendering.
yuri.kobets@gmail.com
2014-07-28 21:45:20 +00:00
d0e736de13
Apply :hover state to parent elements
yuri.kobets@gmail.com
2014-07-27 23:43:42 +00:00
b856c8419e
Fixed: commented text in <style> tag is not parsed New: text-indent CSS property is implemented New: Added fixed elements (position: fixed) support Fixed: width:0 is ignored
yuri.kobets@gmail.com
2014-07-24 02:17:19 +00:00
c87377113d
Correct processing of the shorthand CSS properties (reset the single properties). Fixed the high CPU usage on mouse over Improved positioning of the inline elements with paddings/margins
yuri.kobets@gmail.com
2014-07-21 00:04:39 +00:00
639ef3f4b9
Updated the container class for linux (containers/linux). Now with images support. Updated litebrowser_linux to show websites. Some changes to make code more compatible with linux.
yuri.kobets@gmail.com
2014-06-19 23:01:31 +00:00
bbdbac83e9
Auto-margins position fixed.
yuri.kobets@gmail.com
2014-06-12 19:57:11 +00:00
e3485544b9
Some crashes fixed.
yuri.kobets@gmail.com
2014-02-13 22:59:45 +00:00
2af8951d35
More correct floating boxes positions
yuri.kobets@gmail.com
2014-02-02 23:40:56 +00:00
075f99a7da
Fixed bug in :before :after css selectors Improved correction of errors in HTML code Fixed some problems in tables and inline boxes rendering.
yuri.kobets@gmail.com
2014-02-01 04:13:03 +00:00
446d7efb72
Added :before and :after css selectors support (a limited) Fixed incorrect right floating box placement. Improved performance for pages with many floating boxes.
yuri.kobets@gmail.com
2014-01-30 04:51:33 +00:00
3ded767a44
Margins collapse is returned back with valid floating boxes handling.
yuri.kobets@gmail.com
2014-01-22 15:05:47 +00:00
909e17b1d7
* Added support for CSS selectors: :first-of-type :last-of-type :only-of-type :only-child :nth-of-type(n) :nth-last-of-type(n) :not(selector) :link
yuri.kobets@gmail.com
2014-01-21 19:40:39 +00:00
128ddf8ce0
lcase all tags and attribute names by default. Fixed bug in html entities parsing. More correct detecting and fixing unclosed <td> tags.
yuri.kobets@gmail.com
2014-01-14 16:56:33 +00:00
832af907d7
Now litebrowser uses WinHTTP to download files asynchronously. Some fixes in floating elements rendering. cairo_font is thread safe now
yuri.kobets@gmail.com
2013-12-16 00:13:45 +00:00
d97b384cfa
Added compatibility with Windows CE. Added partial support of jumping to anchor (#tag).
yuri.kobets@gmail.com
2013-10-02 21:57:36 +00:00
827af63f58
Fixed some layout rendering bugs to show web page https://mail.google.com/mail/ correctly. Half handling of CSS pseudo-elements (started with ::) - currently just removed from processing. Added document_container::create_element - here you can create own implementation for elements.
yuri.kobets@gmail.com
2013-09-17 11:28:09 +00:00
d77a1110f5
Added some missing files
yuri.kobets@gmail.com
2013-09-16 22:07:05 +00:00
aa21dd67f5
clean up
yuri.kobets@gmail.com
2013-09-16 01:53:11 +00:00
3f87a2ee01
Added support for @media at-rule in CSS (you have to implement document_container::is_media_valid to process @media correctly). Added support for sibling selectors (+ and ~)
yuri.kobets@gmail.com
2013-09-16 00:20:04 +00:00
b6e857a211
This revision significantly improve the rendering time especially for pages with many floating elements.
yuri.kobets@gmail.com
2013-09-05 00:33:50 +00:00
b5a70c99f7
Fixed: urls with '&' are parsed incorrectly. Fixed: incorrect element width if there are different borders. Fixed: floated elements with clear property are placed into incorrect place. Fixed: CSS color in rgba format are parsed incorrectly. Opacity is number from 0 to 1 (not 0-255).
yuri.kobets@gmail.com
2013-09-03 01:01:04 +00:00
30fc0c1527
Calculating heights, margins and padding with percentages value are brought into compliance CSS standards. Fixed the position calculating of absolute positioned elements.
yuri.kobets@gmail.com
2013-08-31 22:00:08 +00:00
0f8ba4e81b
Added support for CSS selectors: :first-child :last-child :nth-child :nth-last-child :is_nth_last_child Fixed incorrectly parsed CSS selector with two classes (ex. .class1.class2)
yuri.kobets@gmail.com
2013-08-30 02:09:37 +00:00
03c1a9a765
Added support for stacking contexts, z-index
yuri.kobets@gmail.com
2013-08-21 01:16:01 +00:00
0762726555
Added support for list-style-image CSS property. Some code clean up.
yuri.kobets@gmail.com
2013-08-15 01:14:37 +00:00
3da199ca5e
element::finish is renamed into element::parse_attributes. element::parse_attributes is the place where elements can parse attributes and add style properties.
yuri.kobets@gmail.com
2013-08-14 01:19:18 +00:00
18fb5f460f
Simplified the document_container::draw_background function. Most code was moved into litehtml core.
yuri.kobets@gmail.com
2013-08-14 00:35:07 +00:00
b7ed5e573c
some changes in master.css
yuri.kobets@gmail.com
2013-08-11 00:19:57 +00:00
29905a8dd6
Fixed parsing at-rules in CSS. Fixed incorrect floating elements rendering.
yuri.kobets@gmail.com
2013-08-11 00:18:58 +00:00
c8ec750368
Reduced memory usage. litehtml::element is now lightweight. litehtml::el_text is inherited from litehtml::element. The old code with pre-parsed styles implementation was moved into litehtml::html_tag class.
yuri.kobets@gmail.com
2013-08-09 21:22:07 +00:00
3fe4991708
Fixed some bugs in linux implementation. Added litebrowser_linux project as very simple test on linux (damn this was nightmare after Windows programming, but it working).
yuri.kobets@gmail.com
2013-08-01 23:11:19 +00:00
d9122cc8a2
Added multi byte strings support. Compiled on linux (not tested yet). Improved HTML entities support.
yuri.kobets@gmail.com
2013-07-30 23:20:49 +00:00