| 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 #ifndef ATHENA_CONTENT_PUBLIC_APP_ACTIVITY_H_ | 5 #ifndef ATHENA_CONTENT_PUBLIC_APP_ACTIVITY_H_ | 
| 6 #define ATHENA_CONTENT_PUBLIC_APP_ACTIVITY_H_ | 6 #define ATHENA_CONTENT_PUBLIC_APP_ACTIVITY_H_ | 
| 7 | 7 | 
| 8 #include "athena/activity/public/activity.h" | 8 #include "athena/activity/public/activity.h" | 
| 9 #include "athena/activity/public/activity_view_model.h" | 9 #include "athena/activity/public/activity_view_model.h" | 
| 10 #include "content/public/browser/web_contents_observer.h" | 10 #include "content/public/browser/web_contents_observer.h" | 
| 11 #include "ui/gfx/image/image_skia.h" | 11 #include "ui/gfx/image/image_skia.h" | 
| 12 | 12 | 
| 13 namespace apps { | 13 namespace extensions { | 
| 14 class ShellAppWindow; | 14 class ShellAppWindow; | 
| 15 } | 15 } | 
| 16 | 16 | 
| 17 namespace views { | 17 namespace views { | 
| 18 class WebView; | 18 class WebView; | 
| 19 } | 19 } | 
| 20 | 20 | 
| 21 namespace athena { | 21 namespace athena { | 
| 22 | 22 | 
| 23 class AppActivity : public Activity, | 23 class AppActivity : public Activity, | 
| 24                     public ActivityViewModel, | 24                     public ActivityViewModel, | 
| 25                     public content::WebContentsObserver { | 25                     public content::WebContentsObserver { | 
| 26  public: | 26  public: | 
| 27   explicit AppActivity(apps::ShellAppWindow* app_window); | 27   explicit AppActivity(extensions::ShellAppWindow* app_window); | 
| 28   virtual ~AppActivity(); | 28   virtual ~AppActivity(); | 
| 29 | 29 | 
| 30  protected: | 30  protected: | 
| 31   // Activity: | 31   // Activity: | 
| 32   virtual athena::ActivityViewModel* GetActivityViewModel() OVERRIDE; | 32   virtual athena::ActivityViewModel* GetActivityViewModel() OVERRIDE; | 
| 33   virtual void SetCurrentState(Activity::ActivityState state) OVERRIDE; | 33   virtual void SetCurrentState(Activity::ActivityState state) OVERRIDE; | 
| 34   virtual ActivityState GetCurrentState() OVERRIDE; | 34   virtual ActivityState GetCurrentState() OVERRIDE; | 
| 35   virtual bool IsVisible() OVERRIDE; | 35   virtual bool IsVisible() OVERRIDE; | 
| 36   virtual ActivityMediaState GetMediaState() OVERRIDE; | 36   virtual ActivityMediaState GetMediaState() OVERRIDE; | 
| 37 | 37 | 
| 38   // ActivityViewModel: | 38   // ActivityViewModel: | 
| 39   virtual void Init() OVERRIDE; | 39   virtual void Init() OVERRIDE; | 
| 40   virtual SkColor GetRepresentativeColor() const OVERRIDE; | 40   virtual SkColor GetRepresentativeColor() const OVERRIDE; | 
| 41   virtual base::string16 GetTitle() const OVERRIDE; | 41   virtual base::string16 GetTitle() const OVERRIDE; | 
| 42   virtual bool UsesFrame() const OVERRIDE; | 42   virtual bool UsesFrame() const OVERRIDE; | 
| 43   virtual views::View* GetContentsView() OVERRIDE; | 43   virtual views::View* GetContentsView() OVERRIDE; | 
| 44   virtual void CreateOverviewModeImage() OVERRIDE; | 44   virtual void CreateOverviewModeImage() OVERRIDE; | 
| 45   virtual gfx::ImageSkia GetOverviewModeImage() OVERRIDE; | 45   virtual gfx::ImageSkia GetOverviewModeImage() OVERRIDE; | 
| 46 | 46 | 
| 47   // content::WebContentsObserver: | 47   // content::WebContentsObserver: | 
| 48   virtual void TitleWasSet(content::NavigationEntry* entry, | 48   virtual void TitleWasSet(content::NavigationEntry* entry, | 
| 49                            bool explicit_set) OVERRIDE; | 49                            bool explicit_set) OVERRIDE; | 
| 50   virtual void DidUpdateFaviconURL( | 50   virtual void DidUpdateFaviconURL( | 
| 51       const std::vector<content::FaviconURL>& candidates) OVERRIDE; | 51       const std::vector<content::FaviconURL>& candidates) OVERRIDE; | 
| 52 | 52 | 
| 53  private: | 53  private: | 
| 54   scoped_ptr<apps::ShellAppWindow> app_window_; | 54   scoped_ptr<extensions::ShellAppWindow> app_window_; | 
| 55   views::WebView* web_view_; | 55   views::WebView* web_view_; | 
| 56 | 56 | 
| 57   // The current state for this activity. | 57   // The current state for this activity. | 
| 58   ActivityState current_state_; | 58   ActivityState current_state_; | 
| 59 | 59 | 
| 60   // The image which will be used in overview mode. | 60   // The image which will be used in overview mode. | 
| 61   gfx::ImageSkia overview_mode_image_; | 61   gfx::ImageSkia overview_mode_image_; | 
| 62 | 62 | 
| 63   DISALLOW_COPY_AND_ASSIGN(AppActivity); | 63   DISALLOW_COPY_AND_ASSIGN(AppActivity); | 
| 64 }; | 64 }; | 
| 65 | 65 | 
| 66 }  // namespace athena | 66 }  // namespace athena | 
| 67 | 67 | 
| 68 #endif  // ATHENA_CONTENT_APP_ACTIVITY_H_ | 68 #endif  // ATHENA_CONTENT_APP_ACTIVITY_H_ | 
| OLD | NEW | 
|---|