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

Side by Side Diff: chrome_frame/chrome_frame_plugin.h

Issue 5998006: Clean up Automation and Chrome Frame IPC code. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 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 | Annotate | Revision Log
« no previous file with comments | « chrome_frame/chrome_frame_npapi.cc ('k') | chrome_frame/external_tab.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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_FRAME_CHROME_FRAME_PLUGIN_H_ 5 #ifndef CHROME_FRAME_CHROME_FRAME_PLUGIN_H_
6 #define CHROME_FRAME_CHROME_FRAME_PLUGIN_H_ 6 #define CHROME_FRAME_CHROME_FRAME_PLUGIN_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 virtual bool IsValid() const { 107 virtual bool IsValid() const {
108 return automation_client_.get() != NULL; 108 return automation_client_.get() != NULL;
109 } 109 }
110 110
111 virtual void OnHostMoved() { 111 virtual void OnHostMoved() {
112 if (IsValid()) 112 if (IsValid())
113 automation_client_->OnChromeFrameHostMoved(); 113 automation_client_->OnChromeFrameHostMoved();
114 } 114 }
115 115
116 protected: 116 protected:
117 virtual void OnNavigationFailed(int tab_handle, int error_code, 117 virtual void OnNavigationFailed(int error_code, const GURL& gurl) {
118 const GURL& gurl) {
119 OnLoadFailed(error_code, gurl.spec()); 118 OnLoadFailed(error_code, gurl.spec());
120 } 119 }
121 120
122 virtual void OnHandleContextMenu(int tab_handle, HANDLE menu_handle, 121 virtual void OnHandleContextMenu(HANDLE menu_handle,
123 int align_flags, 122 int align_flags,
124 const IPC::MiniContextMenuParams& params) { 123 const MiniContextMenuParams& params) {
125 if (!menu_handle || !automation_client_.get()) { 124 if (!menu_handle || !automation_client_.get()) {
126 NOTREACHED(); 125 NOTREACHED();
127 return; 126 return;
128 } 127 }
129 128
130 // TrackPopupMenuEx call will fail on IE on Vista running 129 // TrackPopupMenuEx call will fail on IE on Vista running
131 // in low integrity mode. We DO seem to be able to enumerate the menu 130 // in low integrity mode. We DO seem to be able to enumerate the menu
132 // though, so just clone it and show the copy: 131 // though, so just clone it and show the copy:
133 HMENU copy = UtilCloneContextMenu(static_cast<HMENU>(menu_handle)); 132 HMENU copy = UtilCloneContextMenu(static_cast<HMENU>(menu_handle));
134 if (!copy) 133 if (!copy)
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 bool PreProcessContextMenu(HMENU menu) { 212 bool PreProcessContextMenu(HMENU menu) {
214 // Add an "About" item. 213 // Add an "About" item.
215 AppendMenu(menu, MF_STRING, IDC_ABOUT_CHROME_FRAME, 214 AppendMenu(menu, MF_STRING, IDC_ABOUT_CHROME_FRAME,
216 SimpleResourceLoader::Get(IDS_CHROME_FRAME_MENU_ABOUT).c_str()); 215 SimpleResourceLoader::Get(IDS_CHROME_FRAME_MENU_ABOUT).c_str());
217 return true; 216 return true;
218 } 217 }
219 218
220 // Return true if menu command is processed, otherwise the command will be 219 // Return true if menu command is processed, otherwise the command will be
221 // passed to Chrome for execution. Override in most-derived class if needed. 220 // passed to Chrome for execution. Override in most-derived class if needed.
222 bool HandleContextMenuCommand(UINT cmd, 221 bool HandleContextMenuCommand(UINT cmd,
223 const IPC::MiniContextMenuParams& params) { 222 const MiniContextMenuParams& params) {
224 return false; 223 return false;
225 } 224 }
226 225
227 // Allow overriding the type of automation client used, for unit tests. 226 // Allow overriding the type of automation client used, for unit tests.
228 virtual ChromeFrameAutomationClient* CreateAutomationClient() { 227 virtual ChromeFrameAutomationClient* CreateAutomationClient() {
229 return new ChromeFrameAutomationClient; 228 return new ChromeFrameAutomationClient;
230 } 229 }
231 230
232 void GiveFocusToChrome(bool restore_focus_to_view) { 231 void GiveFocusToChrome(bool restore_focus_to_view) {
233 if (IsValid()) { 232 if (IsValid()) {
(...skipping 29 matching lines...) Expand all
263 bool ignore_setfocus_; 262 bool ignore_setfocus_;
264 263
265 // List of functions to enable for automation, or a single entry "*" to 264 // List of functions to enable for automation, or a single entry "*" to
266 // enable all functions for automation. Ignored unless is_privileged_ is 265 // enable all functions for automation. Ignored unless is_privileged_ is
267 // true. Defaults to the empty list, meaning automation will not be 266 // true. Defaults to the empty list, meaning automation will not be
268 // turned on. 267 // turned on.
269 std::vector<std::string> functions_enabled_; 268 std::vector<std::string> functions_enabled_;
270 }; 269 };
271 270
272 #endif // CHROME_FRAME_CHROME_FRAME_PLUGIN_H_ 271 #endif // CHROME_FRAME_CHROME_FRAME_PLUGIN_H_
OLDNEW
« no previous file with comments | « chrome_frame/chrome_frame_npapi.cc ('k') | chrome_frame/external_tab.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698