| Index: ash/wm/workspace/workspace_manager.cc
|
| diff --git a/ash/wm/workspace/workspace_manager.cc b/ash/wm/workspace/workspace_manager.cc
|
| index 1aaa8d0008cf1133752b00fb3e192045cd943a45..a9093fb81d538b620b9a9185688de25f4e0ca889 100644
|
| --- a/ash/wm/workspace/workspace_manager.cc
|
| +++ b/ash/wm/workspace/workspace_manager.cc
|
| @@ -18,8 +18,11 @@
|
| #include "base/auto_reset.h"
|
| #include "base/logging.h"
|
| #include "base/stl_util.h"
|
| +#include "ui/aura/env.h"
|
| #include "ui/aura/client/aura_constants.h"
|
| #include "ui/aura/root_window.h"
|
| +#include "ui/aura/monitor.h"
|
| +#include "ui/aura/monitor_manager.h"
|
| #include "ui/aura/window.h"
|
| #include "ui/base/ui_base_types.h"
|
| #include "ui/gfx/compositor/layer.h"
|
| @@ -157,7 +160,7 @@ void WorkspaceManager::SetWorkspaceSize(const gfx::Size& workspace_size) {
|
| SetWorkspaceBounds();
|
| }
|
|
|
| -void WorkspaceManager::OnScreenWorkAreaInsetsChanged() {
|
| +void WorkspaceManager::OnMonitorWorkAreaInsetsChanged() {
|
| SetWorkspaceBounds();
|
| }
|
|
|
| @@ -286,9 +289,13 @@ void WorkspaceManager::SetActiveWorkspace(Workspace* workspace) {
|
| is_overview_ = false;
|
| }
|
|
|
| -gfx::Rect WorkspaceManager::GetWorkAreaBounds() {
|
| +gfx::Rect WorkspaceManager::GetWorkAreaBounds() const {
|
| gfx::Rect bounds(workspace_size_);
|
| - bounds.Inset(Shell::GetInstance()->screen()->work_area_insets());
|
| + const aura::MonitorManager* monitor_manager =
|
| + aura::Env::GetInstance()->monitor_manager();
|
| + const aura::Monitor* monitor =
|
| + monitor_manager->GetMonitorNearestWindow(contents_view_);
|
| + bounds.Inset(monitor->work_area_insets());
|
| return bounds;
|
| }
|
|
|
|
|