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

Side by Side Diff: athena/content/web_activity.h

Issue 358003002: Additions to Activities to allow resource management (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 5 months 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 | Annotate | Revision Log
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 #ifndef ATHENA_CONTENT_PUBLIC_WEB_ACTIVITY_H_ 5 #ifndef ATHENA_CONTENT_PUBLIC_WEB_ACTIVITY_H_
6 #define ATHENA_CONTENT_PUBLIC_WEB_ACTIVITY_H_ 6 #define ATHENA_CONTENT_PUBLIC_WEB_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 // TODO(skuhne): Find out if we want to add this to DEPS:
12 //#include "ui/gfx/image/image_skia.h"
11 13
12 namespace content { 14 namespace content {
13 class BrowserContext; 15 class BrowserContext;
14 class WebContents; 16 class WebContents;
15 } 17 }
16 18
17 namespace views { 19 namespace views {
18 class WebView; 20 class WebView;
19 } 21 }
20 22
21 namespace athena { 23 namespace athena {
22 24
25 class AthenaWebView;
26
23 class WebActivity : public Activity, 27 class WebActivity : public Activity,
24 public ActivityViewModel, 28 public ActivityViewModel,
25 public content::WebContentsObserver { 29 public content::WebContentsObserver {
26 public: 30 public:
27 WebActivity(content::BrowserContext* context, const GURL& gurl); 31 WebActivity(content::BrowserContext* context, const GURL& gurl);
28 virtual ~WebActivity(); 32 virtual ~WebActivity();
29 33
30 protected: 34 protected:
31 // Activity: 35 // Activity:
32 virtual athena::ActivityViewModel* GetActivityViewModel() OVERRIDE; 36 virtual athena::ActivityViewModel* GetActivityViewModel() OVERRIDE;
37 virtual void SetCurrentState(ActivityStateTransition state) OVERRIDE;
38 virtual ActivityState GetCurrentState() OVERRIDE;
33 39
34 // ActivityViewModel: 40 // ActivityViewModel:
35 virtual void Init() OVERRIDE; 41 virtual void Init() OVERRIDE;
36 virtual SkColor GetRepresentativeColor() OVERRIDE; 42 virtual SkColor GetRepresentativeColor() OVERRIDE;
37 virtual base::string16 GetTitle() OVERRIDE; 43 virtual base::string16 GetTitle() OVERRIDE;
38 virtual views::View* GetContentsView() OVERRIDE; 44 virtual views::View* GetContentsView() OVERRIDE;
45 virtual void CreateOverviewModeImage() OVERRIDE;
46 virtual gfx::ImageSkia GetOverviewModeImage() OVERRIDE;
39 47
40 // content::WebContentsObserver: 48 // content::WebContentsObserver:
41 virtual void TitleWasSet(content::NavigationEntry* entry, 49 virtual void TitleWasSet(content::NavigationEntry* entry,
42 bool explicit_set) OVERRIDE; 50 bool explicit_set) OVERRIDE;
43 virtual void DidUpdateFaviconURL( 51 virtual void DidUpdateFaviconURL(
44 const std::vector<content::FaviconURL>& candidates) OVERRIDE; 52 const std::vector<content::FaviconURL>& candidates) OVERRIDE;
45 53
46 private: 54 private:
47 content::BrowserContext* browser_context_; 55 content::BrowserContext* browser_context_;
48 content::WebContents* web_contents_;
49 const GURL url_; 56 const GURL url_;
50 views::WebView* web_view_; 57 AthenaWebView* web_view_;
58
59 // The last requested state for this activity.
60 ActivityStateTransition last_requested_state_;
61
62 // The image which will be used in overview mode.
63 gfx::ImageSkia overview_mode_image_;
51 64
52 DISALLOW_COPY_AND_ASSIGN(WebActivity); 65 DISALLOW_COPY_AND_ASSIGN(WebActivity);
53 }; 66 };
54 67
55 } // namespace athena 68 } // namespace athena
56 69
57 #endif // ATHENA_CONTENT_WEB_ACTIVITY_H_ 70 #endif // ATHENA_CONTENT_WEB_ACTIVITY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698