Opened 8 years ago

Closed 7 years ago

#4968 closed defect (notsugar)

display hot plug is ignored

Reported by: quozl Owned by:
Priority: Normal Milestone: Unspecified
Component: Sugar Version: Git as of bugdate
Severity: Major Keywords:
Cc: Distribution/OS: Unspecified
Bug Status: New


With most desktop environments, hot plug of a new display automatically enables side-by-side mode.

With Sugar, hot plug of a new display is ignored. Workaround is to start Terminal, identify the displays, and enable the new display as a mirror, for example:

xrandr --output HDMI-1 --same-as eDP-1 --auto

Sugar must do this automatically. It must not be left to the user or integrator.

Sugar does easily support mirror mode.

With some display managers, side-by-side mode is enabled during login. Sugar does not support side-by-side mode, because it does not support window management. Activities cannot be dragged from one display to the other. The activity ring is spread across the virtual display, and activities can only open on the primary display. Workaround is to remove and reinsert the cable, or use xrandr with --same-as.

Note: reproducing, developing, and testing of this problem cannot be done in virtual machines unless the environment supports display hot plug.

Change History (1)

comment:1 Changed 7 years ago by quozl

  • Resolution set to notsugar
  • Status changed from new to closed

Mirror mode is more commonly known as clone mode.

Implementation of display hot plug varies by distribution. On some distributions, the GNOME window manager Mutter implements response to hot plug (!), provides a D-Bus interface, and a GObject introspection layer GnomeDesktop is available if Mutter is running. The layer doesn't work for notification of output changes. Also, Sugar uses Metacity, and a switch to Mutter may be complex. Sugar has lagged far behind GNOME.

On Ubuntu, the unity-settings-daemon manages display hot plug. It can be trivially configured to enable clone mode.

So it would seem there is no distribution-agnostic solution to this problem, and solutions will have to be left to the integrator or packager. Impossible for Sugar to fix. Closing.

Two recent pull requests related to investigation on this ticket, but not fundamental to it;

Note: See TracTickets for help on using tickets.