Change resolution with "Mirror displays" checked, extended mode will be trimmed

Bug #1208333 reported by Penk Chen
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OEM Priority Project
Fix Released
Medium
Unassigned
Precise
Won't Fix
Undecided
Unassigned
gnome-settings-daemon (Ubuntu)
Fix Released
Undecided
Canonical Desktop Team

Bug Description

Steps to reproduce:

1. Boot up the device, then plug in HDMI/VGA port
2. Check "Mirror displays" in Display of System Settings
3. Set the screen to lower resolution (e.g. 800x600) and apply change
4. Toggling Fn+F4 for a cycle, can't switch to extended mode

Expected Result:
Display modes should be "Mirror mode" -> "Extended mode" -> "Internal only mode" -> "External only mode"

Actual Result:
Display modes are "Mirror mode" -> "Mirror mode" -> "Internal only mode" -> "External only mode"

Note:
If unchecked "Mirror displays" and apply again, g-s-d can get the Xinerama configuration.

Some error messages while running g-s-d in debug mode:

(gnome-settings-daemon:4025): GnomeDesktop-CRITICAL **: gnome_rr_output_info_get_geometry: assertion `GNOME_IS_RR_OUTPUT_INFO (self)' failed

(gnome-settings-daemon:4025): GnomeDesktop-CRITICAL **: gnome_rr_output_info_get_geometry: assertion `GNOME_IS_RR_OUTPUT_INFO (self)' failed

(gnome-settings-daemon:4025): GnomeDesktop-CRITICAL **: gnome_rr_config_set_clone: assertion `GNOME_IS_RR_CONFIG (self)' failed
=== xinerama setup Configuration ===
  none

Since the gnome_rr_output_info_get_geometry() failed in compare_output_position(), trim_rightmost_outputs_that_dont_fit_in_framebuffer() will remove the Xinerama configuration in make_xinerama_setup().

Revision history for this message
Penk Chen (penk) wrote :
Changed in oem-priority:
importance: Undecided → Medium
Revision history for this message
Penk Chen (penk) wrote :
Ara Pulido (ara)
Changed in gnome-settings-daemon (Ubuntu):
assignee: nobody → Canonical Desktop Team (canonical-desktop-team)
Revision history for this message
Sebastien Bacher (seb128) wrote :

Thanks, what version of Ubuntu are you using?

Is there any chance you could open an upstream bug about it on https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-settings-daemon (test if it's still happening on saucy before though)?

Revision history for this message
Penk Chen (penk) wrote :

I was testing on Ubuntu Precise (12.04.1) amd64, will check if there's any Saucy build for the platform I'm using.

Ara Pulido (ara)
Changed in gnome-settings-daemon (Ubuntu):
status: New → Incomplete
Revision history for this message
Penk Chen (penk) wrote :

Tested on Saucy Final Beta and reproduced this issue.

Ara Pulido (ara)
Changed in gnome-settings-daemon (Ubuntu):
status: Incomplete → Confirmed
Ara Pulido (ara)
Changed in oem-priority:
status: New → Confirmed
Revision history for this message
Ara Pulido (ara) wrote :

Penk, does this reproduce with the latest build for Trusty?

Changed in gnome-settings-daemon (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

Hello, it seems that this cannot be reproduced on Trusty dailylive

Verified on 201304-13249 HP Pavilion 14 Notebook PC
Steps:
1. Install 14.04 Trusty dailylive (Feb.20, 3.13.0-10), boot to desktop
2. Insert a HDMI cable, tick the "Mirror displays" option in display applet
3. Apply the resolution change from 1024x768 to 800x600
4. Cycle through display modes by pressing F4

Actual result:
* From step 4, it will change from:
1. 800x600 mirrored
2. 1024x768 mirrored
3. 1366x768 + 1920x1080 extended
4. 1920x1080 external monitor only
5. 1366x768 built-in display only
6. back to 1

Thanks

Po-Hsu Lin (cypressyew)
Changed in gnome-settings-daemon (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Ara Pulido (ara) wrote :

Marking as Fix Released, as this was verified as working in Trusty

Changed in gnome-settings-daemon (Ubuntu):
status: Confirmed → Fix Released
Changed in oem-priority:
status: Confirmed → 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.