mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-06 23:49:41 +02:00
feat: tab action icons on the active tab only, middle-click closes tabs
Rework of the previous hover-overlay approach after feedback: sliding the title under incoming icons made names hard to read, and icons appearing under the cursor caused accidental gear/close clicks while switching tabs. Now the gear/pop-out/close icons expand in flow on the ACTIVE tab only. Selection is a deliberate click, so the strip's geometry never changes while the pointer is aiming at a tab; hovering a background tab changes nothing (the full title stays readable) and a stray click can only switch sessions. Middle-click closes any tab (session tabs via the existing close-confirm modal, web tabs via closeWebviewTab), matching browser muscle memory so background tabs still close in one action. The pop-out button stays opt-in via App Settings -> Tab Bar (per-device showTabDetachButton, default off), and a detached tab keeps its icon as the re-focus affordance. Phone layouts already used the active-only pattern; tablets keep their always-visible touch fallback. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -2003,7 +2003,7 @@ Object.assign(CodemanApp.prototype, {
|
||||
const settings = this.loadAppSettingsFromStorage();
|
||||
const defaults = this.getDefaultSettings();
|
||||
|
||||
// Tab pop-out (open-in-new-window) button — opt-in (App Settings → Tab Bar,
|
||||
// Tab pop-out (open-in-new-window) button: opt-in (App Settings → Tab Bar,
|
||||
// default OFF, per-device). Mirrored as a class on <html>: styles.css hides
|
||||
// .tab-detach without it (a tab that is already detached keeps its icon as
|
||||
// the re-focus affordance for the popped-out window).
|
||||
|
||||
Reference in New Issue
Block a user