Commit Graph

158 Commits

Author SHA1 Message Date
Martín Lucas Golini
da5ca25297 Added a Copy Contents button in AI Chat UI globes (since copying directly won't resolve the links automatically).
Fix how `ECODE_SHAREDIR` is set.
Fix a very rare race condition in LSPClientPlugin.
Always resolve line number when locating files (do not enforce the need of the absolute path).
Add aliases for YAML and Markdown.
2025-12-28 23:28:59 -03:00
Martín Lucas Golini
396b3d9d07 Fix paste with middle-click in OSes with no primary selection.
Fix emoji color positioning (broke in previous commit).
Prevent dead-locks in LSP *very* heavy usage scenarios (added a few logs i might remove later).
Enable auto-complete list highlighting by default.
2025-12-23 18:04:36 -03:00
Martín Lucas Golini
1d2369ecf9 Fix Process::kill() in Windows.
And a couple of minor fixes.
2025-11-27 11:45:11 -03:00
Martín Lucas Golini
2115546349 Refactor and performance improvements. 2025-11-03 00:06:58 -03:00
Martín Lucas Golini
4814569db1 Implemented workspace/didChangeConfiguration command in LSP client. Now it's possible to set LSP settings for this command (SpartanJ/ecode#694). 2025-10-30 22:15:20 -03:00
Martín Lucas Golini
7dde5826c7 In widgets rename all the addEventListener calls to on.
Some minor fixes in cpp, css, xml and html syntax highlighters.
2025-10-03 21:12:08 -03:00
Martín Lucas Golini
bdde898d52 MouseBindings in UICodeEditor WIP. 2025-08-25 00:41:54 -03:00
Martín Lucas Golini
54aaeb4931 Spell-checked the whole project. 2025-08-22 01:33:51 -03:00
Martín Lucas Golini
4b4a5f3491 More work on the Spell-Checker (SpartanJ/ecode#515).
Spell-Checked a lot of code.
2025-08-21 01:43:42 -03:00
Martín Lucas Golini
66e793436c Implemented a basic Spell Checker plugin using typos-cli. Still needs some improvements but it's working (SpartanJ/ecode#515). 2025-08-20 20:45:36 -03:00
Martín Lucas Golini
f8dde719a6 Nit: improve LSP mouse hover merging with linter errors (commented in SpartanJ/ecode#620). 2025-08-17 23:08:46 -03:00
Martín Lucas Golini
0ec2a4dba9 Try fix invalid memory access in SyntaxDefinitions.
Added attach in Chat UI.
Some minor improvements in Http pool implementation.
2025-08-12 00:49:13 -03:00
Martín Lucas Golini
f4a58fd585 Do not trigger documentHover if server capabilities do not provide hover.
Fix in TypeScript pre-definition.
2025-07-14 01:00:03 -03:00
Martín Lucas Golini
4877a4341a Added "Buffer Only Mode" to Global Search & Replace (#545).
emscripten build is now multi-threaded only.
2025-07-05 20:57:21 -03:00
Martín Lucas Golini
e0b763f637 Node debugger fixes.
LSP mouse hover fix when there's also a linter error in the same position.
Fix in emscripten file parameter parsing.
2025-07-02 01:41:18 -03:00
Martín Lucas Golini
3797aa877b Minor refactor in SyntaxTokenizer.
Open .xbm and .xpm files as C (SpartanJ/ecode#532).
2025-06-28 20:55:09 -03:00
Martín Lucas Golini
3170fd79ff Fix Node::removeActionsByTag and Node::getActionsByTag using the wrong tag type (and in consequence not removing anything whe requested, generating crashes on some cases). Improved LSP restart stability, although I still can crash it on some rare cases, haven't found the problem yet. 2025-06-22 20:47:20 -03:00
Martín Lucas Golini
e4bf8215a6 Prevent crashes when restarting the LSP server. 2025-06-14 14:03:58 -03:00
Martín Lucas Golini
132dd01ecd More WIP for TextMate grammars support. 2025-05-19 20:54:03 -03:00
Martín Lucas Golini
2a88bac8a1 Performance improvements due to not debouncing some function calls.
Adjust JSX and TS syntax definitions.
2025-04-02 20:24:45 -03:00
Martín Lucas Golini
dfb0820d0f Added a new fuzzy matching algorithm, it should be better than the previous version, it's similar to what most editors have (implementation is inspired in the sublime_text fuzzy matcher). 2025-03-08 18:33:25 -03:00
Martín Lucas Golini
d3bc6f2935 Fix for multi-line signature help labels, now labels will be flatten into a single line (SpartanJ/ecode#388).
Fix next signature help position.
Fix signature help and suggestions styles for light color schemes, and some minor improvements for other schemes.
Allow to set extra trigger characters for signature help in LSP configurations (fix zig zls not updating signature position after a "," input).
Plus some other minor fixes.
2025-02-02 19:07:41 -03:00
Martín Lucas Golini
5533ab46f1 More improvements to debugger. Allow to pick running process to debug. Improve expressions inspection. 2025-01-19 23:40:15 -03:00
Martín Lucas Golini
b0d6e6153d Improve how we keep expanded variables in debugger. 2025-01-18 20:09:38 -03:00
Martín Lucas Golini
9a0f86f946 Line-wrap fix performance issue with updates over extremely long lines. 2025-01-15 23:10:13 -03:00
Martín Lucas Golini
820d352972 Auto-expand previously expanded variables when repeating the same breakpoint. 2025-01-14 20:34:32 -03:00
Martín Lucas Golini
fb3b866f29 More fixes. Added debuggers to health tool. 2025-01-13 01:24:30 -03:00
Martín Lucas Golini
e0eb9d9096 More WIP. 2025-01-01 01:44:33 -03:00
Martín Lucas Golini
7fa4bc8139 Add "lsp-show-document-symbols" keybinding to the default LSP options. 2024-12-15 11:27:17 -03:00
Martín Lucas Golini
0e97236369 Started implementing LSP workspace diagnostic to find that not a single LSP implements it, so I just wasted 2 hours of my life. I'll keep the base structure for the future. 2024-11-26 00:51:23 -03:00
Martín Lucas Golini
1de8c60e75 Add support to Julia LanguageServer.jl. 2024-11-23 16:07:59 -03:00
Martín Lucas Golini
1c6d94e578 A bunch of small micro-optimizations to reduce heap allocs. 2024-11-23 01:19:44 -03:00
Martín Lucas Golini
ce1e87ef38 Small clean up, add String::toUtf32. 2024-11-21 21:35:00 -03:00
Martín Lucas Golini
3001723a98 Do not heap allocate during LSPClientPlugin::drawTop. 2024-11-21 01:33:32 -03:00
Martín Lucas Golini
0e0ce71609 Optimization to reduce almost to zero allocations during frame rendering in ecode (this gives around 6% perf gains). 2024-10-29 02:11:33 -03:00
Martín Lucas Golini
1e58843896 Optimized String::toString.
Revert a change in focus behavior in UIDropDownList since it's incorrect.
Measure plugin load times.
2024-10-22 21:23:31 -03:00
Martín Lucas Golini
b9667b75a3 Identify and flag nightly builds. If a new version is released as stable they will be able to recognize that there's a new version available. 2024-10-19 17:29:18 -03:00
Martín Lucas Golini
4389c99401 Fix breadcrumb highlight.
Minor nit for lnk files.
2024-10-16 12:06:17 -03:00
Martín Lucas Golini
5a7e7e5387 Avoid crashes on plugin unload while loading. 2024-09-28 13:42:54 -03:00
Martín Lucas Golini
49e56f05a2 Single instance support (tested in Linux and Windows, pending the rest of the OSes, issue SpartanJ/ecode#58).
Refresh buttons state when Clear Menu is used (issue SpartanJ/ecode#339).
2024-09-28 01:01:14 -03:00
Martín Lucas Golini
92291448c0 Fix invalid memory access when Event::OnDocumentChange is processed in LSPClientPlugin.
Some refactor of Keyboards Shortcuts.
2024-09-25 20:56:05 -03:00
Martín Lucas Golini
5cd8039250 Fix breadcrumb overlapping with minimap when verticall scrollbar is present.
Do not use mbedtls for emscripten build.
2024-09-11 22:40:53 -03:00
Martín Lucas Golini
4d0da818c0 Small improvements in breadcrumb. Minor refactor of EventDispatcher::getMousePos. 2024-09-11 20:27:14 -03:00
Martín Lucas Golini
060e4f4450 Fix crash on LSP reload.
Fix document symbols not being sorted (some LSPs do not sort the symbols for some reason).
Update efsw.
2024-09-03 19:17:08 -03:00
Martín Lucas Golini
bdc94fa587 Fix breadcrumb click area. 2024-09-03 13:03:42 -03:00
Martín Lucas Golini
a10f587545 Invalidate draw when editor updates its highlight.
Minor improvement on breadcrumb draw invalidation.
2024-08-29 11:41:07 -03:00
Martín Lucas Golini
2334ec078c Select current symbol on search symbol window. 2024-08-29 01:23:25 -03:00
Martín Lucas Golini
43be8cb024 Minor fixes. 2024-08-27 00:32:02 -03:00
Martín Lucas Golini
bd96005bf8 ecode: Implemented LSP document symbol tree with search, integrated with the breadcrumb.
eepp: Added a new flag to UIWindow to create ephemeral windows (windows that close on focus loss).
2024-08-26 01:09:50 -03:00
Martín Lucas Golini
d6fc60a2ce Editor Breadcrumb WIP. 2024-08-25 01:18:31 -03:00