|
|
@@ -22,7 +22,7 @@
|
|
|
|
|
|
## Current Module
|
|
|
|
|
|
-**Phase 8: Mouse Support & Advanced UI** - Implementing mouse interaction (click, scroll, drag-selection) and advanced UI elements.
|
|
|
+**Phase 9: Advanced UI features** - Implementing context menus and tooltips for improved user interaction.
|
|
|
|
|
|
|
|
|
|
|
|
@@ -82,28 +82,16 @@ Lumacs/
|
|
|
|
|
|
## Done
|
|
|
|
|
|
-
|
|
|
-
|
|
|
- ✅ **Phase 1-5**: Complete Emacs-like core functionality
|
|
|
|
|
|
-
|
|
|
-
|
|
|
- ✅ **Phase 6 Core**: GTK4 frontend with text rendering
|
|
|
|
|
|
-
|
|
|
-
|
|
|
- ✅ **Phase 7 Optimization**: Render caching and performance tuning
|
|
|
|
|
|
-
|
|
|
-
|
|
|
- ✅ **Phase 8 Mouse**: Full mouse support (click-move, scroll, drag-select)
|
|
|
|
|
|
-
|
|
|
-
|
|
|
- ✅ **Input System**: Full keyboard input with modifiers working
|
|
|
|
|
|
-
|
|
|
-
|
|
|
- ✅ **Cursor System**: Emacs-style blinking block cursor with color inversion
|
|
|
|
|
|
- ✅ **Text Editing**: Basic insertion, deletion, movement operations working
|
|
|
@@ -146,55 +134,15 @@ Lumacs/
|
|
|
|
|
|
- ✅ **Modeline**: Implemented detailed Emacs-like modeline with active/inactive states, flags, percentage, and mode display
|
|
|
|
|
|
-- ✅ **Minibuffer Polish**: Implemented Tab completion (buffers/files), command history (up/down), and kill-buffer logic
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- - ✅ **Pango Layout Caching**: Cache Pango layouts to avoid recreation on every frame/keystroke
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- - ✅ **Render Optimization**: Optimize `draw_window` to only redraw changed lines (implemented line-level caching)
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- - ✅ **Memory Safety**: Implemented cache clearing on layout rebuilds to prevent stale pointers
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ - ✅ **Minibuffer Polish**: Implemented Tab completion (buffers/files), command history (up/down), and kill-buffer logic
|
|
|
|
|
|
+- ✅ **Phase 9 Advanced UI**: Implemented Context Menus (right-click) and Hover Tooltips
|
|
|
|
|
|
|
|
|
|
|
|
## Todo
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-1. **Phase 9**: Advanced UI features (Context Menus, Tooltips)
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-2. **Phase 10**: Plugin System enhancements
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+1. **Phase 10**: Plugin System enhancements
|
|
|
|
|
|
|
|
|
|
|
|
@@ -222,39 +170,15 @@ Lumacs/
|
|
|
|
|
|
|
|
|
|
|
|
-**Phase 8 COMPLETED**:
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-- Implemented Scroll Wheel support (view scrolling with cursor tracking)
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-- Implemented Click-to-Move cursor logic with boundary checks
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-- Implemented Drag-to-Select (GestureDrag) for region selection
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-**Ready for Final Polish / Phase 9**
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-- Implemented Pango layout caching (font metrics & line layouts)
|
|
|
+**Phase 9 COMPLETED**:
|
|
|
|
|
|
|
|
|
|
|
|
-- Optimized rendering loop to avoid unnecessary reshaping
|
|
|
+- Implemented Context Menus (right-click popover with actions)
|
|
|
|
|
|
|
|
|
|
|
|
-- Ensured memory safety with cache management
|
|
|
+- Implemented Hover Tooltips (showing word under cursor and line number)
|
|
|
|
|
|
|
|
|
|
|
|
@@ -262,4 +186,4 @@ Lumacs/
|
|
|
|
|
|
|
|
|
|
|
|
-**Ready for Phase 8 (Mouse Support)**
|
|
|
+**Ready for Phase 10 (Plugin System enhancements)**
|