feat(office): scrollable panes, nav tree drill-down, and item actions

Add viewports to all three columns with cursor sync scrolling. Support
Shift+Tab reverse pane focus. Replace flat menu with hierarchical NavTree
(list loads only on leaf nodes; dynamic project subnodes with Tasks/Files).
Enter or a opens per-item action menu (view, delete, download) wired to
the OnlyOffice API.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-24 16:43:06 +01:00
co-authored by Cursor
parent 4046f4c46a
commit cad68f64c6
14 changed files with 929 additions and 464 deletions
+8
View File
@@ -11,7 +11,9 @@ const (
ActionMoveDown
ActionToggleSelect
ActionOpenPreview
ActionOpenActions
ActionNextPane
ActionPrevPane
ActionRefresh
ActionQuit
ActionOpenVex
@@ -24,6 +26,8 @@ func KeyAction(key string, pane model.FocusPane) Action {
return ActionQuit
case "tab":
return ActionNextPane
case "shift+tab", "backtab":
return ActionPrevPane
case "r":
return ActionRefresh
case "up", "k":
@@ -34,6 +38,10 @@ func KeyAction(key string, pane model.FocusPane) Action {
if pane == model.FocusList {
return ActionToggleSelect
}
case "a":
if pane == model.FocusList {
return ActionOpenActions
}
case "enter":
if pane == model.FocusList {
return ActionOpenPreview