12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106 |
- diff --git b/third_party/closure_compiler/externs/chrome.js a/third_party/closure_compiler/externs/chrome.js
- index 54cf6b1a2bcc..0619bdce01a4 100644
- --- b/third_party/closure_compiler/externs/chrome.js
- +++ a/third_party/closure_compiler/externs/chrome.js
- @@ -562,51 +562,6 @@ chrome.webstore.onInstallStageChanged;
- chrome.webstore.onDownloadProgress;
-
-
- -/**
- - * @see https://developer.chrome.com/extensions/runtime.html
- - * @const
- - */
- -chrome.runtime = {};
- -
- -
- -/** @type {{message:(string|undefined)}|undefined} */
- -chrome.runtime.lastError;
- -
- -
- -/**
- - * @param {string|!Object=} opt_extensionIdOrConnectInfo Either the
- - * extensionId to connect to, in which case connectInfo params can be
- - * passed in the next optional argument, or the connectInfo params.
- - * @param {!Object=} opt_connectInfo The connectInfo object,
- - * if arg1 was the extensionId to connect to.
- - * @return {!Port} New port.
- - */
- -chrome.runtime.connect = function(
- - opt_extensionIdOrConnectInfo, opt_connectInfo) {};
- -
- -
- -/**
- - * @param {string|*} extensionIdOrMessage Either the extensionId to send the
- - * message to, in which case the message is passed as the next arg, or the
- - * message itself.
- - * @param {(*|!Object|function(*): void)=} opt_messageOrOptsOrCallback
- - * One of:
- - * The message, if arg1 was the extensionId.
- - * The options for message sending, if arg1 was the message and this
- - * argument is not a function.
- - * The callback, if arg1 was the message and this argument is a function.
- - * @param {(!Object|function(*): void)=} opt_optsOrCallback
- - * Either the options for message sending, if arg2 was the message,
- - * or the callback.
- - * @param {function(*): void=} opt_callback The callback function which
- - * takes a JSON response object sent by the handler of the request.
- - * @return {undefined}
- - */
- -chrome.runtime.sendMessage = function(
- - extensionIdOrMessage, opt_messageOrOptsOrCallback, opt_optsOrCallback,
- - opt_callback) {};
- -
- -
- /**
- * Returns an object representing current load times. Note that the properties
- * on the object do not change and the function must be called again to get
- diff --git b/third_party/closure_compiler/externs/chrome_extensions.js a/third_party/closure_compiler/externs/chrome_extensions.js
- index 41b2f5b485c7..7110aaf8f223 100644
- --- b/third_party/closure_compiler/externs/chrome_extensions.js
- +++ a/third_party/closure_compiler/externs/chrome_extensions.js
- @@ -233,72 +233,6 @@ if (Math.random() < 1) { // always true but the compiler doesn't know that
- }
-
-
- -/**
- - * @see https://developer.chrome.com/extensions/accessibilityFeatures
- - * @const
- - */
- -chrome.accessibilityFeatures = {};
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.spokenFeedback;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.largeCursor;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.stickyKeys;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.highContrast;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.screenMagnifier;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.autoclick;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.virtualKeyboard;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.caretHighlight;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.cursorHighlight;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.cursorColor;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.dockedMagnifier;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.focusHighlight;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.selectToSpeak;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.switchAccess;
- -
- -
- -/** @type {!ChromeSetting} */
- -chrome.accessibilityFeatures.animationPolicy;
- -
-
- /**
- * @const
- @@ -2557,6 +2491,49 @@ chrome.extension.onRequest;
- /** @type {!ChromeEvent} */
- chrome.extension.onRequestExternal;
-
- +/**
- + * @see https://developer.chrome.com/extensions/runtime.html
- + * @const
- + */
- +chrome.runtime = {};
- +
- +
- +/** @type {{message:(string|undefined)}|undefined} */
- +chrome.runtime.lastError;
- +
- +
- +/**
- + * @param {string|!Object=} opt_extensionIdOrConnectInfo Either the
- + * extensionId to connect to, in which case connectInfo params can be
- + * passed in the next optional argument, or the connectInfo params.
- + * @param {!Object=} opt_connectInfo The connectInfo object,
- + * if arg1 was the extensionId to connect to.
- + * @return {!Port} New port.
- + */
- +chrome.runtime.connect = function(
- + opt_extensionIdOrConnectInfo, opt_connectInfo) {};
- +
- +
- +/**
- + * @param {string|*} extensionIdOrMessage Either the extensionId to send the
- + * message to, in which case the message is passed as the next arg, or the
- + * message itself.
- + * @param {(*|!Object|function(*): void)=} opt_messageOrOptsOrCallback
- + * One of:
- + * The message, if arg1 was the extensionId.
- + * The options for message sending, if arg1 was the message and this
- + * argument is not a function.
- + * The callback, if arg1 was the message and this argument is a function.
- + * @param {(!Object|function(*): void)=} opt_optsOrCallback
- + * Either the options for message sending, if arg2 was the message,
- + * or the callback.
- + * @param {function(*): void=} opt_callback The callback function which
- + * takes a JSON response object sent by the handler of the request.
- + * @return {undefined}
- + */
- +chrome.runtime.sendMessage = function(
- + extensionIdOrMessage, opt_messageOrOptsOrCallback, opt_optsOrCallback,
- + opt_callback) {};
-
-
- /** @type {string} */
- @@ -4380,151 +4357,6 @@ chrome.idle.getAutoLockDelay = function(callback) {};
- chrome.idle.onStateChanged;
-
-
- -/**
- - * Chrome Text-to-Speech API.
- - * @const
- - * @see https://developer.chrome.com/extensions/tts.html
- - */
- -chrome.tts = {};
- -
- -
- -
- -/**
- - * An event from the TTS engine to communicate the status of an utterance.
- - * @constructor
- - */
- -function TtsEvent() {}
- -
- -
- -/** @type {string} */
- -TtsEvent.prototype.type;
- -
- -
- -/** @type {number} */
- -TtsEvent.prototype.charIndex;
- -
- -
- -/** @type {string} */
- -TtsEvent.prototype.errorMessage;
- -
- -
- -/**
- - * The speech options for the TTS engine.
- - * @record
- - * @see https://developer.chrome.com/apps/tts#type-TtsOptions
- - */
- -function TtsOptions() {}
- -
- -/** @type {boolean|undefined} */
- -TtsOptions.prototype.enqueue;
- -
- -/** @type {string|undefined} */
- -TtsOptions.prototype.voiceName;
- -
- -/** @type {string|undefined} */
- -TtsOptions.prototype.extensionId;
- -
- -/** @type {string|undefined} */
- -TtsOptions.prototype.lang;
- -
- -/** @type {number|undefined} */
- -TtsOptions.prototype.rate;
- -
- -/** @type {number|undefined} */
- -TtsOptions.prototype.pitch;
- -
- -/** @type {number|undefined} */
- -TtsOptions.prototype.volume;
- -
- -/** @type {!Array<string>|undefined} */
- -TtsOptions.prototype.requiredEventTypes;
- -
- -/** @type {!Array<string>|undefined} */
- -TtsOptions.prototype.desiredEventTypes;
- -
- -/** @type {!function(!TtsEvent)|undefined} */
- -TtsOptions.prototype.onEvent;
- -
- -
- -/**
- - * A description of a voice available for speech synthesis.
- - * @constructor
- - */
- -function TtsVoice() {}
- -
- -
- -/** @type {string} */
- -TtsVoice.prototype.voiceName;
- -
- -
- -/** @type {string} */
- -TtsVoice.prototype.lang;
- -
- -
- -/** @type {string} */
- -TtsVoice.prototype.gender;
- -
- -
- -/** @type {string} */
- -TtsVoice.prototype.extensionId;
- -
- -
- -/** @type {Array<string>} */
- -TtsVoice.prototype.eventTypes;
- -
- -
- -/**
- - * Gets an array of all available voices.
- - * @param {function(Array<TtsVoice>)=} opt_callback An optional callback
- - * function.
- - * @return {undefined}
- - */
- -chrome.tts.getVoices = function(opt_callback) {};
- -
- -
- -/**
- - * Checks if the engine is currently speaking.
- - * @param {function(boolean)=} opt_callback The callback function.
- - * @return {undefined}
- - */
- -chrome.tts.isSpeaking = function(opt_callback) {};
- -
- -
- -/**
- - * Speaks text using a text-to-speech engine.
- - * @param {string} utterance The text to speak, either plain text or a complete,
- - * well-formed SSML document. Speech engines that do not support SSML will
- - * strip away the tags and speak the text. The maximum length of the text is
- - * 32,768 characters.
- - * @param {TtsOptions=} options The speech options.
- - * @param {function()=} callback Called right away, before speech finishes.
- - * @return {undefined}
- - */
- -chrome.tts.speak = function(utterance, options, callback) {};
- -
- -
- -/**
- - * Stops any current speech.
- - * @return {undefined}
- - */
- -chrome.tts.stop = function() {};
- -
- -
- -/**
- - * @const
- - * @see https://developer.chrome.com/extensions/ttsEngine.html
- - */
- -chrome.ttsEngine = {};
- -
- -
- -/** @type {!ChromeEvent} */
- -chrome.ttsEngine.onSpeak;
- -
- -
- -/** @type {!ChromeEvent} */
- -chrome.ttsEngine.onStop;
- -
- -
- /**
- * @const
- * @see https://developer.chrome.com/extensions/contentSettings.html
- @@ -8474,642 +8306,6 @@ chrome.fileSystem.requestFileSystem = function(options, callback) {};
- chrome.fileSystem.getVolumeList = function(callback) {};
-
-
- -/**
- - * @const
- - * @see https://developer.chrome.com/extensions/fileSystemProvider
- - */
- -chrome.fileSystemProvider = {};
- -
- -
- -/**
- - * @enum {string}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-ChangeType
- - */
- -chrome.fileSystemProvider.ChangeType = {
- - CHANGED: '',
- - DELETED: '',
- -};
- -
- -
- -/**
- - * @enum {string}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-CommonActionId
- - */
- -chrome.fileSystemProvider.CommonActionId = {
- - OFFLINE_NOT_NECESSARY: '',
- - SAVE_FOR_OFFLINE: '',
- - SHARE: '',
- -};
- -
- -
- -/**
- - * @enum {string}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-OpenFileMode
- - */
- -chrome.fileSystemProvider.OpenFileMode = {
- - READ: '',
- - WRITE: '',
- -};
- -
- -
- -/**
- - * @enum {string}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-ProviderError
- - */
- -chrome.fileSystemProvider.ProviderError = {
- - ABORT: '',
- - ACCESS_DENIED: '',
- - EXISTS: '',
- - FAILED: '',
- - INVALID_OPERATION: '',
- - INVALID_URL: '',
- - IN_USE: '',
- - IO: '',
- - NOT_A_DIRECTORY: '',
- - NOT_A_FILE: '',
- - NOT_EMPTY: '',
- - NOT_FOUND: '',
- - NO_MEMORY: '',
- - NO_SPACE: '',
- - OK: '',
- - SECURITY: '',
- - TOO_MANY_OPENED: '',
- -};
- -
- -
- -/**
- - * @constructor
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-EntryMetadata
- - */
- -chrome.fileSystemProvider.EntryMetadata = function() {};
- -
- -
- -/** @type {boolean|undefined} */
- -chrome.fileSystemProvider.EntryMetadata.prototype.isDirectory;
- -
- -
- -/** @type {string|undefined} */
- -chrome.fileSystemProvider.EntryMetadata.prototype.name;
- -
- -
- -/** @type {number|undefined} */
- -chrome.fileSystemProvider.EntryMetadata.prototype.size;
- -
- -
- -/** @type {!Date|undefined} */
- -chrome.fileSystemProvider.EntryMetadata.prototype.modificationTime;
- -
- -
- -/** @type {string|undefined} */
- -chrome.fileSystemProvider.EntryMetadata.prototype.mimeType;
- -
- -
- -/** @type {string|undefined} */
- -chrome.fileSystemProvider.EntryMetadata.prototype.thumbnail;
- -
- -
- -/**
- - * @constructor
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-FileSystemInfo
- - */
- -chrome.fileSystemProvider.FileSystemInfo = function() {};
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.fileSystemId;
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.displayName;
- -
- -
- -/** @type {boolean} */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.writable;
- -
- -
- -/** @type {number} */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.openedFilesLimit;
- -
- -
- -/**
- - * @type {!Array<{
- - * openRequestId: number,
- - * filePath: string,
- - * mode: !chrome.fileSystemProvider.OpenFileMode,
- - * }>}
- - */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.openedFiles;
- -
- -
- -/** @type {boolean|undefined} */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.supportsNotifyTag;
- -
- -
- -/**
- - * @type {!Array<!{
- - * entryPath: string,
- - * recursive: boolean,
- - * lastTag: (string|undefined),
- - * }>}
- - */
- -chrome.fileSystemProvider.FileSystemInfo.prototype.watchers;
- -
- -
- -/**
- - * @param {string} fileSystemId
- - * @param {function(!chrome.fileSystemProvider.FileSystemInfo): void} callback
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-get
- - */
- -chrome.fileSystemProvider.get = function(fileSystemId, callback) {};
- -
- -
- -/**
- - * @param {function(!Array<!chrome.fileSystemProvider.FileSystemInfo>): void}
- - * callback
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-getAll
- - */
- -chrome.fileSystemProvider.getAll = function(callback) {};
- -
- -
- -/**
- - * @record
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-mount
- - */
- -chrome.fileSystemProvider.MountOptions;
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.MountOptions.prototype.fileSystemId;
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.MountOptions.prototype.displayName;
- -
- -
- -/** @type {boolean|undefined} */
- -chrome.fileSystemProvider.MountOptions.prototype.writable;
- -
- -
- -/** @type {number|undefined} */
- -chrome.fileSystemProvider.MountOptions.prototype.openedFilesLimit;
- -
- -
- -/** @type {boolean|undefined} */
- -chrome.fileSystemProvider.MountOptions.prototype.supportsNotifyTag;
- -
- -
- -/** @type {boolean|undefined} */
- -chrome.fileSystemProvider.MountOptions.prototype.persistent;
- -
- -
- -/**
- - * @param {!chrome.fileSystemProvider.MountOptions} options
- - * @param {function(): void=} callback
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-mount
- - */
- -chrome.fileSystemProvider.mount = function(options, callback) {};
- -
- -
- -/**
- - * @record
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-notify
- - */
- -chrome.fileSystemProvider.NotifyOptions;
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.NotifyOptions.prototype.fileSystemId;
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.NotifyOptions.prototype.observedPath;
- -
- -
- -/** @type {boolean} */
- -chrome.fileSystemProvider.NotifyOptions.prototype.recursive;
- -
- -
- -/** @type {!chrome.fileSystemProvider.ChangeType} */
- -chrome.fileSystemProvider.NotifyOptions.prototype.changeType;
- -
- -
- -/**
- - * @type {!Array<{
- - * entryPath: string,
- - * changeType: !chrome.fileSystemProvider.ChangeType,
- - * }>|undefined}
- - */
- -chrome.fileSystemProvider.NotifyOptions.prototype.changes;
- -
- -
- -/** @type {string|undefined} */
- -chrome.fileSystemProvider.NotifyOptions.prototype.tag;
- -
- -
- -/**
- - * @param {!chrome.fileSystemProvider.NotifyOptions} options
- - * @param {function(): void=} callback
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-notify
- - */
- -chrome.fileSystemProvider.notify = function(options, callback) {};
- -
- -
- -/**
- - * @record
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-unmount
- - */
- -chrome.fileSystemProvider.UnmountOptions;
- -
- -
- -/** @type {string} */
- -chrome.fileSystemProvider.UnmountOptions.prototype.fileSystemId;
- -
- -
- -/**
- - * @param {!chrome.fileSystemProvider.UnmountOptions} options
- - * @param {function(): void=} callback
- - */
- -chrome.fileSystemProvider.unmount = function(options, callback) {};
- -
- -/**
- - * FSP events that don't "return" values to the caller via onSuccess.
- - *
- - * @interface
- - * @template T
- - * @extends {ChromeBaseEvent<function(
- - * T,
- - * function(): void,
- - * function(!chrome.fileSystemProvider.ProviderError): void
- - * )>}
- - */
- -chrome.fileSystemProvider.VoidBaseEvent;
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * operationRequestId: number,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onAbortRequested
- - */
- -chrome.fileSystemProvider.AbortRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.AbortRequestedEvent} */
- -chrome.fileSystemProvider.onAbortRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * entryPath: string,
- - * recursive: boolean,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onAddWatcherRequested
- - */
- -chrome.fileSystemProvider.AddWatcherRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.AddWatcherRequestedEvent} */
- -chrome.fileSystemProvider.onAddWatcherRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * openRequestId: number,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCloseFileRequested
- - */
- -chrome.fileSystemProvider.CloseFileRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.CloseFileRequestedEvent} */
- -chrome.fileSystemProvider.onCloseFileRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onConfigureRequested
- - */
- -chrome.fileSystemProvider.ConfigureRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.ConfigureRequestedEvent} */
- -chrome.fileSystemProvider.onConfigureRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * sourcePath: string,
- - * targetPath: string,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCopyEntryRequested
- - */
- -chrome.fileSystemProvider.CopyEntryRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.CopyEntryRequestedEvent} */
- -chrome.fileSystemProvider.onCopyEntryRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * directoryPath: string,
- - * recursive: boolean,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCreateDirectoryRequested
- - */
- -chrome.fileSystemProvider.CreateDirectoryRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.CreateDirectoryRequestedEvent} */
- -chrome.fileSystemProvider.onCreateDirectoryRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * filePath: string,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCreateFileRequested
- - */
- -chrome.fileSystemProvider.CreateFileRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.CreateFileRequestedEvent} */
- -chrome.fileSystemProvider.onCreateFileRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * entryPath: string,
- - * recursive: boolean,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onDeleteEntryRequested
- - */
- -chrome.fileSystemProvider.DeleteEntryRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.DeleteEntryRequestedEvent} */
- -chrome.fileSystemProvider.onDeleteEntryRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * entryPaths: !Array<string>,
- - * actionId: string,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onExecuteActionRequested
- - */
- -chrome.fileSystemProvider.ExecuteActionRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.ExecuteActionRequestedEvent} */
- -chrome.fileSystemProvider.onExecuteActionRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {ChromeBaseEvent<function(
- - * {
- - * fileSystemId: string,
- - * requestId: number,
- - * entryPaths: !Array<string>,
- - * },
- - * function(
- - * !Array<!{
- - * id: (string|chrome.fileSystemProvider.CommonActionId),
- - * title: (string|undefined),
- - * }>
- - * ): void,
- - * function(!chrome.fileSystemProvider.ProviderError): void
- - * )>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onGetActionsRequested
- - */
- -chrome.fileSystemProvider.GetActionsRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.GetActionsRequestedEvent} */
- -chrome.fileSystemProvider.onGetActionsRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {ChromeBaseEvent<function(
- - * {
- - * fileSystemId: string,
- - * requestId: number,
- - * entryPath: string,
- - * isDirectory: boolean,
- - * name: boolean,
- - * size: boolean,
- - * modificationTime: boolean,
- - * mimeType: boolean,
- - * thumbnail: boolean,
- - * },
- - * function(!chrome.fileSystemProvider.EntryMetadata): void,
- - * function(!chrome.fileSystemProvider.ProviderError): void
- - * )>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onGetMetadataRequested
- - */
- -chrome.fileSystemProvider.GetMetadataRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.GetMetadataRequestedEvent} */
- -chrome.fileSystemProvider.onGetMetadataRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {ChromeBaseEvent<function(
- - * function(): void,
- - * function(!chrome.fileSystemProvider.ProviderError): void
- - * )>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onMountRequested
- - */
- -chrome.fileSystemProvider.MountRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.MountRequestedEvent} */
- -chrome.fileSystemProvider.onMountRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * sourcePath: string,
- - * targetPath: string,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onMoveEntryRequested
- - */
- -chrome.fileSystemProvider.MoveEntryRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.MoveEntryRequestedEvent} */
- -chrome.fileSystemProvider.onMoveEntryRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * filePath: string,
- - * mode: chrome.fileSystemProvider.OpenFileMode,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onOpenFileRequested
- - */
- -chrome.fileSystemProvider.OpenFileRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.OpenFileRequestedEvent} */
- -chrome.fileSystemProvider.onOpenFileRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {ChromeBaseEvent<function(
- - * {
- - * fileSystemId: string,
- - * requestId: number,
- - * directoryPath: string,
- - * isDirectory: boolean,
- - * name: boolean,
- - * size: boolean,
- - * modificationTime: boolean,
- - * mimeType: boolean,
- - * thumbnail: boolean,
- - * },
- - * function(
- - * !Array<!chrome.fileSystemProvider.EntryMetadata>,
- - * boolean
- - * ): void,
- - * function(!chrome.fileSystemProvider.ProviderError): void
- - * )>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onReadDirectoryRequested
- - */
- -chrome.fileSystemProvider.ReadDirectoryRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.ReadDirectoryRequestedEvent} */
- -chrome.fileSystemProvider.onReadDirectoryRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {ChromeBaseEvent<function(
- - * {
- - * fileSystemId: string,
- - * requestId: number,
- - * openRequestId: number,
- - * offset: number,
- - * length: number,
- - * },
- - * function(!ArrayBuffer, boolean): void,
- - * function(!chrome.fileSystemProvider.ProviderError): void
- - * )>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onReadFileRequested
- - */
- -chrome.fileSystemProvider.ReadFileRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.ReadFileRequestedEvent} */
- -chrome.fileSystemProvider.onReadFileRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * entryPath: string,
- - * recursive: boolean,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onRemoveWatcherRequested
- - */
- -chrome.fileSystemProvider.RemoveWatcherRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.RemoveWatcherRequestedEvent} */
- -chrome.fileSystemProvider.onRemoveWatcherRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * filePath: string,
- - * length: number,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onTruncateRequested
- - */
- -chrome.fileSystemProvider.TruncateRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.TruncateRequestedEvent} */
- -chrome.fileSystemProvider.onTruncateRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onUnmountRequested
- - */
- -chrome.fileSystemProvider.UnmountRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.UnmountRequestedEvent} */
- -chrome.fileSystemProvider.onUnmountRequested;
- -
- -
- -/**
- - * @interface
- - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
- - * fileSystemId: string,
- - * requestId: number,
- - * openRequestId: number,
- - * offset: number,
- - * data: !ArrayBuffer,
- - * }>}
- - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onWriteFileRequested
- - */
- -chrome.fileSystemProvider.WriteFileRequestedEvent;
- -
- -
- -/** @type {!chrome.fileSystemProvider.WriteFileRequestedEvent} */
- -chrome.fileSystemProvider.onWriteFileRequested;
- -
- -
- /**
- * @const
- * @see https://developer.chrome.com/apps/syncFileSystem
- diff --git a/third_party/closure_compiler/externs/chrome_extensions.js b/third_party/closure_compiler/externs/chrome_extensions.js
- index bd0fd2e51a3bb..12be61c3f581c 100644
- --- a/third_party/closure_compiler/externs/chrome_extensions.js
- +++ b/third_party/closure_compiler/externs/chrome_extensions.js
- @@ -10607,122 +10607,6 @@ chrome.inlineInstallPrivate = {};
- chrome.inlineInstallPrivate.install = function(id, opt_callback) {};
-
-
- -/**
- - * @see https://cs.chromium.org/chromium/src/chrome/common/extensions/api/input_method_private.json
- - */
- -chrome.inputMethodPrivate = {};
- -
- -/**
- - * @enum {string}
- - */
- -chrome.inputMethodPrivate.InputModeType = {
- - NO_KEYBOARD: '',
- - TEXT: '',
- - TEL: '',
- - URL: '',
- - EMAIL: '',
- - NUMERIC: '',
- - DECIMAL: '',
- - SEARCH: '',
- -};
- -
- -
- -/**
- - * @enum {string}
- - */
- -chrome.inputMethodPrivate.InputContextType = {
- - TEXT: '',
- - SEARCH: '',
- - TEL: '',
- - URL: '',
- - EMAIL: '',
- - NUMBER: '',
- - PASSWORD: '',
- -};
- -
- -
- -/**
- - * @enum {string}
- - */
- -chrome.inputMethodPrivate.AutoCapitalizeType = {
- - OFF: '',
- - CHARACTERS: '',
- - WORDS: '',
- - SENTENCES: '',
- -};
- -
- -
- -/**
- - * @enum {string}
- - */
- -chrome.inputMethodPrivate.FocusReason = {
- - MOUSE: '',
- - TOUCH: '',
- - PEN: '',
- - OTHER: '',
- -};
- -
- -
- -/** @constructor */
- -chrome.inputMethodPrivate.InputContext = function() {};
- -
- -
- -/** @type {number} */
- -chrome.inputMethodPrivate.InputContext.prototype.contextID;
- -
- -/** @type {chrome.inputMethodPrivate.InputModeType} */
- -chrome.inputMethodPrivate.InputContext.prototype.mode;
- -
- -/** @type {chrome.inputMethodPrivate.InputContextType} */
- -chrome.inputMethodPrivate.InputContext.prototype.type;
- -
- -
- -/** @type {boolean} */
- -chrome.inputMethodPrivate.InputContext.prototype.autoCorrect;
- -
- -
- -/** @type {boolean} */
- -chrome.inputMethodPrivate.InputContext.prototype.autoComplete;
- -
- -
- -/** @type {chrome.inputMethodPrivate.AutoCapitalizeType} */
- -chrome.inputMethodPrivate.InputContext.prototype.autoCapitalize;
- -
- -
- -/** @type {boolean} */
- -chrome.inputMethodPrivate.InputContext.prototype.spellCheck;
- -
- -
- -/** @type {boolean} */
- -chrome.inputMethodPrivate.InputContext.prototype.shouldDoLearning;
- -
- -
- -/** @type {chrome.inputMethodPrivate.FocusReason} */
- -chrome.inputMethodPrivate.InputContext.prototype.focusReason;
- -
- -
- -/** @type {boolean} */
- -chrome.inputMethodPrivate.InputContext.prototype.hasBeenPassword;
- -
- -
- -/**
- - * Commits the text currently being composed without moving the selected text
- - * range. This is a no-op if the context is incorrect.
- - * @param {{
- - * contextID: number
- - * }} parameters Parameters for the finishComposingText API call.
- - * @param {function(): void=} callback Called when the operation completes.
- - */
- -chrome.inputMethodPrivate.finishComposingText = function(
- - parameters, callback) {};
- -
- -
- -/**
- - * Resets the current engine to its initial state. Fires an OnReset event.
- - */
- -chrome.inputMethodPrivate.reset = function() {};
- -
- -
- /**
- * @const
- * @see https://goo.gl/7dvJFW
|