Commit Graph

1970 Commits

Author SHA1 Message Date
Martín Lucas Golini
336afe90d7 Fixed a rendering bug in the terminal emulator when updated line only updated spaces.
Added an optimization for scene loading.
Do not allow the spell checker renderer to try to render on too long lines.
2026-05-04 19:30:56 -03:00
Martín Lucas Golini
19c0f15196 Merge branch 'feature/sdl3' into develop 2026-05-04 12:21:19 -03:00
Martín Lucas Golini
9e3c13903d Improve percentage resolution in HTML elements. 2026-05-03 19:49:38 -03:00
Martín Lucas Golini
da30372aae Remove concepts dependency, switch temporally Linux nightly to clang. 2026-05-03 19:40:56 -03:00
Martín Lucas Golini
ecf7c20262 Fix foreground-radius definition. 2026-05-03 00:48:13 -03:00
Martín Lucas Golini
a698348abd Improve font loading and URL handling in external CSS. 2026-05-02 23:55:45 -03:00
Martín Lucas Golini
fcb2cca844 Fixes for position: sticky, absolute and fixed. 2026-05-02 19:41:10 -03:00
Martín Lucas Golini
393a784e8f Merge branch 'develop' into feature/sdl3 2026-05-02 14:45:56 -03:00
Martín Lucas Golini
89329123fb Added UIWebView and ui_html now uses that. 2026-05-02 14:45:07 -03:00
Martín Lucas Golini
1bd29d5df2 Should fix windows build. 2026-05-02 01:50:58 -03:00
Martín Lucas Golini
3226efdb24 Do not allow to set width and height of html and body from CSS since they need to have very specific sizing. 2026-05-02 01:47:08 -03:00
Martín Lucas Golini
307d9249ac Add float and clear support.
Fixes in Base64 implementation.
Fixes in remote image loading.
2026-05-02 01:12:13 -03:00
Martín Lucas Golini
d54fd398f6 Fix bad includes.
Add very hacky and basic overflow support.
2026-05-01 19:06:36 -03:00
Martín Lucas Golini
157bc2962f Added HTML forms support.
Added cookies support (now it's possible to login in websites).
Improved redirect handling in HTTP client.
Fix in `Node::find*` and `UIWidget::find*` functions to ignore closing nodes.
Fix in Node min width and height handling with pixel scale different than 1.
2026-05-01 18:52:46 -03:00
Martín Lucas Golini
936938b71f Added an option to set dynamic theming in the UICodeEditor. 2026-05-01 01:07:06 -03:00
Martín Lucas Golini
12b1ff0d62 Create the code element with the correct tag. 2026-04-30 20:59:13 -03:00
Martín Lucas Golini
76de6553b4 Introducing UITextNode, a native text node representation within the eepp UI hierarchy. This solves issues where text content incorrectly intercepts CSS structural pseudo-classes (like :nth-child and :first-of-type) because it was previously wrapped in standard UIWidget components (UITextSpan).
In standard web browsers, a `Node` represents anything in the DOM (including text), whereas an `Element` represents an HTML tag. CSS selectors strictly filter by `Element`.
Currently, `eepp`'s CSS engine (`StyleSheetSpecification`) evaluates selectors directly against `Node` sibling counts (`getNodeIndex()`, `getChildCount()`). By distinguishing between "Widgets" (Elements) and "Text Nodes" at the node level, we updated these selectors to count only true structural elements, matching web standards with zero performance overhead.
2026-04-30 20:57:32 -03:00
Martín Lucas Golini
2b5d08d3b0 UITextSpan now inherits from UIRichText, if it's inline-block it will behave as a block otherwise it will continue behaving as inline. This improves inline-block behavior and it's much close to the specification. 2026-04-30 16:49:03 -03:00
Martín Lucas Golini
10b8ed8622 Fix incorrect wrap in inline-blocks. 2026-04-30 13:31:36 -03:00
Martín Lucas Golini
6691d9c174 Improvements for ul and ol.
Added a few tags: dl, dt, dd.
Load style tags inside UIRichText blocks.
Added `display: list-item`.
2026-04-30 12:58:05 -03:00
Martín Lucas Golini
04d69e2871 Several HTML widgets fixes. 2026-04-29 14:07:56 -03:00
Martín Lucas Golini
ae0fd6bc2b Fixes for absolute positioning and some minor details. 2026-04-29 13:05:29 -03:00
Martín Lucas Golini
e1d9642dc6 Simulate content-box for HTML compat layer. 2026-04-29 00:28:11 -03:00
Martín Lucas Golini
c65122e120 UITextSpan drawBorder fix when span has padding. 2026-04-28 01:28:25 -03:00
Martín Lucas Golini
7c2fad64bc Add font shorthand parser (a simplified version to what we can support now). 2026-04-28 01:14:04 -03:00
Martín Lucas Golini
bbd91d2399 Added support for margin and padding in text spans. 2026-04-27 23:58:13 -03:00
Martín Lucas Golini
24cf3ad6c7 Added UISvg (for embedded svg in XML) and UIHTMLImage (to handle HTML img, although still WIP). 2026-04-27 16:41:37 -03:00
Martín Lucas Golini
939ce02a3a Support "inherit" keyword in CSS properties. 2026-04-27 10:53:53 -03:00
Martín Lucas Golini
82a93dada4 Added UIHTMLListItem to handle list items properly. 2026-04-27 01:38:37 -03:00
Martín Lucas Golini
41e979d314 CSS Position (Out of Flow) implementation.
Added a few plan descriptions that I want to implement later.
2026-04-26 21:50:34 -03:00
Martín Lucas Golini
d93b03f624 Pump versions.
Add keybindings to the ecode markdown viewer.
Optimization in BlockLayouter.
Hack to display code in <pre><code> HTML elements.
2026-04-26 01:12:42 -03:00
Martín Lucas Golini
d8596bbdcd Merge remote-tracking branch 'origin/develop' into develop 2026-04-25 20:48:35 -03:00
Martín Lucas Golini
8a9bc2cd47 Some HTML rendering fixes. Most important is the media query is correctly processed when combining style sheets. 2026-04-25 20:47:51 -03:00
Martín Lucas Golini
1970b8bbe9 WIP CSS Display support. 2026-04-25 18:55:39 -03:00
Martín Lucas Golini
5e85425f27 Fix bug that blocked horizontal scroll on lines larger than the viewport when horizontal scrollbar was disabled. 2026-04-25 13:41:59 -03:00
Martín Lucas Golini
bc37296f66 Added kerning cache in FontTrueType. 2026-04-25 02:03:21 -03:00
Martín Lucas Golini
18ff217a11 Don't lock the editor while matching brackets. 2026-04-25 01:13:50 -03:00
Martín Lucas Golini
6e65ef31f2 Merge branch 'develop' into feature/sdl3 2026-04-23 17:57:31 -03:00
Martín Lucas Golini
eec7eeb284 Fix a possible dead-lock during closing.
Update to actions/checkout@v6.
2026-04-21 00:20:39 -03:00
Martín Lucas Golini
7307b524f4 Fix UISceneNode::solveRelativePath.
Some fixes in LLM Chat UI, also added the option to display the reasoning (`display_reasoning`).
2026-04-20 01:42:12 -03:00
Martín Lucas Golini
7ec6e3cf1f Greatly improved signature help rendering, now allows to render in multi-line with text-wrapped and it's enabled by default. Added new options for the Auto Complete Plugin:
* **max_signature_helper_width**: The maximum width in stylesheet length of the signature helper (default value: "90%").
* **max_suggestion_documentation_width**:  The maximum width in stylesheet length of the currently selected suggestion item documentation (default value: "100%").
* **signature_help_multi_line**: Enables the signature help to be rendered in multiple lines if needed (wraps text), otherwise it will render in a single line and ensure the current parameter is visible.
* **suggestion_documentation**:  Enables the suggestion item documentation.

(SpartanJ/ecode#874).
2026-04-19 00:52:03 -03:00
Martín Lucas Golini
878307df78 Ups, forgot to export the new class in Windows build. 2026-04-18 15:55:59 -03:00
Martín Lucas Golini
4180e9d7c3 Separate the box placement logic into an static class UIPlacementUtils so it can be used in different cases (SpartanJ/ecode#874). 2026-04-18 15:24:27 -03:00
Martín Lucas Golini
da1bbda8c7 Much better documentation placement in the auto-complete suggestions function/method documentation (SpartanJ/ecode#874). 2026-04-18 13:27:03 -03:00
Martín Lucas Golini
18be45681d Prevent miss-matching new/delete when using ASAN. 2026-04-17 18:22:40 -03:00
Martín Lucas Golini
3908920485 Fix annoying warning. 2026-04-16 23:18:59 -03:00
Martín Lucas Golini
ac811a38d9 Add getSelectionRange to UIAbstractTableView and UITreeView. 2026-04-16 01:00:38 -03:00
Martín Lucas Golini
4a4da521d9 Change default keybindings using option+key for macOS to make possible to input text with those key combinations. Mostly changes on modifier keys for some operations: status control panels will switch with mod+number and ctrl+number will switch to tab number, also ctrl+tab and ctrl+shift+tab will advance and move to previous tab.
Also: "lsp-symbol-code-action" will default to cmd+return. "format-doc" will default to mod+option+f.
Important: these changes do not *change* any currently configured shortcut, existing users will have to migrate manually, this is intentional to not disrupt current users work flows.
These changes are for the issue: SpartanJ/ecode#877.
2026-04-14 20:56:49 -03:00
Martín Lucas Golini
530c869a02 Added TERM_PROGRAM and TERM_PROGRAM_VERSION environment variables to the new terminal instances (SpartanJ/ecode#878). 2026-04-14 18:32:14 -03:00
Martín Lucas Golini
16579dad0e margin: auto support.
background from body to html when html background is transparent.
2026-04-14 00:54:47 -03:00