Commit Graph

3909 Commits

Author SHA1 Message Date
Martín Lucas Golini
9fa7b2bb57 Correctly handle Private mode queries in the terminal emulator implementation.
Fix in terminal keybindings handling.
2026-01-07 13:23:22 -03:00
Martín Lucas Golini
7bc446e9f1 Allow to set TextDirection as text segmentation hint.
Update efsw.
2026-01-07 00:42:14 -03:00
Martín Lucas Golini
70f7a1cc61 Added String::stripAnsiCodes. Now used in build and run settings, this can be configured for the build and the run options.
Minor fixes in C and C++ grammars.
Debugger: Expressions are now evaluated as soon as they are added if debugger is running but paused.
Fix a newly introduced bug that incorrectly calculated string widths when string contained new lines.
2026-01-06 00:46:31 -03:00
Martín Lucas Golini
dbcb93a438 Optimize String::isAscii using AVX2 or NEON (not tested with MSVC yet).
Added EE::System::CPU static class to query about CPU capabilities.
2026-01-04 19:47:48 -03:00
Martín Lucas Golini
331f769590 SyntaxTokenizer improvements for pushTokensToOpenCloseSubsyntax with non-sequential captures.
Added VimL support.
2026-01-04 18:15:15 -03:00
Martín Lucas Golini
b084cab449 Text::setFillColor improvements for shaped text. 2026-01-03 18:38:33 -03:00
Martín Lucas Golini
45e1a9bf54 Update in C, C++, C#, Obj-C, Obj-C++, PowerShell, SmallBasic keywords. 2026-01-02 12:21:13 -03:00
Martín Lucas Golini
014d2b767c Improve UIMenu positioning (allow to take into account the trigger button to position). 2026-01-01 14:17:10 -03:00
Martín Lucas Golini
d9d0a3539b A couple of minor changes. 2025-12-31 15:18:26 -03:00
Martín Lucas Golini
0af6de8bf2 Fix project paths in Android and iOS. 2025-12-31 14:48:00 -03:00
Martín Lucas Golini
2ce608ff09 Add Android and iOS CI (not tested). 2025-12-31 14:45:27 -03:00
Martín Lucas Golini
c08687c9fe Fix iOS build. 2025-12-31 13:17:32 -03:00
Martín Lucas Golini
d5e10aa790 Improve color emoji rendering.
Add new test for emojis + text.
Enabled text-shaper by default.
Updated the NotoColorEmoji font with the latest version.
2025-12-30 17:52:31 -03:00
Martín Lucas Golini
34d6115db8 Fix opening nonexistent files from CLI. 2025-12-29 19:42:06 -03:00
Martín Lucas Golini
35cd04e490 Revert "Add a hide / minize button on each panel vertical bar."
This reverts commit c85a431ae3.
2025-12-29 15:38:17 -03:00
Martín Lucas Golini
c85a431ae3 Add a hide / minize button on each panel vertical bar. 2025-12-29 10:47:19 -03:00
Martín Lucas Golini
1d2dd61cf5 Added option to force opening documents in main split (Settings -> Window -> Open Documents in Main Split). 2025-12-29 01:44:04 -03:00
Martín Lucas Golini
dfc23a5084 Add closeTerminalTabOnExit support for the status bar terminal. 2025-12-29 00:03:38 -03:00
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
f9eb012f77 Added an option to open new terminals in status bar panel. 2025-12-28 14:02:07 -03:00
Martín Lucas Golini
b11985f5e0 In OSes with no primary selection if there's a selection over the terminal use that when pasting with middle mouse click, otherwise use the clipboard. 2025-12-28 12:07:29 -03:00
Martín Lucas Golini
2b4b9d98b6 Clear up settings menu Open Folder options. 2025-12-28 11:54:03 -03:00
Martín Lucas Golini
1df4972f56 Allow to expand/contract status bar panel. 2025-12-28 01:07:15 -03:00
Martín Lucas Golini
7cfd823881 Some clean up to the terminal configurations. 2025-12-27 20:01:48 -03:00
Martín Lucas Golini
8415e62b4c Update status bar terminals on scrollbar type or mode change. 2025-12-27 18:31:42 -03:00
Martín Lucas Golini
0ca36374c4 Terminal status bar now is a Tab Widget and can create any number of terminals.
Fix a bug when initializing the LSP that provoked to not correctly send the initial commands.
Added `expand-text` to UIPushButton.
Added `setAcceptsDropOfWidgetFn` to externally control which widgets are accepted as droppable in UITabWidget.
Improved draw invalidation in UIStackWidget.
2025-12-27 17:22:12 -03:00
Martín Lucas Golini
5fc5fcccb2 A couple of minor fixes to the terminal emulator. 2025-12-27 00:32:07 -03:00
Martín Lucas Golini
674c4c3011 Minor change in how ecode tints the title bar on macOS. 2025-12-26 20:30:34 -03:00
Martín Lucas Golini
cb70f5b205 Apply terminal configuration changes to the status bar terminal. 2025-12-26 01:04:58 -03:00
Martín Lucas Golini
c4e2ae49f8 Fix move event not being handled correctly within the FileSystemModel fileIsVisibleFn configuration (dicussed at: https://github.com/SpartanJ/ecode/discussions/776). 2025-12-25 17:07:12 -03:00
Martín Lucas Golini
73e5bf1506 Fix rare crash introduced recently in EventDispatcher.
Change sun and moon icons.
2025-12-24 14:49:35 -03:00
Martín Lucas Golini
7004d7c282 Added an option to "Use status bar terminal" in the Run configuration. 2025-12-24 01:42:52 -03:00
Martín Lucas Golini
8f2b9d65ba Register debugger commands globally. 2025-12-24 00:39:26 -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
9ee71f3ca1 Fix underline and strike-through positioning. 2025-12-22 21:03:43 -03:00
Martín Lucas Golini
8a3b9f2bfb Merge remote-tracking branch 'origin/develop' into develop 2025-12-22 14:40:18 -03:00
Martín Lucas Golini
0cb44a39d2 Fix bitmap fonts text and cursor positioning. 2025-12-22 14:40:11 -03:00
Martín Lucas Golini
b0707119ad Fix macOS build. 2025-12-22 01:34:10 -03:00
Martín Lucas Golini
f3b6fcacf4 Implementation for "Light/dark theme should follow system default" (issue SpartanJ/ecode#754). 2025-12-22 01:16:05 -03:00
Martín Lucas Golini
2c70227c09 Fix Android build. 2025-12-21 20:28:27 -03:00
Martín Lucas Golini
06e98fd137 Fix underline and strikethrough size when top and bottom positions are the same due to the small difference generated bt the underlineThickness. 2025-12-21 17:19:25 -03:00
Martín Lucas Golini
5965d77e02 Add an option to configure the Settings -> Window -> "Use editor font in input fields" (this is enabled by default but not always convenient). 2025-12-21 13:00:52 -03:00
Martín Lucas Golini
8378f2a1fa Add scrollbar type and mode options for the terminal.
Hack auto-scroll in terminal for Windows 11.
Renamed ScrollViewType and made it global, properties are now `overlay` or `outside`.
Added a couple of goodies for the terminal mode (retain side panel configuration and restore it if no terminals are left).
2025-12-21 02:01:37 -03:00
Martín Lucas Golini
4d6887dbb4 Fix emoji fonts (and unit tests). 2025-12-20 23:20:32 -03:00
Martín Lucas Golini
a696c95d75 Improve bitmap fonts support in UICodeEditor.
Refactor font loading.
2025-12-20 23:09:31 -03:00
Martín Lucas Golini
97ed873daa Take into account the line spacing to position the cursor. 2025-12-20 15:35:09 -03:00
Martín Lucas Golini
f1157f3ac8 Minor nit fix in terminal text selection. 2025-12-20 11:17:14 -03:00
Martín Lucas Golini
e4354787aa Build fix for macOS and FreeBSD.
Update SOIL2.
Use Ubuntu 24.04 on the Linux build (untested).
2025-12-20 10:30:21 -03:00
Martín Lucas Golini
35fbf7c733 Terminal: multiple issues with the copy/paste operations fixed. Now uses the primary selection when corresponds (middle mouse click, shift+insert). Fixed paste operation, it does not hang the app, pastes instantly contents and behaves exactly the same as other terminals.
Incorporated new features into eterm.
2025-12-20 01:58:21 -03:00
Martín Lucas Golini
e5a67727c4 Terminal: Add auto-scroll when selecting and mouse cursor moves out of vertical view range.
Fix tab owned widget focus.
Fix overlapping shortcuts and terminal shortcuts in terminal.
2025-12-19 14:20:17 -03:00