summaryrefslogtreecommitdiffstats
path: root/athena
diff options
context:
space:
mode:
authorpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-24 10:38:49 +0000
committerpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-24 10:38:49 +0000
commite08341ed0a10027243a1b8ffc434fcb4d100dd81 (patch)
tree9e2494d29e62cceebbaac59bb7b1766f7e0ed45a /athena
parente840d26a9bbda5d2e97564c80b4dc9cee17163b4 (diff)
downloadchromium_src-e08341ed0a10027243a1b8ffc434fcb4d100dd81.zip
chromium_src-e08341ed0a10027243a1b8ffc434fcb4d100dd81.tar.gz
chromium_src-e08341ed0a10027243a1b8ffc434fcb4d100dd81.tar.bz2
Cleanup athena's WindowManagerImpl
This CL moves the method implementations out of the WindowManagerImpl class declaration. BUG=None R=flackr TBR=oshima Review URL: https://codereview.chromium.org/406393003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285172 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'athena')
-rw-r--r--athena/wm/window_manager_impl.cc177
1 files changed, 111 insertions, 66 deletions
diff --git a/athena/wm/window_manager_impl.cc b/athena/wm/window_manager_impl.cc
index d90f34c..7f659e1 100644
--- a/athena/wm/window_manager_impl.cc
+++ b/athena/wm/window_manager_impl.cc
@@ -31,68 +31,29 @@ class WindowManagerImpl : public WindowManager,
void Layout();
// WindowManager:
- virtual void ToggleOverview() OVERRIDE {
- if (overview_) {
- overview_.reset();
- FOR_EACH_OBSERVER(WindowManagerObserver, observers_,
- OnOverviewModeExit());
- } else {
- overview_ = WindowOverviewMode::Create(container_.get(), this);
- FOR_EACH_OBSERVER(WindowManagerObserver, observers_,
- OnOverviewModeEnter());
- }
- }
+ virtual void ToggleOverview() OVERRIDE;
private:
enum Command {
COMMAND_TOGGLE_OVERVIEW,
};
- void InstallAccelerators() {
- const AcceleratorData accelerator_data[] = {
- {TRIGGER_ON_PRESS, ui::VKEY_F6, ui::EF_NONE, COMMAND_TOGGLE_OVERVIEW,
- AF_NONE},
- };
- AcceleratorManager::Get()->RegisterAccelerators(
- accelerator_data, arraysize(accelerator_data), this);
- }
+ void InstallAccelerators();
// WindowManager:
- virtual void AddObserver(WindowManagerObserver* observer) OVERRIDE {
- observers_.AddObserver(observer);
- }
-
- virtual void RemoveObserver(WindowManagerObserver* observer) OVERRIDE {
- observers_.RemoveObserver(observer);
- }
+ virtual void AddObserver(WindowManagerObserver* observer) OVERRIDE;
+ virtual void RemoveObserver(WindowManagerObserver* observer) OVERRIDE;
// WindowOverviewModeDelegate:
- virtual void OnSelectWindow(aura::Window* window) OVERRIDE {
- CHECK_EQ(container_.get(), window->parent());
- container_->StackChildAtTop(window);
- wm::ActivateWindow(window);
- overview_.reset();
- FOR_EACH_OBSERVER(WindowManagerObserver, observers_,
- OnOverviewModeExit());
- }
+ virtual void OnSelectWindow(aura::Window* window) OVERRIDE;
// aura::WindowObserver
- virtual void OnWindowDestroying(aura::Window* window) OVERRIDE {
- if (window == container_)
- container_.reset();
- }
+ virtual void OnWindowDestroying(aura::Window* window) OVERRIDE;
// AcceleratorHandler:
- virtual bool IsCommandEnabled(int command_id) const OVERRIDE { return true; }
+ virtual bool IsCommandEnabled(int command_id) const OVERRIDE;
virtual bool OnAcceleratorFired(int command_id,
- const ui::Accelerator& accelerator) OVERRIDE {
- switch (command_id) {
- case COMMAND_TOGGLE_OVERVIEW:
- ToggleOverview();
- break;
- }
- return true;
- }
+ const ui::Accelerator& accelerator) OVERRIDE;
scoped_ptr<aura::Window> container_;
scoped_ptr<WindowOverviewMode> overview_;
@@ -103,36 +64,27 @@ class WindowManagerImpl : public WindowManager,
DISALLOW_COPY_AND_ASSIGN(WindowManagerImpl);
};
-class WindowManagerImpl* instance = NULL;
-
class AthenaContainerLayoutManager : public aura::LayoutManager {
public:
- AthenaContainerLayoutManager() {}
- virtual ~AthenaContainerLayoutManager() {}
+ AthenaContainerLayoutManager();
+ virtual ~AthenaContainerLayoutManager();
private:
// aura::LayoutManager:
- virtual void OnWindowResized() OVERRIDE { instance->Layout(); }
- virtual void OnWindowAddedToLayout(aura::Window* child) OVERRIDE {
- instance->Layout();
- }
- virtual void OnWillRemoveWindowFromLayout(aura::Window* child) OVERRIDE {}
- virtual void OnWindowRemovedFromLayout(aura::Window* child) OVERRIDE {
- instance->Layout();
- }
+ virtual void OnWindowResized() OVERRIDE;
+ virtual void OnWindowAddedToLayout(aura::Window* child) OVERRIDE;
+ virtual void OnWillRemoveWindowFromLayout(aura::Window* child) OVERRIDE;
+ virtual void OnWindowRemovedFromLayout(aura::Window* child) OVERRIDE;
virtual void OnChildWindowVisibilityChanged(aura::Window* child,
- bool visible) OVERRIDE {
- instance->Layout();
- }
+ bool visible) OVERRIDE;
virtual void SetChildBounds(aura::Window* child,
- const gfx::Rect& requested_bounds) OVERRIDE {
- if (!requested_bounds.IsEmpty())
- SetChildBoundsDirect(child, requested_bounds);
- }
+ const gfx::Rect& requested_bounds) OVERRIDE;
DISALLOW_COPY_AND_ASSIGN(AthenaContainerLayoutManager);
};
+class WindowManagerImpl* instance = NULL;
+
WindowManagerImpl::WindowManagerImpl() {
ScreenManager::ContainerParams params("DefaultContainer");
params.can_activate_children = true;
@@ -170,6 +122,99 @@ void WindowManagerImpl::Layout() {
}
}
+void WindowManagerImpl::ToggleOverview() {
+ if (overview_) {
+ overview_.reset();
+ FOR_EACH_OBSERVER(WindowManagerObserver, observers_,
+ OnOverviewModeExit());
+ } else {
+ overview_ = WindowOverviewMode::Create(container_.get(), this);
+ FOR_EACH_OBSERVER(WindowManagerObserver, observers_,
+ OnOverviewModeEnter());
+ }
+}
+
+void WindowManagerImpl::InstallAccelerators() {
+ const AcceleratorData accelerator_data[] = {
+ {TRIGGER_ON_PRESS, ui::VKEY_F6, ui::EF_NONE, COMMAND_TOGGLE_OVERVIEW,
+ AF_NONE},
+ };
+ AcceleratorManager::Get()->RegisterAccelerators(
+ accelerator_data, arraysize(accelerator_data), this);
+}
+
+void WindowManagerImpl::AddObserver(WindowManagerObserver* observer) {
+ observers_.AddObserver(observer);
+}
+
+void WindowManagerImpl::RemoveObserver(WindowManagerObserver* observer) {
+ observers_.RemoveObserver(observer);
+}
+
+void WindowManagerImpl::OnSelectWindow(aura::Window* window) {
+ CHECK_EQ(container_.get(), window->parent());
+ container_->StackChildAtTop(window);
+ wm::ActivateWindow(window);
+ overview_.reset();
+ FOR_EACH_OBSERVER(WindowManagerObserver, observers_,
+ OnOverviewModeExit());
+}
+
+void WindowManagerImpl::OnWindowDestroying(aura::Window* window) {
+ if (window == container_)
+ container_.reset();
+}
+
+bool WindowManagerImpl::IsCommandEnabled(int command_id) const {
+ return true;
+}
+
+bool WindowManagerImpl::OnAcceleratorFired(int command_id,
+ const ui::Accelerator& accelerator) {
+ switch (command_id) {
+ case COMMAND_TOGGLE_OVERVIEW:
+ ToggleOverview();
+ break;
+ }
+ return true;
+}
+
+AthenaContainerLayoutManager::AthenaContainerLayoutManager() {
+}
+
+AthenaContainerLayoutManager::~AthenaContainerLayoutManager() {
+}
+
+void AthenaContainerLayoutManager::OnWindowResized() {
+ instance->Layout();
+}
+
+void AthenaContainerLayoutManager::OnWindowAddedToLayout(aura::Window* child) {
+ instance->Layout();
+}
+
+void AthenaContainerLayoutManager::OnWillRemoveWindowFromLayout(
+ aura::Window* child) {
+}
+
+void AthenaContainerLayoutManager::OnWindowRemovedFromLayout(
+ aura::Window* child) {
+ instance->Layout();
+}
+
+void AthenaContainerLayoutManager::OnChildWindowVisibilityChanged(
+ aura::Window* child,
+ bool visible) {
+ instance->Layout();
+}
+
+void AthenaContainerLayoutManager::SetChildBounds(
+ aura::Window* child,
+ const gfx::Rect& requested_bounds) {
+ if (!requested_bounds.IsEmpty())
+ SetChildBoundsDirect(child, requested_bounds);
+}
+
} // namespace
// static