Commit graph

78 commits

Author SHA1 Message Date
2b1851772e System/Libraries/Html/Reflow: Handle dynamic width/height for images 2025-05-03 18:28:54 -04:00
04ae4c4055 System/Libraries/Html/Renderer: Set base context on image load 2025-05-03 18:27:54 -04:00
ec6c463753 System/Libraries/Html/Renderer: Apply HTML width/height attributes to node 2025-05-03 18:27:26 -04:00
6d457df08f System/Libraries/Html/Tokenizer: Fix another issue with unquoted HTML attributes being discarded 2025-05-03 14:12:54 -04:00
21ad3fabfb System/Libraries/Html/Renderer: Handle 'small' HTML tag 2025-05-03 02:57:06 -04:00
012d32110e System/Libraries/Html/Reflow: Collapse margin-top into previous block
We will most likely end up having to redo this in the future, but for
now it's a nice QoL to avoid double-spacing between adjacent blocks.
2025-05-03 02:37:17 -04:00
84ffabf7b7 System/Libraries/Html/Reflow: Some hacks for inline-block and page height 2025-05-02 21:24:57 -04:00
a5f0b0b4ee System/Libraries/Html/Reflow: NULL check on parent widget 2025-05-02 18:50:31 -04:00
7c58320ac5 System/Libraries/Html/Renderer: Increase size of work buffer for @set_css_distance to avoid crashing 2025-05-02 18:19:09 -04:00
569e2e4b70 System/Libraries/Html: Split Reflow into separate source file 2025-05-02 18:05:12 -04:00
f71505a004 System/Libraries/Html/Tokenizer: Fix issue with unquoted HTML attributes being discarded 2025-04-30 21:27:39 -04:00
938bb8cf80 System/Libraries/Html/Tokenizer: Add resolved(MBPWH) members to @html_dom_node class 2025-04-30 21:22:27 -04:00
704c3962f5 System/Libraries/Graphics2D: Fix some line-drawing inaccuracies 2025-04-30 08:07:36 -04:00
120c68d305 System/Libraries/Html/Renderer: Don't modify width,height of background
This should be done by the host application's window resize callback.
2025-04-29 14:17:32 -04:00
0cb9d96b15 System/Libraries/Html/Renderer: Use RectWidget for background_widget 2025-04-29 11:31:11 -04:00
b55f58ebed System/Libraries/Html/Renderer: Use BorderedRectWidget for block_widget instead of Context2DWidget 2025-04-29 11:04:31 -04:00
9cf917cb8c System/Libraries/Html/Renderer: Slight refactor @render_node_list 2025-04-28 12:40:02 -04:00
ef803c3d1e System/Libraries/Html/Renderer: Add @create_bordered_rect_from_resolved_node 2025-04-28 12:30:54 -04:00
d993ffdd66 System/Libraries/Html/Renderer: Apply CSS border values to node 2025-04-27 18:33:56 -04:00
75a11896ae System/Libraries/Html/Renderer: Refactor grouped margin/padding into separate functions from @apply_css_properties_to_node 2025-04-27 17:37:21 -04:00
61fd349325 System/Libraries/Html/Renderer: Apply CSS distance values to node->margin, node->padding 2025-04-27 15:28:31 -04:00
2b0704ab79 System/Libraries/Html/Tokenizer: Change border from @css_area to @css_border 2025-04-27 14:31:54 -04:00
a74a7bfa98 System/Libraries/Html/Tokenizer: Add CSS margin, border, padding to @html_dom_node 2025-04-27 13:53:57 -04:00
e95911da46 System/Libraries/Html/Renderer: Refactor @render_node_list 2025-04-27 13:39:27 -04:00
80f599a19a System/Libraries/Html/Renderer: Apply CSS distance types other than pixels to node width/height 2025-04-26 18:57:51 -04:00
49cb267474 System/Libraries/Html/Tokenizer: Add width/height DistanceType to @html_dom_node 2025-04-26 18:56:30 -04:00
e35d9978bb System/Libraries/Html/Renderer: Set initial CSS value for node width/height to undefined (-1) 2025-04-26 17:32:53 -04:00
ee2114876a System/Libraries/Html/Renderer: Move some element defaults to Default.css 2025-04-26 10:50:49 -04:00
4d688e70dc System/Libraries/Html/Renderer: Allow :link pseudo-class to override text-decoration-color 2025-04-26 10:47:36 -04:00
9d9fb80aa9 System/Libraries/Html/Renderer: Set node->display and debugging values earlier 2025-04-26 10:31:11 -04:00
c486e4cb02 System/Libraries/Html/Renderer: Temporary hack for link styles until we implement pseudo-classes 2025-04-25 14:37:47 -04:00
500cc4d913 Meta: Add more CSS debugging info 2025-04-25 14:34:28 -04:00
8bad367d08 System/Libraries/Html/Renderer: Parse rgb,rgba color tuples 2025-04-24 21:09:30 -04:00
3bf6238aac System/Libraries/Html/Renderer: A whole bunch of CSS changes
We now handle simple and compound selectors, but not yet pseudo-classes
or (most) combinators.
2025-04-24 15:17:15 -04:00
04a602bb3b Meta: Update debugging stuff 2025-04-23 10:27:21 -04:00
d9b835cea3 System/Libraries/Html/Renderer: Handle font-size pt values 2025-04-23 10:25:57 -04:00
652396a18c System/Libraries/Html/Renderer: Apply CSS display rules in order 2025-04-23 09:22:38 -04:00
453d6f35a5 System/Libraries/Css+Html: Handle text-align: left 2025-04-22 15:45:39 -04:00
1cf0007b0b System/Libraries/Css+Html: Handle display: inline-block 2025-04-22 15:34:17 -04:00
75a2bb10c4 System/Libraries/Css+Html: Implement text-decoration-line: line-through 2025-04-21 09:31:00 -04:00
b7cab3b419 System/Libraries/Html/Renderer: Use renderer->task instead of erythros_mem_task where applicable 2025-04-19 16:28:14 -04:00
c214ba9552 Meta: clang-format 20 2025-04-19 07:54:18 -04:00
402d802d2f System/Libraries/Html/Renderer: Set text underline height to 2px 2025-04-16 19:43:18 -04:00
5192ae34ec System/Libraries/Html/Renderer: Set focus is autofocus attribute is present 2025-04-16 18:21:31 -04:00
5ea8809a34 System/Libraries/Html/Tokenizer: Support empty attributes 2025-04-16 18:04:54 -04:00
4ef542cf32 System/Libraries/Html/Renderer: Keep track of form element widgets
Save a pointer to the corresponding Gui widget for each form element as
an attribute in the @html_dom_node.

I'm not a fan of doing this, but it is probably one of the better
options considering the way things are currently implemented, and the
remaining work to be done.
2025-04-16 14:57:33 -04:00
99268200f4 System/Libraries/Html/Renderer: Fix BGR/RGB flip in background
This is no longer needed and breaks things, so let's revert it.
2025-04-16 14:55:31 -04:00
24500f52a3 System/Libraries/(Css,Graphics2D,Html): Support underlined text
This commit adds the necessary functions to minimally implement support
for CSS text-decoration: underline.
2025-04-16 14:53:16 -04:00
622c35e038 System/Libraries/Html/Renderer: Apply CSS and HTML Element attribute width/height values to form elements 2025-04-16 10:36:51 -04:00
e60ffee006 System/Libraries/Html/Renderer: Unset node->display_block based on CSS value 2025-04-16 10:19:50 -04:00