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

Side by Side Diff: extensions/renderer/resources/guest_view/web_view_events.js

Issue 715583007: Various webview cleanup. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 // Event management for WebView. 5 // Event management for WebView.
6 6
7 var DeclarativeWebRequestSchema = 7 var DeclarativeWebRequestSchema =
8 requireNative('schema_registry').GetSchema('declarativeWebRequest'); 8 requireNative('schema_registry').GetSchema('declarativeWebRequest');
9 var EventBindings = require('event_bindings'); 9 var EventBindings = require('event_bindings');
10 var IdGenerator = requireNative('id_generator'); 10 var IdGenerator = requireNative('id_generator');
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 this.permissionTypes = ['media', 184 this.permissionTypes = ['media',
185 'geolocation', 185 'geolocation',
186 'pointerLock', 186 'pointerLock',
187 'download', 187 'download',
188 'loadplugin', 188 'loadplugin',
189 'filesystem']; 189 'filesystem'];
190 190
191 // Set up the events. 191 // Set up the events.
192 this.setupFrameNameChangedEvent(); 192 this.setupFrameNameChangedEvent();
193 this.setupWebRequestEvents(); 193 this.setupWebRequestEvents();
194 this.webViewImpl.setupExperimentalContextMenus();
195 var events = this.getEvents(); 194 var events = this.getEvents();
196 for (var eventName in events) { 195 for (var eventName in events) {
197 this.setupEvent(eventName, events[eventName]); 196 this.setupEvent(eventName, events[eventName]);
198 } 197 }
199 } 198 }
200 199
201 WebViewEvents.prototype.setupFrameNameChangedEvent = function() { 200 WebViewEvents.prototype.setupFrameNameChangedEvent = function() {
202 FrameNameChangedEvent.addListener(function(e) { 201 FrameNameChangedEvent.addListener(function(e) {
203 this.webViewImpl.onFrameNameChanged(e.name); 202 this.webViewImpl.onFrameNameChanged(e.name);
204 }.bind(this), {instanceId: this.viewInstanceId}); 203 }.bind(this), {instanceId: this.viewInstanceId});
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 get: webRequestEvent, 261 get: webRequestEvent,
263 enumerable: true 262 enumerable: true
264 } 263 }
265 ); 264 );
266 } 265 }
267 266
268 this.webViewImpl.setRequestPropertyOnWebViewNode(request); 267 this.webViewImpl.setRequestPropertyOnWebViewNode(request);
269 }; 268 };
270 269
271 WebViewEvents.prototype.getEvents = function() { 270 WebViewEvents.prototype.getEvents = function() {
272 var experimentalEvents = this.webViewImpl.maybeGetExperimentalEvents();
273 for (var eventName in experimentalEvents) {
274 WEB_VIEW_EVENTS[eventName] = experimentalEvents[eventName];
275 }
276 var chromeEvents = this.webViewImpl.maybeGetChromeWebViewEvents(); 271 var chromeEvents = this.webViewImpl.maybeGetChromeWebViewEvents();
277 for (var eventName in chromeEvents) { 272 for (var eventName in chromeEvents) {
278 WEB_VIEW_EVENTS[eventName] = chromeEvents[eventName]; 273 WEB_VIEW_EVENTS[eventName] = chromeEvents[eventName];
279 } 274 }
280 return WEB_VIEW_EVENTS; 275 return WEB_VIEW_EVENTS;
281 }; 276 };
282 277
283 WebViewEvents.prototype.setupEvent = function(name, info) { 278 WebViewEvents.prototype.setupEvent = function(name, info) {
284 info.evt.addListener(function(e) { 279 info.evt.addListener(function(e) {
285 var details = {bubbles: true}; 280 var details = {bubbles: true};
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 var ERROR_MSG_DIALOG_ACTION_ALREADY_TAKEN = '<webview>: ' + 315 var ERROR_MSG_DIALOG_ACTION_ALREADY_TAKEN = '<webview>: ' +
321 'An action has already been taken for this "dialog" event.'; 316 'An action has already been taken for this "dialog" event.';
322 317
323 if (actionTaken) { 318 if (actionTaken) {
324 throw new Error(ERROR_MSG_DIALOG_ACTION_ALREADY_TAKEN); 319 throw new Error(ERROR_MSG_DIALOG_ACTION_ALREADY_TAKEN);
325 } 320 }
326 actionTaken = true; 321 actionTaken = true;
327 }; 322 };
328 323
329 var getGuestInstanceId = function() { 324 var getGuestInstanceId = function() {
330 return this.webViewImpl.getGuestInstanceId(); 325 return this.webViewImpl.guestInstanceId;
331 }.bind(this); 326 }.bind(this);
332 327
333 var dialog = { 328 var dialog = {
334 ok: function(user_input) { 329 ok: function(user_input) {
335 validateCall(); 330 validateCall();
336 user_input = user_input || ''; 331 user_input = user_input || '';
337 WebViewInternal.setPermission(getGuestInstanceId(), requestId, 'allow', 332 WebViewInternal.setPermission(getGuestInstanceId(), requestId, 'allow',
338 user_input); 333 user_input);
339 }, 334 },
340 cancel: function() { 335 cancel: function() {
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
597 } 592 }
598 }; 593 };
599 594
600 WebViewEvents.prototype.handleSizeChangedEvent = function( 595 WebViewEvents.prototype.handleSizeChangedEvent = function(
601 event, webViewEvent) { 596 event, webViewEvent) {
602 this.webViewImpl.onSizeChanged(webViewEvent); 597 this.webViewImpl.onSizeChanged(webViewEvent);
603 }; 598 };
604 599
605 exports.WebViewEvents = WebViewEvents; 600 exports.WebViewEvents = WebViewEvents;
606 exports.CreateEvent = CreateEvent; 601 exports.CreateEvent = CreateEvent;
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698