75a2bb10c4
System/Libraries/Css+Html: Implement text-decoration-line: line-through
2025-04-21 09:31:00 -04:00
d723c7d9df
System/FFI/TrueType: Reduce memory pool size from 32MB to 8MB
...
The maximum allocated memory by stbtt_RenderText() has never exceeded
2MB during testing. 8MB ought to be enough for anybody :^)
2025-04-20 10:09:58 -04:00
39973f452d
Meta: Suppress compiler warnings
2025-04-19 21:38:13 -04:00
a322c06850
Everywhere: Give stbtt its own 32MB static memory pool
...
At boot time, we preallocate 32MB of RAM to reuse for all malloc()
requests by stbtt_RenderText(), which should be more than enough for the
primary use case (browsing web pages).
2025-04-19 21:01:14 -04:00
b40820272f
System/Setup/Environment+FFI/LibC: Increase calloc/malloc mem_tasks
...
Give LibC malloc() and calloc() an array of 16 mem_tasks each, for now.
We will probably be removing this, in favor of giving each non-HolyC
library its own static memory pool, as we will do with stb_truetype.h in
a forthcoming commit.
2025-04-19 20:33:30 -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
d56a092dde
System/FFI/LibC: Use Round-robin mem_task selection for calloc
2025-04-19 16:26:09 -04:00
15926654f8
System/Core/Compositor: Show available TrueType fonts in system log
2025-04-19 16:07:17 -04:00
b9eb4cb874
System/Libraries/Graphics2D: Alloc c2d wrapper functions off of Adam task's code heap
2025-04-19 16:00:21 -04:00
9550f24f73
System/Core/Compositor: Set TrueType font defaults from global config
2025-04-19 14:34:14 -04:00
a15de6eb33
System/Libraries/Graphics2D: Update @get_truetype_text_width() to use @stbtt_GetTextWidth()
2025-04-19 14:18:15 -04:00
80f691385a
System/Utilities/TrueType: Add @stbtt_GetTextWidth()
2025-04-19 14:17:46 -04:00
546fd54a62
System/Libraries/Graphics2D: Update @get_truetype_text_width() to include advance
2025-04-19 10:42:26 -04:00
78ba717732
System/Utilities/TrueType: Update stbtt_RenderText() API to include advance
2025-04-19 10:41:55 -04:00
33b795fa93
System/Libraries/String: Add StrLenI32()
2025-04-19 10:41:11 -04:00
c54cd6ea51
System: Use Settings/config.json for debug options
2025-04-19 08:13:58 -04:00
3448acac38
System/Setup/Environment: Remove duplicate erythros_mem_task
2025-04-19 07:54:42 -04:00
c214ba9552
Meta: clang-format 20
2025-04-19 07:54:18 -04:00
e7d8b456aa
Everywhere: Update to clang-format 20
2025-04-19 07:31:54 -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
e3d6121fe3
System/Libraries/Css/Tokenizer: Include single/double quoted tokens in CSS value
2025-04-16 10:09:29 -04:00
58f2243bf1
System/Core/Compositor: Update defaults for TrueType fonts
2025-04-15 16:22:12 -04:00
0a579a4f09
System/Libraries/Html/Renderer: Handle italic/oblique text
2025-04-15 16:21:52 -04:00
97187728e8
System/Libraries/Html/Tokenizer: Add italic property to @html_dom_node
2025-04-15 16:21:07 -04:00
3b83397e60
System/Libraries/Html/Renderer: Render STRONG
2025-04-15 15:35:20 -04:00
60606317b2
System/Libraries/Html/Renderer: Render LI ordered/unordered items
2025-04-15 15:34:54 -04:00
49b1e82e55
System/Core/Compositor: Update defaults for TrueType fonts
2025-04-15 11:54:53 -04:00
d6ff8beb9f
System/Libraries/Html/Renderer: Initial support for CSS font-weight
2025-04-15 11:52:43 -04:00
d60fc53798
System/Libraries/Graphics2D: Chop 16px off X2 max pos in @get_truetype_text_width()
...
This is a quick and dirty hack to compensate for artifacts at the far
right edge of the font rasterization buffer. Chopping off 16px allows us
to get the proper width of the rasterized text.
2025-04-15 11:45:47 -04:00
0d303b0134
System/Libraries/Html/Tokenizer: Add fontWeight property to @html_dom_node
2025-04-15 11:28:07 -04:00
ae42db0be5
System/Libraries/Html/Renderer: Implement some CSS default rules
2025-04-15 10:40:28 -04:00
def7d53101
System/Libraries/Html/Renderer: Increase background_ctx to max size before fill()
2025-04-15 10:03:04 -04:00
dfb73f029c
Applications/Internet/Cyberia: Create background ctx and fill #ffffff when a new Renderer is created
2025-04-15 07:50:11 -04:00
c998d040ed
System/Libraries/Html/Renderer: Create background_ctx for each HtmlRenderer instance
2025-04-14 21:16:04 -04:00
b5d27214a1
System/Libraries/Widget: Add disabled_image property to ButtonWidget class
2025-04-14 20:41:28 -04:00
96e0009173
System/Libraries/Gui: Add disabled property to Widget class
2025-04-14 20:41:03 -04:00
b30759c12e
System/Libraries/Html/Renderer: Always return DEFAULT_FAVICON instead of NULL
2025-04-14 17:26:22 -04:00
10309b6b18
System/Libraries/Html/Renderer: Initial favicon support
...
This only supports RGBx color depths at the moment, but it's good enough
for most modern sites.
2025-04-14 16:45:51 -04:00
6532218883
System/Libraries/Html/Renderer: Handle node->textAlign a bit better
...
Just a few QoL tweaks for now, until we properly handle CSS, layout,
and everything else.
2025-04-14 10:53:05 -04:00
dd86ef6a44
Meta: Add some layout debugging stuff
2025-04-13 14:40:44 -04:00
08313be27f
System/Libraries/Html/Renderer: Refactor @render_node_list
2025-04-13 14:39:24 -04:00
fc0c98ee2b
System/Libraries/Html/Renderer: Add debug options
2025-04-12 20:12:43 -04:00
9e0668d0e0
System/Libraries/Html/Renderer: Initial support for node->textAlign
...
This only works for very simple cases, but it is enough for centering
and right-align text on sites like Wiby, and a centered Google logo. :^)
2025-04-12 19:57:49 -04:00