5911f37449refactor(command-system): replace legacy CommandSystem with SourceViewCommandSystemitdominator2026-04-04 14:18:32 -05:00
6e46279da4refactor(cursor/multi-insert): unify movement logic and improve word navigationitdominator2026-03-30 00:36:52 -05:00
d90415bffcFix: Improve code folding functionality and gutter renderingitdominator2026-03-29 14:33:40 -05:00
62a866d9bbfeat(tree-sitter, views): initialize AST on focus and emit source view creation eventitdominator2026-03-29 03:09:43 -05:00
dc2997ec16feat(lsp, ui, core): refactor LSP initialization, improve config handling, and clean up TreeSitteritdominator2026-03-28 16:14:04 -05:00
70877a7ee1feat(event-watchers): rework file state detection and migrate tree-sitter integrationitdominator2026-03-27 20:00:59 -05:00
cb73f6b3b0Fix unload lifecycle, widget cleanup, and plugin removal handling - Rename GodotHandler to GDScriptHandler in LSP client - Fix unload() method naming in nanoesq_temp_buffer plugin - Return manifest_meta in manifest_manager for manual launch plugins - Properly destroy tabs_widget, viewport, and scrolled_win on unload - Refactor plugin removal to search all manifest lists and fix cleanup order - Fix widget reference in plugins_ui (use child instead of box)itdominator2026-03-23 23:05:20 -05:00
e6eaa1d83cFixed file_history plugin after breakage from testing a patternitdominator2026-03-23 21:42:05 -05:00
62731ae766Improve file loading robustness and drag-and-drop handling - Add error handling for UTF-8 decoding to gracefully handle invalid bytes - Refactor DnD target handling with explicit target list and proper context completion - Remove completed TODO item for file open event emission - Clean up memory by deleting file contents after decodingitdominator2026-03-23 01:32:57 -05:00
b5cec0d049Fix multi-select word movement for snake_case and add Ctrl+scroll zoom - Implement snake_case-aware word movement that treats underscores as part of words - Fix selection edge detection to only move when caret is at appropriate boundary - Add INSERT state guards to line_up/down commands - Add Ctrl+scroll zoom in/out functionality for text size - Remove obsolete newton.zip archiveitdominator2026-03-22 23:42:28 -05:00
c821f30880Added TODOs; made explicit that LSP Manager pre launch if autoload true/unset; added WIP tree_sitter pluginitdominator2026-03-22 17:56:48 -05:00
13908d7ba7Refactor file loading to detect external modifications and add reload capability - Extract _load_data() method from load_path() for reuse in reload() - Add is_extters externally_modified() to track file state changes (mtime/size) - Replace load_bytes() with load_contents() for better error handling - Add reload() method to re-read file from disk - Fix file_state_watcher by properly detecting external changes - Update TODO list (add Terminal plugin, mark file_state_watcher as fixed)itdominator2026-03-22 00:35:11 -05:00
77a3b71d31feat: Complete plugin lifecycle management with lazy loading and runtime reload Major changes: - Add unload() method to all plugins for proper cleanup (unregister commands/providers/LSP clients, destroy widgets, clear state) - Implement lazy widget loading via "show" signal across all containers - Add autoload: false manifest option for manual/conditional plugin loading - Add Plugins UI with runtime load/unload toggle via Ctrl+Shift+p - Implement controller unregistration system with proper signal disconnection - Add new events: UnregisterCommandEvent, GetFilesEvent, GetSourceViewsEvent, TogglePluginsUiEvent - Fix signal leaks by tracking and disconnecting handlers in widgets (search/replace, LSP manager, tabs, telescope, markdown preview) - Add Save/Save As to tabs context menu - Improve search/replace behavior (selection handling, focus management) - Add telescope file initialization from existing loaded files - Refactor plugin reload watcher to dynamically add/remove plugins on filesystem changes - Add new plugins: file_history, extend_source_view_menu, godot_lsp_client - Fix bug in prettify_json (undefined variable reference)itdominator2026-03-21 13:22:20 -05:00
21dd86ad3dAdd dynamic EventNamespace for event type access and refactor LSP manager initialization - Create EventNamespace class to enable Code_Event_Types.RegisterLspClientEvent access - Move set_event_hub call from plugin to lsp_manager._do_bind_mapping - Update event type references to use Code_Event_Types namespaceitdominator2026-03-15 23:41:09 -05:00
fea303c898Remove custom LSP manager plugins and add new language server clients - Delete old lsp_manager plugin (custom websocket-based LSP client implementation) - Delete java_lsp_client plugin - Delete python_lsp_client plugin - Remove unused LSP DTO files in src/libs/dto/code/lsp/ - Add new language_server_clients plugin directory - Improve event_factory with register_events method - Add PYTHONDONTWRITEBYTECODE to user config - Update events init.py docstringitdominator2026-03-15 20:47:40 -05:00
e8653cd116refactor: remove LSPServerEventsMixin and clean up websocket tests - Delete unused websocket library test files - Remove LSPServerEventsMixin and inline its methods into response handlers - Clean up unused imports (ThreadPoolExecutor, ABC, LSP message structs)itdominator2026-03-15 03:36:01 -05:00
5e28fb1e5crefactor(lsp-manager): replace handler architecture with response registry and modular providersitdominator2026-03-15 01:52:15 -05:00
609eaa8246refactor(lsp): replace controller layer with client module and LSPManager orchestrationitdominator2026-03-12 00:07:59 -05:00
71bab687d7refactor(lsp): replace LSPManager with controller-based architectureitdominator2026-03-11 23:17:57 -05:00
060f68237bfeat(lsp): support Java class file contents and improve definition navigation handlingitdominator2026-03-08 17:53:12 -05:00
7ee484f0c0Remove temp cut buffer commands and cleanup related SourceView codeitdominator2026-03-08 14:51:11 -05:00
99dc917de3Clean up codebase and improve file loading - Moved plugins to proper sub groups (autopairs, code_minimap, colorize, commentzar, info_bar, markdown_preview, prettify_json, search_replace, tabs_bar, telescope, toggle_source_view, lsp_client) - Add filter_out_loaded_files to prevent opening already-loaded files - Add INDEPENDENT source view state - Fix cursor scroll position on buffer switch - Fix signal blocking during file load - Fix word boundary in completion provider - Refactor code events into single events moduleitdominator2026-03-08 00:51:28 -06:00
a52d5243abRefactor plugin event API: rename message* to emit* and requests_ui_element to request_ui_elementitdominator2026-02-28 19:48:41 -06:00
72fcccc8a9Refactor controller architecture and multi-insert state - Rename ControllerContext to ControllerMessageBus for clarity - Switch ControllerBase to use SingletonRaised - Replace MarkEventsMixin with MarkerManager for multi-cursor editing - Add populate_popup event support for source view context menus - Remove unused swap file events - Moved JSON prettify feature to plugin - Fix event name: "removed_file" -> "remove_file"itdominator2026-02-28 01:12:07 -06:00
0627ca5fd5Remove tabs UI from code editor and move to plugin. Enhance plugin system. - Remove tabs controller, tab widget, and tabs widget files and move to plugin - Delete plugins/README.txt - Add register_controller method to controller system for plugin use - Add error handling for plugin crashes via futures callbackitdominator2026-02-26 21:11:53 -06:00
e9c0565c04refactor: remove InfoBarWidget in favor of plugin-based one - Replace direct InfoBarWidget with set_info_labels command that emits events to plugins - Replace mini view widget in favor of plugin-based one - Add widget registry exposure for code-container and editors-container - Fix DND mixin exec_with_args call (tuple args issue) - Add break statements in tabs_widget loops for efficiency - Add _update_transparency call to BaseContaineritdominator2026-02-25 23:31:31 -06:00
bc3fe1eee1Fixed main thread closure issue caused by async.runitdominator2026-02-25 01:03:02 -06:00
b7a1cb9049Added ability to toggle view visibility.itdominator2026-02-25 00:39:44 -06:00
1a195f75b9Refactor source view states to use base class and fix open-files start path - Add SourceViewsBaseState inheritance to Command, Insert, MultiInsert, and ReadOnly states - Extract common focus_in_event logic to base class - Fix open-files command to use current file's directory as file picker start path - Extract modifier key state logic into reusable get_modkeys_states() method - Pass modifier keys to command exec_with_args in key_press_event - Add type hints to key_mapper methodsitdominator2026-02-24 23:33:00 -06:00
6946dde0adAligned plugin command exec args with args, kwargsitdominator2026-02-24 22:39:07 -06:00
608699c431refactor(command-system): standardize command execution with *args/**kwargs - Refactor exec_with_args to use *args/**kwargs instead of tuple arguments - Add *args/**kwargs to all command execute functions for consistency - Support multiple key bindings per command in registration - Add character-based key binding support via get_char() in KeyMapper - Make execute_plugin async and use asyncio.run for plugin execution - Use MIME type from Gio content_type instead of language for ftypeitdominator2026-02-24 22:30:44 -06:00
c233fdbac3Fixed Markdown Preview not showing imagesitdominator2026-02-23 01:36:41 -06:00
bd91eea411Add file external deletion detection and improve WebKit UI - Implement FileExternallyDeletedEvent handling with visual feedback via "file-deleted" CSS class on tabs - Fix drag-and-drop to properly handle URI data - Improve SourceFile.load() to use freeze_notify and proper buffer replacement instead of cursor insertion - Add Developer Tools context menu option to WebKit view - Relocate webkit_ui_settings from settings/other to settings/webkititdominator2026-02-23 00:53:54 -06:00
88a6451fa8Add debounced text change handling and modified file indicator for tabs - Debounce word completer refresh with 1500ms timeout to reduce overhead - Add visual indicator (file-changed class) for modified files in tabs - Refactor buffer switching into signal_mapper for DRY code - Fix handler ID indices after adding _after_changed signal - Move set_modified(False) after successful file write in save()itdominator2026-02-22 18:22:47 -06:00
3ab71d6441refactor: use Pango for font scaling instead of CSS classes - Replace CSS-based zoom (px1-px99 classes) with Pango.FontDescription - Fix bug in multi-insert: insert at start_itr instead of end_itr - Add Pango-based font setup for mini-view widget - Revamp stylesheet with Light Blue-Grey Glass themeitdominator2026-02-21 00:37:41 -06:00
aaadba3812Clean up deprecated code and fix multiple issues - Remove deprecated markdown_preview plugin and re-wrote - Renamed alt_provider.py under words completer - Fix words completion provider logic and cache handling - Fix container orientations (VERTICAL -> HORIZONTAL) and add Separators - Remove unused Gtk imports from search_replace plugin - Fix event creation parameter order in source_file.py - Fix typo in source_view.py (_load_pretify_json -> _load_prettify_json) - Refactor webkit_ui with new load methods and enhanced settingsitdominator2026-02-20 00:10:15 -06:00
3e920291a0Add search UI feedback and hide button to search/replace plugin - Add visual feedback styling for search states (searching, success, fail) - Show match count in status label when searching - Add hide (X) button to hide search panel - Fix typo: stateus_lbl → status_lbl - Add _set_find_options_lbl to display active search optionsitdominator2026-02-19 01:07:44 -06:00
61b8bbc5faMoved plugins and refactor command system - Moved plugins to apropriate sub folders - Refactor command system with new add_command method and rename GetCommandSystemEvent to GetNewCommandSystemEvent - Add RegisterCommandEvent for dynamic command registration - Change footer container orientation to VERTICAL - Add search-highlight tag to source buffer - Add file change detection (deleted, externally modified) in source_file - Add JSON prettify option to source view popup menu - Enable hexpand on VTE widget - Update plugins_controller_mixin to use widget_registryitdominator2026-02-18 23:49:01 -06:00
2819598ae2Load files from IPC to code view; fixed tabs close all; corrected app.py loggingitdominator2026-02-17 01:55:06 -06:00
73d9ae0517Aded context menu to tabs widget; registered other widgets to registeryitdominator2026-02-16 23:55:36 -06:00
f5c506e210Made words completer run async on load and update; swapped out tabs to use Gtk.Notebookitdominator2026-02-16 17:09:30 -06:00
bcd87801e6Moved completers to new dir; improved completers and added word completionitdominator2026-02-16 01:37:13 -06:00
80a4620724Major completion provider overhaul; pluigin load and pattern improvements; css overhaul/cleanup; source view state modes addeditdominator2026-02-14 21:36:06 -06:00
5df23abb10removed endpoint_registery; relocated builder_wrapper to be widget_registery under libs/itdominator2026-01-19 13:50:40 -06:00
b54e0589d2defaulting to buffer if language not detecteditdominator2026-01-19 00:28:31 -06:00
7a369886deWiring plugins to controller messages; importing plugin controller to code base; fixed VTE widget adding to bash historyitdominator2026-01-18 22:40:06 -06:00
dac0fa3fb1Pligins refactor with new context and controller integrationitdominator2026-01-18 20:34:05 -06:00
d55dd4e5daPreliminary controller layout work for plugin integration; controller base message refactor namingitdominator2026-01-18 13:52:28 -06:00
813706265aRestructuring controller to broaden usability; changed events logic to support thatitdominator2026-01-18 00:53:10 -06:00
228837bdb5Created libs.code package and moved pertinant DTOs to it as well as widget.code that can go there tooitdominator2026-01-13 11:27:20 -06:00
63454aef9dImproved folder structure for commamd system and controllersitdominator2026-01-13 00:44:19 -06:00
b6c4b94bbeAdded controller manager registery guard; localized event type access for code to event factoryitdominator2026-01-13 00:00:35 -06:00
c4ab66141cpackage.json dependency movement to dev deps; updated build field tooitdominator2025-11-23 15:11:21 -06:00
6bedb69909Improved search-replace component logic by disabing buttons when no query; displaying found/not found status; displaying too long query; adding ctrl-up and down key bindig on query field to god prev-next instance founditdominator2025-11-23 00:49:44 -06:00