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

Side by Side Diff: chrome/browser/extensions/tab_helper.h

Issue 64853004: Use high resolution icons where possible for streamlined hosted app icons. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@browser_experiment_create_app_from_page
Patch Set: fix tests for linux Created 7 years 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 CHROME_BROWSER_EXTENSIONS_TAB_HELPER_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_TAB_HELPER_H_
6 #define CHROME_BROWSER_EXTENSIONS_TAB_HELPER_H_ 6 #define CHROME_BROWSER_EXTENSIONS_TAB_HELPER_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/memory/ref_counted.h" 12 #include "base/memory/ref_counted.h"
13 #include "base/memory/scoped_ptr.h" 13 #include "base/memory/scoped_ptr.h"
14 #include "base/memory/weak_ptr.h" 14 #include "base/memory/weak_ptr.h"
15 #include "base/observer_list.h" 15 #include "base/observer_list.h"
16 #include "chrome/browser/extensions/active_tab_permission_granter.h" 16 #include "chrome/browser/extensions/active_tab_permission_granter.h"
17 #include "chrome/browser/extensions/extension_function_dispatcher.h" 17 #include "chrome/browser/extensions/extension_function_dispatcher.h"
18 #include "chrome/common/web_application_info.h" 18 #include "chrome/common/web_application_info.h"
19 #include "content/public/browser/notification_observer.h" 19 #include "content/public/browser/notification_observer.h"
20 #include "content/public/browser/notification_registrar.h" 20 #include "content/public/browser/notification_registrar.h"
21 #include "content/public/browser/web_contents_observer.h" 21 #include "content/public/browser/web_contents_observer.h"
22 #include "content/public/browser/web_contents_user_data.h" 22 #include "content/public/browser/web_contents_user_data.h"
23 #include "extensions/common/stack_frame.h" 23 #include "extensions/common/stack_frame.h"
24 #include "third_party/skia/include/core/SkBitmap.h" 24 #include "third_party/skia/include/core/SkBitmap.h"
25 25
26 class FaviconDownloader;
27
26 namespace content { 28 namespace content {
27 struct LoadCommittedDetails; 29 struct LoadCommittedDetails;
28 } 30 }
29 31
30 namespace gfx { 32 namespace gfx {
31 class Image; 33 class Image;
32 } 34 }
33 35
34 namespace extensions { 36 namespace extensions {
35 class Extension; 37 class Extension;
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 } 94 }
93 95
94 void RemoveScriptExecutionObserver(ScriptExecutionObserver* observer) { 96 void RemoveScriptExecutionObserver(ScriptExecutionObserver* observer) {
95 script_execution_observers_.RemoveObserver(observer); 97 script_execution_observers_.RemoveObserver(observer);
96 } 98 }
97 99
98 void CreateApplicationShortcuts(); 100 void CreateApplicationShortcuts();
99 void CreateHostedAppFromWebContents(); 101 void CreateHostedAppFromWebContents();
100 bool CanCreateApplicationShortcuts() const; 102 bool CanCreateApplicationShortcuts() const;
101 103
102 void CreateHostedApp(const WebApplicationInfo& info);
103
104 void set_pending_web_app_action(WebAppAction action) { 104 void set_pending_web_app_action(WebAppAction action) {
105 pending_web_app_action_ = action; 105 pending_web_app_action_ = action;
106 } 106 }
107 107
108 // App extensions ------------------------------------------------------------ 108 // App extensions ------------------------------------------------------------
109 109
110 // Sets the extension denoting this as an app. If |extension| is non-null this 110 // Sets the extension denoting this as an app. If |extension| is non-null this
111 // tab becomes an app-tab. WebContents does not listen for unload events for 111 // tab becomes an app-tab. WebContents does not listen for unload events for
112 // the extension. It's up to consumers of WebContents to do that. 112 // the extension. It's up to consumers of WebContents to do that.
113 // 113 //
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 163
164 // Sets the factory used to create inline webstore item installers. 164 // Sets the factory used to create inline webstore item installers.
165 // Used for testing. Takes ownership of the factory instance. 165 // Used for testing. Takes ownership of the factory instance.
166 void SetWebstoreInlineInstallerFactoryForTests( 166 void SetWebstoreInlineInstallerFactoryForTests(
167 WebstoreInlineInstallerFactory* factory); 167 WebstoreInlineInstallerFactory* factory);
168 168
169 private: 169 private:
170 explicit TabHelper(content::WebContents* web_contents); 170 explicit TabHelper(content::WebContents* web_contents);
171 friend class content::WebContentsUserData<TabHelper>; 171 friend class content::WebContentsUserData<TabHelper>;
172 172
173 // Creates a hosted app for the current tab. Requires the |web_app_info_| to
174 // be populated.
175 void CreateHostedApp();
176 void FinishCreateHostedApp(
177 bool success, const std::map<GURL, std::vector<SkBitmap> >& bitmaps);
178
173 // content::WebContentsObserver overrides. 179 // content::WebContentsObserver overrides.
174 virtual void RenderViewCreated( 180 virtual void RenderViewCreated(
175 content::RenderViewHost* render_view_host) OVERRIDE; 181 content::RenderViewHost* render_view_host) OVERRIDE;
176 virtual void DidNavigateMainFrame( 182 virtual void DidNavigateMainFrame(
177 const content::LoadCommittedDetails& details, 183 const content::LoadCommittedDetails& details,
178 const content::FrameNavigateParams& params) OVERRIDE; 184 const content::FrameNavigateParams& params) OVERRIDE;
179 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 185 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
180 virtual void DidCloneToNewWebContents( 186 virtual void DidCloneToNewWebContents(
181 content::WebContents* old_web_contents, 187 content::WebContents* old_web_contents,
182 content::WebContents* new_web_contents) OVERRIDE; 188 content::WebContents* new_web_contents) OVERRIDE;
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 content::NotificationRegistrar registrar_; 268 content::NotificationRegistrar registrar_;
263 269
264 scoped_ptr<ScriptExecutor> script_executor_; 270 scoped_ptr<ScriptExecutor> script_executor_;
265 271
266 scoped_ptr<LocationBarController> location_bar_controller_; 272 scoped_ptr<LocationBarController> location_bar_controller_;
267 273
268 scoped_ptr<ActiveTabPermissionGranter> active_tab_permission_granter_; 274 scoped_ptr<ActiveTabPermissionGranter> active_tab_permission_granter_;
269 275
270 scoped_ptr<ScriptBubbleController> script_bubble_controller_; 276 scoped_ptr<ScriptBubbleController> script_bubble_controller_;
271 277
278 scoped_ptr<FaviconDownloader> favicon_downloader_;
279
272 Profile* profile_; 280 Profile* profile_;
273 281
274 // Vend weak pointers that can be invalidated to stop in-progress loads. 282 // Vend weak pointers that can be invalidated to stop in-progress loads.
275 base::WeakPtrFactory<TabHelper> image_loader_ptr_factory_; 283 base::WeakPtrFactory<TabHelper> image_loader_ptr_factory_;
276 284
277 // Creates WebstoreInlineInstaller instances for inline install triggers. 285 // Creates WebstoreInlineInstaller instances for inline install triggers.
278 scoped_ptr<WebstoreInlineInstallerFactory> webstore_inline_installer_factory_; 286 scoped_ptr<WebstoreInlineInstallerFactory> webstore_inline_installer_factory_;
279 287
280 DISALLOW_COPY_AND_ASSIGN(TabHelper); 288 DISALLOW_COPY_AND_ASSIGN(TabHelper);
281 }; 289 };
282 290
283 } // namespace extensions 291 } // namespace extensions
284 292
285 #endif // CHROME_BROWSER_EXTENSIONS_TAB_HELPER_H_ 293 #endif // CHROME_BROWSER_EXTENSIONS_TAB_HELPER_H_
OLDNEW
« no previous file with comments | « chrome/browser/extensions/favicon_downloader_unittest.cc ('k') | chrome/browser/extensions/tab_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698