Skip to content

Terminal shortcuts handling - all shortcuts flows to terminal#2795

Merged
abose merged 8 commits intomainfrom
ai
Apr 7, 2026
Merged

Terminal shortcuts handling - all shortcuts flows to terminal#2795
abose merged 8 commits intomainfrom
ai

Conversation

@abose
Copy link
Copy Markdown
Member

@abose abose commented Apr 7, 2026

Earlier, we had terminal passing phoenix shortcuts to phcode, but this let for eg, ctrl-B in tmux in terminal causing bold in the editor which makes some terminal apps unusable. so for best UX just pass all keyboard events except switch terminal f4 and command palette ctrl-p to terminal.

abose added 8 commits April 7, 2026 10:37
- Git panel tab now always visible on desktop apps even for non-git
  projects, showing Init/Clone buttons
- Removed Find in Files button from the Tools default panel launcher
- Shell dropdown now appended to terminal body to avoid overflow
  clipping from the tab bar
Route all keyboard events to the terminal when it has focus instead
of whitelisting individual keys. Only Command Palette (Ctrl+P) and
F4 are passed back to Phoenix. Removed redundant EDITOR_SHORTCUTS
from TerminalInstance.js — single source of truth is now
PHOENIX_SHORTCUTS in main.js.
Replace hardcoded PHOENIX_SHORTCUTS and EDITOR_SHORTCUTS with a
dynamic set built from KeyBindingManager bindings for VIEW_TERMINAL
and CMD_KEYBOARD_NAV_UI_OVERLAY. Rebuilds automatically when user
changes keybindings. Extract logic into _setupPhoenixShortcuts().
Add icon support to bottom panel tabs via options object in
createBottomPanel(). Tabs collapse to icons when the tab bar
overflows. Supports both FA icon classes and SVG image paths.
Panels without icons get a generic fallback icon. Uses
panel-titlebar-icon class to override FA specificity issues.
Add more padding and margin between the tab icon and close button
when the tab bar is in collapsed/icon mode to prevent accidental
close clicks.
The setVisible(true) call in disable("not-repo") changed toolbar
icon behavior and broke git integration tests. Git visibility in
the Tools launcher is already handled by DefaultPanelView.
Use visibility:hidden so inactive tabs keep their spacing but
prevent accidental close clicks. Users must activate a tab first
before closing it when in collapsed mode.
Extract drag-and-drop into _initDragAndDrop() with vertical line
indicator matching file tab bar UX. Fix Tools button losing click
handler after tab rebuild by using detach() before empty(). Show
tooltip on hover in collapsed icon mode only.
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Apr 7, 2026

@abose abose merged commit 66ff648 into main Apr 7, 2026
14 of 21 checks passed
@abose abose deleted the ai branch April 7, 2026 12:51
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