aboutsummaryrefslogtreecommitdiffstats
path: root/src/render_table.cpp
Commit message (Collapse)AuthorAgeFilesLines
* flex: more flex tests passedYuri Kobets2023-12-281-4/+4
|
* Added support for caption-side CSS propertyYuri Kobets2023-08-011-10/+24
|
* refactor render_item based classesYuri Kobets2023-06-131-1/+19
| | | | All render_item based classes are moved into the own headers
* Optimizing floating boxes renderingYuri Kobets2023-06-061-25/+7
| | | | | | | | | * is_floats_holder function is renamed to is_block_formatting_context * All floating boxes related functions are moved to new class formatting_context * The class formatting_context was passed as argument to the render function * render function is now is wrapper for _render. The render function creates formatting_context when required
* Rendering refactoringYuri Kobets2023-05-091-35/+26
| | | | | | | | | * max_width argument removed from _render function * added render_width into containing_block_context structure. This member should be used to render element instead of max_width * _render protected function is replaced with render function * apply auto-margins from parent element. Auto margins must not be applied inside render function
* fixed table rendering with width defined as percentYuri Kobets2023-04-281-2/+9
|
* table rendering fixYuri Kobets2023-04-151-5/+7
|
* fixed table renderingYuri Kobets2023-04-141-4/+12
|
* Fixed: (min/max) width/height calculating with percent units.Yuri Kobets2023-03-291-38/+16
|
* fixed: tr bgcolor doesn't work #252Yuri Kobets2023-02-171-1/+1
|
* New tests and fixes for inline renderingYuri Kobets2023-02-161-13/+19
| | | | | | | * test10.htm - test for issue #247 * test11.htm - test for issue #249 * test12.htm - inline text rendering * test13.htm - vertical align test
* fix: render_item_table::_render must return minimum width including ↵Yuri Kobets2023-02-071-1/+1
| | | | paddings/borders/margins
* Redesigned inline elements renderingYuri Kobets2023-02-011-4/+7
|
* cosmeticsstasoid2022-12-141-1/+1
|
* fix #236 (incorrect table width)stasoid2022-12-091-1/+1
| | | | | | | | | | The return value of render() is "max" element width (when formatting the content without breaking lines) given particular container width. If max_table_width is less than table_width, that's fine. It means the table is stretched to fit its container, but its contents is smaller. So we return max_table_width. However, if max_table_width is greater than table_width, we should return table_width, because by doing table layout we found out that table_width is the maximum width the table can have *given this container width*. (Well, not quite, but something like that.)
* Internal refactoring (#212)Yuri Kobets2022-09-141-0/+487
* Refactored CSS properties All CSS related properties are moved into the separate class css_properties. Getters and setters are removed from classes element and html_tag. Access to the css_properties rleased via css() [ro] and css_w() [rw] methods * fix: el_text don't have to copy all css properties from parent * Refactored rendering code * Added flex and inline_flex values for display css property * Implementing box generation https://www.w3.org/TR/CSS22/visuren.html#box-gen * Split inlines on block box inside * Split parsing and rendering trees. * Fixed some bugs * Fixed: impossible to click urls on Obama wiki's toc * Make element::get_placement work again * Fixed: incorrect rendering table captions * find_styles_changes function returned to the element class * set parent correctly during render items split * fixed urls on https://en.cppreference.com/w/cpp/container/vector * fixed rendering blocks with width in percents Example: https://web.archive.org/web/20110101155107/http://www.unicode.org/ Issue #208 * Fixed placement of blocks with "overflow: hidden" with floating boxes. * refactoring of rendering block * Selectors :before and :after returned back with fixed behaviour. * fixed render_item::is_last_child_inline * fixed: text inside nested inlines has extra paddings/margins * fixed documet test