Differences between revisions 45 and 46
Revision 45 as of 2016-10-21 13:32:29
Size: 11131
Editor: mpt
Comment: “Fit” and “Stretched” are mutually exclusive
Revision 46 as of 2016-10-25 10:14:24
Size: 11100
Editor: mpt
Comment: new mini wireframes
Deletions are marked like this. Additions are marked like this.
Line 25: Line 25:
You can’t pinch or drag the real background to resize or crop it, so the windowed mode needs its own control for that. Therefore, the Background UI must be different in staged mode than in windowed mode. You can’t pinch or drag the real background to resize or crop it, so the windowed mode needs its own controls for that. Therefore, the Background UI must be different in staged mode than in windowed mode.
Line 27: Line 27:
||                              ||'''Staged mode'''                                      ||'''Windowed mode'''                               ||
||'''Display System Settings is running on'''||<^>{{}}||<^>{{}} ||
||'''Any other display'''       ||<^>{{}} ||<^>{{}}||
|| ||'''Staged mode'''||'''Windowed mode'''||
||'''The display that System Settings has been on'''||<^>{{}}||<^>{{}}||
||'''Any other display''', when “Different background on each display” is chosen||<^>{{}}||<^>{{}}||

Background settings

“Background” refers to the area behind all open windows in windowed mode, and to the welcome (lock) screen in staged mode.



On the System Settings main screen, the “Background” icon should include a thumbnail of the currently selected background. Therefore, all the backgrounds in the icon should reflect the aspect ratio of the current display.


When choosing a background, by far the best representation is seeing the full-size background on the screen itself. This avoids frustration from choosing an image that has too low resolution, or from cropping an image poorly, and not being able to see the problem until you have exited. It’s also more fun.

Achieving this representation requires custom behavior in two ways.

First, each display should have its own Background UI. (This is unlike Display settings, where all displays must be configurable on the primary display because a misconfigured display might not be working at all.)

Second, the UI for each display should let you see the background on that display:

  • In staged mode, System Settings should be full-screen whenever you are on the “Background” panel, and the header should be semi-transparent, so that you can see the background behind it.

  • In windowed mode, all non-System-Settings windows should be transparent whenever you are in the “Background” panel, so that you can see the background around the System Settings window, with only outlines remaining to reassure you that they are still open. As soon as you switch to another panel, or close, minimize, or unfocus System Settings, all other windows should resume visibility.

You can’t pinch or drag the real background to resize or crop it, so the windowed mode needs its own controls for that. Therefore, the Background UI must be different in staged mode than in windowed mode.

Staged mode

Windowed mode

The display that System Settings has been on

Any other display, when “Different background on each display” is chosen

Staged mode layout


“New”, “Recent”, “Pinch to crop”, and “Drag to move” should all be white text with a black outline, so that you can read them against any background.

Tapping “New” should open a picker for selecting a new image, including an “Ubuntu Backgrounds” collection (bug 1288364) that does not appear when the picker is called from other apps. (Alternatively, this collection should be placed by default in the Gallery app.)

After a fresh install, the “Recent” list should should be pre-populated with the default images from the most recent Ubuntu contest. Otherwise, it should consist of the ten most recently chosen distinct background settings — that is, an image rendered in a particular way. This means there may be multiple recent background settings that use the same picture but with different renderings. A background setting should be saved whenever you leave the “Background” screen.

If you choose a new image, that image should zoom up from the “New” button to be shown as the current background, following its appropriate default rendering. If you choose any of the “Recent” items, that image should similarly zoom up from its thumbnail to become the current background. At the same time, any “Recent” items to its left should slide along one spot, making way for the previous selection to zoom down to become the most “Recent” item. If you chose a new image, the least recent setting should disappear from the list.

Long-pressing a “Recent” item should reveal a popover menu with a single item, “Delete”. (Deleting recent background settings will be a rarely-needed function, usually wanted only after relationship breakups.)

In the usual case where there is not enough room to show the “New” button plus all the “Recent” items in a single row:

  • The entire row should be scrollable horizontally. That is, it should be a horizontally-scrolling list spanning the screen, with transparent background and no border.
  • To indicate that there is more off-screen, the spacing between the “Recent” items should be expanded if necessary depending on the screen size, just enough that one of them is between 1/3 and 2/3 off-screen.
  • The scroll position should reset whenever you return to the screen (so that you don’t lose sight of the “New” button) or choose a different background (so that you can see the previous selection become the new most recent, and undo it if necessary).

Windowed mode layout

The windowed mode layout is different, so that it can contain a correctly-proportioned thumbnail for dragging.

Background image rendering: Tiled, Stretched, Cropped

Whenever you select a new image, its default rendering on each display should be whichever is most likely to suit that image on that display, but you should be able to change the rendering using a radio menu.



Use as default

Tiled”, with one tile exactly centered on the center of the display

If image pixel size is less than the display’s in either dimension

1. If image pixel size is less than 1/4 the display pixel size in either dimension

Fit” exactly on the display

If image is at least as large as the display, with exactly the same aspect ratio (for example, exactly the same pixel size)

2. If image is at least as large as the display, with exactly the same aspect ratio

Stretched”, scaled differently in each dimension to exactly fill the display in both

Whenever “Fit” is not present

3. If image’s aspect ratio is within 10% of the display’s

Cropped”, scaled proportionally at least enough to fill the display in both dimensions

If image does not have exactly the same aspect ratio as the display

4. In any other case


Whenever the rendering for the current image is set to “Cropped”, and you have a touchscreen or multi-touch touchpad, the standard gestures should resize and pan the picture to choose the cropped area (bug 1368286). In case you do not realize this:

  • Whenever you have been on the “Background” screen for five seconds without changing anything, the “Drag to move” hint should fade in and out over two seconds.
  • Unless you have moved a pointing device in the meantime, this should be followed by the “Pinch to crop” animation fading in and out.
  • Whenever you move a pointing device (indicating that you aren’t using a multi-touch input device, even if you have one), a “Size:” slider should appear instead, so that you can resize the image without pinching.

  • Over any non-control part of the screen (in staged mode) or the preview (in windowed mode), the cursor should be a grabbing hand, indicating that you can drag to move the image.




It is practical to persist or resize the Launcher only on large displays.

Therefore, The “Launcher” category should be present only when one or more display at least 90 GU wide is currently detected (for example, the built-in display). If you are on the panel at the moment that this stops being true (for example, on a phone when you disconnect the only external display), System Settings should automatically navigate back to the main screen.

The introductory label “On large displays:” should be present if the current display does not fall into this category (to explain why the settings aren’t applying to the display that you’re looking at).

Other details TBD

Appearance (last edited 2020-01-14 12:20:47 by mpt)