summaryrefslogtreecommitdiffstats
path: root/ui/gfx
diff options
context:
space:
mode:
authorvarunjain@chromium.org <varunjain@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-15 23:26:53 +0000
committervarunjain@chromium.org <varunjain@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-15 23:26:53 +0000
commit6131a644b12d6359630c118a21c609a15d2f5c21 (patch)
tree5649b7074bcc561c842816109d8a2c7565491f63 /ui/gfx
parentfad7367a498d80a4c3e9e91342ffdfbaa7a4c3c6 (diff)
downloadchromium_src-6131a644b12d6359630c118a21c609a15d2f5c21.zip
chromium_src-6131a644b12d6359630c118a21c609a15d2f5c21.tar.gz
chromium_src-6131a644b12d6359630c118a21c609a15d2f5c21.tar.bz2
Listen to display settings provider for work area size changes and send those
changes to the renderer. BUG=126586 TEST=manual Review URL: https://chromiumcodereview.appspot.com/10407023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142519 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gfx')
-rw-r--r--ui/gfx/screen_android.cc5
-rw-r--r--ui/gfx/screen_mac.mm14
2 files changed, 19 insertions, 0 deletions
diff --git a/ui/gfx/screen_android.cc b/ui/gfx/screen_android.cc
index fa30aef..576afab 100644
--- a/ui/gfx/screen_android.cc
+++ b/ui/gfx/screen_android.cc
@@ -26,6 +26,11 @@ gfx::Display Screen::GetMonitorNearestWindow(gfx::NativeView view) {
}
// static
+gfx::Display Screen::GetMonitorNearestPoint(const gfx::Point& point) {
+ return GetPrimaryMonitor();
+}
+
+// static
int Screen::GetNumMonitors() {
return 1;
}
diff --git a/ui/gfx/screen_mac.mm b/ui/gfx/screen_mac.mm
index 5c6d3a1..7960447 100644
--- a/ui/gfx/screen_mac.mm
+++ b/ui/gfx/screen_mac.mm
@@ -147,4 +147,18 @@ int Screen::GetNumMonitors() {
return display_count;
}
+// static
+gfx::Display Screen::GetMonitorNearestPoint(const gfx::Point& point) {
+ NSPoint ns_point = NSPointFromCGPoint(point.ToCGPoint());
+
+ NSArray* screens = [NSScreen screens];
+ NSScreen* primary = [screens objectAtIndex:0];
+ for (NSScreen* screen in screens) {
+ if (NSMouseInRect(ns_point, [screen frame], NO))
+ return GetDisplayForScreen(screen, screen == primary);
+ }
+ NOTREACHED();
+ return gfx::Display();
+}
+
} // namespace gfx