Skip to content

Independent zoom level per OS window (Cmd +/-/0 affects focused window only) #10115

@Eridanus117

Description

@Eridanus117

Pre-submit Checks

  • I have searched Warp feature requests and identified several related but non-matching issues — see Relation to existing issues below.
  • I have searched Warp docs and this is not configurable today.

Describe the solution you'd like?

Cmd + / Cmd - / Cmd 0 should adjust the focused OS window's zoom level only, leaving other Warp windows at their existing zoom. All tabs and splits inside the same window share that window's zoom level (a window-scoped baseline, not per-pane override).

In-memory only is acceptable (zoom resets to global default on app restart) — same trade-off PR #9705 makes for per-pane font size.

Is your feature request related to a problem? Please describe.

I run multiple OS-level Warp windows across monitors of different sizes and viewing distances (e.g. a small reference window on a side monitor, a primary window on the main display). I want each window at its own readable zoom. Today Cmd +/- is global — adjusting one window changes all of them, which is the opposite of what I want.

VS Code, iTerm2, Chrome, and most macOS apps with multi-window support behave this way already.

Relation to existing issues (please review before triage)

I went through the zoom/font-size cluster carefully. None of the existing issues cleanly match a per-OS-window zoom baseline:

Architecture note

Currently ZoomLevel is a global SettingsBackedValue. This proposal moves the owner from global to WindowState (with global as the default for new windows). PR #9705's per-pane override would naturally layer on top: effective_zoom = pane_override ?? window_zoom ?? global_default.

Question for @oz-agent

Given the above mapping, is the cleanest path:

(a) Reuse #1394 by narrowing its scope to "window only" (and closing this issue as dup), letting the split/tab variants live in #1439 / #6739 / #2573?
(b) Keep this issue as the canonical "per-OS-window zoom baseline" tracker, leaving #1394 as a meta/umbrella?
(c) Something else?

I am happy to follow your routing recommendation.

cc @oss-maintainers for human-side visibility.

Operating system (OS)

macOS

How important is this feature to you?

3

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:settings-keybindingsSettings UI, preferences, keybindings, and keyboard-shortcut management.area:ui-frameworkCore Warp UI framework, rendering, layout, and windowing infrastructure.area:window-tabs-panesWindow, tab, pane, and workspace layout management.duplicateThis issue or pull request already exists.enhancementNew feature or request.os:macmacOS-specific behavior, regressions, or requests.repro:highThe report includes enough evidence that the issue appears highly reproducible.triagedIssue has received an initial automated triage pass.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions