| OLD | NEW |
| 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/content/app_activity.h" | 5 #include "athena/content/app_activity.h" |
| 6 | 6 |
| 7 #include "athena/activity/public/activity_manager.h" | 7 #include "athena/activity/public/activity_manager.h" |
| 8 #include "athena/content/app_activity_registry.h" | 8 #include "athena/content/app_activity_registry.h" |
| 9 #include "athena/content/public/app_registry.h" | 9 #include "athena/content/public/app_registry.h" |
| 10 #include "athena/wm/public/window_list_provider.h" | 10 #include "athena/wm/public/window_list_provider.h" |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 109 base::string16 AppActivity::GetTitle() const { | 109 base::string16 AppActivity::GetTitle() const { |
| 110 return web_view_->GetWebContents()->GetTitle(); | 110 return web_view_->GetWebContents()->GetTitle(); |
| 111 } | 111 } |
| 112 | 112 |
| 113 bool AppActivity::UsesFrame() const { | 113 bool AppActivity::UsesFrame() const { |
| 114 return false; | 114 return false; |
| 115 } | 115 } |
| 116 | 116 |
| 117 views::View* AppActivity::GetContentsView() { | 117 views::View* AppActivity::GetContentsView() { |
| 118 if (!web_view_) { | 118 if (!web_view_) { |
| 119 // TODO(oshima): use apps::NativeAppWindowViews | 119 web_view_ = GetWebView(); |
| 120 content::WebContents* web_contents = GetWebContents(); | |
| 121 web_view_ = new views::WebView(web_contents->GetBrowserContext()); | |
| 122 web_view_->SetWebContents(web_contents); | |
| 123 // Make sure the content gets properly shown. | 120 // Make sure the content gets properly shown. |
| 124 if (current_state_ == ACTIVITY_VISIBLE) { | 121 if (current_state_ == ACTIVITY_VISIBLE) { |
| 125 MakeVisible(); | 122 MakeVisible(); |
| 126 } else if (current_state_ == ACTIVITY_INVISIBLE) { | 123 } else if (current_state_ == ACTIVITY_INVISIBLE) { |
| 127 MakeInvisible(); | 124 MakeInvisible(); |
| 128 } else { | 125 } else { |
| 129 // If not previously specified, we change the state now to invisible.. | 126 // If not previously specified, we change the state now to invisible.. |
| 130 SetCurrentState(ACTIVITY_INVISIBLE); | 127 SetCurrentState(ACTIVITY_INVISIBLE); |
| 131 } | 128 } |
| 132 Observe(web_contents); | |
| 133 RegisterActivity(); | 129 RegisterActivity(); |
| 134 } | 130 } |
| 135 return web_view_; | 131 return web_view_; |
| 136 } | 132 } |
| 137 | 133 |
| 138 void AppActivity::CreateOverviewModeImage() { | 134 void AppActivity::CreateOverviewModeImage() { |
| 139 // TODO(skuhne): Implement this! | 135 // TODO(skuhne): Implement this! |
| 140 } | 136 } |
| 141 | 137 |
| 142 gfx::ImageSkia AppActivity::GetOverviewModeImage() { | 138 gfx::ImageSkia AppActivity::GetOverviewModeImage() { |
| (...skipping 24 matching lines...) Expand all Loading... |
| 167 | 163 |
| 168 void AppActivity::DidUpdateFaviconURL( | 164 void AppActivity::DidUpdateFaviconURL( |
| 169 const std::vector<content::FaviconURL>& candidates) { | 165 const std::vector<content::FaviconURL>& candidates) { |
| 170 ActivityManager::Get()->UpdateActivity(this); | 166 ActivityManager::Get()->UpdateActivity(this); |
| 171 } | 167 } |
| 172 | 168 |
| 173 // Register an |activity| with an application. | 169 // Register an |activity| with an application. |
| 174 // Note: This should only get called once for an |app_window| of the | 170 // Note: This should only get called once for an |app_window| of the |
| 175 // |activity|. | 171 // |activity|. |
| 176 void AppActivity::RegisterActivity() { | 172 void AppActivity::RegisterActivity() { |
| 177 content::WebContents* web_contents = GetWebContents(); | 173 content::WebContents* web_contents = web_view_->GetWebContents(); |
| 178 AppRegistry* app_registry = AppRegistry::Get(); | 174 AppRegistry* app_registry = AppRegistry::Get(); |
| 179 // Get the application's registry. | 175 // Get the application's registry. |
| 180 app_activity_registry_ = app_registry->GetAppActivityRegistry( | 176 app_activity_registry_ = app_registry->GetAppActivityRegistry( |
| 181 app_id_, web_contents->GetBrowserContext()); | 177 app_id_, web_contents->GetBrowserContext()); |
| 182 DCHECK(app_activity_registry_); | 178 DCHECK(app_activity_registry_); |
| 183 // Register the activity. | 179 // Register the activity. |
| 184 app_activity_registry_->RegisterAppActivity(this); | 180 app_activity_registry_->RegisterAppActivity(this); |
| 185 } | 181 } |
| 186 | 182 |
| 187 void AppActivity::MakeVisible() { | 183 void AppActivity::MakeVisible() { |
| (...skipping 24 matching lines...) Expand all Loading... |
| 212 overview_mode_image_ = gfx::ImageSkia(); | 208 overview_mode_image_ = gfx::ImageSkia(); |
| 213 } | 209 } |
| 214 // Now we can hide this. | 210 // Now we can hide this. |
| 215 // Note: This might have to be done asynchronously after the readback took | 211 // Note: This might have to be done asynchronously after the readback took |
| 216 // place. | 212 // place. |
| 217 web_view_->SetVisible(false); | 213 web_view_->SetVisible(false); |
| 218 web_view_->GetWebContents()->GetNativeView()->Hide(); | 214 web_view_->GetWebContents()->GetNativeView()->Hide(); |
| 219 } | 215 } |
| 220 | 216 |
| 221 } // namespace athena | 217 } // namespace athena |
| OLD | NEW |