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

Side by Side Diff: athena/activity/activity_manager_impl.cc

Issue 702473005: athena: Remove ActivityViewModel::CreateWidget(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « no previous file | athena/activity/public/activity_view_model.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "athena/activity/activity_manager_impl.h" 5 #include "athena/activity/activity_manager_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "athena/activity/activity_widget_delegate.h" 9 #include "athena/activity/activity_widget_delegate.h"
10 #include "athena/activity/public/activity.h" 10 #include "athena/activity/public/activity.h"
11 #include "athena/activity/public/activity_manager_observer.h" 11 #include "athena/activity/public/activity_manager_observer.h"
12 #include "athena/activity/public/activity_view_model.h" 12 #include "athena/activity/public/activity_view_model.h"
13 #include "base/logging.h" 13 #include "base/logging.h"
14 #include "base/observer_list.h" 14 #include "base/observer_list.h"
15 #include "ui/views/widget/widget.h" 15 #include "ui/views/widget/widget.h"
16 16
17 namespace athena { 17 namespace athena {
18 18
19 namespace { 19 namespace {
20 20
21 ActivityManager* instance = nullptr; 21 ActivityManager* instance = nullptr;
22 22
23 views::Widget* CreateWidget(Activity* activity) { 23 views::Widget* CreateWidget(Activity* activity) {
24 ActivityViewModel* view_model = activity->GetActivityViewModel(); 24 aura::Window* window = activity->GetWindow();
25 views::Widget* widget = view_model->CreateWidget(); 25 views::Widget* widget =
26 window ? views::Widget::GetWidgetForNativeView(window) : nullptr;
26 if (widget) 27 if (widget)
27 return widget; 28 return widget;
28 widget = new views::Widget; 29 widget = new views::Widget;
29 views::Widget::InitParams params(views::Widget::InitParams::TYPE_WINDOW); 30 views::Widget::InitParams params(views::Widget::InitParams::TYPE_WINDOW);
30 params.delegate = new ActivityWidgetDelegate(view_model); 31 params.delegate =
32 new ActivityWidgetDelegate(activity->GetActivityViewModel());
31 widget->Init(params); 33 widget->Init(params);
32 activity->GetActivityViewModel()->Init(); 34 activity->GetActivityViewModel()->Init();
33 return widget; 35 return widget;
34 } 36 }
35 37
36 views::Widget* GetWidget(Activity* activity) { 38 views::Widget* GetWidget(Activity* activity) {
37 CHECK(activity); 39 CHECK(activity);
38 CHECK(activity->GetWindow()); 40 CHECK(activity->GetWindow());
39 return views::Widget::GetWidgetForNativeWindow(activity->GetWindow()); 41 return views::Widget::GetWidgetForNativeWindow(activity->GetWindow());
40 } 42 }
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 return instance; 127 return instance;
126 } 128 }
127 129
128 void ActivityManager::Shutdown() { 130 void ActivityManager::Shutdown() {
129 CHECK(instance); 131 CHECK(instance);
130 delete instance; 132 delete instance;
131 } 133 }
132 134
133 135
134 } // namespace athena 136 } // namespace athena
OLDNEW
« no previous file with comments | « no previous file | athena/activity/public/activity_view_model.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698