- 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 BaseContainer
- 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 methods
- 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()
- Renamed alt_provider.py file under words completer
- Improve word completion matching logic with character validation
- Change container orientations (header→vertical, left/right→horizontal)
- Add separators to all container edges
- Refactor webkit UI loading into separate load_url/load_context_base_path methods
- Add comprehensive webkit browser-like settings
- 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_registry