Commit graph

77 commits

Author SHA1 Message Date
02cbb32459 Applications/Internet/Cyberia: Handle vscroll a bit better
The entire scroll handling needs to be rewritten, but that is a project
for another day...
2025-04-14 10:55:20 -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
72d626c0f1 Meta: Update scripts/build-all 2025-04-14 10:34:37 -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
3a55fce26a Meta: Update scripts/build-all 2025-04-13 06:35:07 -04:00
7ae844cf9a Meta: Update .gitignore 2025-04-13 05:57:35 -04:00
ce80c184e7 Meta: Debug stuff 2025-04-12 20:19:59 -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
e8bc19b444 System/Libraries/Html/Renderer: Fix an oopsie woopsie (advance by code point, rather than byte) 2025-04-12 18:48:58 -04:00
d068f46bc6 Meta: Remove debugging stuff 2025-04-12 18:26:43 -04:00
3201b187ec System/Api/Dns: Remove some old Slon debugging stuff that breaks Catbox DNS lookup 2025-04-12 18:16:29 -04:00
df0adc0a15 Everywhere: Changes to @html_dom_node and TrueType API
CSS properties fontFamily and fontSize are part of @html_dom_node now,
and the TrueType API only accepts I32 code point streams, so we have
to preprocess UTF-8 streams before rendering text.
2025-04-12 18:09:26 -04:00
bef1c78c5d System/Utilities/TrueType: Change pointer type to I32* for @stbtt_RenderText() 2025-04-12 18:04:40 -04:00
b01e1171a3 System/Core/Compositor: Set defaults for TrueType font categories 2025-04-12 16:23:51 -04:00
6b09ccabb6 System/Libraries/Html: Add fontFamily attribute to @html_dom_node 2025-04-11 20:11:25 -04:00
8143d59620 System/Libraries/Css/Tokenizer: Split values on comma 2025-04-11 20:10:52 -04:00
6a394f8a86 Applications/Internet/Cyberia: Set default colors for root node
Until we have a default style sheet implemented, set the default colors
to black text on white background for the root node, so that we don't
end up with unreadable black bars everywhere.
2025-04-11 17:23:01 -04:00
603e1d15ab System/Libraries/Html/Renderer: Apply bgcolor/color element attribute values to CSS 2025-04-11 17:22:29 -04:00
17910faac2 System/Libraries/Html/Renderer: Match rules in accordance with CSS Specificity 2025-04-11 16:58:48 -04:00
3e8d126fbe System/Libraries/Html/Renderer: Add NULL check to @reflow_node_list() 2025-04-10 19:48:11 -04:00
61c287f446 Applications/Internet/Cyberia: Echo window mouse wheel events
Now, we can (kind of) scroll the page from anywhere in the viewport :^)
2025-04-10 19:37:23 -04:00
7878e28027 Applications/Internet/Cyberia: Fully resolve URLs in redirect 2025-04-10 15:41:02 -04:00
e3c7350a96 Applications/Internet/Cyberia: Familiarize address bar onclick behavior
We match the following address bar behavior from Chrome and Firefox:

- When the address bar is clicked, select all text on mouse up if no
  selection currently exists.

- On address bar blur, clear the selection.
2025-04-10 15:11:40 -04:00
c45b862b2b System/Libraries/Html/Renderer: Render INPUT type=checkbox 2025-04-10 14:49:35 -04:00
4992c222d7 System/Libraries/Html/Renderer: Render INPUT type=password 2025-04-10 11:41:13 -04:00
42e4f89b8b System/Libraries/Html/Renderer: Render INPUT type=text 2025-04-10 11:35:43 -04:00
5fb71f80ca System/Libraries/Widget: Eager repaint on widget->SetText() unless otherwise specified 2025-04-10 10:58:30 -04:00
d3048f31e5 Applications/Internet/Cyberia: Add web browser
This is the initial commit of the Cyberia web browser, Html and Css
libraries.
2025-04-10 10:51:59 -04:00
3545113247 System/Libraries/Gui: Add data attribute to Widget class 2025-04-10 10:47:37 -04:00
86190d4576 System/Core/Compositor: Hold F12 to display debug info 2025-04-10 10:08:38 -04:00
3e85af48d6 Meta: Cleanup removed files 2025-04-10 10:05:54 -04:00
96226e6211 System/Libraries/Ipc: Add msg->timestamp to IpcMessage class 2025-04-10 08:37:57 -04:00
4fa0873123 Include/Gui: Set GUI_EVENT_WIN_REPAINT_TIMEOUT to 100ms
If an Ipc Message that will trigger a window repaint is received by a
Client, and the message is older than GUI_EVENT_WIN_REPAINT_TIMEOUT,
discard the repaint request.
2025-04-10 08:30:16 -04:00
ebacbeafca System/Core/Compositor: Update menubar title in @compositor_refresh(win) 2025-04-10 08:28:49 -04:00
c4f25e63c1 Applications/OS/TaskSwitcher: NULL check for win->close() keypress callback 2025-04-10 08:27:36 -04:00
e0d6102d60 Include/Gui: Add @gui_event_loop_handle_msg() to event loop
At the moment, this implementation may look a bit unnecessarily verbose,
but eventually it will allow us to be more specific in our message
handling.
2025-04-09 09:09:37 -04:00
d242f5c395 Media/Themes/Umami/Theme: Separate focus/hover logic from repaint
We shouldn't be doing this in the Theme routines to begin with, but
that's another issue altogether.
2025-04-09 09:07:50 -04:00
940e7b230c System/Libraries/Gui: Add Bool explicit_repaint to Window class 2025-04-09 09:03:18 -04:00
2b8092f418 System/Libraries/Graphics2D: Add @get_truetype_text_width() 2025-04-09 08:59:06 -04:00
5f10e5f86d Applications/Accessories/Calculator: Debounce numerical input
The Calculator isn't functional yet, but when it eventually does work,
it will be helpful to not duplicate every number keypress when the
result input widget is focused. :^)
2025-04-09 08:52:23 -04:00
26f67901cc System/Libraries/System: Add timestamp to System.Log() 2025-04-08 07:16:57 -04:00
844f36663a Meta: Suppress compiler warnings 2025-04-05 16:33:10 -04:00
c608390142 System/Setup/Environment: Enable SSE on all cores 2025-04-05 09:38:28 -04:00
850e4a84d9 Fonts: Add GNU FreeFont 2025-04-05 09:23:13 -04:00
88fc55ac18 System/Core/Compositor: Initialize TrueType fonts 2025-04-05 09:22:22 -04:00
a58151430c System/Libraries/Graphics2D: Specify font name for Text2D 2025-04-05 09:21:54 -04:00
9c43ac1073 System/Utilities/TrueType: Add @stbtt_GetFontNameDefault 2025-04-05 09:19:10 -04:00
7969bf0993 src/truetype: Add stbtt_GetFontNameDefault 2025-04-05 09:18:31 -04:00