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
3 // found in the LICENSE file.
5 #include "athena/content/content_activity_factory.h"
7 #include "athena/activity/public/activity_manager.h"
8 #include "athena/content/app_activity.h"
9 #include "athena/content/web_activity.h"
10 #include "base/logging.h"
11 #include "ui/aura/window.h"
15 ContentActivityFactory::ContentActivityFactory() {
18 ContentActivityFactory::~ContentActivityFactory() {}
20 Activity
* ContentActivityFactory::CreateWebActivity(
21 content::BrowserContext
* browser_context
,
22 const base::string16
& title
,
24 Activity
* activity
= new WebActivity(browser_context
, title
, url
);
25 ActivityManager::Get()->AddActivity(activity
);
26 activity
->GetWindow()->SetName("WebActivity");
30 Activity
* ContentActivityFactory::CreateWebActivity(
31 content::WebContents
* contents
) {
32 Activity
* activity
= new WebActivity(contents
);
33 ActivityManager::Get()->AddActivity(activity
);
37 Activity
* ContentActivityFactory::CreateAppActivity(
38 const std::string
& app_id
,
39 views::WebView
* web_view
) {
40 Activity
* activity
= new AppActivity(app_id
, web_view
);
41 ActivityManager::Get()->AddActivity(activity
);
42 activity
->GetWindow()->SetName("AppActivity");
46 ActivityFactory
* CreateContentActivityFactory() {
47 return new ContentActivityFactory();