146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved.
246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// found in the LICENSE file.
446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
51320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "athena/content/content_activity_factory.h"
646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
71320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "athena/activity/public/activity_manager.h"
8f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "athena/content/app_activity.h"
946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "athena/content/web_activity.h"
10f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "base/logging.h"
1146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace athena {
1346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)ContentActivityFactory::ContentActivityFactory() {
1546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
1646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)ContentActivityFactory::~ContentActivityFactory() {}
1846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)Activity* ContentActivityFactory::CreateWebActivity(
2046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    content::BrowserContext* browser_context,
211320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    const base::string16& title,
2246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    const GURL& url) {
231320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  Activity* activity = new WebActivity(browser_context, title, url);
241320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  ActivityManager::Get()->AddActivity(activity);
251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  return activity;
2646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
2746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
28f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)Activity* ContentActivityFactory::CreateAppActivity(
291320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    extensions::AppWindow* app_window,
301320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    views::WebView* web_view) {
311320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  Activity* activity = new AppActivity(app_window, web_view);
321320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  ActivityManager::Get()->AddActivity(activity);
331320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  return activity;
341320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci}
351320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
361320f92c476a1ad9d19dba2a48c72b75566198e9Primiano TucciActivityFactory* CreateContentActivityFactory() {
371320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  return new ContentActivityFactory();
38f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)}
39f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
4046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}  // namespace athena
41