chromium_patch.diff 28 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106
  1. diff --git b/third_party/closure_compiler/externs/chrome.js a/third_party/closure_compiler/externs/chrome.js
  2. index 54cf6b1a2bcc..0619bdce01a4 100644
  3. --- b/third_party/closure_compiler/externs/chrome.js
  4. +++ a/third_party/closure_compiler/externs/chrome.js
  5. @@ -562,51 +562,6 @@ chrome.webstore.onInstallStageChanged;
  6. chrome.webstore.onDownloadProgress;
  7. -/**
  8. - * @see https://developer.chrome.com/extensions/runtime.html
  9. - * @const
  10. - */
  11. -chrome.runtime = {};
  12. -
  13. -
  14. -/** @type {{message:(string|undefined)}|undefined} */
  15. -chrome.runtime.lastError;
  16. -
  17. -
  18. -/**
  19. - * @param {string|!Object=} opt_extensionIdOrConnectInfo Either the
  20. - * extensionId to connect to, in which case connectInfo params can be
  21. - * passed in the next optional argument, or the connectInfo params.
  22. - * @param {!Object=} opt_connectInfo The connectInfo object,
  23. - * if arg1 was the extensionId to connect to.
  24. - * @return {!Port} New port.
  25. - */
  26. -chrome.runtime.connect = function(
  27. - opt_extensionIdOrConnectInfo, opt_connectInfo) {};
  28. -
  29. -
  30. -/**
  31. - * @param {string|*} extensionIdOrMessage Either the extensionId to send the
  32. - * message to, in which case the message is passed as the next arg, or the
  33. - * message itself.
  34. - * @param {(*|!Object|function(*): void)=} opt_messageOrOptsOrCallback
  35. - * One of:
  36. - * The message, if arg1 was the extensionId.
  37. - * The options for message sending, if arg1 was the message and this
  38. - * argument is not a function.
  39. - * The callback, if arg1 was the message and this argument is a function.
  40. - * @param {(!Object|function(*): void)=} opt_optsOrCallback
  41. - * Either the options for message sending, if arg2 was the message,
  42. - * or the callback.
  43. - * @param {function(*): void=} opt_callback The callback function which
  44. - * takes a JSON response object sent by the handler of the request.
  45. - * @return {undefined}
  46. - */
  47. -chrome.runtime.sendMessage = function(
  48. - extensionIdOrMessage, opt_messageOrOptsOrCallback, opt_optsOrCallback,
  49. - opt_callback) {};
  50. -
  51. -
  52. /**
  53. * Returns an object representing current load times. Note that the properties
  54. * on the object do not change and the function must be called again to get
  55. diff --git b/third_party/closure_compiler/externs/chrome_extensions.js a/third_party/closure_compiler/externs/chrome_extensions.js
  56. index 41b2f5b485c7..7110aaf8f223 100644
  57. --- b/third_party/closure_compiler/externs/chrome_extensions.js
  58. +++ a/third_party/closure_compiler/externs/chrome_extensions.js
  59. @@ -233,72 +233,6 @@ if (Math.random() < 1) { // always true but the compiler doesn't know that
  60. }
  61. -/**
  62. - * @see https://developer.chrome.com/extensions/accessibilityFeatures
  63. - * @const
  64. - */
  65. -chrome.accessibilityFeatures = {};
  66. -
  67. -
  68. -/** @type {!ChromeSetting} */
  69. -chrome.accessibilityFeatures.spokenFeedback;
  70. -
  71. -
  72. -/** @type {!ChromeSetting} */
  73. -chrome.accessibilityFeatures.largeCursor;
  74. -
  75. -
  76. -/** @type {!ChromeSetting} */
  77. -chrome.accessibilityFeatures.stickyKeys;
  78. -
  79. -
  80. -/** @type {!ChromeSetting} */
  81. -chrome.accessibilityFeatures.highContrast;
  82. -
  83. -
  84. -/** @type {!ChromeSetting} */
  85. -chrome.accessibilityFeatures.screenMagnifier;
  86. -
  87. -
  88. -/** @type {!ChromeSetting} */
  89. -chrome.accessibilityFeatures.autoclick;
  90. -
  91. -
  92. -/** @type {!ChromeSetting} */
  93. -chrome.accessibilityFeatures.virtualKeyboard;
  94. -
  95. -
  96. -/** @type {!ChromeSetting} */
  97. -chrome.accessibilityFeatures.caretHighlight;
  98. -
  99. -
  100. -/** @type {!ChromeSetting} */
  101. -chrome.accessibilityFeatures.cursorHighlight;
  102. -
  103. -
  104. -/** @type {!ChromeSetting} */
  105. -chrome.accessibilityFeatures.cursorColor;
  106. -
  107. -
  108. -/** @type {!ChromeSetting} */
  109. -chrome.accessibilityFeatures.dockedMagnifier;
  110. -
  111. -
  112. -/** @type {!ChromeSetting} */
  113. -chrome.accessibilityFeatures.focusHighlight;
  114. -
  115. -
  116. -/** @type {!ChromeSetting} */
  117. -chrome.accessibilityFeatures.selectToSpeak;
  118. -
  119. -
  120. -/** @type {!ChromeSetting} */
  121. -chrome.accessibilityFeatures.switchAccess;
  122. -
  123. -
  124. -/** @type {!ChromeSetting} */
  125. -chrome.accessibilityFeatures.animationPolicy;
  126. -
  127. /**
  128. * @const
  129. @@ -2557,6 +2491,49 @@ chrome.extension.onRequest;
  130. /** @type {!ChromeEvent} */
  131. chrome.extension.onRequestExternal;
  132. +/**
  133. + * @see https://developer.chrome.com/extensions/runtime.html
  134. + * @const
  135. + */
  136. +chrome.runtime = {};
  137. +
  138. +
  139. +/** @type {{message:(string|undefined)}|undefined} */
  140. +chrome.runtime.lastError;
  141. +
  142. +
  143. +/**
  144. + * @param {string|!Object=} opt_extensionIdOrConnectInfo Either the
  145. + * extensionId to connect to, in which case connectInfo params can be
  146. + * passed in the next optional argument, or the connectInfo params.
  147. + * @param {!Object=} opt_connectInfo The connectInfo object,
  148. + * if arg1 was the extensionId to connect to.
  149. + * @return {!Port} New port.
  150. + */
  151. +chrome.runtime.connect = function(
  152. + opt_extensionIdOrConnectInfo, opt_connectInfo) {};
  153. +
  154. +
  155. +/**
  156. + * @param {string|*} extensionIdOrMessage Either the extensionId to send the
  157. + * message to, in which case the message is passed as the next arg, or the
  158. + * message itself.
  159. + * @param {(*|!Object|function(*): void)=} opt_messageOrOptsOrCallback
  160. + * One of:
  161. + * The message, if arg1 was the extensionId.
  162. + * The options for message sending, if arg1 was the message and this
  163. + * argument is not a function.
  164. + * The callback, if arg1 was the message and this argument is a function.
  165. + * @param {(!Object|function(*): void)=} opt_optsOrCallback
  166. + * Either the options for message sending, if arg2 was the message,
  167. + * or the callback.
  168. + * @param {function(*): void=} opt_callback The callback function which
  169. + * takes a JSON response object sent by the handler of the request.
  170. + * @return {undefined}
  171. + */
  172. +chrome.runtime.sendMessage = function(
  173. + extensionIdOrMessage, opt_messageOrOptsOrCallback, opt_optsOrCallback,
  174. + opt_callback) {};
  175. /** @type {string} */
  176. @@ -4380,151 +4357,6 @@ chrome.idle.getAutoLockDelay = function(callback) {};
  177. chrome.idle.onStateChanged;
  178. -/**
  179. - * Chrome Text-to-Speech API.
  180. - * @const
  181. - * @see https://developer.chrome.com/extensions/tts.html
  182. - */
  183. -chrome.tts = {};
  184. -
  185. -
  186. -
  187. -/**
  188. - * An event from the TTS engine to communicate the status of an utterance.
  189. - * @constructor
  190. - */
  191. -function TtsEvent() {}
  192. -
  193. -
  194. -/** @type {string} */
  195. -TtsEvent.prototype.type;
  196. -
  197. -
  198. -/** @type {number} */
  199. -TtsEvent.prototype.charIndex;
  200. -
  201. -
  202. -/** @type {string} */
  203. -TtsEvent.prototype.errorMessage;
  204. -
  205. -
  206. -/**
  207. - * The speech options for the TTS engine.
  208. - * @record
  209. - * @see https://developer.chrome.com/apps/tts#type-TtsOptions
  210. - */
  211. -function TtsOptions() {}
  212. -
  213. -/** @type {boolean|undefined} */
  214. -TtsOptions.prototype.enqueue;
  215. -
  216. -/** @type {string|undefined} */
  217. -TtsOptions.prototype.voiceName;
  218. -
  219. -/** @type {string|undefined} */
  220. -TtsOptions.prototype.extensionId;
  221. -
  222. -/** @type {string|undefined} */
  223. -TtsOptions.prototype.lang;
  224. -
  225. -/** @type {number|undefined} */
  226. -TtsOptions.prototype.rate;
  227. -
  228. -/** @type {number|undefined} */
  229. -TtsOptions.prototype.pitch;
  230. -
  231. -/** @type {number|undefined} */
  232. -TtsOptions.prototype.volume;
  233. -
  234. -/** @type {!Array<string>|undefined} */
  235. -TtsOptions.prototype.requiredEventTypes;
  236. -
  237. -/** @type {!Array<string>|undefined} */
  238. -TtsOptions.prototype.desiredEventTypes;
  239. -
  240. -/** @type {!function(!TtsEvent)|undefined} */
  241. -TtsOptions.prototype.onEvent;
  242. -
  243. -
  244. -/**
  245. - * A description of a voice available for speech synthesis.
  246. - * @constructor
  247. - */
  248. -function TtsVoice() {}
  249. -
  250. -
  251. -/** @type {string} */
  252. -TtsVoice.prototype.voiceName;
  253. -
  254. -
  255. -/** @type {string} */
  256. -TtsVoice.prototype.lang;
  257. -
  258. -
  259. -/** @type {string} */
  260. -TtsVoice.prototype.gender;
  261. -
  262. -
  263. -/** @type {string} */
  264. -TtsVoice.prototype.extensionId;
  265. -
  266. -
  267. -/** @type {Array<string>} */
  268. -TtsVoice.prototype.eventTypes;
  269. -
  270. -
  271. -/**
  272. - * Gets an array of all available voices.
  273. - * @param {function(Array<TtsVoice>)=} opt_callback An optional callback
  274. - * function.
  275. - * @return {undefined}
  276. - */
  277. -chrome.tts.getVoices = function(opt_callback) {};
  278. -
  279. -
  280. -/**
  281. - * Checks if the engine is currently speaking.
  282. - * @param {function(boolean)=} opt_callback The callback function.
  283. - * @return {undefined}
  284. - */
  285. -chrome.tts.isSpeaking = function(opt_callback) {};
  286. -
  287. -
  288. -/**
  289. - * Speaks text using a text-to-speech engine.
  290. - * @param {string} utterance The text to speak, either plain text or a complete,
  291. - * well-formed SSML document. Speech engines that do not support SSML will
  292. - * strip away the tags and speak the text. The maximum length of the text is
  293. - * 32,768 characters.
  294. - * @param {TtsOptions=} options The speech options.
  295. - * @param {function()=} callback Called right away, before speech finishes.
  296. - * @return {undefined}
  297. - */
  298. -chrome.tts.speak = function(utterance, options, callback) {};
  299. -
  300. -
  301. -/**
  302. - * Stops any current speech.
  303. - * @return {undefined}
  304. - */
  305. -chrome.tts.stop = function() {};
  306. -
  307. -
  308. -/**
  309. - * @const
  310. - * @see https://developer.chrome.com/extensions/ttsEngine.html
  311. - */
  312. -chrome.ttsEngine = {};
  313. -
  314. -
  315. -/** @type {!ChromeEvent} */
  316. -chrome.ttsEngine.onSpeak;
  317. -
  318. -
  319. -/** @type {!ChromeEvent} */
  320. -chrome.ttsEngine.onStop;
  321. -
  322. -
  323. /**
  324. * @const
  325. * @see https://developer.chrome.com/extensions/contentSettings.html
  326. @@ -8474,642 +8306,6 @@ chrome.fileSystem.requestFileSystem = function(options, callback) {};
  327. chrome.fileSystem.getVolumeList = function(callback) {};
  328. -/**
  329. - * @const
  330. - * @see https://developer.chrome.com/extensions/fileSystemProvider
  331. - */
  332. -chrome.fileSystemProvider = {};
  333. -
  334. -
  335. -/**
  336. - * @enum {string}
  337. - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-ChangeType
  338. - */
  339. -chrome.fileSystemProvider.ChangeType = {
  340. - CHANGED: '',
  341. - DELETED: '',
  342. -};
  343. -
  344. -
  345. -/**
  346. - * @enum {string}
  347. - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-CommonActionId
  348. - */
  349. -chrome.fileSystemProvider.CommonActionId = {
  350. - OFFLINE_NOT_NECESSARY: '',
  351. - SAVE_FOR_OFFLINE: '',
  352. - SHARE: '',
  353. -};
  354. -
  355. -
  356. -/**
  357. - * @enum {string}
  358. - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-OpenFileMode
  359. - */
  360. -chrome.fileSystemProvider.OpenFileMode = {
  361. - READ: '',
  362. - WRITE: '',
  363. -};
  364. -
  365. -
  366. -/**
  367. - * @enum {string}
  368. - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-ProviderError
  369. - */
  370. -chrome.fileSystemProvider.ProviderError = {
  371. - ABORT: '',
  372. - ACCESS_DENIED: '',
  373. - EXISTS: '',
  374. - FAILED: '',
  375. - INVALID_OPERATION: '',
  376. - INVALID_URL: '',
  377. - IN_USE: '',
  378. - IO: '',
  379. - NOT_A_DIRECTORY: '',
  380. - NOT_A_FILE: '',
  381. - NOT_EMPTY: '',
  382. - NOT_FOUND: '',
  383. - NO_MEMORY: '',
  384. - NO_SPACE: '',
  385. - OK: '',
  386. - SECURITY: '',
  387. - TOO_MANY_OPENED: '',
  388. -};
  389. -
  390. -
  391. -/**
  392. - * @constructor
  393. - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-EntryMetadata
  394. - */
  395. -chrome.fileSystemProvider.EntryMetadata = function() {};
  396. -
  397. -
  398. -/** @type {boolean|undefined} */
  399. -chrome.fileSystemProvider.EntryMetadata.prototype.isDirectory;
  400. -
  401. -
  402. -/** @type {string|undefined} */
  403. -chrome.fileSystemProvider.EntryMetadata.prototype.name;
  404. -
  405. -
  406. -/** @type {number|undefined} */
  407. -chrome.fileSystemProvider.EntryMetadata.prototype.size;
  408. -
  409. -
  410. -/** @type {!Date|undefined} */
  411. -chrome.fileSystemProvider.EntryMetadata.prototype.modificationTime;
  412. -
  413. -
  414. -/** @type {string|undefined} */
  415. -chrome.fileSystemProvider.EntryMetadata.prototype.mimeType;
  416. -
  417. -
  418. -/** @type {string|undefined} */
  419. -chrome.fileSystemProvider.EntryMetadata.prototype.thumbnail;
  420. -
  421. -
  422. -/**
  423. - * @constructor
  424. - * @see https://developer.chrome.com/extensions/fileSystemProvider#type-FileSystemInfo
  425. - */
  426. -chrome.fileSystemProvider.FileSystemInfo = function() {};
  427. -
  428. -
  429. -/** @type {string} */
  430. -chrome.fileSystemProvider.FileSystemInfo.prototype.fileSystemId;
  431. -
  432. -
  433. -/** @type {string} */
  434. -chrome.fileSystemProvider.FileSystemInfo.prototype.displayName;
  435. -
  436. -
  437. -/** @type {boolean} */
  438. -chrome.fileSystemProvider.FileSystemInfo.prototype.writable;
  439. -
  440. -
  441. -/** @type {number} */
  442. -chrome.fileSystemProvider.FileSystemInfo.prototype.openedFilesLimit;
  443. -
  444. -
  445. -/**
  446. - * @type {!Array<{
  447. - * openRequestId: number,
  448. - * filePath: string,
  449. - * mode: !chrome.fileSystemProvider.OpenFileMode,
  450. - * }>}
  451. - */
  452. -chrome.fileSystemProvider.FileSystemInfo.prototype.openedFiles;
  453. -
  454. -
  455. -/** @type {boolean|undefined} */
  456. -chrome.fileSystemProvider.FileSystemInfo.prototype.supportsNotifyTag;
  457. -
  458. -
  459. -/**
  460. - * @type {!Array<!{
  461. - * entryPath: string,
  462. - * recursive: boolean,
  463. - * lastTag: (string|undefined),
  464. - * }>}
  465. - */
  466. -chrome.fileSystemProvider.FileSystemInfo.prototype.watchers;
  467. -
  468. -
  469. -/**
  470. - * @param {string} fileSystemId
  471. - * @param {function(!chrome.fileSystemProvider.FileSystemInfo): void} callback
  472. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-get
  473. - */
  474. -chrome.fileSystemProvider.get = function(fileSystemId, callback) {};
  475. -
  476. -
  477. -/**
  478. - * @param {function(!Array<!chrome.fileSystemProvider.FileSystemInfo>): void}
  479. - * callback
  480. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-getAll
  481. - */
  482. -chrome.fileSystemProvider.getAll = function(callback) {};
  483. -
  484. -
  485. -/**
  486. - * @record
  487. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-mount
  488. - */
  489. -chrome.fileSystemProvider.MountOptions;
  490. -
  491. -
  492. -/** @type {string} */
  493. -chrome.fileSystemProvider.MountOptions.prototype.fileSystemId;
  494. -
  495. -
  496. -/** @type {string} */
  497. -chrome.fileSystemProvider.MountOptions.prototype.displayName;
  498. -
  499. -
  500. -/** @type {boolean|undefined} */
  501. -chrome.fileSystemProvider.MountOptions.prototype.writable;
  502. -
  503. -
  504. -/** @type {number|undefined} */
  505. -chrome.fileSystemProvider.MountOptions.prototype.openedFilesLimit;
  506. -
  507. -
  508. -/** @type {boolean|undefined} */
  509. -chrome.fileSystemProvider.MountOptions.prototype.supportsNotifyTag;
  510. -
  511. -
  512. -/** @type {boolean|undefined} */
  513. -chrome.fileSystemProvider.MountOptions.prototype.persistent;
  514. -
  515. -
  516. -/**
  517. - * @param {!chrome.fileSystemProvider.MountOptions} options
  518. - * @param {function(): void=} callback
  519. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-mount
  520. - */
  521. -chrome.fileSystemProvider.mount = function(options, callback) {};
  522. -
  523. -
  524. -/**
  525. - * @record
  526. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-notify
  527. - */
  528. -chrome.fileSystemProvider.NotifyOptions;
  529. -
  530. -
  531. -/** @type {string} */
  532. -chrome.fileSystemProvider.NotifyOptions.prototype.fileSystemId;
  533. -
  534. -
  535. -/** @type {string} */
  536. -chrome.fileSystemProvider.NotifyOptions.prototype.observedPath;
  537. -
  538. -
  539. -/** @type {boolean} */
  540. -chrome.fileSystemProvider.NotifyOptions.prototype.recursive;
  541. -
  542. -
  543. -/** @type {!chrome.fileSystemProvider.ChangeType} */
  544. -chrome.fileSystemProvider.NotifyOptions.prototype.changeType;
  545. -
  546. -
  547. -/**
  548. - * @type {!Array<{
  549. - * entryPath: string,
  550. - * changeType: !chrome.fileSystemProvider.ChangeType,
  551. - * }>|undefined}
  552. - */
  553. -chrome.fileSystemProvider.NotifyOptions.prototype.changes;
  554. -
  555. -
  556. -/** @type {string|undefined} */
  557. -chrome.fileSystemProvider.NotifyOptions.prototype.tag;
  558. -
  559. -
  560. -/**
  561. - * @param {!chrome.fileSystemProvider.NotifyOptions} options
  562. - * @param {function(): void=} callback
  563. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-notify
  564. - */
  565. -chrome.fileSystemProvider.notify = function(options, callback) {};
  566. -
  567. -
  568. -/**
  569. - * @record
  570. - * @see https://developer.chrome.com/extensions/fileSystemProvider#method-unmount
  571. - */
  572. -chrome.fileSystemProvider.UnmountOptions;
  573. -
  574. -
  575. -/** @type {string} */
  576. -chrome.fileSystemProvider.UnmountOptions.prototype.fileSystemId;
  577. -
  578. -
  579. -/**
  580. - * @param {!chrome.fileSystemProvider.UnmountOptions} options
  581. - * @param {function(): void=} callback
  582. - */
  583. -chrome.fileSystemProvider.unmount = function(options, callback) {};
  584. -
  585. -/**
  586. - * FSP events that don't "return" values to the caller via onSuccess.
  587. - *
  588. - * @interface
  589. - * @template T
  590. - * @extends {ChromeBaseEvent<function(
  591. - * T,
  592. - * function(): void,
  593. - * function(!chrome.fileSystemProvider.ProviderError): void
  594. - * )>}
  595. - */
  596. -chrome.fileSystemProvider.VoidBaseEvent;
  597. -
  598. -/**
  599. - * @interface
  600. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  601. - * fileSystemId: string,
  602. - * requestId: number,
  603. - * operationRequestId: number,
  604. - * }>}
  605. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onAbortRequested
  606. - */
  607. -chrome.fileSystemProvider.AbortRequestedEvent;
  608. -
  609. -
  610. -/** @type {!chrome.fileSystemProvider.AbortRequestedEvent} */
  611. -chrome.fileSystemProvider.onAbortRequested;
  612. -
  613. -
  614. -/**
  615. - * @interface
  616. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  617. - * fileSystemId: string,
  618. - * requestId: number,
  619. - * entryPath: string,
  620. - * recursive: boolean,
  621. - * }>}
  622. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onAddWatcherRequested
  623. - */
  624. -chrome.fileSystemProvider.AddWatcherRequestedEvent;
  625. -
  626. -
  627. -/** @type {!chrome.fileSystemProvider.AddWatcherRequestedEvent} */
  628. -chrome.fileSystemProvider.onAddWatcherRequested;
  629. -
  630. -
  631. -/**
  632. - * @interface
  633. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  634. - * fileSystemId: string,
  635. - * requestId: number,
  636. - * openRequestId: number,
  637. - * }>}
  638. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCloseFileRequested
  639. - */
  640. -chrome.fileSystemProvider.CloseFileRequestedEvent;
  641. -
  642. -
  643. -/** @type {!chrome.fileSystemProvider.CloseFileRequestedEvent} */
  644. -chrome.fileSystemProvider.onCloseFileRequested;
  645. -
  646. -
  647. -/**
  648. - * @interface
  649. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  650. - * fileSystemId: string,
  651. - * requestId: number,
  652. - * }>}
  653. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onConfigureRequested
  654. - */
  655. -chrome.fileSystemProvider.ConfigureRequestedEvent;
  656. -
  657. -
  658. -/** @type {!chrome.fileSystemProvider.ConfigureRequestedEvent} */
  659. -chrome.fileSystemProvider.onConfigureRequested;
  660. -
  661. -
  662. -/**
  663. - * @interface
  664. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  665. - * fileSystemId: string,
  666. - * requestId: number,
  667. - * sourcePath: string,
  668. - * targetPath: string,
  669. - * }>}
  670. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCopyEntryRequested
  671. - */
  672. -chrome.fileSystemProvider.CopyEntryRequestedEvent;
  673. -
  674. -
  675. -/** @type {!chrome.fileSystemProvider.CopyEntryRequestedEvent} */
  676. -chrome.fileSystemProvider.onCopyEntryRequested;
  677. -
  678. -
  679. -/**
  680. - * @interface
  681. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  682. - * fileSystemId: string,
  683. - * requestId: number,
  684. - * directoryPath: string,
  685. - * recursive: boolean,
  686. - * }>}
  687. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCreateDirectoryRequested
  688. - */
  689. -chrome.fileSystemProvider.CreateDirectoryRequestedEvent;
  690. -
  691. -
  692. -/** @type {!chrome.fileSystemProvider.CreateDirectoryRequestedEvent} */
  693. -chrome.fileSystemProvider.onCreateDirectoryRequested;
  694. -
  695. -
  696. -/**
  697. - * @interface
  698. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  699. - * fileSystemId: string,
  700. - * requestId: number,
  701. - * filePath: string,
  702. - * }>}
  703. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onCreateFileRequested
  704. - */
  705. -chrome.fileSystemProvider.CreateFileRequestedEvent;
  706. -
  707. -
  708. -/** @type {!chrome.fileSystemProvider.CreateFileRequestedEvent} */
  709. -chrome.fileSystemProvider.onCreateFileRequested;
  710. -
  711. -
  712. -/**
  713. - * @interface
  714. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  715. - * fileSystemId: string,
  716. - * requestId: number,
  717. - * entryPath: string,
  718. - * recursive: boolean,
  719. - * }>}
  720. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onDeleteEntryRequested
  721. - */
  722. -chrome.fileSystemProvider.DeleteEntryRequestedEvent;
  723. -
  724. -
  725. -/** @type {!chrome.fileSystemProvider.DeleteEntryRequestedEvent} */
  726. -chrome.fileSystemProvider.onDeleteEntryRequested;
  727. -
  728. -
  729. -/**
  730. - * @interface
  731. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  732. - * fileSystemId: string,
  733. - * requestId: number,
  734. - * entryPaths: !Array<string>,
  735. - * actionId: string,
  736. - * }>}
  737. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onExecuteActionRequested
  738. - */
  739. -chrome.fileSystemProvider.ExecuteActionRequestedEvent;
  740. -
  741. -
  742. -/** @type {!chrome.fileSystemProvider.ExecuteActionRequestedEvent} */
  743. -chrome.fileSystemProvider.onExecuteActionRequested;
  744. -
  745. -
  746. -/**
  747. - * @interface
  748. - * @extends {ChromeBaseEvent<function(
  749. - * {
  750. - * fileSystemId: string,
  751. - * requestId: number,
  752. - * entryPaths: !Array<string>,
  753. - * },
  754. - * function(
  755. - * !Array<!{
  756. - * id: (string|chrome.fileSystemProvider.CommonActionId),
  757. - * title: (string|undefined),
  758. - * }>
  759. - * ): void,
  760. - * function(!chrome.fileSystemProvider.ProviderError): void
  761. - * )>}
  762. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onGetActionsRequested
  763. - */
  764. -chrome.fileSystemProvider.GetActionsRequestedEvent;
  765. -
  766. -
  767. -/** @type {!chrome.fileSystemProvider.GetActionsRequestedEvent} */
  768. -chrome.fileSystemProvider.onGetActionsRequested;
  769. -
  770. -
  771. -/**
  772. - * @interface
  773. - * @extends {ChromeBaseEvent<function(
  774. - * {
  775. - * fileSystemId: string,
  776. - * requestId: number,
  777. - * entryPath: string,
  778. - * isDirectory: boolean,
  779. - * name: boolean,
  780. - * size: boolean,
  781. - * modificationTime: boolean,
  782. - * mimeType: boolean,
  783. - * thumbnail: boolean,
  784. - * },
  785. - * function(!chrome.fileSystemProvider.EntryMetadata): void,
  786. - * function(!chrome.fileSystemProvider.ProviderError): void
  787. - * )>}
  788. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onGetMetadataRequested
  789. - */
  790. -chrome.fileSystemProvider.GetMetadataRequestedEvent;
  791. -
  792. -
  793. -/** @type {!chrome.fileSystemProvider.GetMetadataRequestedEvent} */
  794. -chrome.fileSystemProvider.onGetMetadataRequested;
  795. -
  796. -
  797. -/**
  798. - * @interface
  799. - * @extends {ChromeBaseEvent<function(
  800. - * function(): void,
  801. - * function(!chrome.fileSystemProvider.ProviderError): void
  802. - * )>}
  803. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onMountRequested
  804. - */
  805. -chrome.fileSystemProvider.MountRequestedEvent;
  806. -
  807. -
  808. -/** @type {!chrome.fileSystemProvider.MountRequestedEvent} */
  809. -chrome.fileSystemProvider.onMountRequested;
  810. -
  811. -
  812. -/**
  813. - * @interface
  814. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  815. - * fileSystemId: string,
  816. - * requestId: number,
  817. - * sourcePath: string,
  818. - * targetPath: string,
  819. - * }>}
  820. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onMoveEntryRequested
  821. - */
  822. -chrome.fileSystemProvider.MoveEntryRequestedEvent;
  823. -
  824. -
  825. -/** @type {!chrome.fileSystemProvider.MoveEntryRequestedEvent} */
  826. -chrome.fileSystemProvider.onMoveEntryRequested;
  827. -
  828. -
  829. -/**
  830. - * @interface
  831. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  832. - * fileSystemId: string,
  833. - * requestId: number,
  834. - * filePath: string,
  835. - * mode: chrome.fileSystemProvider.OpenFileMode,
  836. - * }>}
  837. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onOpenFileRequested
  838. - */
  839. -chrome.fileSystemProvider.OpenFileRequestedEvent;
  840. -
  841. -
  842. -/** @type {!chrome.fileSystemProvider.OpenFileRequestedEvent} */
  843. -chrome.fileSystemProvider.onOpenFileRequested;
  844. -
  845. -
  846. -/**
  847. - * @interface
  848. - * @extends {ChromeBaseEvent<function(
  849. - * {
  850. - * fileSystemId: string,
  851. - * requestId: number,
  852. - * directoryPath: string,
  853. - * isDirectory: boolean,
  854. - * name: boolean,
  855. - * size: boolean,
  856. - * modificationTime: boolean,
  857. - * mimeType: boolean,
  858. - * thumbnail: boolean,
  859. - * },
  860. - * function(
  861. - * !Array<!chrome.fileSystemProvider.EntryMetadata>,
  862. - * boolean
  863. - * ): void,
  864. - * function(!chrome.fileSystemProvider.ProviderError): void
  865. - * )>}
  866. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onReadDirectoryRequested
  867. - */
  868. -chrome.fileSystemProvider.ReadDirectoryRequestedEvent;
  869. -
  870. -
  871. -/** @type {!chrome.fileSystemProvider.ReadDirectoryRequestedEvent} */
  872. -chrome.fileSystemProvider.onReadDirectoryRequested;
  873. -
  874. -
  875. -/**
  876. - * @interface
  877. - * @extends {ChromeBaseEvent<function(
  878. - * {
  879. - * fileSystemId: string,
  880. - * requestId: number,
  881. - * openRequestId: number,
  882. - * offset: number,
  883. - * length: number,
  884. - * },
  885. - * function(!ArrayBuffer, boolean): void,
  886. - * function(!chrome.fileSystemProvider.ProviderError): void
  887. - * )>}
  888. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onReadFileRequested
  889. - */
  890. -chrome.fileSystemProvider.ReadFileRequestedEvent;
  891. -
  892. -
  893. -/** @type {!chrome.fileSystemProvider.ReadFileRequestedEvent} */
  894. -chrome.fileSystemProvider.onReadFileRequested;
  895. -
  896. -
  897. -/**
  898. - * @interface
  899. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  900. - * fileSystemId: string,
  901. - * requestId: number,
  902. - * entryPath: string,
  903. - * recursive: boolean,
  904. - * }>}
  905. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onRemoveWatcherRequested
  906. - */
  907. -chrome.fileSystemProvider.RemoveWatcherRequestedEvent;
  908. -
  909. -
  910. -/** @type {!chrome.fileSystemProvider.RemoveWatcherRequestedEvent} */
  911. -chrome.fileSystemProvider.onRemoveWatcherRequested;
  912. -
  913. -
  914. -/**
  915. - * @interface
  916. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  917. - * fileSystemId: string,
  918. - * requestId: number,
  919. - * filePath: string,
  920. - * length: number,
  921. - * }>}
  922. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onTruncateRequested
  923. - */
  924. -chrome.fileSystemProvider.TruncateRequestedEvent;
  925. -
  926. -
  927. -/** @type {!chrome.fileSystemProvider.TruncateRequestedEvent} */
  928. -chrome.fileSystemProvider.onTruncateRequested;
  929. -
  930. -
  931. -/**
  932. - * @interface
  933. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  934. - * fileSystemId: string,
  935. - * requestId: number,
  936. - * }>}
  937. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onUnmountRequested
  938. - */
  939. -chrome.fileSystemProvider.UnmountRequestedEvent;
  940. -
  941. -
  942. -/** @type {!chrome.fileSystemProvider.UnmountRequestedEvent} */
  943. -chrome.fileSystemProvider.onUnmountRequested;
  944. -
  945. -
  946. -/**
  947. - * @interface
  948. - * @extends {chrome.fileSystemProvider.VoidBaseEvent<{
  949. - * fileSystemId: string,
  950. - * requestId: number,
  951. - * openRequestId: number,
  952. - * offset: number,
  953. - * data: !ArrayBuffer,
  954. - * }>}
  955. - * @see https://developer.chrome.com/extensions/fileSystemProvider#event-onWriteFileRequested
  956. - */
  957. -chrome.fileSystemProvider.WriteFileRequestedEvent;
  958. -
  959. -
  960. -/** @type {!chrome.fileSystemProvider.WriteFileRequestedEvent} */
  961. -chrome.fileSystemProvider.onWriteFileRequested;
  962. -
  963. -
  964. /**
  965. * @const
  966. * @see https://developer.chrome.com/apps/syncFileSystem
  967. diff --git a/third_party/closure_compiler/externs/chrome_extensions.js b/third_party/closure_compiler/externs/chrome_extensions.js
  968. index bd0fd2e51a3bb..12be61c3f581c 100644
  969. --- a/third_party/closure_compiler/externs/chrome_extensions.js
  970. +++ b/third_party/closure_compiler/externs/chrome_extensions.js
  971. @@ -10607,122 +10607,6 @@ chrome.inlineInstallPrivate = {};
  972. chrome.inlineInstallPrivate.install = function(id, opt_callback) {};
  973. -/**
  974. - * @see https://cs.chromium.org/chromium/src/chrome/common/extensions/api/input_method_private.json
  975. - */
  976. -chrome.inputMethodPrivate = {};
  977. -
  978. -/**
  979. - * @enum {string}
  980. - */
  981. -chrome.inputMethodPrivate.InputModeType = {
  982. - NO_KEYBOARD: '',
  983. - TEXT: '',
  984. - TEL: '',
  985. - URL: '',
  986. - EMAIL: '',
  987. - NUMERIC: '',
  988. - DECIMAL: '',
  989. - SEARCH: '',
  990. -};
  991. -
  992. -
  993. -/**
  994. - * @enum {string}
  995. - */
  996. -chrome.inputMethodPrivate.InputContextType = {
  997. - TEXT: '',
  998. - SEARCH: '',
  999. - TEL: '',
  1000. - URL: '',
  1001. - EMAIL: '',
  1002. - NUMBER: '',
  1003. - PASSWORD: '',
  1004. -};
  1005. -
  1006. -
  1007. -/**
  1008. - * @enum {string}
  1009. - */
  1010. -chrome.inputMethodPrivate.AutoCapitalizeType = {
  1011. - OFF: '',
  1012. - CHARACTERS: '',
  1013. - WORDS: '',
  1014. - SENTENCES: '',
  1015. -};
  1016. -
  1017. -
  1018. -/**
  1019. - * @enum {string}
  1020. - */
  1021. -chrome.inputMethodPrivate.FocusReason = {
  1022. - MOUSE: '',
  1023. - TOUCH: '',
  1024. - PEN: '',
  1025. - OTHER: '',
  1026. -};
  1027. -
  1028. -
  1029. -/** @constructor */
  1030. -chrome.inputMethodPrivate.InputContext = function() {};
  1031. -
  1032. -
  1033. -/** @type {number} */
  1034. -chrome.inputMethodPrivate.InputContext.prototype.contextID;
  1035. -
  1036. -/** @type {chrome.inputMethodPrivate.InputModeType} */
  1037. -chrome.inputMethodPrivate.InputContext.prototype.mode;
  1038. -
  1039. -/** @type {chrome.inputMethodPrivate.InputContextType} */
  1040. -chrome.inputMethodPrivate.InputContext.prototype.type;
  1041. -
  1042. -
  1043. -/** @type {boolean} */
  1044. -chrome.inputMethodPrivate.InputContext.prototype.autoCorrect;
  1045. -
  1046. -
  1047. -/** @type {boolean} */
  1048. -chrome.inputMethodPrivate.InputContext.prototype.autoComplete;
  1049. -
  1050. -
  1051. -/** @type {chrome.inputMethodPrivate.AutoCapitalizeType} */
  1052. -chrome.inputMethodPrivate.InputContext.prototype.autoCapitalize;
  1053. -
  1054. -
  1055. -/** @type {boolean} */
  1056. -chrome.inputMethodPrivate.InputContext.prototype.spellCheck;
  1057. -
  1058. -
  1059. -/** @type {boolean} */
  1060. -chrome.inputMethodPrivate.InputContext.prototype.shouldDoLearning;
  1061. -
  1062. -
  1063. -/** @type {chrome.inputMethodPrivate.FocusReason} */
  1064. -chrome.inputMethodPrivate.InputContext.prototype.focusReason;
  1065. -
  1066. -
  1067. -/** @type {boolean} */
  1068. -chrome.inputMethodPrivate.InputContext.prototype.hasBeenPassword;
  1069. -
  1070. -
  1071. -/**
  1072. - * Commits the text currently being composed without moving the selected text
  1073. - * range. This is a no-op if the context is incorrect.
  1074. - * @param {{
  1075. - * contextID: number
  1076. - * }} parameters Parameters for the finishComposingText API call.
  1077. - * @param {function(): void=} callback Called when the operation completes.
  1078. - */
  1079. -chrome.inputMethodPrivate.finishComposingText = function(
  1080. - parameters, callback) {};
  1081. -
  1082. -
  1083. -/**
  1084. - * Resets the current engine to its initial state. Fires an OnReset event.
  1085. - */
  1086. -chrome.inputMethodPrivate.reset = function() {};
  1087. -
  1088. -
  1089. /**
  1090. * @const
  1091. * @see https://goo.gl/7dvJFW