Commit Graph

3938 Commits

Author SHA1 Message Date
Martín Lucas Golini
d8a683ee99 Fix em, ex, ch resolution in UIWebView elements. 2026-07-01 23:27:52 -03:00
Martín Lucas Golini
5ad166b648 Cleaner hit testing: removed UISceneNode::overFind() override; UIRoot now has root-scoped child traversal extent for embedded document scenes. 2026-07-01 23:11:11 -03:00
Martín Lucas Golini
e210736c2d CI Fixes, Windows not resolving local paths correctly in UIWebView. 2026-07-01 22:40:52 -03:00
Martín Lucas Golini
4c73311789 Greatly improved UIWebView implementation. 2026-07-01 20:36:00 -03:00
Martín Lucas Golini
38448008ec Merge branch 'develop' into feature/uiwebview 2026-07-01 19:10:22 -03:00
Martín Lucas Golini
f6da5ef76e Fix warning on macOS due to posix_spawn_file_actions_addchdir_np usage (we must use posix_spawn_file_actions_addchdir).
Try to run tests with borderless windows to see if macOS windows are created with the right size.
2026-06-30 11:35:33 -03:00
Martín Lucas Golini
055bcfe549 Add some logs to the failing compare images in macOS to understand what's going on. I don't want to keep forcing random window sizes to make them pass... 2026-06-30 11:01:20 -03:00
Martín Lucas Golini
2810501cba Added UIFilePickerDialog support for ecode (SpartanJ/ecode#903) and improved the dialog. 2026-06-30 00:05:29 -03:00
Martín Lucas Golini
57cdab7b7f Implemented UIFontPickerDialog.
Fixed alignment in UILinearLayout when padding is used.
2026-06-29 20:32:08 -03:00
Martín Lucas Golini
3a1c75f4f6 Added Insert Date / Time functionality (Settings -> Edit -> Insert Date, plus commands for each option).
Fixed a use after free bug in UICodeEditorSplitter.
2026-06-28 01:52:14 -03:00
Martín Lucas Golini
fba521d366 Update efsw 2026-06-27 01:19:35 -03:00
Martín Lucas Golini
e720b70863 • Fixed the keybinding merge bug. The helper was restoring missing default commands
by overwriting an occupied default shortcut, which treated user bindings like mod+d=duplicate-line-or-selection as stale
  because that command is not in the default keybinding table. Now it only adds a default when the default shortcut is actually
  free.

  Added a regression test in src/tests/unit_tests/uicodeeditor_tests.cpp:108 covering the reported case: mod+d reassigned, then
  an extra mod+e=show-markdown-preview binding exists. This was reported in SpartanJ/ecode#914.

• Implemented the splitter-level focus state cache, it will remember closed documents cursor state when reopened and it will restore cursor state per-code editor and not per-document (SpartanJ/ecode#893).
2026-06-25 11:26:31 -03:00
Martín Lucas Golini
0693688f73 Cache cursors in local sessions, this will restore last cursor position of a recently closed file. 2026-06-24 01:42:12 -03:00
Martín Lucas Golini
7cf9a685b9 Merge branch 'develop' into feature/uiwebview 2026-06-24 00:00:08 -03:00
Martín Lucas Golini
9f7a676c77 Fix for macOS build issue (why this appears now?). 2026-06-23 23:04:33 -03:00
Martín Lucas Golini
d939766355 Disable glew by default (entering deprecation). 2026-06-23 22:54:44 -03:00
Martín Lucas Golini
e5f3983c44 Upgrade SOIL2.
Allow to disable GLEW dependency, it will now be disabled by default so we can test. The idea is to remove the dependency completely once this is confirmed to work.
2026-06-22 10:12:02 -03:00
Martín Lucas Golini
77099864e5 Nits in UIFileDialog and serialize/unserialize for later use in ecode. 2026-06-18 00:31:36 -03:00
Martín Lucas Golini
14a47c64d0 Update efsw and backport utf encoder/decoder fixes to eepp. 2026-06-17 00:53:07 -03:00
Martín Lucas Golini
b83c21bfdd ecode: Display the keybindings of some commands I forgot to add the keybind display. 2026-06-15 13:25:22 -03:00
Martín Lucas Golini
3fa38a2574 Fixes in HTML td height. 2026-06-15 02:36:16 -03:00
Martín Lucas Golini
d04f4502db Fix minor bug in UIFileDialog text input row selection. 2026-06-15 01:32:28 -03:00
Martín Lucas Golini
c47f437903 Merge branch 'develop' into feature/uiwebview 2026-06-14 20:01:54 -03:00
Martín Lucas Golini
407fc1ae11 Minor nit: improve dropdown list scrolling. 2026-06-14 16:30:21 -03:00
Martín Lucas Golini
3312419fd6 Fix horizontal scroll when line wrap type set is Line Breakin Column (SpartanJ/ecode#915).
A few improvements for related to LSP rules overriding (SpartanJ/ecode#913).
2026-06-13 18:40:33 -03:00
Martín Lucas Golini
e9a5101211 Still wrong but passes tests. 2026-06-13 01:08:48 -03:00
Martín Lucas Golini
4b1e9b6574 Fix tests. 2026-06-13 00:29:03 -03:00
Martín Lucas Golini
eb9f3bff8c Merge branch 'develop' into feature/uiwebview 2026-06-12 23:41:12 -03:00
Martín Lucas Golini
96cee9d1c4 This should make premake5 configuration beta8 friendly.
Improvement for: SpartanJ/ecode#913.
2026-06-12 14:43:35 -03:00
Martín Lucas Golini
4005d2ccc5 Fix MSBuild path. 2026-06-12 00:11:44 -03:00
Martín Lucas Golini
b91b922ac8 This should fix the use after free rare issue: C++ destroys class members in reverse declaration order. mProcess was declared before mHandlers. So during destruction, mHandlers was freed first, then mProcess destructor ran and joined the async read threads but by then the threads were already accessing freed memory. 2026-06-11 20:47:27 -03:00
Martín Lucas Golini
10588e3eb4 Revert last commit, won't fix it properly. 2026-06-11 15:29:36 -03:00
Martín Lucas Golini
ff97358695 This should fix a possible but very implausible heap-use-after-free issue in the LSP client. 2026-06-11 02:16:24 -03:00
Martín Lucas Golini
650bbed0c5 Add MiMo support. 2026-06-11 01:57:57 -03:00
Martín Lucas Golini
e8be533de6 eepp: Added FileMapped class for mmap'ed files, added IOStreamFileMapped to be able to use it as any other IOStream implementation.
Some nits in FileSystem::fileGet, added support for case-insensitive BMH implementation.
ecode: project global search now uses mmap'ed files for big files and made several tweaks and optimizations to avoid trashing the memory allocator.
2026-06-10 02:03:31 -03:00
Martín Lucas Golini
5cba387497 UIWebView with its own UISceneNode support WIP. 2026-06-09 01:30:14 -03:00
Martín Lucas Golini
b64b8f21f0 Improve signature documentation pop-up positioning when displaying signature help.
In system font resolver: Prefer native/open desktop families for CSS generics.
2026-06-09 01:23:32 -03:00
Martín Lucas Golini
785fd41bd5 Fix crash when clicked a menu sub-menu button form the code editor context menu. 2026-06-08 13:56:29 -03:00
Martín Lucas Golini
05e81c23de Communicate the reason for the layout invalidation, store and process the reasons, this is an initial setup, we will continue working on it. The new system will allow us to fine grain the invalidations to avoid re-layouting on each attribute change, this commit already does some of this but it's not fully fine-grained and needs more work. 2026-06-08 02:33:49 -03:00
Martín Lucas Golini
12413ea630 Temporary fix until we have proper layout invalidation. 2026-06-07 02:00:42 -03:00
Martín Lucas Golini
788dcc6bf4 Add "defer" to force CSS files to load asynchronously (this will help unit-test some layout issues).
Added `Browser-Like Layout Invalidation Plan`.
Minor changes in HTML example.
Added a couple of examples that I'll use for unit-tests.
2026-06-07 00:32:54 -03:00
Martín Lucas Golini
b75cab5939 Fix html element sizing. 2026-06-06 19:16:35 -03:00
Martín Lucas Golini
68904b9656 Fixed layouting performance issues in UIRichText (layout invalidation trashing issues). Everything is highly commented given that none of these changes are obvious and it's very easy to break it.
Added tests to verify possible regression. And added a simple benchmark with some metrics to inspect layouting invalidation issues.
2026-06-06 15:54:54 -03:00
Martín Lucas Golini
9bc9b099ad Implemented calc, min, max, clamp CSS functions. 2026-06-06 02:19:40 -03:00
Martín Lucas Golini
d342fd88ef Fix invalid access. 2026-06-05 01:32:24 -03:00
Martín Lucas Golini
288950bf34 Image sizing fixes.
Added support for `:where` and `:is`.
2026-06-05 00:18:26 -03:00
Martín Lucas Golini
9bfa128658 Use the new tab position setting for *all* new tabs (SpartanJ/ecode#904). 2026-06-04 16:42:10 -03:00
Martín Lucas Golini
bd2c8991a7 Fix incorrect calculations in grid layout when pixel density != 1. 2026-06-04 13:43:08 -03:00
Martín Lucas Golini
5d0e31e52e Allow to inspect widget style from widget inspector. 2026-06-04 02:00:39 -03:00
Martín Lucas Golini
7aaa068d61 Fix Event::OnFocusWithin and Event::OnFocusWithinLoss not being correctly emited. 2026-06-04 01:02:30 -03:00