forked from mirrors/gecko-dev
		
	 7156840ed7
			
		
	
	
		7156840ed7
		
	
	
	
	
		
			
			This namespace has schema definitions which spuriously expose it to extension callers, and does not support lazy loading correctly, which breaks certain usage patterns.
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			989 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			989 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
 | |
| /* vim: set sts=2 sw=2 et tw=80: */
 | |
| "use strict";
 | |
| 
 | |
| // The ext-* files are imported into the same scopes.
 | |
| /* import-globals-from ../../../toolkit/components/extensions/ext-c-toolkit.js */
 | |
| 
 | |
| this.omnibox = class extends ExtensionAPI {
 | |
|   getAPI(context) {
 | |
|     return {
 | |
|       omnibox: {
 | |
|         onInputChanged: new EventManager(context, "omnibox.onInputChanged", fire => {
 | |
|           let listener = (text, id) => {
 | |
|             fire.asyncWithoutClone(text, suggestions => {
 | |
|               context.childManager.callParentFunctionNoReturn("omnibox.addSuggestions", [
 | |
|                 id,
 | |
|                 suggestions,
 | |
|               ]);
 | |
|             });
 | |
|           };
 | |
|           context.childManager.getParentEvent("omnibox.onInputChanged").addListener(listener);
 | |
|           return () => {
 | |
|             context.childManager.getParentEvent("omnibox.onInputChanged").removeListener(listener);
 | |
|           };
 | |
|         }).api(),
 | |
|       },
 | |
|     };
 | |
|   }
 | |
| };
 |