Commit Graph

187 Commits

Author SHA1 Message Date
Andy Maloney
3b4c19abe3 {haiku} Fix debug output in LiteHtmlView::draw_borders()
Debug values of border widths were incorrect on output.

(I'm not building haiku - just noticed it when reading the code.)
2024-04-23 01:17:37 +03:00
stasoid
0137aa400a fix @import 2024-04-22 00:11:45 +03:00
stasoid
1f812472a2 fix clang warnings 2024-04-11 13:27:30 +05:00
stasoid
7065da66f2 Merge remote-tracking branch 'upstream/master' 2024-04-09 13:17:47 +05:00
stasoid
3226d74add Add standard-compliant css parser 2024-04-09 10:12:46 +05:00
Yuri Kobets
b5ab35fa12 container_cairo_pango: select font from list of available fonts 2024-04-01 15:59:08 +03:00
Yuri Kobets
6249f6dd89 fixed: container_cairo_pango doesn't use specified fonts 2024-03-31 13:38:50 +03:00
stasoid
54646bdbda Merge remote-tracking branch 'upstream/master' 2024-03-29 08:59:35 +05:00
Yuri Kobets
215172d6d7 fix test_container 2024-03-29 03:04:40 +03:00
Yuri Kobets
2f207bc349 cairo_container: apply repeat-x/repeat-y to the gradients 2024-03-29 03:04:40 +03:00
Yuri Kobets
7d1ca0328f Added support for conic gradient 2024-03-29 03:04:40 +03:00
Yuri Kobets
18cc822603 Fixed origin top/height for radial gradient 2024-03-29 03:04:40 +03:00
Yuri Kobets
3fdf6f6303 fixed tests building and failed tests 2024-03-29 03:04:40 +03:00
Yuri Kobets
c09b943216 draw radial gradient 2024-03-29 03:04:40 +03:00
Yuri Kobets
e455a0b50f Background draw redesigned. Linear gradient support. 2024-03-29 03:04:40 +03:00
Yuri Kobets
58a1db79b9 Background parsing fixex. Added support for linear gradient 2024-03-29 03:04:40 +03:00
faywong
270b7389d1 Fix build error caused by non-const copy ctor of cairo_surface_wrapper
Detailed error context: 
containers/cairo/cairo_images_cache.h:64:11: note: in instantiation of template class 'std::__value_type<std::string, cairo_surface_wrapper>' requested here
                if(iter != m_images.end())

MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include/c++/v1/__utility/pair.h:54:5: error: the parameter for this explicitly-defaulted copy constructor is const, but a member or base requires it to be non-const
    pair(pair const&) = default;
2024-03-27 17:17:50 +03:00
stasoid
55612fcc7c Convert property_value to use std::variant 2024-03-23 20:07:28 +05:00
stasoid
434054cf76 fix Visual Studio warnings 2024-03-07 17:18:48 +03:00
Yuri Kobets
738275bc30 Revert "Fix windows build issues."
This reverts commit e8788a97ef.
2024-02-25 19:40:52 +03:00
Yuri Kobets
04628a323f Check if NOMINMAX is not defined 2024-02-25 19:15:30 +03:00
Yuri Kobets
6bb1d4160d Merge branch 'master' into common_cairo_container 2024-02-25 18:35:41 +03:00
Yuri Kobets
6a0cb81436 reserve methon of cairo_images_cache return true if reserved something 2024-02-25 17:59:23 +03:00
Yuri Kobets
a71d6f5cd1 some changes in windws container 2024-02-25 17:41:00 +03:00
Yuri Kobets
6044a59826 added simple images cache for cairo based containers 2024-02-24 16:57:22 +03:00
Yuri Kobets
fe84eff36b Change location of containers
Now:
* cairo - contains cairo container
* windows - contains containers for windows
2024-02-24 00:20:45 +03:00
Yuri Kobets
e7d4ef08d0 Move text backend from container_linux to cairo_pango 2024-02-23 18:37:36 +03:00
stasoid
82982bffda fix min/max on Windows 2024-02-22 21:20:07 +06:00
Yuri Kobets
e5ca809cea Removed dependency of the Gdk::Pixbuf and images cache 2024-02-22 02:49:30 +03:00
Matthew Allen
e8788a97ef Fix windows build issues. 2024-02-19 21:41:56 +11:00
Yuri Kobets
f0fb2eea07 Linux container: added support for borders style
Added support for styles:
dotted, dashed, double, inset, outset, groove, ridge
2024-02-10 01:17:36 +03:00
Yuri Kobets
d4453f5d4e Refactoring for zero warnings
Added compiler options: -Werror -Wall -Wextra -Wpedantic
2024-02-01 01:32:13 +03:00
Yuri Kobets
23a8523cdf Scale borders radius to prevent corner overlap
Ref: https://www.w3.org/TR/css-backgrounds-3/#corner-overlap
Also changes in cairo_linux container to support corners with different
radius.
2023-12-29 00:27:30 +03:00
Yuri Kobets
4b633c6487 container_linux: don't draw background image with zero size 2023-12-22 02:34:09 +03:00
Yuri Kobets
709855c1dc fix test container base path 2023-12-21 23:53:36 +03:00
Yuri Kobets
42632777fb Fix compile bugs on Windows 2023-10-18 03:56:58 +03:00
stasoid
01f186a172 fix win32_container after commit 3b896be 2023-09-11 22:40:00 +06:00
Yuri Kobets
3b896beede changed signature of document_container::set_clip
Removed arguments valid_x and valid_y because they are always true
2023-05-12 18:13:13 +03:00
stasoid
19095e184e test_container: update for API change 2023-02-25 11:19:59 +06:00
stasoid
28a2831518 support multiple background images 2023-02-25 10:33:42 +06:00
stasoid
65645f9ac4 test_container: add more font sizes 2023-02-18 07:37:53 +06:00
stasoid
fd8f7e9fee test_container: update fonts/readme.txt 2022-12-12 13:04:02 +06:00
stasoid
3ee3977bce test_container: implement draw_list_marker (only square bullets) 2022-12-12 07:31:26 +06:00
stasoid
4f92aa42f0 test_container: implement draw_background
only color, no images
only 2 values of opacity are supported:
   color.alpha == 0  fully transparent
   color.alpha != 0  fully opaque
2022-12-12 06:31:35 +06:00
stasoid
fcd32a9b7f test_container: implement import_css 2022-12-12 06:03:29 +06:00
stasoid
522524220f test_container: update fonts/readme.txt 2022-12-11 15:29:02 +06:00
stasoid
e8c0e3627a readfile: C -> C++ 2022-12-11 08:31:20 +06:00
stasoid
778a6e2c63 Add render tests
Render tests are .htm files in litehtml/test directory.
Tests starting with "-" are disabled.

Correct rendering is in corresponding .htm.png file.
To generate .png file, run ctest from litehtml/build. The test will fail
and create xxx.htm-FAILED.png file. Rename it to xxx.htm.png

One ASCII raster font with 3 sizes is supported, see litehtml/containers/test/fonts. This should be enough for tests.
Border painting is supported, only solid borders.
Backgrounds, images and list markers are not supported.
2022-12-11 04:20:48 +06:00
stasoid
df33364021 gdiplus_container: draw dotted, dashed and double borders
- "dots" are squares
- dashed border artifacts at corners are not handled
- double border artifacts at corners are not handled
2022-12-01 16:41:45 +06:00
Yuri Kobets
137038f94a
Merge pull request #229 from BailiFlyingCat/master
Solve the problem that the parent class calls the subclass function in the destructor
2022-11-29 00:30:44 +03:00
lich
11a681f5c8 Solve the problem that the parent class calls the subclass function in the destructor 2022-11-27 20:33:34 +08:00
stasoid
6ff77337fd remove tests that don't test anything 2022-11-27 13:26:56 +06:00
stasoid
de4893f0b6 document::createFromString optimization:
Move css property parsing from css_properties::parse (which is called from html_tag::parse_styles for every tree node)
to style::add_property (which is called during stylesheet parsing).
document::createFromString: 1287 ms -> 1048 ms on Obama wiki
2022-11-27 02:48:04 +06:00
stasoid
f843d66fb3 win32_container: fixes for VS2022 2022-11-07 14:53:32 +06:00
stasoid
2a3091d505 win32_container: fix incorrect text length computation 2022-10-30 13:21:49 +06:00
stasoid
a6177d1d5e remove wchar support
closes issue #217
2022-10-21 17:51:29 +06:00
stasoid
8e21841ad9 Update win32_container and gdiplus_container 2022-10-18 09:13:45 +06:00
Yuri Kobets
1aeade0c8c fixed: memory leak in container_linux::text_width 2022-09-27 17:41:50 +03:00
Tig Kindel
8aa119c59b removed .orig files 2022-08-10 15:18:56 -06:00
Tig Kindel
1c4c9b49a8 merge 2022-08-10 15:17:19 -06:00
stasoid
ea3c8f7f33 cairo_container: fix handling of invalid list-style-image
page: https://en.wikipedia.org/wiki/UTF-8#Invalid_sequences_and_error_handling
culprit: ul{list-style-image:url(/w/skins/Vector/resources/common/images/bullet-icon.svg?d4515)}
(invalid because svg is not supported)
2022-03-26 20:12:55 +06:00
Yuri Kobets
5193a0af5c container_linux: avoid repeated loading of failed images 2021-11-08 00:48:00 +03:00
Yuri Kobets
91774bbc39 Fixed bug in Cairo CSS font handling (Windows) 2021-11-07 19:25:07 +03:00
Yuri Kobets
7d234d9a7e Use pango library as text renderer for container_linux 2021-11-07 03:53:00 +03:00
Yuri Kobets
1458495dd4 Merge branch 'master' of github.com:litehtml/litehtml 2021-11-05 20:22:19 +03:00
Yuri Kobets
beeb735ed3 Fixed bugs in fonts handling in container_linux 2021-11-05 20:21:49 +03:00
Yuri Kobets
eda357bded Fixed build errors on Windows 2021-11-05 03:33:14 +03:00
Yuri Kobets
aaf3fba8ed Updated container_linux 2021-11-05 01:47:15 +03:00
Yuri Kobets
58e92d6dc6 Extended support for ordered lists.
Supported list-style-type: decimal, decimal-leading-zero, lower/upper-latin, lower/upper-alpha, lower/upper-roman, lower-greek
2020-05-10 02:55:34 +03:00
Alex Zhondin
948930ad35 support ordered lists 2020-05-09 13:44:24 +03:00
Charlie Kindel
97f92ca720 Support font names surrounded by single quotes 2020-02-16 17:26:19 +01:00
Charlie Kindel
da936b351e Merge branch 'master' of tig:tig/litehtml 2020-02-16 16:44:40 +01:00
Charlie Kindel
433da5df8c Fix for building litehtmlbrowser in VS2016 2020-02-16 16:44:23 +01:00
Adam Fowler
eb433d8d66 Added rendering of html string 2020-01-01 10:44:08 -05:00
Adam Fowler
911a6daf73 Added rendered message sending 2019-12-31 11:47:37 -05:00
Adam Fowler
4a58d5099d First Haiku container implementation 2019-12-30 15:52:30 +00:00
Sky Morey
cd15b54730 Added testing 2019-08-17 20:26:08 -05:00
Yuri Kobets
7abfe7d83e cairo_container: compilation error fix for UTF8 configuration 2018-09-10 23:12:21 +03:00
NikitaFeodonit
3104c078dc Convert line delimiters to Unix style. 2018-05-25 17:05:49 +03:00
Yuri Kobets
013b065e94 Added support for custom color names. 2016-08-01 21:40:56 +03:00
Yuri Kobets
1ac842dd5f Fill media.width and media.height 2016-05-19 15:56:58 +03:00
Yuri Kobets
dfc2b9cfd5 Compile failed with gcc (fixes issue #33)
Updated container_linux for latest changes in litehtml.
2015-09-13 15:16:37 +03:00
Yuri Kobets
fcb2ac8fcc Some changes in containers to pass const shared_ptr<>& 2015-07-10 00:50:50 +03:00
Yuri Kobets
14208ecda0 using override keyword in cairo_container
added default implementation for document_container::link function
2015-07-06 23:39:44 +03:00
Yuri Kobets
192987ecc9 Fixed all bugs. Rendering working well. 2015-06-30 01:23:58 +03:00
Yuri Kobets
5c4ca572d5 Fixed linux container for the latest litehtml 2015-06-21 23:49:13 +03:00
Yuri Kobets
019969e721 Some fixes after merging latest pull requests 2015-06-21 22:24:51 +03:00
Julien Hamaide
3fdac9f1ce Support for lang selector 2015-06-20 23:43:28 +02:00
Yuri Kobets
0052754401 Some improvements int CMakeLists.txt and linux container. 2015-06-10 23:21:58 +03:00
Yuri Kobets
14fd7f4f7b Updated container_linux for the latest version of litehtml
Add CMakeLists.txt file to build litehtml with cmake
2015-06-02 01:00:20 +03:00
Yuri Kobets
ec0aa7c059 Merge pull request #10 from FishingCactus/fix_const_accessors_upstream
Constness with accessors
2015-05-18 17:16:44 +03:00
Pieter Vantorre
6a1475ed81 updated containers 2015-05-18 14:08:30 +02:00
Yuri Kobets
a03b171034 Added "litehtml::document* doc" parameter into document_container::create_element 2015-05-11 00:47:05 +03:00
Yuri Kobets
5f8874dacd draw_borders now accept litehtml::borders as parameter.
updated cairo_container for new draw_borders parameters and some fixes with the borders appearance.
2015-04-26 23:03:33 +03:00
Yuri Kobets
214558eaf5 Apply border radius to the boxes with hidden overflow. 2015-04-26 15:57:59 +03:00
Yuri Kobets
341f2a1ad4 Fixed: borders are not visible for <img> tag with border-radius.
Improvement: litehtml always convert border-radius units into px (even percent).
2015-04-12 19:54:13 +03:00
Yuri Kobets
7687d4f8c7 Added border-radius with percent value into cairo_container 2015-04-02 23:21:29 +03:00
Yuri Kobets
6fcafb1e03 Using shared_ptr for images in Win32 cairo_container. 2015-03-26 23:16:58 +03:00
Yuri Kobets
320b3beeb0 reset display in to block for floating elements
added attributes parameter into document_container::create_element
2015-01-11 04:15:05 +03:00
Yuri Kobets
944e023921 one small fix in the cairo_font to use the default font if the mapping failed. 2015-01-02 20:02:58 +03:00