support display scaling slider in unity8

Bug #1645372 reported by Bill Filler
24
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Canonical System Image
In Progress
High
Stephen M. Webb
Mir
Fix Released
High
Andreas Pokorny
0.26
Fix Released
High
Andreas Pokorny
mir (Ubuntu)
Fix Released
High
Andreas Pokorny
qtmir (Ubuntu)
Triaged
High
Gerry Boland
ubuntu-system-settings (Ubuntu)
In Progress
High
Jonas G. Drange
unity8 (Ubuntu)
Triaged
High
Gerry Boland

Bug Description

We need to be able to scale the display in unity8, via ubuntu-system-settings Display->Scaling slider. This will need backend support in Mir and unity8, filing this bug to track.

Also see related bug https://bugs.launchpad.net/mir/+bug/1196239/

Related branches

Bill Filler (bfiller)
Changed in ubuntu-system-settings (Ubuntu):
importance: Undecided → High
assignee: nobody → Jonas G. Drange (jonas-drange)
Changed in mir (Ubuntu):
importance: Undecided → High
Changed in qtmir (Ubuntu):
importance: Undecided → High
Changed in unity8 (Ubuntu):
importance: Undecided → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in mir (Ubuntu):
status: New → Confirmed
Changed in qtmir (Ubuntu):
status: New → Confirmed
Changed in ubuntu-system-settings (Ubuntu):
status: New → Confirmed
Changed in unity8 (Ubuntu):
status: New → Confirmed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

This missing piece (if any) in Mir is a 'mir_output_set_scale_factor' function, to match the existing 'mir_output_get_scale_factor'.

Although Unity8 is a server so might be able to skip that requirement and just modify the server structure directly.

Changed in mir:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Gerry Boland (gerboland) wrote :

Yes mir_output_set_scale_factor is needed, as the settings app needs an API to communicate the desired scale factor to unity8

kevin gunn (kgunn72)
Changed in mir:
assignee: nobody → Andreas Pokorny (andreas-pokorny)
Changed in mir (Ubuntu):
assignee: nobody → Andreas Pokorny (andreas-pokorny)
Changed in canonical-devices-system-image:
importance: Undecided → High
status: New → In Progress
Changed in mir (Ubuntu):
status: Confirmed → In Progress
Changed in mir:
status: Triaged → In Progress
Changed in canonical-devices-system-image:
assignee: nobody → Stephen M. Webb (bregma)
Changed in mir:
milestone: none → 0.26.0
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Enhancement landed in lp:mir/0.26 but confusingly not in lp:mir yet

Changed in mir:
milestone: 0.26.0 → 1.0.0
Changed in mir (Ubuntu):
status: In Progress → Triaged
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 1.0.0

Changed in mir:
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (7.2 KiB)

This bug was fixed in the package mir - 0.26.0+17.04.20170126.3-0ubuntu1

---------------
mir (0.26.0+17.04.20170126.3-0ubuntu1) zesty; urgency=medium

  [ Daniel van Vugt ]
  * New upstream release 0.26.0 (https://launchpad.net/mir/+milestone/0.26.0)
    - ABI summary:
      . mirclient ABI unchanged at 9
      . mirserver ABI bumped to 43
      . mircommon ABI unchanged at 7
      . mirplatform ABI unchanged at 14
      . mirprotobuf ABI unchanged at 3
      . mirplatformgraphics ABI unchanged at 11
      . mirclientplatform ABI unchanged at 5
      . mirinputplatform ABI unchanged at 6
      . mircore ABI unchanged at 1
    - Enhancements:
      . New/improved toolkit APIs: MirInputConfig and related functions,
        MirWindow and related functions, DisplayConfig and related functions,
        MirScreencastSpec and related functions,
      . Support for configuring input configuration
      . Introduce toolkit extension mechanism for platform specific APIs.
      . Toolkit extensions for: mesa_drm_auth, set_gbm_device and
        window_coordinate_translation
      . Screencasting to a specific MirBuffer.
      . Add DisplayConfigurationController::base_configuration() so downstreams
        can get the base configuration. (Weirdly they can already set it.).
      . x11 platform: allow adjustable scale parameter.
      . Added EDID support: client API, server logging and in mirout.
      . mirout: Add newer attributes only available in the new display
        config API: scaling factor, subpixel arrangement and form factor.
      . mirout: Log the orientation and logical size of each output too.
      . Replace the mir::Server-overridable Reports with Observers.
      . Add xkbcommon to mirclient.pc Requires.private.
      . Deprecate legacy toolkit APIs that will be removed in Mir 1.0
      . Introduced 'client-side vsync', which dramatically reduces latency
        from the client to the screen (particularly for nested servers like
        Unity8).
    - Bugs fixed:
      . [performance] Restore support for better-than-triple buffering by
        default. (LP: #1240909)
      . Frame rate is artificially low on Diamondville Intel Atom systems due
        to aggressive power management (LP: #1388490)
      . [testsfail] failure in CI in
        AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_frameskipping
        (LP: #1394369)
      . [trusted prompt sessions] Can't open two prompt sessions at the same
        time (LP: #1494197)
      . Changing scale, formFactor or DPI in display configuration causes
        renderer teardown/recreate unnecessarily (LP: #1556142)
      . [testsfail] ApplicationNotRespondingDetection.failure_to_pong_is_
        noticed (LP: #1570327)
      . CI failure in TestClientInput.receives_one_touch_event_per_frame
        (LP: #1570698)
      . Mir-on-X mouse input is jerky/stuttery compared to Mir-on-KMS
        (LP: #1576600)
      . [regression] Two fingers in mir_proving_server now resizes/moves app
        windows (two finger apps unusable) (LP: #1586311)
      . Pointer/cursor input lag in unity8 session (LP: #1591328)
      . PointerConfinement.test_we_update_our_confined_region_on_a_resize
      ...

Read more...

Changed in mir (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Bill Filler (bfiller) wrote :

Just re-tested this with latest Mir 0.26 and silo 2140 https://bileto.ubuntu.com/#/ticket/2140 with changes from system settings to add the scaling slider (uses mir api)

All of the app windows correctly scale. But the shell does not scale at all. Obviously we'd want windows and the shell to scale together.

Changed in qtmir (Ubuntu):
assignee: nobody → Gerry Boland (gerboland)
Changed in unity8 (Ubuntu):
assignee: nobody → Michał Sawicz (saviq)
Changed in ubuntu-system-settings (Ubuntu):
status: Confirmed → In Progress
Michał Sawicz (saviq)
Changed in unity8 (Ubuntu):
assignee: Michał Sawicz (saviq) → Gerry Boland (gerboland)
Changed in qtmir (Ubuntu):
status: Confirmed → Triaged
Changed in unity8 (Ubuntu):
status: Confirmed → Triaged
Changed in mir:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.