Skip to content

feat: add --drop-down / quake-style dropdown terminal mode - #1

Closed
rnbwdsh wants to merge 1 commit into
masterfrom
feat-dropdown
Closed

feat: add --drop-down / quake-style dropdown terminal mode#1
rnbwdsh wants to merge 1 commit into
masterfrom
feat-dropdown

Conversation

@rnbwdsh

@rnbwdsh rnbwdsh commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Uses wlr_layer_shell via iced's SctkLayerSurfaceSettings for proper positioning (anchored top, full width, configurable height). Single-instance via PID file lock with SIGUSR1 toggle signalling.

  • Add --drop-down CLI flag
  • Add TerminalMode enum, ToggleDropDown/DropdownHeight messages
  • Add dropdown_height config field (default 400px)
  • Hide headerbar and set no_main_window in dropdown mode
  • Signal-based toggle from second instance via signalfd
  • Auto-create tab when toggling with no tabs open

This is hugely based on pop-os#673 and just rebased/refactored

…d behavior if not used

Behavior on first launch: create a surface, add a signal handler, render the terminal into that overlay surface
Behavior on later launches: find the process that was launched with "--drop-down" and send a signal to it (currently via spawning a process)
Handle USR1 signals for toggling dropdown
Custom right click context menu in dropdown mode, as maximizing makes no sense
Added setting: A secondary show-headers-dropdown that's only visible in drop down mode
Added setting: The height of the dropdown in px, I'd like to do relative but to my understanding wayland doesn't trivially allow that
Bug byepass in iced: When creating the overlay without any delay, the window is transparent but not "frosted"

This is hugely based on pop-os#673 and just rebased and refactored, as various menu things were broken for me.

I think this MR is relevant, because people are already vibe coding a non-working version of this: https://github.com/M0Rf30/cosmic-ext-quake-terminal

This was partially created with the help of AI.
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