Window States

It is time to rethink the states an application window can present itself. The aim is to limit the amount of window "management" and enable to make use of screen estate efficiently.

Tentative Design

https://github.com/gnome-design-team/gnome-mockups/raw/master/00patterns/window-states/window-states.png

Normal

  • Drag titlebar to top to maximize (as now)
  • Keyboard shortcut to toggle maximize -- Super+Up
  • Titlebar button or keyboard shortcut to close

Maximized

GNOME 3 applications are launched maximized by default. There are exceptions to the rule, maximization by default is not performed on large workstation displays for example. See below.

https://github.com/gnome-design-team/gnome-mockups/raw/master/boxes/boxes-default.png

  • Titlebar hidden
  • Super+Drag (keyboard) or three-finger? gesture (touch) to transition to Normal state to move window (or tile)
  • AppMenu Quit to close for single window apps

  • Consider first window the master window for the app (usually an overview)
  • Don't offer a close button on the master window
  • Offer toolbar close buttons (ie. Done buttons) on secondary windows
  • For apps without a master window (eg Evince) always use close buttons - the master window is the app that launched it

http://www.youtube.com/watch?v=7iKMnakR8kw

To restore view to windowed

  • Super+Up is a toggle
  • Drag by toolbar or the whitespace on the top bar down,

When Applications start maximized

As per discussion in https://bugzilla.gnome.org/show_bug.cgi?id=651075 we should not maximize windows by default in some cases.

  • Tablets: maximized
  • Laptops: maximized under 15"?
  • Netbooks: maximized
  • Desktop: monitors under 19"?
  • Projectors: maximized (since far away)
  • TVs: maximized

The property is persistent per window.

Fullscreen

  • Toolbar arrow button to return to previous state
  • Keyboard shortcut to leave fullscreen
  • Top bar status visible when overlays shown.

https://www.youtube.com/watch?v=LHT2RUoNi5w

Design/OS/WindowStates (last edited 2015-09-15 12:22:28 by JakubSteiner)