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

Side by Side Diff: chrome/renderer/resources/extensions/web_view.js

Issue 17451011: Make the externally connectable browser test clobber all of the builtins, (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: hopefully fix tests Created 7 years, 6 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // Shim that simulates a <webview> tag via Mutation Observers. 5 // Shim that simulates a <webview> tag via Mutation Observers.
6 // 6 //
7 // The actual tag is implemented via the browser plugin. The internals of this 7 // The actual tag is implemented via the browser plugin. The internals of this
8 // are hidden via Shadow DOM. 8 // are hidden via Shadow DOM.
9 9
10 var watchForTag = require('tagWatcher').watchForTag; 10 var watchForTag = require('tagWatcher').watchForTag;
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 118
119 /** 119 /**
120 * @private 120 * @private
121 */ 121 */
122 WebView.prototype.setupWebviewNodeMethods_ = function() { 122 WebView.prototype.setupWebviewNodeMethods_ = function() {
123 // this.browserPluginNode_[apiMethod] are not necessarily defined immediately 123 // this.browserPluginNode_[apiMethod] are not necessarily defined immediately
124 // after the shadow object is appended to the shadow root. 124 // after the shadow object is appended to the shadow root.
125 var self = this; 125 var self = this;
126 $Array.forEach(WEB_VIEW_API_METHODS, function(apiMethod) { 126 $Array.forEach(WEB_VIEW_API_METHODS, function(apiMethod) {
127 self.webviewNode_[apiMethod] = function(var_args) { 127 self.webviewNode_[apiMethod] = function(var_args) {
128 return self.browserPluginNode_[apiMethod].apply( 128 return $Function.apply(self.browserPluginNode_[apiMethod],
129 self.browserPluginNode_, arguments); 129 self.browserPluginNode_, arguments);
130 }; 130 };
131 }, this); 131 }, this);
132 this.setupExecuteCodeAPI_(); 132 this.setupExecuteCodeAPI_();
133 }; 133 };
134 134
135 /** 135 /**
136 * @private 136 * @private
137 */ 137 */
138 WebView.prototype.setupWebviewNodeProperties_ = function() { 138 WebView.prototype.setupWebviewNodeProperties_ = function() {
(...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 360
361 var self = this; 361 var self = this;
362 var validateCall = function() { 362 var validateCall = function() {
363 if (!self.browserPluginNode_.getGuestInstanceId()) { 363 if (!self.browserPluginNode_.getGuestInstanceId()) {
364 throw new Error(ERROR_MSG_CANNOT_INJECT_SCRIPT); 364 throw new Error(ERROR_MSG_CANNOT_INJECT_SCRIPT);
365 } 365 }
366 }; 366 };
367 367
368 this.webviewNode_['executeScript'] = function(var_args) { 368 this.webviewNode_['executeScript'] = function(var_args) {
369 validateCall(); 369 validateCall();
370 var args = [self.browserPluginNode_.getGuestInstanceId()].concat( 370 var args = $Array.concat([self.browserPluginNode_.getGuestInstanceId()],
371 Array.prototype.slice.call(arguments)); 371 $Array.slice(arguments));
372 chrome.webview.executeScript.apply(null, args); 372 $Function.apply(chrome.webview.executeScript, null, args);
373 } 373 }
374 this.webviewNode_['insertCSS'] = function(var_args) { 374 this.webviewNode_['insertCSS'] = function(var_args) {
375 validateCall(); 375 validateCall();
376 var args = [self.browserPluginNode_.getGuestInstanceId()].concat( 376 var args = $Array.concat([self.browserPluginNode_.getGuestInstanceId()],
377 Array.prototype.slice.call(arguments)); 377 $Array.slice(arguments));
378 chrome.webview.insertCSS.apply(null, args); 378 $Function.apply(chrome.webview.insertCSS, null, args);
379 } 379 }
380 }; 380 };
381 381
382 /** 382 /**
383 * Implemented when the experimental API is available. 383 * Implemented when the experimental API is available.
384 * @private 384 * @private
385 */ 385 */
386 WebView.prototype.maybeSetupExperimentalAPI_ = function() {}; 386 WebView.prototype.maybeSetupExperimentalAPI_ = function() {};
387 387
388 exports.WebView = WebView; 388 exports.WebView = WebView;
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698