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

Side by Side Diff: chrome/browser/extensions/extension_function_dispatcher.cc

Issue 6749021: Added new fileBrowserPrivate and fileHandler extension APIs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 8 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 (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 #include "chrome/browser/extensions/extension_function_dispatcher.h" 5 #include "chrome/browser/extensions/extension_function_dispatcher.h"
6 6
7 #include <map> 7 #include <map>
8 8
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/memory/singleton.h" 10 #include "base/memory/singleton.h"
11 #include "base/process_util.h" 11 #include "base/process_util.h"
12 #include "base/values.h" 12 #include "base/values.h"
13 #include "build/build_config.h" 13 #include "build/build_config.h"
14 #include "chrome/browser/extensions/execute_code_in_tab_function.h" 14 #include "chrome/browser/extensions/execute_code_in_tab_function.h"
15 #include "chrome/browser/extensions/extension_accessibility_api.h" 15 #include "chrome/browser/extensions/extension_accessibility_api.h"
16 #include "chrome/browser/extensions/extension_bookmark_manager_api.h" 16 #include "chrome/browser/extensions/extension_bookmark_manager_api.h"
17 #include "chrome/browser/extensions/extension_bookmarks_module.h" 17 #include "chrome/browser/extensions/extension_bookmarks_module.h"
18 #include "chrome/browser/extensions/extension_browser_actions_api.h" 18 #include "chrome/browser/extensions/extension_browser_actions_api.h"
19 #include "chrome/browser/extensions/extension_clipboard_api.h" 19 #include "chrome/browser/extensions/extension_clipboard_api.h"
20 #include "chrome/browser/extensions/extension_context_menu_api.h" 20 #include "chrome/browser/extensions/extension_context_menu_api.h"
21 #include "chrome/browser/extensions/extension_cookies_api.h" 21 #include "chrome/browser/extensions/extension_cookies_api.h"
22 #include "chrome/browser/extensions/extension_debugger_api.h" 22 #include "chrome/browser/extensions/extension_debugger_api.h"
23 #include "chrome/browser/extensions/extension_file_browser_private_api.h"
24 #include "chrome/browser/extensions/extension_function.h" 23 #include "chrome/browser/extensions/extension_function.h"
25 #include "chrome/browser/extensions/extension_history_api.h" 24 #include "chrome/browser/extensions/extension_history_api.h"
26 #include "chrome/browser/extensions/extension_i18n_api.h" 25 #include "chrome/browser/extensions/extension_i18n_api.h"
27 #include "chrome/browser/extensions/extension_idle_api.h" 26 #include "chrome/browser/extensions/extension_idle_api.h"
28 #include "chrome/browser/extensions/extension_infobar_module.h" 27 #include "chrome/browser/extensions/extension_infobar_module.h"
29 #include "chrome/browser/extensions/extension_management_api.h" 28 #include "chrome/browser/extensions/extension_management_api.h"
30 #include "chrome/browser/extensions/extension_message_service.h" 29 #include "chrome/browser/extensions/extension_message_service.h"
31 #include "chrome/browser/extensions/extension_metrics_module.h" 30 #include "chrome/browser/extensions/extension_metrics_module.h"
32 #include "chrome/browser/extensions/extension_module.h" 31 #include "chrome/browser/extensions/extension_module.h"
33 #include "chrome/browser/extensions/extension_omnibox_api.h" 32 #include "chrome/browser/extensions/extension_omnibox_api.h"
(...skipping 25 matching lines...) Expand all
59 #include "content/browser/renderer_host/render_view_host.h" 58 #include "content/browser/renderer_host/render_view_host.h"
60 #include "content/common/notification_service.h" 59 #include "content/common/notification_service.h"
61 #include "content/common/result_codes.h" 60 #include "content/common/result_codes.h"
62 #include "third_party/skia/include/core/SkBitmap.h" 61 #include "third_party/skia/include/core/SkBitmap.h"
63 62
64 #if defined(TOOLKIT_VIEWS) 63 #if defined(TOOLKIT_VIEWS)
65 #include "chrome/browser/extensions/extension_input_api.h" 64 #include "chrome/browser/extensions/extension_input_api.h"
66 #endif 65 #endif
67 66
68 #if defined(OS_CHROMEOS) 67 #if defined(OS_CHROMEOS)
68 #include "chrome/browser/extensions/extension_file_browser_private_api.h"
69 #include "chrome/browser/extensions/extension_info_private_api_chromeos.h" 69 #include "chrome/browser/extensions/extension_info_private_api_chromeos.h"
70 #endif 70 #endif
71 71
72 // FactoryRegistry ------------------------------------------------------------- 72 // FactoryRegistry -------------------------------------------------------------
73 73
74 namespace { 74 namespace {
75 75
76 // Template for defining ExtensionFunctionFactory. 76 // Template for defining ExtensionFunctionFactory.
77 template<class T> 77 template<class T>
78 ExtensionFunction* NewExtensionFunction() { 78 ExtensionFunction* NewExtensionFunction() {
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 194
195 // Idle 195 // Idle
196 RegisterFunction<ExtensionIdleQueryStateFunction>(); 196 RegisterFunction<ExtensionIdleQueryStateFunction>();
197 197
198 // I18N. 198 // I18N.
199 RegisterFunction<GetAcceptLanguagesFunction>(); 199 RegisterFunction<GetAcceptLanguagesFunction>();
200 200
201 // Processes. 201 // Processes.
202 RegisterFunction<GetProcessIdForTabFunction>(); 202 RegisterFunction<GetProcessIdForTabFunction>();
203 203
204 // Local filesystem.
205 RegisterFunction<RequestLocalFileSystemFunction>();
206
207 // Metrics. 204 // Metrics.
208 RegisterFunction<MetricsGetEnabledFunction>(); 205 RegisterFunction<MetricsGetEnabledFunction>();
209 RegisterFunction<MetricsSetEnabledFunction>(); 206 RegisterFunction<MetricsSetEnabledFunction>();
210 RegisterFunction<MetricsRecordUserActionFunction>(); 207 RegisterFunction<MetricsRecordUserActionFunction>();
211 RegisterFunction<MetricsRecordValueFunction>(); 208 RegisterFunction<MetricsRecordValueFunction>();
212 RegisterFunction<MetricsRecordPercentageFunction>(); 209 RegisterFunction<MetricsRecordPercentageFunction>();
213 RegisterFunction<MetricsRecordCountFunction>(); 210 RegisterFunction<MetricsRecordCountFunction>();
214 RegisterFunction<MetricsRecordSmallCountFunction>(); 211 RegisterFunction<MetricsRecordSmallCountFunction>();
215 RegisterFunction<MetricsRecordMediumCountFunction>(); 212 RegisterFunction<MetricsRecordMediumCountFunction>();
216 RegisterFunction<MetricsRecordTimeFunction>(); 213 RegisterFunction<MetricsRecordTimeFunction>();
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 302
306 // WebRequest. 303 // WebRequest.
307 RegisterFunction<WebRequestAddEventListener>(); 304 RegisterFunction<WebRequestAddEventListener>();
308 RegisterFunction<WebRequestEventHandled>(); 305 RegisterFunction<WebRequestEventHandled>();
309 306
310 // Preferences. 307 // Preferences.
311 RegisterFunction<GetPreferenceFunction>(); 308 RegisterFunction<GetPreferenceFunction>();
312 RegisterFunction<SetPreferenceFunction>(); 309 RegisterFunction<SetPreferenceFunction>();
313 RegisterFunction<ClearPreferenceFunction>(); 310 RegisterFunction<ClearPreferenceFunction>();
314 311
315 // File Dialog. 312 // ChromeOS-specific part of the API.
313 #if defined(OS_CHROMEOS)
314 // Device Customization.
315 RegisterFunction<GetChromeosInfoFunction>();
316
317 // FileBrowserPrivate functions.
318 RegisterFunction<ExecuteTasksFileBrowserFunction>();
319 RegisterFunction<GetFileTasksFileBrowserFunction>();
320 RegisterFunction<RequestLocalFileSystemFunction>();
316 RegisterFunction<SelectFileFunction>(); 321 RegisterFunction<SelectFileFunction>();
317 RegisterFunction<SelectFilesFunction>(); 322 RegisterFunction<SelectFilesFunction>();
318 RegisterFunction<CancelFileDialogFunction>(); 323 RegisterFunction<CancelFileDialogFunction>();
319 RegisterFunction<FileDialogStringsFunction>(); 324 RegisterFunction<FileDialogStringsFunction>();
320
321 #if defined(OS_CHROMEOS)
322 // Device Customization.
323 RegisterFunction<GetChromeosInfoFunction>();
324 #endif 325 #endif
325 326
326 // Debugger 327 // Debugger
327 RegisterFunction<AttachDebuggerFunction>(); 328 RegisterFunction<AttachDebuggerFunction>();
328 RegisterFunction<DetachDebuggerFunction>(); 329 RegisterFunction<DetachDebuggerFunction>();
329 RegisterFunction<SendRequestDebuggerFunction>(); 330 RegisterFunction<SendRequestDebuggerFunction>();
330 } 331 }
331 332
332 void FactoryRegistry::GetAllNames(std::vector<std::string>* names) { 333 void FactoryRegistry::GetAllNames(std::vector<std::string>* names) {
333 for (FactoryMap::iterator iter = factories_.begin(); 334 for (FactoryMap::iterator iter = factories_.begin();
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 NOTREACHED(); 532 NOTREACHED();
532 UserMetrics::RecordAction(UserMetricsAction("BadMessageTerminate_EFD")); 533 UserMetrics::RecordAction(UserMetricsAction("BadMessageTerminate_EFD"));
533 base::KillProcess(render_view_host_->process()->GetHandle(), 534 base::KillProcess(render_view_host_->process()->GetHandle(),
534 ResultCodes::KILLED_BAD_MESSAGE, false); 535 ResultCodes::KILLED_BAD_MESSAGE, false);
535 } 536 }
536 } 537 }
537 538
538 Profile* ExtensionFunctionDispatcher::profile() { 539 Profile* ExtensionFunctionDispatcher::profile() {
539 return profile_; 540 return profile_;
540 } 541 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698