| OLD | NEW |
| 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 // This module implements Webview (<webview>) as a custom element that wraps a | 5 // This module implements Webview (<webview>) as a custom element that wraps a |
| 6 // BrowserPlugin object element. The object element is hidden within | 6 // BrowserPlugin object element. The object element is hidden within |
| 7 // the shadow DOM of the Webview element. | 7 // the shadow DOM of the Webview element. |
| 8 | 8 |
| 9 var DocumentNatives = requireNative('document_natives'); | 9 var DocumentNatives = requireNative('document_natives'); |
| 10 var GuestViewInternal = | 10 var GuestViewInternal = |
| 11 require('binding').Binding.create('guestViewInternal').generate(); | 11 require('binding').Binding.create('guestViewInternal').generate(); |
| 12 var IdGenerator = requireNative('id_generator'); | 12 var IdGenerator = requireNative('id_generator'); |
| 13 var ChromeWebView = require('chromeWebViewInternal').ChromeWebView | |
| 14 // TODO(lazyboy): Rename this to WebViewInternal and call WebViewInternal | 13 // TODO(lazyboy): Rename this to WebViewInternal and call WebViewInternal |
| 15 // something else. | 14 // something else. |
| 16 var WebView = require('webViewInternal').WebView; | 15 var WebView = require('webViewInternal').WebView; |
| 17 var WebViewEvents = require('webViewEvents').WebViewEvents; | 16 var WebViewEvents = require('webViewEvents').WebViewEvents; |
| 18 var guestViewInternalNatives = requireNative('guest_view_internal'); | 17 var guestViewInternalNatives = requireNative('guest_view_internal'); |
| 19 | 18 |
| 20 var WEB_VIEW_ATTRIBUTE_AUTOSIZE = 'autosize'; | 19 var WEB_VIEW_ATTRIBUTE_AUTOSIZE = 'autosize'; |
| 21 var WEB_VIEW_ATTRIBUTE_MAXHEIGHT = 'maxheight'; | 20 var WEB_VIEW_ATTRIBUTE_MAXHEIGHT = 'maxheight'; |
| 22 var WEB_VIEW_ATTRIBUTE_MAXWIDTH = 'maxwidth'; | 21 var WEB_VIEW_ATTRIBUTE_MAXWIDTH = 'maxwidth'; |
| 23 var WEB_VIEW_ATTRIBUTE_MINHEIGHT = 'minheight'; | 22 var WEB_VIEW_ATTRIBUTE_MINHEIGHT = 'minheight'; |
| (...skipping 981 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1005 window.addEventListener('readystatechange', function listener(event) { | 1004 window.addEventListener('readystatechange', function listener(event) { |
| 1006 if (document.readyState == 'loading') | 1005 if (document.readyState == 'loading') |
| 1007 return; | 1006 return; |
| 1008 | 1007 |
| 1009 registerBrowserPluginElement(); | 1008 registerBrowserPluginElement(); |
| 1010 registerWebViewElement(); | 1009 registerWebViewElement(); |
| 1011 window.removeEventListener(event.type, listener, useCapture); | 1010 window.removeEventListener(event.type, listener, useCapture); |
| 1012 }, useCapture); | 1011 }, useCapture); |
| 1013 | 1012 |
| 1014 /** | 1013 /** |
| 1014 * Implemented when the ChromeWebView API is available. |
| 1015 * @private |
| 1016 */ |
| 1017 WebViewInternal.prototype.maybeGetChromeWebViewEvents = function() {}; |
| 1018 |
| 1019 /** |
| 1015 * Implemented when the experimental API is available. | 1020 * Implemented when the experimental API is available. |
| 1016 * @private | 1021 * @private |
| 1017 */ | 1022 */ |
| 1018 WebViewInternal.prototype.maybeGetExperimentalEvents = function() {}; | 1023 WebViewInternal.prototype.maybeGetExperimentalEvents = function() {}; |
| 1019 | 1024 |
| 1020 /** | 1025 /** |
| 1021 * Implemented when the experimental API is available. | 1026 * Implemented when the experimental API is available. |
| 1022 * @private | 1027 * @private |
| 1023 */ | 1028 */ |
| 1024 WebViewInternal.prototype.maybeGetExperimentalPermissions = function() { | 1029 WebViewInternal.prototype.maybeGetExperimentalPermissions = function() { |
| 1025 return []; | 1030 return []; |
| 1026 }; | 1031 }; |
| 1027 | 1032 |
| 1028 /** | 1033 /** |
| 1029 * Calls to show contextmenu right away instead of dispatching a 'contextmenu' | |
| 1030 * event. | |
| 1031 * This will be overridden in web_view_experimental.js to implement contextmenu | |
| 1032 * API. | |
| 1033 */ | |
| 1034 WebViewInternal.prototype.maybeHandleContextMenu = function(e, webViewEvent) { | |
| 1035 var requestId = e.requestId; | |
| 1036 // Setting |params| = undefined will show the context menu unmodified, hence | |
| 1037 // the 'contextmenu' API is disabled for stable channel. | |
| 1038 var params = undefined; | |
| 1039 ChromeWebView.showContextMenu(this.guestInstanceId, requestId, params); | |
| 1040 }; | |
| 1041 | |
| 1042 /** | |
| 1043 * Implemented when the experimental API is available. | 1034 * Implemented when the experimental API is available. |
| 1044 * @private | 1035 * @private |
| 1045 */ | 1036 */ |
| 1046 WebViewInternal.prototype.setupExperimentalContextMenus = function() {}; | 1037 WebViewInternal.prototype.setupExperimentalContextMenus = function() { |
| 1038 }; |
| 1047 | 1039 |
| 1048 exports.WebView = WebView; | 1040 exports.WebView = WebView; |
| 1049 exports.WebViewInternal = WebViewInternal; | 1041 exports.WebViewInternal = WebViewInternal; |
| OLD | NEW |