Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(453)

Unified Diff: ui/aura/monitor_manager.cc

Issue 9960042: Refactor screen/monitor so that gfx::Screen returns monitor object. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix command line Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/aura/monitor_manager.cc
diff --git a/ui/aura/monitor_manager.cc b/ui/aura/monitor_manager.cc
index ee0bf5255a07c8b11d6ab79db3fffeecc9b4c50a..9cb40b803e528ae515840cd7570869d982072801 100644
--- a/ui/aura/monitor_manager.cc
+++ b/ui/aura/monitor_manager.cc
@@ -6,11 +6,13 @@
#include <stdio.h>
+#include "base/logging.h"
#include "ui/aura/env.h"
-#include "ui/aura/monitor.h"
+#include "ui/aura/monitor_aura.h"
#include "ui/aura/root_window.h"
#include "ui/aura/root_window_host.h"
#include "ui/gfx/rect.h"
+#include "ui/gfx/monitor_observer.h"
namespace aura {
namespace {
@@ -25,20 +27,28 @@ static const int kDefaultHostWindowHeight = 1024;
bool MonitorManager::use_fullscreen_host_window_ = false;
// static
-Monitor* MonitorManager::CreateMonitorFromSpec(const std::string& spec) {
+MonitorAura* MonitorManager::CreateMonitorFromSpec(const std::string& spec) {
gfx::Rect bounds(kDefaultHostWindowX, kDefaultHostWindowY,
kDefaultHostWindowWidth, kDefaultHostWindowHeight);
int x = 0, y = 0, width, height;
- if (sscanf(spec.c_str(), "%dx%d", &width, &height) == 2) {
+ float scale = 1.0f;
+ if (sscanf(spec.c_str(), "%dx%d*%f", &width, &height, &scale) == 3) {
Fady Samuel 2012/04/10 16:58:09 Where is this spec coming from? Are you reading th
oshima 2012/04/10 21:31:46 The value comes from --aura-host-window-size. I wa
bounds.set_size(gfx::Size(width, height));
+ } else if (sscanf(spec.c_str(), "%dx%d", &width, &height) == 2) {
+ bounds.set_size(gfx::Size(width, height));
+ } else if (sscanf(spec.c_str(), "%d+%d-%dx%d*%f", &x, &y, &width, &height,
+ &scale)
+ == 5) {
+ bounds = gfx::Rect(x, y, width, height);
} else if (sscanf(spec.c_str(), "%d+%d-%dx%d", &x, &y, &width, &height)
== 4) {
bounds = gfx::Rect(x, y, width, height);
} else if (use_fullscreen_host_window_) {
bounds = gfx::Rect(aura::RootWindowHost::GetNativeScreenSize());
}
- Monitor* monitor = new Monitor();
+ MonitorAura* monitor = new MonitorAura();
monitor->set_bounds(bounds);
+ monitor->set_device_scale_factor(scale);
return monitor;
}
@@ -58,26 +68,26 @@ MonitorManager::MonitorManager() {
MonitorManager::~MonitorManager() {
}
-void MonitorManager::AddObserver(MonitorObserver* observer) {
+void MonitorManager::AddObserver(gfx::MonitorObserver* observer) {
observers_.AddObserver(observer);
}
-void MonitorManager::RemoveObserver(MonitorObserver* observer) {
+void MonitorManager::RemoveObserver(gfx::MonitorObserver* observer) {
observers_.RemoveObserver(observer);
}
-void MonitorManager::NotifyBoundsChanged(const Monitor* monitor) {
- FOR_EACH_OBSERVER(MonitorObserver, observers_,
+void MonitorManager::NotifyBoundsChanged(const gfx::Monitor* monitor) {
+ FOR_EACH_OBSERVER(gfx::MonitorObserver, observers_,
OnMonitorBoundsChanged(monitor));
}
-void MonitorManager::NotifyMonitorAdded(Monitor* monitor) {
- FOR_EACH_OBSERVER(MonitorObserver, observers_,
+void MonitorManager::NotifyMonitorAdded(gfx::Monitor* monitor) {
+ FOR_EACH_OBSERVER(gfx::MonitorObserver, observers_,
OnMonitorAdded(monitor));
}
-void MonitorManager::NotifyMonitorRemoved(const Monitor* monitor) {
- FOR_EACH_OBSERVER(MonitorObserver, observers_,
+void MonitorManager::NotifyMonitorRemoved(const gfx::Monitor* monitor) {
+ FOR_EACH_OBSERVER(gfx::MonitorObserver, observers_,
OnMonitorRemoved(monitor));
}

Powered by Google App Engine
This is Rietveld 408576698