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

Side by Side Diff: extensions/browser/api/extensions_api_client.h

Issue 464753002: Fix HidService lifetime issues. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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 EXTENSIONS_BROWSER_API_EXTENSIONS_API_CLIENT_H_ 5 #ifndef EXTENSIONS_BROWSER_API_EXTENSIONS_API_CLIENT_H_
6 #define EXTENSIONS_BROWSER_API_EXTENSIONS_API_CLIENT_H_ 6 #define EXTENSIONS_BROWSER_API_EXTENSIONS_API_CLIENT_H_
7 7
8 #include <map> 8 #include <map>
9 9
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
11 #include "extensions/browser/api/storage/settings_namespace.h" 11 #include "extensions/browser/api/storage/settings_namespace.h"
12 12
13 class GURL; 13 class GURL;
14 14
15 template <class T> 15 template <class T>
16 class ObserverListThreadSafe; 16 class ObserverListThreadSafe;
17 17
18 namespace content { 18 namespace content {
19 class BrowserContext; 19 class BrowserContext;
20 } 20 }
21 21
22 namespace device {
23 class HidService;
24 }
25
26 namespace extensions { 22 namespace extensions {
27 23
28 class SettingsObserver; 24 class SettingsObserver;
29 class SettingsStorageFactory; 25 class SettingsStorageFactory;
30 class ValueStoreCache; 26 class ValueStoreCache;
31 27
32 // Allows the embedder of the extensions module to customize its support for 28 // Allows the embedder of the extensions module to customize its support for
33 // API features. The embedder must create a single instance in the browser 29 // API features. The embedder must create a single instance in the browser
34 // process. Provides a default implementation that does nothing. 30 // process. Provides a default implementation that does nothing.
35 class ExtensionsAPIClient { 31 class ExtensionsAPIClient {
(...skipping 25 matching lines...) Expand all
61 int guest_instance_id, 57 int guest_instance_id,
62 const std::string& guest_extension_id); 58 const std::string& guest_extension_id);
63 59
64 // Denies the embedding requested by the <appview> specified by 60 // Denies the embedding requested by the <appview> specified by
65 // |guest_instance_id|. Returns true if the operation completes successfully. 61 // |guest_instance_id|. Returns true if the operation completes successfully.
66 virtual bool AppViewInternalDenyRequest( 62 virtual bool AppViewInternalDenyRequest(
67 content::BrowserContext* browser_context, 63 content::BrowserContext* browser_context,
68 int guest_instance_id, 64 int guest_instance_id,
69 const std::string& guest_extension_id); 65 const std::string& guest_extension_id);
70 66
71 // Returns the HidService instance for this embedder.
72 virtual device::HidService* GetHidService();
73
74 virtual void RegisterGuestViewTypes() {} 67 virtual void RegisterGuestViewTypes() {}
75 68
76 // NOTE: If this interface gains too many methods (perhaps more than 20) it 69 // NOTE: If this interface gains too many methods (perhaps more than 20) it
77 // should be split into one interface per API. 70 // should be split into one interface per API.
78 }; 71 };
79 72
80 } // namespace extensions 73 } // namespace extensions
81 74
82 #endif // EXTENSIONS_BROWSER_API_EXTENSIONS_API_CLIENT_H_ 75 #endif // EXTENSIONS_BROWSER_API_EXTENSIONS_API_CLIENT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698