removed broken window and menu creation
This commit is contained in:
		
							parent
							
								
									28efa1d503
								
							
						
					
					
						commit
						1e55c10a45
					
				
					 3 changed files with 0 additions and 153 deletions
				
			
		|  | @ -1,14 +0,0 @@ | ||||||
| import Window from "/scripts/GUI/window.js"; |  | ||||||
| 
 |  | ||||||
| export default class ManagedWindow { |  | ||||||
| 	constructor () { |  | ||||||
| 		this.instance = new Window("/pages/popup.htm", {"width": 500, "height": 500, "type": "popup", "hidden": true}); |  | ||||||
| 	} |  | ||||||
| 	 |  | ||||||
| 	/* |  | ||||||
| 	Show the popup.  |  | ||||||
| 	*/ |  | ||||||
| 	show() { |  | ||||||
| 		this.instance.show(); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
|  | @ -1,27 +0,0 @@ | ||||||
| import Menu from '/scripts/GUI/menus.js'; |  | ||||||
| import texts from "/scripts/mapping/read.js"; |  | ||||||
| 
 |  | ||||||
| export default class MenuEntry { |  | ||||||
| 	/* Create all entries. */ |  | ||||||
| 	constructor() { |  | ||||||
| 		// Add the context menu.
 |  | ||||||
| 		this.menu = new Menu({title: (new texts(`entry_contextMenu`)).localized, contexts: [`all`], events: {"onClicked": this.onclick}, hidden: true}); |  | ||||||
| 	}; |  | ||||||
| 
 |  | ||||||
|     /*  |  | ||||||
| 	Enable the sidebar.  |  | ||||||
| 	*/ |  | ||||||
| 	enable () { |  | ||||||
| 		// First disable to prevent ghost entries.
 |  | ||||||
| 		this.disable(); |  | ||||||
| 
 |  | ||||||
| 		this.menu.show(); |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	/* |  | ||||||
| 	Disable. |  | ||||||
| 	*/ |  | ||||||
| 	disable () { |  | ||||||
| 		this.menu.remove(); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
|  | @ -1,112 +0,0 @@ | ||||||
| /* context_menus.js |  | ||||||
| Context menu management |  | ||||||
| */ |  | ||||||
| 
 |  | ||||||
| export default class Menu { |  | ||||||
| 	#options; |  | ||||||
| 
 |  | ||||||
| 	constructor (ID, title, contexts, events, type, icon) { |  | ||||||
| 		if ((typeof ID).includes(`obj`) && !Array.isArray(ID)) { |  | ||||||
| 			// Create the ID if it doesn't exist. 
 |  | ||||||
| 			ID.ID = ((ID.hasOwnProperty(`ID`)) ? ID.ID : false) ? ID.ID : String(Math.random() / Math.random() * 100); |  | ||||||
| 
 |  | ||||||
| 			(Object.keys(ID)).forEach((key) => { |  | ||||||
| 				this[key] = ID[key]; |  | ||||||
| 			}) |  | ||||||
| 		} else { |  | ||||||
| 			this.ID = String((ID) ? ID : (Math.random() / Math.random() * 100)); |  | ||||||
| 			this.title = (title) ? title : `Menu`; |  | ||||||
| 			this.contexts = (Array.isArray(contexts)) ? contexts : [`all`]; |  | ||||||
| 			this.events = (events) ? events : {"onClicked" : function() {}}; |  | ||||||
| 			this.type = (((typeof type).includes(`str`) && type) ? type.trim() : false) ? type : `normal`; |  | ||||||
| 
 |  | ||||||
| 			if (icon) { |  | ||||||
| 				this.icon = icon; |  | ||||||
| 			}; |  | ||||||
| 		}; |  | ||||||
| 
 |  | ||||||
| 		this.#options = { |  | ||||||
| 			id: this.ID, |  | ||||||
| 			title: this.title, |  | ||||||
| 			contexts: this.contexts, |  | ||||||
| 			type: this.type |  | ||||||
| 		}; |  | ||||||
| 		(this.icon) ? this.#options.icon = this.icon : null; |  | ||||||
| 		((this.hidden != null) ? (!this.hidden) : true) ? this.show() : null; |  | ||||||
| 	}; |  | ||||||
| 
 |  | ||||||
| 	remove() { |  | ||||||
| 		(!this.hidden) ? chrome.contextMenus.remove(this.ID) : false; |  | ||||||
| 		this.hidden = true; |  | ||||||
| 	}; |  | ||||||
| 
 |  | ||||||
| 	show() { |  | ||||||
| 		if (this.hidden || this.hidden == null) { |  | ||||||
| 			this.hidden = false; |  | ||||||
| 			this.ID = chrome.contextMenus.create(this.#options);	 |  | ||||||
| 
 |  | ||||||
| 			if (((this.events && (typeof this.events).includes(`obj`) && !Array.isArray(this.events))) ? Object.keys(this.events).length > 0 : false) { |  | ||||||
| 				(Object.keys(this.events)).forEach((EVENT) => { |  | ||||||
| 					chrome.contextMenus[EVENT].addListener((info, tab) => { |  | ||||||
| 						if (info.menuItemId == this.ID) { |  | ||||||
| 							this.events[EVENT](info, tab) |  | ||||||
| 						} |  | ||||||
| 					}) |  | ||||||
| 				}); |  | ||||||
| 			}; |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	/* Update the context menu.  |  | ||||||
| 	 |  | ||||||
| 	@param {Object} options The new options for the context menu. |  | ||||||
| 	*/ |  | ||||||
| 	update(options) { |  | ||||||
| 		if ((typeof options).includes(`obj`) && options != null && !Array.isArray(options)) { |  | ||||||
| 			(Object.keys(options)).forEach((key) => { |  | ||||||
| 				(options[key] != null && options[key] != undefined) ? this[key] = options[key] : delete this[key]; |  | ||||||
| 			}); |  | ||||||
| 		} |  | ||||||
| 
 |  | ||||||
| 		this.#options = { |  | ||||||
| 			id: this.ID, |  | ||||||
| 			title: this.title, |  | ||||||
| 			contexts: this.contexts, |  | ||||||
| 			type: this.type |  | ||||||
| 		}; |  | ||||||
| 		(this.icon) ? this.#options.icon = this.icon : null; |  | ||||||
| 
 |  | ||||||
| 		(!this.hidden) ? chrome.contextMenus.update(this.ID, this.#options) : false; |  | ||||||
| 
 |  | ||||||
| 		(((this.events && (typeof this.events).includes(`obj`) && !Array.isArray(this.events))) ? Object.keys(this.events) > 0 : false)  |  | ||||||
| 			? (Object.keys(this.events)).forEach((EVENT) => { |  | ||||||
| 				chrome.contextMenus[EVENT].addListener((info, tab) => { |  | ||||||
| 					((info.menuItemId) ? info.menuItemId == this.ID : false) |  | ||||||
| 						? this.events[EVENT](info, tab) |  | ||||||
| 						: false; |  | ||||||
| 				}) |  | ||||||
| 			}) |  | ||||||
| 			: false; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	/* |  | ||||||
| 	Run a new function when triggered. |  | ||||||
| 	 |  | ||||||
| 	@param {function} callback the function to run |  | ||||||
| 	*/ |  | ||||||
| 	onclick(callback) { |  | ||||||
| 		this.addActionListener("onClicked", callback); |  | ||||||
| 	} |  | ||||||
| 	 |  | ||||||
| 	/* |  | ||||||
| 	Run an event following an action.  |  | ||||||
| 	 |  | ||||||
| 	@param {string} event the event |  | ||||||
| 	@param {function} callback the function to run |  | ||||||
| 	*/ |  | ||||||
| 	addActionListener(event, callback) { |  | ||||||
| 		this.events = (this.events == null) ? {} : this.events; |  | ||||||
| 		this.events[event] = callback; |  | ||||||
| 		this.update(); |  | ||||||
| 	}; |  | ||||||
| } |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue