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

Unified Diff: athena/activity/activity_manager_impl.cc

Issue 863033002: Delete athena/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 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
« no previous file with comments | « athena/activity/activity_manager_impl.h ('k') | athena/activity/activity_manager_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: athena/activity/activity_manager_impl.cc
diff --git a/athena/activity/activity_manager_impl.cc b/athena/activity/activity_manager_impl.cc
deleted file mode 100644
index a9981556d7f65dfc60e35944efe99fd01790b9e5..0000000000000000000000000000000000000000
--- a/athena/activity/activity_manager_impl.cc
+++ /dev/null
@@ -1,164 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "athena/activity/activity_manager_impl.h"
-
-#include <algorithm>
-
-#include "athena/activity/activity_widget_delegate.h"
-#include "athena/activity/public/activity.h"
-#include "athena/activity/public/activity_manager_observer.h"
-#include "athena/activity/public/activity_view_model.h"
-#include "athena/screen/public/screen_manager.h"
-#include "base/logging.h"
-#include "base/observer_list.h"
-#include "ui/aura/window.h"
-#include "ui/views/widget/widget.h"
-#include "ui/wm/public/activation_client.h"
-
-namespace athena {
-
-namespace {
-
-ActivityManager* instance = nullptr;
-
-views::Widget* CreateWidget(Activity* activity) {
- aura::Window* window = activity->GetWindow();
- views::Widget* widget =
- window ? views::Widget::GetWidgetForNativeView(window) : nullptr;
- if (widget)
- return widget;
- widget = new views::Widget;
- views::Widget::InitParams params(views::Widget::InitParams::TYPE_WINDOW);
- params.delegate =
- new ActivityWidgetDelegate(activity->GetActivityViewModel());
- widget->Init(params);
- return widget;
-}
-
-views::Widget* GetWidget(Activity* activity) {
- CHECK(activity);
- CHECK(activity->GetWindow());
- return views::Widget::GetWidgetForNativeWindow(activity->GetWindow());
-}
-
-} // namespace
-
-ActivityManagerImpl::ActivityManagerImpl() {
- CHECK(!instance);
- instance = this;
-
- aura::Window* root_window =
- ScreenManager::Get()->GetContext()->GetRootWindow();
- aura::client::GetActivationClient(root_window)->AddObserver(this);
-}
-
-ActivityManagerImpl::~ActivityManagerImpl() {
- aura::Window* root_window =
- ScreenManager::Get()->GetContext()->GetRootWindow();
- aura::client::GetActivationClient(root_window)->RemoveObserver(this);
- while (!activities_.empty())
- Activity::Delete(activities_.front());
-
- CHECK_EQ(this, instance);
- instance = nullptr;
-}
-
-void ActivityManagerImpl::AddActivity(Activity* activity) {
- CHECK(activities_.end() ==
- std::find(activities_.begin(), activities_.end(), activity));
- activities_.insert(activities_.begin(), activity);
- views::Widget* widget = CreateWidget(activity);
- widget->GetNativeView()->AddObserver(this);
- activity->GetActivityViewModel()->Init();
-
- FOR_EACH_OBSERVER(ActivityManagerObserver,
- observers_,
- OnActivityStarted(activity));
-}
-
-void ActivityManagerImpl::RemoveActivity(Activity* activity) {
- std::vector<Activity*>::iterator find =
- std::find(activities_.begin(), activities_.end(), activity);
- DCHECK(find != activities_.end());
- if (find != activities_.end()) {
- FOR_EACH_OBSERVER(
- ActivityManagerObserver, observers_, OnActivityEnding(activity));
- activities_.erase(find);
- views::Widget* widget = GetWidget(activity);
- widget->GetNativeView()->RemoveObserver(this);
- widget->Close();
- }
-}
-
-const ActivityList& ActivityManagerImpl::GetActivityList() {
- return activities_;
-}
-
-Activity* ActivityManagerImpl::GetActivityForWindow(aura::Window* window) {
- struct Matcher {
- Matcher(aura::Window* w) : window(w) {}
- bool operator()(Activity* activity) {
- return activity->GetWindow() == window;
- }
- aura::Window* window;
- };
- std::vector<Activity*>::iterator iter =
- std::find_if(activities_.begin(), activities_.end(), Matcher(window));
- return iter != activities_.end() ? *iter : nullptr;
-}
-
-void ActivityManagerImpl::AddObserver(ActivityManagerObserver* observer) {
- observers_.AddObserver(observer);
-}
-
-void ActivityManagerImpl::RemoveObserver(ActivityManagerObserver* observer) {
- observers_.RemoveObserver(observer);
-}
-
-void ActivityManagerImpl::OnWindowDestroying(aura::Window* window) {
- Activity* activity = GetActivityForWindow(window);
- if (activity) {
- window->RemoveObserver(this);
- Activity::Delete(activity);
- }
-}
-
-void ActivityManagerImpl::OnWindowActivated(aura::Window* gained_active,
- aura::Window* lost_active) {
- Activity* activity = GetActivityForWindow(gained_active);
- if (!activity)
- return;
- CHECK(!activities_.empty());
- if (activity == activities_.front())
- return;
- // Move the activity for |gained_active| at the front of the list.
- ActivityList::reverse_iterator iter = std::find(activities_.rbegin(),
- activities_.rend(),
- activity);
- CHECK(iter != activities_.rend());
- std::rotate(iter, iter + 1, activities_.rend());
- FOR_EACH_OBSERVER(ActivityManagerObserver,
- observers_,
- OnActivityOrderChanged());
-}
-
-// static
-ActivityManager* ActivityManager::Create() {
- new ActivityManagerImpl();
- CHECK(instance);
- return instance;
-}
-
-ActivityManager* ActivityManager::Get() {
- return instance;
-}
-
-void ActivityManager::Shutdown() {
- CHECK(instance);
- delete instance;
-}
-
-
-} // namespace athena
« no previous file with comments | « athena/activity/activity_manager_impl.h ('k') | athena/activity/activity_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698