Skip to content

Screen modes (F) and hiding the panels (Shift-Tab), as in Photoshop - #188

Open
Fvzion wants to merge 1 commit into
robbietilton:mainfrom
Fvzion:feature/screen-modes
Open

Fvzion wants to merge 1 commit into
robbietilton:mainfrom
Fvzion:feature/screen-modes

Conversation

@Fvzion

@Fvzion Fvzion commented Sep 30, 2026

Copy link
Copy Markdown

Best reviewed after #186: its one-at-a-time loader keeps people's custom shortcuts when new keys like F are added.

The problem today

There's no quick way to give the picture the whole screen. The only option is macOS full screen from the green button, which keeps every panel, and nothing hides the panels to look at an image uncluttered. Photoshop users reach for F and Tab without thinking.

What changes for the user

  • F (on the canvas) steps through three modes, as Photoshop does:

    1. Standard: the window as you sized it.
    2. Full Screen with Menu Bar: the window fills the screen (menu bar and Dock stay) and the tab bar hides.
    3. Full Screen: macOS full screen; tools and panels stay.

    A fourth F returns to the window's exact previous size. Leaving full screen with the green button, ⌃⌘F or Esc also returns to Standard.

  • Shift-Tab hides and shows the tool bar, options bar, Layers panel and status bar, in any mode. Plain Tab keeps its current meaning in Compositor (cycle the tool's mode), unlike Photoshop's.

  • Both keys are listed in Keyboard Shortcuts and can be changed there. F is ignored while typing text.

How to try it

  1. Open a picture and click on the canvas.
  2. Press F three times, then once more: the window comes back to its size and position.
  3. Press Shift-Tab, then again.

In the code

  • New ScreenMode.swift: the modes and a small controller that remembers the window's frame and follows macOS full-screen notifications.
  • EditorCanvas handles F and Shift-Tab; ContentView hides the panels.
  • ScreenModeTests (9 tests), including a real window going in and out of the modes and keeping its size through the green button.

Can be trimmed

View › Screen Mode and View › Show Panels do the same as the keys. If you'd rather keep View short, they can go and the keys still work.

Tested on macOS 26.6 (Apple silicon): the full test suite passes. Not yet tried on macOS 27.

🤖 Generated with Claude Code

F on the canvas steps through Standard, Full Screen with Menu Bar (the
window fills the screen, the tab bar hides) and Full Screen (macOS full
screen, tools and panels kept), and back to the window's own size.
Shift-Tab hides and shows the tool bar, options bar, Layers panel and
status bar in any mode; Tab keeps its current meaning. View › Screen
Mode and View › Show Panels do the same, and both keys are listed in
Keyboard Shortcuts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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