diff options
author | jhorwich@chromium.org <jhorwich@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-13 20:01:20 +0000 |
---|---|---|
committer | jhorwich@chromium.org <jhorwich@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-13 20:01:20 +0000 |
commit | 07de7d90c5a378d35719a6bd46531d15721f22e7 (patch) | |
tree | 1168833fc6cbdc492942fda0ba92fbeba7835a59 /chromeos | |
parent | 8e05a73bdd4ed56455139b0ea9403516dde491c2 (diff) | |
download | chromium_src-07de7d90c5a378d35719a6bd46531d15721f22e7.zip chromium_src-07de7d90c5a378d35719a6bd46531d15721f22e7.tar.gz chromium_src-07de7d90c5a378d35719a6bd46531d15721f22e7.tar.bz2 |
Don't set internal display crtc to None in CrOS extended desktop
If the user dims the internal display completely and has an external display
connected and in "extended desktop" (not mirror) mode, we would set the crtc
config to None, which would cause the cursor warping to disallow the cursor
to navigate to the internal display's area. This would interfere with the user's
ability to drag a window from the external monitor to the internal monitor, for
example.
Instead, we leave the internal display in native mode in this specific case.
BUG=148365
TEST=Manual, see bug
Review URL: https://codereview.chromium.org/10905271
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156611 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos')
-rw-r--r-- | chromeos/display/output_configurator.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/chromeos/display/output_configurator.cc b/chromeos/display/output_configurator.cc index 018d0bd..6fb573a 100644 --- a/chromeos/display/output_configurator.cc +++ b/chromeos/display/output_configurator.cc @@ -689,6 +689,12 @@ bool OutputConfigurator::ScreenPowerSet(bool power_on, bool all_displays) { if (power_on) { mode = (STATE_DUAL_MIRROR == output_state_) ? outputs[i].mirror_mode : outputs[i].native_mode; + } else if (connected_output_count_ > 1 && !all_displays && + STATE_DUAL_MIRROR != output_state_ && outputs[i].is_internal) { + // Workaround for crbug.com/148365: leave internal display in native + // mode so user can move cursor (and hence windows) onto internal + // display even when dimmed + mode = outputs[i].native_mode; } crtc = GetNextCrtcAfter(display, screen, output, crtc); |