OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_EXTENSION_FUNCTION_DISPATCHER_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_FUNCTION_DISPATCHER_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_FUNCTION_DISPATCHER_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_FUNCTION_DISPATCHER_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 22 matching lines...) Expand all Loading... |
33 class Delegate { | 33 class Delegate { |
34 public: | 34 public: |
35 // Returns the browser that this delegate is associated with, if any. | 35 // Returns the browser that this delegate is associated with, if any. |
36 // Returns NULL otherwise. | 36 // Returns NULL otherwise. |
37 virtual Browser* GetBrowser() = 0; | 37 virtual Browser* GetBrowser() = 0; |
38 | 38 |
39 // Returns the native view for this extension view, if any. This may be NULL | 39 // Returns the native view for this extension view, if any. This may be NULL |
40 // if the view is not visible. | 40 // if the view is not visible. |
41 virtual gfx::NativeView GetNativeViewOfHost() = 0; | 41 virtual gfx::NativeView GetNativeViewOfHost() = 0; |
42 | 42 |
43 // Typically, the window is assumed to be the window associated with the | |
44 // result of GetBrowser(). Implementations may override this behavior with | |
45 // this method. | |
46 virtual gfx::NativeWindow GetCustomFrameNativeWindow() { | |
47 return NULL; | |
48 } | |
49 | |
50 // Asks the delegate for any relevant TabContents associated with this | 43 // Asks the delegate for any relevant TabContents associated with this |
51 // context. For example, the TabContents in which an infobar or | 44 // context. For example, the TabContents in which an infobar or |
52 // chrome-extension://<id> URL are being shown. Callers must check for a | 45 // chrome-extension://<id> URL are being shown. Callers must check for a |
53 // NULL return value (as in the case of a background page). | 46 // NULL return value (as in the case of a background page). |
54 virtual TabContents* associated_tab_contents() const = 0; | 47 virtual TabContents* associated_tab_contents() const = 0; |
55 | 48 |
56 protected: | 49 protected: |
57 virtual ~Delegate() {} | 50 virtual ~Delegate() {} |
58 }; | 51 }; |
59 | 52 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 | 138 |
146 // AutomationExtensionFunction requires access to the RenderViewHost | 139 // AutomationExtensionFunction requires access to the RenderViewHost |
147 // associated with us. We make it a friend rather than exposing the | 140 // associated with us. We make it a friend rather than exposing the |
148 // RenderViewHost as a public method as we wouldn't want everyone to | 141 // RenderViewHost as a public method as we wouldn't want everyone to |
149 // start assuming a 1:1 relationship between us and RenderViewHost, | 142 // start assuming a 1:1 relationship between us and RenderViewHost, |
150 // whereas AutomationExtensionFunction is by necessity "tight" with us. | 143 // whereas AutomationExtensionFunction is by necessity "tight" with us. |
151 friend class AutomationExtensionFunction; | 144 friend class AutomationExtensionFunction; |
152 }; | 145 }; |
153 | 146 |
154 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_FUNCTION_DISPATCHER_H_ | 147 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_FUNCTION_DISPATCHER_H_ |
OLD | NEW |