Skip to content

Native: Extend Keybindings from Chipmunk 3 & Fix Log selection #2547

Merged
AmmarAbouZor merged 5 commits into
esrlabs:native-uifrom
AmmarAbouZor:keybindings-extend
May 6, 2026
Merged

Native: Extend Keybindings from Chipmunk 3 & Fix Log selection #2547
AmmarAbouZor merged 5 commits into
esrlabs:native-uifrom
AmmarAbouZor:keybindings-extend

Conversation

@AmmarAbouZor
Copy link
Copy Markdown
Member

This PR ports the keybindings from current electron-based chipmunk including:

  • Introduce concept of active table between main and search tables and use one set of scroll bindings for the active one instead duplicating the bindings for each one of them
  • Active table is visually slightly heighlighted
  • Introduce vim like bindings including G, gg and /
  • More advance bindings to jump between indexed logs and bookmarks with [, ], j and k
  • Fix syncing issues when UI components request changing selected log from main table as it always should sync details and search table views. The fix is used in Attachment function Jump to matching log and in keybindings
  • Improve bindings help modal

* Port most of keybindings from Chipmunk 3 to avoid breaking changes on
  users.
* Changes need to keep track on focused table visually and in code so
  user can apply same keybindings on the focus table without having to
  duplicate the keybindings for both tables.
* Highlight selected table & Remove focus on text input on focusing tables
* Support for keeping track to last unconsumed pressed key to support
  vim like keybindings like `gg`
* Consider if bottom panel is visible before requesting to jump to
  matching logs in search table on main table log selection
* Select logs in attachments now sync the search table and details view
* Centralize logic for logs selection.
* Introduce commands on backend service and in session core to get the
  next/previous indexed logs.
* Calculate bookmarks in UI as they are saved there and not expected to
  be too many.
* Implementation for `[, ], j, k` keys
* Tweak shortcuts so we can override them so they have better meanings
  in bindings help overlay.
* Replace rest of bindings that targets each table on its own with
  shared bindings for the focused table.
* Avoid persisting scrolling state on bindings overlay
* Ensure proper using fro modifiers on MacOS
* Better handling for jumping between logs when no log is selected
* Fixes for multiple selection changes on logs-table
@AmmarAbouZor AmmarAbouZor merged commit 4917340 into esrlabs:native-ui May 6, 2026
2 checks passed
@AmmarAbouZor AmmarAbouZor deleted the keybindings-extend branch May 6, 2026 07:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant