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

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

Issue 414803003: <webview>: Move Find API to Stable (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 5 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
« no previous file with comments | « chrome/renderer/resources/extensions/web_view_events.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 experimental API for <webview>. 5 // This module implements experimental API for <webview>.
6 // See web_view.js for details. 6 // See web_view.js for details.
7 // 7 //
8 // <webview> Experimental API is only available on canary and dev channels of 8 // <webview> Experimental API is only available on canary and dev channels of
9 // Chrome. 9 // Chrome.
10 10
(...skipping 17 matching lines...) Expand all
28 // accessible to <webview> developers. 28 // accessible to <webview> developers.
29 // |customHandler| allows a handler function to be called each time an extension 29 // |customHandler| allows a handler function to be called each time an extension
30 // event is caught by its event listener. The DOM event should be dispatched 30 // event is caught by its event listener. The DOM event should be dispatched
31 // within this handler function. With no handler function, the DOM event 31 // within this handler function. With no handler function, the DOM event
32 // will be dispatched by default each time the extension event is caught. 32 // will be dispatched by default each time the extension event is caught.
33 // |cancelable| (default: false) specifies whether the event's default 33 // |cancelable| (default: false) specifies whether the event's default
34 // behavior can be canceled. If the default action associated with the event 34 // behavior can be canceled. If the default action associated with the event
35 // is prevented, then its dispatch function will return false in its event 35 // is prevented, then its dispatch function will return false in its event
36 // handler. The event must have a custom handler for this to be meaningful. 36 // handler. The event must have a custom handler for this to be meaningful.
37 var WEB_VIEW_EXPERIMENTAL_EVENTS = { 37 var WEB_VIEW_EXPERIMENTAL_EVENTS = {
38 'findupdate': {
39 evt: CreateEvent('webViewInternal.onFindReply'),
40 fields: [
41 'searchText',
42 'numberOfMatches',
43 'activeMatchOrdinal',
44 'selectionRect',
45 'canceled',
46 'finalUpdate'
47 ]
48 },
49 'zoomchange': { 38 'zoomchange': {
50 evt: CreateEvent('webViewInternal.onZoomChange'), 39 evt: CreateEvent('webViewInternal.onZoomChange'),
51 fields: ['oldZoomFactor', 'newZoomFactor'] 40 fields: ['oldZoomFactor', 'newZoomFactor']
52 } 41 }
53 }; 42 };
54 43
55 function GetUniqueSubEventName(eventName) { 44 function GetUniqueSubEventName(eventName) {
56 return eventName + "/" + idGeneratorNatives.GetNextId(); 45 return eventName + "/" + idGeneratorNatives.GetNextId();
57 } 46 }
58 47
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 return; 189 return;
201 } 190 }
202 WebView.getZoom(this.instanceId, callback); 191 WebView.getZoom(this.instanceId, callback);
203 }; 192 };
204 193
205 /** @private */ 194 /** @private */
206 WebViewInternal.prototype.captureVisibleRegion = function(spec, callback) { 195 WebViewInternal.prototype.captureVisibleRegion = function(spec, callback) {
207 WebView.captureVisibleRegion(this.instanceId, spec, callback); 196 WebView.captureVisibleRegion(this.instanceId, spec, callback);
208 }; 197 };
209 198
210 /** @private */
211 WebViewInternal.prototype.find = function(search_text, options, callback) {
212 if (!this.instanceId) {
213 return;
214 }
215 WebView.find(this.instanceId, search_text, options, callback);
216 };
217
218 /** @private */
219 WebViewInternal.prototype.stopFinding = function(action) {
220 if (!this.instanceId) {
221 return;
222 }
223 WebView.stopFinding(this.instanceId, action);
224 };
225
226 WebViewInternal.maybeRegisterExperimentalAPIs = function(proto) { 199 WebViewInternal.maybeRegisterExperimentalAPIs = function(proto) {
227 proto.setZoom = function(zoomFactor, callback) { 200 proto.setZoom = function(zoomFactor, callback) {
228 privates(this).internal.setZoom(zoomFactor, callback); 201 privates(this).internal.setZoom(zoomFactor, callback);
229 }; 202 };
230 203
231 proto.getZoom = function(callback) { 204 proto.getZoom = function(callback) {
232 return privates(this).internal.getZoom(callback); 205 return privates(this).internal.getZoom(callback);
233 }; 206 };
234 207
235 proto.captureVisibleRegion = function(spec, callback) { 208 proto.captureVisibleRegion = function(spec, callback) {
236 privates(this).internal.captureVisibleRegion(spec, callback); 209 privates(this).internal.captureVisibleRegion(spec, callback);
237 }; 210 };
238
239 proto.find = function(search_text, options, callback) {
240 privates(this).internal.find(search_text, options, callback);
241 };
242
243 proto.stopFinding = function(action) {
244 privates(this).internal.stopFinding(action);
245 };
246 }; 211 };
247 212
248 /** @private */ 213 /** @private */
249 WebViewInternal.prototype.setupExperimentalContextMenus = function() { 214 WebViewInternal.prototype.setupExperimentalContextMenus = function() {
250 var self = this; 215 var self = this;
251 var createContextMenus = function() { 216 var createContextMenus = function() {
252 return function() { 217 return function() {
253 if (self.contextMenus_) { 218 if (self.contextMenus_) {
254 return self.contextMenus_; 219 return self.contextMenus_;
255 } 220 }
(...skipping 27 matching lines...) Expand all
283 248
284 // Expose <webview>.contextMenus object. 249 // Expose <webview>.contextMenus object.
285 Object.defineProperty( 250 Object.defineProperty(
286 this.webviewNode, 251 this.webviewNode,
287 'contextMenus', 252 'contextMenus',
288 { 253 {
289 get: createContextMenus(), 254 get: createContextMenus(),
290 enumerable: true 255 enumerable: true
291 }); 256 });
292 }; 257 };
OLDNEW
« no previous file with comments | « chrome/renderer/resources/extensions/web_view_events.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698