diff options
Diffstat (limited to 'chrome/renderer/resources/extensions')
30 files changed, 114 insertions, 200 deletions
diff --git a/chrome/renderer/resources/extensions/apitest.js b/chrome/renderer/resources/extensions/apitest.js index 7e7e62f..6f015ef 100644 --- a/chrome/renderer/resources/extensions/apitest.js +++ b/chrome/renderer/resources/extensions/apitest.js @@ -1,12 +1,10 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // extension_apitest.js // mini-framework for ExtensionApiTest browser tests -var chrome = chrome || {}; -(function() { chrome.test = chrome.test || {}; chrome.test.tests = chrome.test.tests || []; @@ -275,4 +273,3 @@ var chrome = chrome || {}; chrome.test.tests = tests; chrome.test.runNextTest(); }; -})(); diff --git a/chrome/renderer/resources/extensions/app.js b/chrome/renderer/resources/extensions/app.js index 8fbce65..7337d86 100644 --- a/chrome/renderer/resources/extensions/app.js +++ b/chrome/renderer/resources/extensions/app.js @@ -1,17 +1,15 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -var chrome = chrome || {}; -(function() { - native function GetChromeHidden(); - native function GetIsInstalled(); - native function Install(); - native function GetDetails(); - native function GetDetailsForFrame(); - native function GetAppNotifyChannel(); + var natives = requireNative('app'); + var GetIsInstalled = natives.GetIsInstalled; + var Install = natives.Install; + var GetDetails = natives.GetDetails; + var GetDetailsForFrame = natives.GetDetailsForFrame; + var GetAppNotifyChannel = natives.GetAppNotifyChannel; - var chromeHidden = GetChromeHidden(); + var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); var callbacks = {}; var nextCallbackId = 1; @@ -41,4 +39,3 @@ var chrome = chrome || {}; delete callbacks[callbackId]; } }; -})(); diff --git a/chrome/renderer/resources/extensions/browser_action_custom_bindings.js b/chrome/renderer/resources/extensions/browser_action_custom_bindings.js index 8b791a7..137da5b 100644 --- a/chrome/renderer/resources/extensions/browser_action_custom_bindings.js +++ b/chrome/renderer/resources/extensions/browser_action_custom_bindings.js @@ -4,11 +4,9 @@ // Custom bindings for the browserAction API. -(function() { +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -native function GetChromeHidden(); - -GetChromeHidden().registerCustomHook('browserAction', function(bindingsAPI) { +chromeHidden.registerCustomHook('browserAction', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; var setIcon = bindingsAPI.setIcon; @@ -16,5 +14,3 @@ GetChromeHidden().registerCustomHook('browserAction', function(bindingsAPI) { setIcon(details, this.name, this.definition.parameters, 'browser action'); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/chrome_private_custom_bindings.js b/chrome/renderer/resources/extensions/chrome_private_custom_bindings.js index c3f712b..b50bbee 100644 --- a/chrome/renderer/resources/extensions/chrome_private_custom_bindings.js +++ b/chrome/renderer/resources/extensions/chrome_private_custom_bindings.js @@ -4,17 +4,15 @@ // Custom bindings for the chromePrivate API. -(function() { +var chromePrivate = requireNative('chrome_private'); +var DecodeJPEG = chromePrivate.DecodeJPEG; -native function GetChromeHidden(); -native function DecodeJPEG(jpegImage); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -GetChromeHidden().registerCustomHook('chromePrivate', function(bindingsAPI) { +chromeHidden.registerCustomHook('chromePrivate', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; apiFunctions.setHandleRequest('decodeJPEG', function(jpeg_image) { return DecodeJPEG(jpeg_image); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/content_settings_custom_bindings.js b/chrome/renderer/resources/extensions/content_settings_custom_bindings.js index 14bc91c..bc98a90 100644 --- a/chrome/renderer/resources/extensions/content_settings_custom_bindings.js +++ b/chrome/renderer/resources/extensions/content_settings_custom_bindings.js @@ -4,11 +4,7 @@ // Custom bindings for the contentSettings API. -(function() { - -native function GetChromeHidden(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomType('ContentSetting', function(typesAPI) { var sendRequest = typesAPI.sendRequest; @@ -54,5 +50,3 @@ chromeHidden.registerCustomType('ContentSetting', function(typesAPI) { return ContentSetting; }); - -})(); diff --git a/chrome/renderer/resources/extensions/context_menus_custom_bindings.js b/chrome/renderer/resources/extensions/context_menus_custom_bindings.js index e4983e6..546140b 100644 --- a/chrome/renderer/resources/extensions/context_menus_custom_bindings.js +++ b/chrome/renderer/resources/extensions/context_menus_custom_bindings.js @@ -4,12 +4,10 @@ // Custom bindings for the contextMenus API. -(function() { +var contextMenus = requireNative('context_menus'); +var GetNextContextMenuId = contextMenus.GetNextContextMenuId; -native function GetChromeHidden(); -native function GetNextContextMenuId(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('contextMenus', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; @@ -87,5 +85,3 @@ chromeHidden.registerCustomHook('contextMenus', function(bindingsAPI) { chromeHidden.contextMenus.handlers = {}; }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/devtools_custom_bindings.js b/chrome/renderer/resources/extensions/devtools_custom_bindings.js index d1ad34c..9d1d8eb 100644 --- a/chrome/renderer/resources/extensions/devtools_custom_bindings.js +++ b/chrome/renderer/resources/extensions/devtools_custom_bindings.js @@ -4,11 +4,9 @@ // Custom bindings for the devtools API. -(function() { +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -native function GetChromeHidden(); - -GetChromeHidden().registerCustomHook('devtools', function(bindingsAPI) { +chromeHidden.registerCustomHook('devtools', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; apiFunctions.setHandleRequest('getTabEvents', function(tabId) { @@ -23,5 +21,3 @@ GetChromeHidden().registerCustomHook('devtools', function(bindingsAPI) { return tabIdProxy; }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/event.js b/chrome/renderer/resources/extensions/event.js index 2cf78a8..c8a05cf 100644 --- a/chrome/renderer/resources/extensions/event.js +++ b/chrome/renderer/resources/extensions/event.js @@ -2,14 +2,12 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -var chrome = chrome || {}; -(function () { - native function GetChromeHidden(); - native function AttachEvent(eventName); - native function DetachEvent(eventName, manual); - native function Print(); + var eventBindingsNatives = requireNative('event_bindings'); + var AttachEvent = eventBindingsNatives.AttachEvent; + var DetachEvent = eventBindingsNatives.DetachEvent; + var Print = eventBindingsNatives.Print; - var chromeHidden = GetChromeHidden(); + var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); // Local implementation of JSON.parse & JSON.stringify that protect us // from being clobbered by an extension. @@ -311,4 +309,3 @@ var chrome = chrome || {}; chromeHidden.dispatchError = function(msg) { console.error(msg); }; -})(); diff --git a/chrome/renderer/resources/extensions/experimental.declarative_custom_bindings.js b/chrome/renderer/resources/extensions/experimental.declarative_custom_bindings.js index de47b6c..73d4642 100644 --- a/chrome/renderer/resources/extensions/experimental.declarative_custom_bindings.js +++ b/chrome/renderer/resources/extensions/experimental.declarative_custom_bindings.js @@ -4,11 +4,7 @@ // Custom bindings for the declarative API. -(function() { - -native function GetChromeHidden(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('experimental.declarative', function(bindingsAPI) { @@ -78,5 +74,3 @@ chromeHidden.registerCustomHook('experimental.declarative', this.definition.parameters); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/experimental.socket_custom_bindings.js b/chrome/renderer/resources/extensions/experimental.socket_custom_bindings.js index 52a8659..a5b2568 100644 --- a/chrome/renderer/resources/extensions/experimental.socket_custom_bindings.js +++ b/chrome/renderer/resources/extensions/experimental.socket_custom_bindings.js @@ -4,11 +4,10 @@ // Custom bindings for the experimental.socket API. -(function() { - native function GetChromeHidden(); - native function GetNextSocketEventId(); + var experimentalSocketNatives = requireNative('experimental_socket'); + var GetNextSocketEventId = experimentalSocketNatives.GetNextSocketEventId; - var chromeHidden = GetChromeHidden(); + var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('experimental.socket', function(api) { var apiFunctions = api.apiFunctions; @@ -56,5 +55,3 @@ } }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/extension_custom_bindings.js b/chrome/renderer/resources/extensions/extension_custom_bindings.js index f746e2a..970e11f 100644 --- a/chrome/renderer/resources/extensions/extension_custom_bindings.js +++ b/chrome/renderer/resources/extensions/extension_custom_bindings.js @@ -4,13 +4,11 @@ // Custom bindings for the extension API. -(function() { +var extensionNatives = requireNative('extension'); +var GetExtensionViews = extensionNatives.GetExtensionViews; +var OpenChannelToExtension = extensionNatives.OpenChannelToExtension; -native function GetChromeHidden(); -native function GetExtensionViews(); -native function OpenChannelToExtension(sourceId, targetId, name); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); // This should match chrome.windows.WINDOW_ID_NONE. // @@ -144,5 +142,3 @@ chromeHidden.registerCustomHook('extension', throw new Error('Error connecting to extension ' + targetId); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/file_browser_handler_custom_bindings.js b/chrome/renderer/resources/extensions/file_browser_handler_custom_bindings.js index 9fb152c..44d1539 100644 --- a/chrome/renderer/resources/extensions/file_browser_handler_custom_bindings.js +++ b/chrome/renderer/resources/extensions/file_browser_handler_custom_bindings.js @@ -4,12 +4,11 @@ // Custom bindings for the fileBrowserHandler API. -(function() { +var fileBrowserNatives = requireNative('file_browser_handler'); +var GetExternalFileEntry = fileBrowserNatives.GetExternalFileEntry; -native function GetChromeHidden(); -native function GetExternalFileEntry(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -var chromeHidden = GetChromeHidden(); chromeHidden.Event.registerArgumentMassager('fileBrowserHandler.onExecute', function(args) { if (args.length < 2) @@ -23,5 +22,3 @@ chromeHidden.Event.registerArgumentMassager('fileBrowserHandler.onExecute', for (var i = 0; i < fileList.length; i++) fileList[i] = GetExternalFileEntry(fileList[i]); }); - -})(); diff --git a/chrome/renderer/resources/extensions/file_browser_private_custom_bindings.js b/chrome/renderer/resources/extensions/file_browser_private_custom_bindings.js index 7b483b5..2423cfb 100644 --- a/chrome/renderer/resources/extensions/file_browser_private_custom_bindings.js +++ b/chrome/renderer/resources/extensions/file_browser_private_custom_bindings.js @@ -4,12 +4,10 @@ // Custom bindings for the fileBrowserPrivate API. -(function() { +var fileBrowserPrivateNatives = requireNative('file_browser_private'); +var GetLocalFileSystem = fileBrowserPrivateNatives.GetLocalFileSystem; -native function GetChromeHidden(); -native function GetLocalFileSystem(name, path); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('fileBrowserPrivate', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; @@ -25,5 +23,3 @@ chromeHidden.registerCustomHook('fileBrowserPrivate', function(bindingsAPI) { request.callback = null; }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/i18n_custom_bindings.js b/chrome/renderer/resources/extensions/i18n_custom_bindings.js index 8f9ca30..a9fa5a2 100644 --- a/chrome/renderer/resources/extensions/i18n_custom_bindings.js +++ b/chrome/renderer/resources/extensions/i18n_custom_bindings.js @@ -4,12 +4,12 @@ // Custom bindings for the i18n API. -(function() { +var i18nNatives = requireNative('i18n'); +var GetL10nMessage = i18nNatives.GetL10nMessage; -native function GetChromeHidden(); -native function GetL10nMessage(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -GetChromeHidden().registerCustomHook('i18n', +chromeHidden.registerCustomHook('i18n', function(bindingsAPI, extensionId) { var apiFunctions = bindingsAPI.apiFunctions; @@ -18,5 +18,3 @@ GetChromeHidden().registerCustomHook('i18n', return GetL10nMessage(messageName, substitutions, extensionId); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/input.ime_custom_bindings.js b/chrome/renderer/resources/extensions/input.ime_custom_bindings.js index c6bbbfc..8f400c7 100644 --- a/chrome/renderer/resources/extensions/input.ime_custom_bindings.js +++ b/chrome/renderer/resources/extensions/input.ime_custom_bindings.js @@ -5,11 +5,9 @@ // Custom bindings for the input ime API. Only injected into the // v8 contexts for extensions which have permission for the API. -(function() { +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -native function GetChromeHidden(); - -GetChromeHidden().registerCustomHook('input.ime', function() { +chromeHidden.registerCustomHook('input.ime', function() { chrome.input.ime.onKeyEvent.dispatch = function(engineID, keyData) { var args = Array.prototype.slice.call(arguments); if (this.validate_) { @@ -36,5 +34,3 @@ GetChromeHidden().registerCustomHook('input.ime', function() { } }; }); - -})(); diff --git a/chrome/renderer/resources/extensions/json_schema.js b/chrome/renderer/resources/extensions/json_schema.js index f1fdf9e..bc51d97 100644 --- a/chrome/renderer/resources/extensions/json_schema.js +++ b/chrome/renderer/resources/extensions/json_schema.js @@ -38,9 +38,7 @@ // additional properties will be validated. //============================================================================== -(function() { -native function GetChromeHidden(); -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); function isInstanceOfClass(instance, className) { if (!instance) @@ -498,5 +496,3 @@ chromeHidden.JSONSchemaValidator.prototype.addError = chromeHidden.JSONSchemaValidator.prototype.resetErrors = function() { this.errors = []; }; - -})(); diff --git a/chrome/renderer/resources/extensions/miscellaneous_bindings.js b/chrome/renderer/resources/extensions/miscellaneous_bindings.js index 6bcfc11..a2d284d 100644 --- a/chrome/renderer/resources/extensions/miscellaneous_bindings.js +++ b/chrome/renderer/resources/extensions/miscellaneous_bindings.js @@ -7,16 +7,15 @@ // scripts or background pages. // See user_script_slave.cc for script that is loaded by content scripts only. -var chrome = chrome || {}; -(function () { - native function CloseChannel(portId, notifyBrowser); - native function PortAddRef(portId); - native function PortRelease(portId); - native function PostMessage(portId, msg); - native function GetChromeHidden(); - native function Print(); - - var chromeHidden = GetChromeHidden(); + require('json_schema'); + require('event_bindings'); + var miscNatives = requireNative('miscellaneous_bindings'); + var CloseChannel = miscNatives.CloseChannel; + var PortAddRef = miscNatives.PortAddRef; + var PortRelease = miscNatives.PortRelease; + var PostMessage = miscNatives.PostMessage; + + var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); var manifestVersion; var extensionId; @@ -210,4 +209,3 @@ var chrome = chrome || {}; chrome.extension.inIncognitoContext = inIncognitoContext; }); -})(); diff --git a/chrome/renderer/resources/extensions/omnibox_custom_bindings.js b/chrome/renderer/resources/extensions/omnibox_custom_bindings.js index 13a3c61..37f8d92 100644 --- a/chrome/renderer/resources/extensions/omnibox_custom_bindings.js +++ b/chrome/renderer/resources/extensions/omnibox_custom_bindings.js @@ -5,9 +5,7 @@ // Custom bindings for the omnibox API. Only injected into the v8 contexts // for extensions which have permission for the omnibox API. -(function() { - -native function GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); // Remove invalid characters from |text| so that it is suitable to use // for |AutocompleteMatch::contents|. @@ -79,7 +77,7 @@ function parseOmniboxDescription(input) { return result; } -GetChromeHidden().registerCustomHook('omnibox', function(bindingsAPI) { +chromeHidden.registerCustomHook('omnibox', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; var sendRequest = bindingsAPI.sendRequest; @@ -108,5 +106,3 @@ GetChromeHidden().registerCustomHook('omnibox', function(bindingsAPI) { chrome.Event.prototype.dispatch.apply(this, [text, suggestCallback]); }; }); - -})(); diff --git a/chrome/renderer/resources/extensions/page_action_custom_bindings.js b/chrome/renderer/resources/extensions/page_action_custom_bindings.js index 722a57b..13336b1d 100644 --- a/chrome/renderer/resources/extensions/page_action_custom_bindings.js +++ b/chrome/renderer/resources/extensions/page_action_custom_bindings.js @@ -4,11 +4,9 @@ // Custom bindings for the pageAction API. -(function() { +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -native function GetChromeHidden(); - -GetChromeHidden().registerCustomHook('pageAction', function(bindingsAPI) { +chromeHidden.registerCustomHook('pageAction', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; var setIcon = bindingsAPI.setIcon; @@ -16,5 +14,3 @@ GetChromeHidden().registerCustomHook('pageAction', function(bindingsAPI) { setIcon(details, this.name, this.definition.parameters, 'page action'); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/page_actions_custom_bindings.js b/chrome/renderer/resources/extensions/page_actions_custom_bindings.js index 2a7a2de..d5ec888 100644 --- a/chrome/renderer/resources/extensions/page_actions_custom_bindings.js +++ b/chrome/renderer/resources/extensions/page_actions_custom_bindings.js @@ -4,13 +4,13 @@ // Custom bindings for the pageActions API. -(function() { +var pageActionsNatives = requireNative('page_actions'); +var GetCurrentPageActions = pageActionsNatives.GetCurrentPageActions; -native function GetChromeHidden(); -native function GetCurrentPageActions(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -GetChromeHidden().registerCustomHook('pageActions', - function(bindingsAPI, extensionId) { +chromeHidden.registerCustomHook('pageActions', + function(bindingsAPI, extensionId) { var pageActions = GetCurrentPageActions(extensionId); var oldStyleEventName = 'pageActions'; for (var i = 0; i < pageActions.length; ++i) { @@ -18,5 +18,3 @@ GetChromeHidden().registerCustomHook('pageActions', chrome.pageActions[pageActions[i]] = new chrome.Event(oldStyleEventName); } }); - -})(); diff --git a/chrome/renderer/resources/extensions/page_capture_custom_bindings.js b/chrome/renderer/resources/extensions/page_capture_custom_bindings.js index e8a7af4..0bcbb0b 100644 --- a/chrome/renderer/resources/extensions/page_capture_custom_bindings.js +++ b/chrome/renderer/resources/extensions/page_capture_custom_bindings.js @@ -4,13 +4,11 @@ // Custom bindings for the pageCapture API. -(function() { +var pageCaptureNatives = requireNative('page_capture'); +var CreateBlob = pageCaptureNatives.CreateBlob; +var SendResponseAck = pageCaptureNatives.SendResponseAck; -native function GetChromeHidden(); -native function CreateBlob(filePath); -native function SendResponseAck(requestId); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('pageCapture', function(bindingsAPI) { var apiFunctions = bindingsAPI.apiFunctions; @@ -30,5 +28,3 @@ chromeHidden.registerCustomHook('pageCapture', function(bindingsAPI) { SendResponseAck(request.id); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/schema_generated_bindings.js b/chrome/renderer/resources/extensions/schema_generated_bindings.js index bc057d2..ab11923 100644 --- a/chrome/renderer/resources/extensions/schema_generated_bindings.js +++ b/chrome/renderer/resources/extensions/schema_generated_bindings.js @@ -5,15 +5,15 @@ // This script contains privileged chrome extension related javascript APIs. // It is loaded by pages whose URL has the chrome-extension protocol. -var chrome = chrome || {}; -(function() { - native function GetChromeHidden(); - native function GetExtensionAPIDefinition(); - native function GetNextRequestId(); - native function StartRequest(); - native function SetIconCommon(); + require('json_schema'); + require('event_bindings'); + var natives = requireNative('schema_generated_bindings'); + var GetExtensionAPIDefinition = natives.GetExtensionAPIDefinition; + var GetNextRequestId = natives.GetNextRequestId; + var StartRequest = natives.StartRequest; + var SetIconCommon = natives.SetIconCommon; - var chromeHidden = GetChromeHidden(); + var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); // The object to generate the bindings for "internal" APIs in, so that // extensions can't directly call them (without access to chromeHidden), @@ -753,4 +753,3 @@ var chrome = chrome || {}; if (chrome.test) chrome.test.getApiDefinitions = GetExtensionAPIDefinition; }); -})(); diff --git a/chrome/renderer/resources/extensions/setup_bindings.js b/chrome/renderer/resources/extensions/setup_bindings.js new file mode 100644 index 0000000..86b0cd5 --- /dev/null +++ b/chrome/renderer/resources/extensions/setup_bindings.js @@ -0,0 +1,21 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +var contextInfo = requireNative('context_info'); +var sgb = requireNative('schema_generated_bindings'); + +require('app'); +require('webstore'); + +if (contextInfo.IsBindingsAllowed()) { + require('miscellaneous_bindings'); + require('schema_generated_bindings'); + require('apitest'); + + // Load the custom bindings for each API. + sgb.GetExtensionAPIDefinition().forEach(function(apiDef) { + if (contextInfo.IsAPIAllowed(apiDef.namespace)) + require(apiDef.namespace); + }); +} diff --git a/chrome/renderer/resources/extensions/storage_custom_bindings.js b/chrome/renderer/resources/extensions/storage_custom_bindings.js index 1d358c2..a3c8a54 100644 --- a/chrome/renderer/resources/extensions/storage_custom_bindings.js +++ b/chrome/renderer/resources/extensions/storage_custom_bindings.js @@ -4,11 +4,7 @@ // Custom bindings for the storage API. -(function() { - -native function GetChromeHidden(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomType('StorageArea', function(typesAPI) { var sendRequest = typesAPI.sendRequest; @@ -43,5 +39,3 @@ chromeHidden.registerCustomType('StorageArea', function(typesAPI) { return StorageArea; }); - -})(); diff --git a/chrome/renderer/resources/extensions/tabs_custom_bindings.js b/chrome/renderer/resources/extensions/tabs_custom_bindings.js index dd66481..e0cc59c 100644 --- a/chrome/renderer/resources/extensions/tabs_custom_bindings.js +++ b/chrome/renderer/resources/extensions/tabs_custom_bindings.js @@ -4,12 +4,10 @@ // Custom bindings for the tabs API. -(function() { +var tabsNatives = requireNative('tabs'); +var OpenChannelToTab = tabsNatives.OpenChannelToTab; -native function GetChromeHidden(); -native function OpenChannelToTab(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('tabs', function(bindingsAPI, extensionId) { var apiFunctions = bindingsAPI.apiFunctions; @@ -44,5 +42,3 @@ chromeHidden.registerCustomHook('tabs', function(bindingsAPI, extensionId) { }); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/tts_custom_bindings.js b/chrome/renderer/resources/extensions/tts_custom_bindings.js index ef8011a..dee01d3 100644 --- a/chrome/renderer/resources/extensions/tts_custom_bindings.js +++ b/chrome/renderer/resources/extensions/tts_custom_bindings.js @@ -4,12 +4,10 @@ // Custom bindings for the tts API. -(function() { +var ttsNatives = requireNative('tts'); +var GetNextTTSEventId = ttsNatives.GetNextTTSEventId; -native function GetChromeHidden(); -native function GetNextTTSEventId(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomHook('tts', function(api) { var apiFunctions = api.apiFunctions; @@ -42,5 +40,3 @@ chromeHidden.registerCustomHook('tts', function(api) { return id; }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/tts_engine_custom_bindings.js b/chrome/renderer/resources/extensions/tts_engine_custom_bindings.js index 85e36b0..7c0067b 100644 --- a/chrome/renderer/resources/extensions/tts_engine_custom_bindings.js +++ b/chrome/renderer/resources/extensions/tts_engine_custom_bindings.js @@ -4,11 +4,9 @@ // Custom bindings for the ttsEngine API. -(function() { +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); -native function GetChromeHidden(); - -GetChromeHidden().registerCustomHook('ttsEngine', function() { +chromeHidden.registerCustomHook('ttsEngine', function() { chrome.ttsEngine.onSpeak.dispatch = function(text, options, requestId) { var sendTtsEvent = function(event) { chrome.ttsEngine.sendTtsEvent(requestId, event); @@ -17,5 +15,3 @@ GetChromeHidden().registerCustomHook('ttsEngine', function() { this, [text, options, sendTtsEvent]); }; }); - -})(); diff --git a/chrome/renderer/resources/extensions/types_custom_bindings.js b/chrome/renderer/resources/extensions/types_custom_bindings.js index 62dbe0a..48eba8a 100644 --- a/chrome/renderer/resources/extensions/types_custom_bindings.js +++ b/chrome/renderer/resources/extensions/types_custom_bindings.js @@ -4,11 +4,7 @@ // Custom bindings for the types API. -(function() { - -native function GetChromeHidden(); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); chromeHidden.registerCustomType('ChromeSetting', function(typesAPI) { var sendRequest = typesAPI.sendRequest; @@ -48,5 +44,3 @@ chromeHidden.registerCustomType('ChromeSetting', function(typesAPI) { return ChromeSetting; }); - -})(); diff --git a/chrome/renderer/resources/extensions/web_request_custom_bindings.js b/chrome/renderer/resources/extensions/web_request_custom_bindings.js index 564251e..392f66c 100644 --- a/chrome/renderer/resources/extensions/web_request_custom_bindings.js +++ b/chrome/renderer/resources/extensions/web_request_custom_bindings.js @@ -4,12 +4,10 @@ // Custom bindings for the webRequest API. -(function() { +var webRequestNatives = requireNative('web_request'); +var GetUniqueSubEventName = webRequestNatives.GetUniqueSubEventName; -native function GetChromeHidden(); -native function GetUniqueSubEventName(eventName); - -var chromeHidden = GetChromeHidden(); +var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); // WebRequestEvent object. This is used for special webRequest events with // extra parameters. Each invocation of addListener creates a new named @@ -172,5 +170,3 @@ chromeHidden.registerCustomHook('webRequest', function(api) { {forIOThread: true}); }); }); - -})(); diff --git a/chrome/renderer/resources/extensions/webstore.js b/chrome/renderer/resources/extensions/webstore.js index b387c46..14bacc5 100644 --- a/chrome/renderer/resources/extensions/webstore.js +++ b/chrome/renderer/resources/extensions/webstore.js @@ -2,12 +2,10 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -var chrome = chrome || {}; -(function() { - native function GetChromeHidden(); - native function Install(preferredStoreUrl, onSuccess, onFailure); + var webstoreNatives = requireNative('webstore'); + var Install = webstoreNatives.Install; - var chromeHidden = GetChromeHidden(); + var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); var pendingInstalls = {}; chrome.webstore = new function() { this.install = function( @@ -41,4 +39,3 @@ var chrome = chrome || {}; delete pendingInstall[installId]; } } -})(); |