Research: how should the settings window be visually triggered?

Date: 2026-10-02 Question: What visual affordance should open DropTerm’s existing settings window — and what do quake terminals and COSMIC apps actually use?

TL;DR

Use the right-click context menu on the terminal as the primary trigger — a “Settings” item in a libcosmic context_menu, exactly like cosmic-term, the app DropTerm’s terminal widget is adapted from. Across every primary source surveyed, quake/drop-down terminals expose settings through whichever chrome is always present: Yakuake through a menu button on its persistent title bar, Guake/Tilda/QTerminal exclusively through right-click context menus (they have no other chrome), and Windows Terminal through the chevron at the end of its always-present tab row. DropTerm’s only always-present chrome is an 8px drag handle (the grab bar), and its tab bar vanishes with a single tab — so the tab bar cannot be the sole trigger without becoming persistent, and the grab bar is too small and semantically wrong for a button. The right-click on the terminal area is today completely unused in DropTerm (outside mouse-reporting passthrough) and is the one surface every comparable app converges on. No COSMIC app surveyed uses a gear button — COSMIC apps (cosmic-term, cosmic-edit, cosmic-files) put “Settings” in menus (menu bar and/or context menu). If a gear icon is ever used, the Pop icon name is preferences-system(-symbolic); settings-configure does not exist in Pop’s icon theme (it is the KDE/Breeze name).

Findings

1. Yakuake (KDE) — menu button on the title bar; not the context menus

From KDE/yakuake @ master (fetched 2026-10-02):

2. Guake — Preferences reachable only via context menus

From Guake/guake @ master (fetched 2026-10-02):

3. cosmic-ext-quake-terminal — settings window exists, but no visual trigger

From M0Rf30/cosmic-ext-quake-terminal @ main (fetched 2026-10-02):

4. QTerminal and Tilda (brief) — right-click, both

5. Windows Terminal — chevron at the end of the tab row (the always-present bar)

From microsoft/terminal @ main (fetched 2026-10-02):

6. cosmic-term — the direct ancestor: menu bar item + right-click, no gear button

From pop-os/cosmic-term @ master (fetched 2026-10-02) — the app DropTerm’s terminal widget is adapted from (src/terminal/widget.rs in this repo):

7. cosmic-edit and cosmic-files — Settings in the menu bar, context drawer

Both @ master (fetched 2026-10-02):

Pattern: every surveyed COSMIC app puts “Settings” in a menu (menu bar item and/or right-click context menu) and never behind a standalone icon button; the settings UI itself is a context drawer inside the app window.

8. libcosmic @ DropTerm’s pinned rev — what the toolkit already provides

Verified in the local checkout of [pop-os/libcosmic @ 08a09e3] (https://github.com/pop-os/libcosmic/tree/08a09e3dfa1f729d52585fcedd6e731130235363) (DropTerm pins this rev — Cargo.toml:30-33):

9. Icon names — preferences-system on Pop, not settings-configure

From pop-os/icon-theme @ master (fetched 2026-10-02; the repo pop-os/pop-icon-theme no longer exists — the theme lives here):

10. HIG guidance (brief)

What DropTerm has to work with

Verified in this repo:

Recommendation

Ranked options for the visual trigger, fitted to DropTerm’s anatomy:

Rank Option Precedent Fits DropTerm because Cost
1 “Settings” item in a right-click context menu on the terminal (widget::context_menu + menu::Tree, settings last, plus Copy/Paste-type items if desired) cosmic-term src/menu.rs:74; Guake guake/menus.py:167-186; QTerminal termwidget.cpp:257; Tilda tilda-context-menu.c:216 Available in every surface state (single tab, multi-tab, mid-drag never); zero new chrome; uses the pinned libcosmic widget as-is; popups work from exclusive layer surfaces (finding 8); preserves quake minimalism Low: wrap the terminal element, add a message that calls open_settings
2 Persistent menu/gear button at the end of the tab bar Yakuake title-bar menu button (titlebar.cpp:41-46); Windows Terminal chevron (TerminalPage.cpp:1022-1148) Most discoverable affordance in the genre when the bar is always there High: must make the tab bar permanent (breaking the deliberate single-tab-no-chrome rule, src/tab_bar.rs:3-4) or accept the trigger vanishing with one tab; no COSMIC app does this
3 Button inside the grab bar none found in any surveyed app Only always-present strip Rejected: 8px handle (src/grab_bar.rs:47), drag-gesture conflict, no precedent

Supporting decisions for option 1, all evidence-backed:

Open questions (flagged, not blocking):

Sources