Commit Graph

1234 Commits

Author SHA1 Message Date
Martín Lucas Golini
168a7babaa eepp:
Minor improvements in UICodeEditor rendering.
Allow to limit the maximum line length accepted in the highlighter (will not highlight lines that are above the threshold).

ecode:
Allow to share processes between language LSPs that use the same process (for example: clangd for C and C++, it doesn't make sense to fire 2 processes because clangd will manage both languages just fine in a single instance).
Fixed some bugs when selecting the build type.
2023-05-12 14:06:44 -03:00
Martín Lucas Golini
31567eb8a4 Added an option to treat .h files as C++ code/syntax. 2023-05-10 08:01:16 -03:00
Martín Lucas Golini
0886aded95 Fixed syntax highlighting issues when inserting or removing multi-line comments.
Added support for ranged semantic highlighting, improving performance for LSPs that support ranges but not fullDelta changes.
2023-04-14 20:52:29 -03:00
Martín Lucas Golini
0b3dea6595 Fixed an error with the syntax tokenizer when parsing UTF-8 symbols with a length bigger than 1 at the beginning of a token. 2023-04-14 16:43:10 -03:00
Martín Lucas Golini
a9d0715c8c eepp: Minor fixes in widgets and added the at rule: @glyph-icon to register a glyph-icon from the CSS, in order to be able to consume unregistered glyph icons from a CSS file. 2023-04-12 18:28:13 -03:00
Martín Lucas Golini
2c1811e519 eepp: Several fixes on widgets.
ecode: Build Side Panel WIP.
2023-04-10 18:58:34 -03:00
Martín Lucas Golini
1ba74ae338 ecode: Project Build WIP. 2023-04-08 13:22:31 -03:00
Martín Lucas Golini
9eef0748f6 Project Build WIP. 2023-04-07 21:23:05 -03:00
Martín Lucas Golini
7425b77f9e Added font antialiasing and hinting config. Subpixel hinting isn't ready yet (fragment shader pending). 2023-04-04 20:06:55 -03:00
Martín Lucas Golini
2eae0ab652 Improved semantic highlighting. 2023-04-03 01:47:24 -03:00
Martín Lucas Golini
ab04f9b06e eepp:
Added Window::showMessageBox.
ecode:
Closes SpartanJ/ecode#93 (ecode does not properly warn the user of the lack of GPU acceleration).
Minor refactor.
2023-04-02 19:37:31 -03:00
Martín Lucas Golini
47e744dccb Fix windows build. 2023-04-02 15:51:42 -03:00
Martín Lucas Golini
e62b42267f SyntaxHighlighter and semantic highlighting optimizations and improvements. Now the highlighters detect new lines and remove lines operations and translate all the already processed highlighted lines to it's new position, this means that only the lines with new content are processed again for highlighting tokenization. 2023-04-02 14:34:58 -03:00
Martín Lucas Golini
fae5ec0c3a ecode: Disable vsync by default. 2023-03-31 13:03:06 -03:00
Martín Lucas Golini
8556f9e9a6 eepp:
Log class Don't store log buffer into memory if not required.
ecode:
Added --stdout-logs and --disable-file-logs parameters, for better debugging.
2023-03-31 01:47:03 -03:00
Martín Lucas Golini
ed1d7bbb3e Fix macOS build. 2023-03-30 13:53:43 -03:00
Martín Lucas Golini
21ec899dac eepp static build fixes for Windows 2023-03-30 13:49:18 -03:00
Martín Lucas Golini
19d7d4a06e ecode: LSP minor improvements. 2023-03-30 12:40:01 -03:00
Martín Lucas Golini
ff66081f29 Fix subprocess stuck trying to write.
Fix UISplitter stack overflow.
ecode: Improved startup time.
Added new color scheme: gruvbox material dark.
Improved header/source switch.
2023-03-30 00:18:15 -03:00
Martín Lucas Golini
7670795075 eepp: Some code refactoring regarding the TextureFactory. Also renamed some functions with incorrect naming.
ecode: Plugins are now hot-reloaded when a its configuration file is being written.
2023-03-29 01:13:46 -03:00
Martín Lucas Golini
b1b0a22809 Pump version. 2023-03-27 14:53:44 -03:00
Martín Lucas Golini
53e44cbac9 ecode: Added LSP semantic highlighting support. 2023-03-27 03:16:27 -03:00
Martín Lucas Golini
d9dd3f6f41 This should fix the macOS build.
ecode: More implementation of semantic tokens.
2023-03-26 03:26:56 -03:00
Martín Lucas Golini
09c8265462 eepp: Performance optimizations. 2023-03-26 01:50:42 -03:00
Martín Lucas Golini
e4ecbe7884 eepp: Added Text static helper functions. UICodeEditor don't cache lines Text. 2023-03-25 23:56:25 -03:00
Martín Lucas Golini
2fb71f5257 Fixed a crash occurred when the last focus node is destroyed with the mouse up. 2023-03-23 20:33:25 -03:00
Martín Lucas Golini
05380a8069 Add focusable property to CSS elements. 2023-03-22 10:32:41 -03:00
Martín Lucas Golini
fa25a12a05 eepp: Added focus previous widget shortcut. 2023-03-21 23:59:35 -03:00
Martín Lucas Golini
8f2071e389 eepp: Added UISVGIcon class. Added Image::getInfoFromMemory.
ecode: Added "Welcome" screen.
2023-03-21 01:15:01 -03:00
Martín Lucas Golini
854e148a36 eepp: Added UIAnchor (Anchor or a).
UIRelativeLayout: Respect max width and height when using match_parent.
ecode: New icon WIP.
Fixed LSP TCP server connecting from the main thread (now connects async).
2023-03-20 16:33:35 -03:00
Martín Lucas Golini
d20762bf8b TcpSocket: Added TcpSocket::startAsyncRead.
ecode: Added TCP support for the LSP client.
2023-03-16 12:01:52 -03:00
Martín Lucas Golini
e5a8146674 Clock: renamed getElapsed in favor of getElapsedTimeAndReset. Since it was not very clear what it was doing.
ecode: Some minor clean up.
2023-03-16 01:02:56 -03:00
Martín Lucas Golini
1dea99ee82 ecode: Fix crash when loading big files and using the LSP. Try to detect binary files and don't display them with fallback fonts. 2023-03-13 19:24:58 -03:00
Martín Lucas Golini
51381a38db ecode: Added textDocument/rename support ("Rename Symbol Under Cursor"). 2023-03-13 02:23:00 -03:00
Martín Lucas Golini
de59ee7423 ecode: Added an option to show relative lines position. 2023-03-12 22:05:57 -03:00
Martín Lucas Golini
26c1e4dfe8 eepp: Added QOI image format support (inherited from SOIL2).
ecode:
Fixed a crash while unloading documents that were still loading.
Fixed an incorrect un-initialization of the thread pool when consumed by the UISceneNode.
2023-03-11 22:55:17 -03:00
Martín Lucas Golini
f7faa6240e Find/Replace improvements.
Windows build fix.
ecode: Minor fix in lspclient.json.
Minor fix in features health.
2023-03-10 20:08:15 -03:00
Martín Lucas Golini
5aef110bda Ups, staged the wrong files:
Improved ThreadPool.
ecode: Make consistent the find/search highlighting with the actual results (Closes SpartanJ/ecode#73).
Fixed $NPROC in LSP client commands.
2023-03-10 02:37:01 -03:00
Martín Lucas Golini
c6200f4b53 Added x86 assembly syntax highlighting (Closes SpartanJ/ecode#75).
Added PICO8 syntax highlighting.
Added PSQL syntax highlighting.
Added Haskell linter, formatter and LSP support.
Improved JSON syntax definition to CPP.
Cleaning up SyntaxDefinitionManager.
2023-03-09 02:14:14 -03:00
Martín Lucas Golini
9964e0bbba ecode: Added an option to allow custom UI Themes. 2023-03-06 22:29:21 -03:00
Martín Lucas Golini
7c92cf60b9 ecode: Added a new configuration to control the behavior of new open terminals.
Closes SpartanJ/ecode#68.
2023-03-06 01:41:26 -03:00
Martín Lucas Golini
7d7a97e60d ecode: Added an option to configure the default shell used by ecode terminal.
Closes SpartanJ/ecode#70.
2023-03-05 18:09:58 -03:00
Martín Lucas Golini
d2caa0d890 SyntaxTokenizer: can now tokenize two types of tokens (improve memory usage without adding complexity). 2023-03-05 13:06:57 -03:00
Martín Lucas Golini
330d18d86e Fix Windows build. 2023-03-05 03:14:59 -03:00
Martín Lucas Golini
2c15a803d6 eepp: Reduce syntax highlighter memory usage. Syntax Highlighter is now part of the TextDocument and not of the UICodeEditor. This will also help to reduce memory usage.
ecode: Close LSP Server when changing workspaces if the LSP server doesn't support workspace folders.
2023-03-05 02:17:04 -03:00
Martín Lucas Golini
d3f0877897 Improvements on the syntax tokenizer. 2023-03-04 13:17:33 -03:00
Martín Lucas Golini
235e66d6ad eepp: Improved default click step for scrollable widgets.
ecode: Never block main thread when sending messages to an LSP.
Ctrl/Cmd + Alt + Click -> now executes "Go to definition".
Improved modifier keys when used in combination with mouse clicks.
2023-03-03 03:33:30 -03:00
Martín Lucas Golini
8e1c33ff7d eepp: Some minor fixes. 2023-03-03 01:49:34 -03:00
Martín Lucas Golini
1d371796de eepp:
Added TextDocument::getMatchingBracket
eepp:
Fixed matching brackets.
2023-02-26 13:32:43 -03:00
Martín Lucas Golini
24ad26dd2b ecode: Added Julia, R, Elm, TOML, Haxe, fstab file, .htaccess file syntax highligting support.
Removed syntax language function definitions, moved all definitions as static functions to avoid unnecessary recompilations of this huge file.
2023-02-25 20:58:41 -03:00