[SRU] different behaviors for switch display mode between xenial and bionic

Bug #1772811 reported by Leon Liao on 2018-05-23
28
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Mutter
Fix Released
Unknown
OEM Priority Project
Critical
Yuan-Chen Cheng
gnome-shell (Ubuntu)
High
Daniel van Vugt
Bionic
High
Marco Trevisan (Treviño)
Disco
High
Daniel van Vugt
mutter (Ubuntu)
High
Marco Trevisan (Treviño)
Bionic
High
Marco Trevisan (Treviño)
Disco
High
Marco Trevisan (Treviño)

Bug Description

* Impact

Need this SUR so that use OEM laptop hotkey won't be uesless.

* Test case

1. Install the new mutter and gnome-shell on the target machine.
2. connect an external display.
3. Press either the monitor switch HOT key (each note book have different one), or the generic hot key (Meta-P)
4. Make sure the display mode is switch to next mode, not the first mode.

* Regression potential

very low, because it's merged upstream and also tested in oem platforms.

--

When the "Fn lock" is enabled, we can switch the video mode by one key: video-key (Fn+F8).
But, the key event is too frequent. It's hard to select the wanted video mode.

Reproduce steps: Press down the Video-out hotkey

Expected results: User can select Video mode precisely by Video-out hotkey
Actual results: The speed of switch video mode is too fast makes can not select Video mode precisely

Notebook: XPS 13

Related branches

Leon Liao (lihow731) wrote :

The attached is the video when we press down the video-out key.

Changed in oem-priority:
status: New → Confirmed
importance: Undecided → Medium
Yuan-Chen Cheng (ycheng-twn) wrote :

more information:

(Fn+F8) send key code (WindowsKey + P).

There are four display mode: (you can see it as you plug an external display, and press WindowsKey + P)
- Mirror
- Joint Displays
- External Only
- Built-in Only

When we press WindowsKey + P:
- On Xenial, we switch to Next mode
- On Bionic, we switch to the first mode

Jerry Kao (jerry.kao) on 2018-12-04
Changed in oem-priority:
importance: Medium → Critical
tags: added: bionic somerville
Sebastien Bacher (seb128) wrote :

Thank you for your bug report. Does it work sometime/on some machines? Do you always end up having the first mode selected or is that key events are sent several times and doing more than 1 change?

affects: gnome-control-center (Ubuntu) → gnome-settings-daemon (Ubuntu)
Changed in gnome-settings-daemon (Ubuntu):
importance: Undecided → High
status: New → Incomplete

Hi Seb, Per what I know, it's reproduced in every machine.

If we press and release, we always end up in the first mode.

If we press longer and release, then it depends on the moment the key is released because it moves so fast like more than 5 moves per seconds.

summary: - Can not select Video mode precisely by Video-out hotkey
+ different behaviors for switch display mode between xenial and bionic
hugh chao (hugh712) on 2018-12-05
tags: added: stella
hugh chao (hugh712) wrote :

seems not only one oem platform can reproduced this issue due to Bug 539477

Sebastien Bacher (seb128) wrote :

looking a bit more, indeed the gnome-shell behaviour changed as described in https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/208/

They changed it to have to maintain the modifier and cycle through the configs by pressing the letter then, which doesn't work when you have a key 'faking the event' (which is what the upstream bug is about).

To support that usecase again they changed back in 3.30, which means it should work in 18.10. Could you try there if the issue is indeed resolved for you? If so we should backport https://gitlab.gnome.org/GNOME/gnome-shell/commit/fcdac69e to bionic

hugh chao (hugh712) wrote :

haven't tried cosmic but I did try disco, still can reproduce this issue

Yuan-Chen Cheng (ycheng-twn) wrote :

Happened to have a machine install disco, test passed:

  press key once will move to the next mode, instead of the first mode.

OSD still moves fast (or won't stay on the screen for seconds). That's not a good user experience

Per what I know, Hugh takes today off. Will sync with him tomorrow.

Yuan-Chen Cheng (ycheng-twn) wrote :

per test on cosmic, get the same result as #9.

Sebastien Bacher (seb128) wrote :

Ok, good. So it means the function is fixed, a better experience would be to not show the UI at all or keep it on screen longer then

Changed in gnome-settings-daemon (Ubuntu):
status: Incomplete → In Progress
affects: gnome-settings-daemon (Ubuntu) → gnome-shell (Ubuntu)
Yuan-Chen Cheng (ycheng-twn) wrote :

Hi Sab, If "keep it on screen longer" means: "while previous key press released, the OSD will keep on screen longer. Before it disappears, press it one more will go next one, instead of before from the first one." Guess that's also what you mean.

Changed in oem-priority:
assignee: nobody → Yuan-Chen Cheng (ycheng-twn)
status: Confirmed → Triaged
Daniel van Vugt (vanvugt) wrote :

The mutter and gnome-shell fixes are both in version(s) 3.30.1, so Fix Released in 18.10 and 19.04 already.

Changed in mutter (Ubuntu):
status: New → Fix Released
Changed in gnome-shell (Ubuntu):
status: In Progress → Fix Released
Alex Tu (alextu) wrote :

@Daniel,
Because this issue is for bionic,do we have schedule to back port it to bionic?

Daniel van Vugt (vanvugt) wrote :

I have nominated bionic to receive the fix but I don't have any power to accept the nomination. Nothing is formally "scheduled" yet.

I suggest someone should either propose the fixes for inclusion in the upstream branches named gnome-3-28, or (more difficult) find someone with the authority to cherry pick the fixes into the gnome-3-28 branches.

Will Cooke (willcooke) on 2019-01-29
Changed in gnome-shell (Ubuntu):
assignee: nobody → Daniel van Vugt (vanvugt)

I can do the cherry-picking, to have this properly fixed in 3.30 though we need also

https://gitlab.gnome.org/GNOME/mutter/commit/149e4d69345adab2bfea84a04f88511cbad62fe0

or there's a regression.

So, we need to include this in disco first (fixed in 3.31.4 so far).

Changed in mutter (Ubuntu):
status: Fix Released → Triaged
Will Cooke (willcooke) on 2019-02-05
Changed in gnome-shell (Ubuntu Bionic):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Changed in gnome-shell (Ubuntu):
status: Fix Released → Triaged
tags: added: fixed-3.31.4 fixed-upstream
Changed in gnome-shell (Ubuntu):
status: Triaged → Fix Released
tags: added: rls-dd-tracking
tags: added: rls-dd-incoming
removed: rls-dd-tracking
Changed in mutter (Ubuntu Bionic):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Changed in mutter (Ubuntu Disco):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mutter - 3.31.92-1~fakesync

---------------
mutter (3.31.92-1~fakesync) experimental; urgency=medium

  * New upstream release
    + Add back support for system-wide monitor configurations
    + Add cursor-mode support to window screencasting
    + Add flag parameter to grab accelerator API
    + Add fractional scaling support
    + Consider remapped keys when guessing keycode from keysym
    + Don't disable page flips after temporary failues
    + Fix crash when using "restore shortcuts" without focus window
    + Fix flicker of apps that use multiple SHM buffers
    + Fix infinite loop in EDID matching
    + Improve redraw performance
    + Reuse old CRTC if possible to avoid flicker on hotplug
    + Stop turning on-screen-keyboard off on focus changes
    + wayland: Don't maximize windows if minimum size is too big
    + wayland: Don't resetin text-input state prematurely
  * Drop old cherry-picks which are upstream, refresh other patches.
    Dropped:
      debian/patches/Update-Basque-translation.patch
      debian/patches/Update-French-translation.patch
  * d/p/sound-player-Don-t-deadlock-in-finish_cb.patch: Cherry-pick.
    This fixes a deadlock bug when scrolling over the volume indicator. (LP:
    #1817546)
  * debian/control: Breaks gnome-settings-daemon << 3.31.91. Altering the
    GrabAccelerator API will break key grabbing under g-s-d versions which
    don't use the new parameter.
  * debian/libmutter-4-0.symbols: Update. Upstream dropped a load of
    deprecated functions. This obviously is an ABI break, but we don't
    consider the ABI stable until the final release. Also some additions.

 -- Iain Lane <email address hidden> Wed, 06 Mar 2019 13:44:08 +0000

Changed in mutter (Ubuntu Disco):
status: Triaged → Fix Released
summary: - different behaviors for switch display mode between xenial and bionic
+ [SRU] different behaviors for switch display mode between xenial and
+ bionic
description: updated
description: updated
Changed in mutter (Ubuntu Bionic):
importance: Undecided → High
status: New → In Progress
Changed in gnome-shell (Ubuntu Bionic):
status: New → In Progress
Changed in mutter:
status: Unknown → Fix Released

Hello Leon, or anyone else affected,

Accepted mutter into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/mutter/3.28.4-0ubuntu18.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in mutter (Ubuntu Bionic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-bionic
Brian Murray (brian-murray) wrote :

Hello Leon, or anyone else affected,

Accepted gnome-shell into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gnome-shell/3.28.4-0ubuntu18.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in gnome-shell (Ubuntu Bionic):
status: In Progress → Fix Committed
Changed in gnome-shell (Ubuntu Bionic):
importance: Undecided → High
Changed in mutter (Ubuntu):
importance: Undecided → High
Changed in mutter (Ubuntu Disco):
importance: Undecided → High
Leon Liao (lihow731) wrote :

I verified this bug on bionic.
After upgrade gnome-shell and mutter to 3.28.4-0ubuntu18.04.1, the video switch experience is better than original.

tags: added: verification-done-bionic
removed: verification-needed-bionic
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gnome-shell - 3.28.4-0ubuntu18.04.1

---------------
gnome-shell (3.28.4-0ubuntu18.04.1) bionic; urgency=medium

  * New upstream stable release
    - Fix ellipsization in dialog subtitles/bodies (LP: #1809788)
    - dnd: Only handle touch events in wayland (LP: #1817020)
    - windowManager: listen actively to windows being destroyed during WS switch
      (LP: #1812527)
    - Fix unresponsive-app dialog blocking input in other windows (LP: #1740869)
    - Fix regression on missing spread animation (LP: #1827284)
  * d/p/js-fix-invalid-access-errors.patch,
    d/p/js-ui-Choose-some-actors-to-cache-on-the-GPU.patch:
    - Refreshed
  * d/p/switchMonitor-switch-to-next-config-upon-initial-keypress.patch
    - Ensure switch display mode is cyclic (LP: #1772811)
  * debian/control:
    - Depends on mutter 3.28.4-0ubuntu18.04.1
  * d/p/st-widget-Add-missing-g_return_val_if_fail.patch:
    - st-widget: Protect from NULL obj in get_theme_node (LP: #1796606)

 -- Marco Trevisan (Treviño) <email address hidden> Fri, 10 May 2019 11:43:10 +0100

Changed in gnome-shell (Ubuntu Bionic):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for gnome-shell has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mutter - 3.28.4-0ubuntu18.04.1

---------------
mutter (3.28.4-0ubuntu18.04.1) bionic; urgency=medium

  * New upstream release:
    - Implement keycode remap to keysyms on virtual key devices (LP: #1827029)
  * d/p/monitor-manager-Don-t-use-switch-config-when-ensuring-con.patch,
    d/p/monitor-manager-use-MonitorsConfig-to-track-switch_config.patch:
    - Ensure switch display mode is cyclic (LP: #1772811)

  [ Daniel van Vugt ]
  * d/p/lp1763892-a-renderer-native-Add-hardware-presentation-timing.patch,
    d/p/lp1763892-b-renderer-native-Advertise-_FEATURE_SWAP_THROTTLE.patch:
    - Add support for high frame rate displays (LP: #1763892)
  * d/p/clutter-Smooth-out-master-clock-to-smooth-visuals.patch:
    - Dropped

  [ Iain Lane ]
  * Update symbols file for *_switch_config.
    These are added as a backport in this update. They are available in
    subsequent releases (so generated deps should keep working fine).

 -- Marco Trevisan (Treviño) <email address hidden> Tue, 07 May 2019 18:05:21 +0100

Changed in mutter (Ubuntu Bionic):
status: Fix Committed → Fix Released
Changed in oem-priority:
status: Triaged → Fix Released
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

Bug attachments

Remote bug watches

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