Screen scaling slider allows the UI to get into an unrecoverable state

Bug #1296978 reported by Stephen M. Webb on 2014-03-24
42
This bug affects 8 people
Affects Status Importance Assigned to Milestone
unity-control-center (Ubuntu)
Undecided
Unassigned

Bug Description

The scaling slider in the monitors settings allows the display to be scaled so the slider is offscreen, and unrecoverable condition.

A timed confirmation dialog with revert, similar to the display resolution setting, should prevent this.

Related branches

Stephen M. Webb (bregma) wrote :
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1296978

tags: added: iso-testing
Eleni Maria Stea (hikiko) wrote :

Sorry, I hadn't seen that there's a bug report already. Here's a related discussion:
https://bugs.launchpad.net/ubuntu/+source/unity-control-center/+bug/1299079

Changed in unity-control-center:
assignee: nobody → Eleni Maria Stea (hikiko)
Matthew Paul Thomas (mpt) wrote :

[Adapted from bug 1299079]

The position of the "Apply" button already implies that it applies to every setting in the panel, including UI scale. If it didn't apply to UI scale, we would have to move the button and the scale controls so that they obviously didn't relate to each other.

It's also generally a bad idea for changing a setting to immediately alter the UI of the setting itself.

For those two reasons, this setting should not be instant-apply. It should use the same "Apply" button and confirmation alert as the rest of the settings.

That leaves the problem of displaying a preview of the new setting.

Yes, the Apply button should be consistent. Either have it or don't have it, but don't mix settings on the same form where some are applied immediately and others aren't.

The issue of being able to recover would be solved by 1) auto-revert and 2) put the settings in a vbox widget so that if the content of the window exceeds the vertical boundary it automatically gets a vertical scroll bar (that is going to be an issue in general, for every window, when you allow the user to scale the UI up beyond what the developer is using - don't forget that for users with bad eyesight it is common to scale the UI up to what developers with good eyesight would consider ridiculous levels - even at these levels the UI should be functional, instead of making sections of the window unusable by plotting them offscreen and providing no way for the user to scroll there.)

Matthew Paul Thomas (mpt) wrote :

Unfortunately we will need to leave that Apply problem unsolved for 14.04. Choosing an appropriate UI scale is fundamentally different from choosing resolution and rotation. With resolution and rotation, if you get it wrong, you'll usually want to go back to completely to what you had before. So that confirmation dialog has, instead of a "Cancel" button, a "Restore Previous Configuration" button.

But with UI scale, if you get it wrong, it's usually because you got it nearly right. So you want to make a small adjustment to your previous attempt, not restart it from scratch. And we have neither time before 14.04, nor screen real estate, to implement a preview to replace the instant-apply setting. (We will have screen real estate once the Launcher settings are moved to a separate panel.)

Instead, we will try solving the problem in a subtle way. If you move the UI scale slider so much that the window resizes to push the slider off-screen, the System Settings window as a whole will move just enough so that the whole slider (or, in an extreme case, the slider thumb and as much as possible of the slider around it) appears on-screen again. That way, even if the rest of the window becomes inaccessible, you can undo your change and make the rest of the window accessible again.

Fr-coord (fr-coor) wrote :

In the meantime how can this be reset to it's default value to make the system usable again?

Fr-coord (fr-coor) wrote :

OK so I was able to get out of this blown up scale by activating the workspaces and switch to the lower left one where the rest of the window was displayed, and then move the slider back to 1.

Eleni Maria Stea (hikiko) wrote :

The proposed branch clamps the UI scale to a more reasonable value.

The solution in https://bugs.launchpad.net/unity-control-center/+bug/1296978/comments/6 could not be implemented for the following reason:

We can always move/resize a "normal" window, but when a window (like the u-c-c) exceeds the screen boundaries, the window manager will place it in a predefined position and will ignore the program's request.

@yahoe.001: you could also use alt + drag to move the window to a position where the slider is visible :)

Masoud Abkenar (mabkenar) wrote :

This is how to set it via CLI:

gsettings set org.gnome.desktop.interface text-scaling-factor 0.5

[0.5 is the minimum allowed value.]
Please note that the GUI and the CLI are controling the same parameter. Rather, what you set via CLI will be multiplied by what you have set in the GUI. Therfore, if you have set UI scale 4 via the GUI, by executing the above command you will get an effective UI scale of 2 [= 4 x 0.5], which helps you to solve the problem via GUI.

Masoud Abkenar (mabkenar) wrote :

@Eleni: alt + drag does not work in my case. I mean, alt + drag works in general, but when I have UI scale 4 in my non-FHD display it does not work (just when I urgently need it to revert back my system to a usable state!)

>you could also use alt + drag to move the window to a position where the slider is visible

Trying this exposes another bug:

set the scale to 4
alt-drag the window
set the scale back to 1
the display redraws and the display settings window is now plotted off the screen

You need to make sure that, when the scale changes, the window is still plotted on the display, otherwise the user won't be able to see it any more...

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity-control-center (Ubuntu):
status: New → Confirmed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-control-center - 14.04.3+14.04.20140407-0ubuntu1

---------------
unity-control-center (14.04.3+14.04.20140407-0ubuntu1) trusty; urgency=low

  [ Sebastien Bacher ]
  * user-accounts: Mark some strings as translatable
 -- Ubuntu daily release <email address hidden> Mon, 07 Apr 2014 14:10:58 +0000

Changed in unity-control-center (Ubuntu):
status: Confirmed → Fix Released
Changed in unity-control-center:
status: New → Fix Committed
assignee: Eleni Maria Stea (hikiko) → nobody
no longer affects: unity-control-center
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers