attempt: rewrite events and trashed data
This commit is contained in:
		
							parent
							
								
									c7a262bd1d
								
							
						
					
					
						commit
						2a4e60420d
					
				
					 1 changed files with 29 additions and 18 deletions
				
			
		|  | @ -13,9 +13,9 @@ import logging from "/scripts/logging.js"; | |||
| class Page_Popup extends Page { | ||||
| 	constructor() { | ||||
| 		super(); | ||||
| 		(this.events) ? this.events() : false; | ||||
| 		this.content(); | ||||
| 		this.background(); | ||||
| 		this.events(); | ||||
| 	}; | ||||
| 
 | ||||
| 	async background() { | ||||
|  | @ -83,25 +83,21 @@ class Page_Popup extends Page { | |||
| 				: `loading`)]; | ||||
| 
 | ||||
| 			// Replace the iframe src with the new page.
 | ||||
| 			this.elements[`frame`].forEach((frame) => { | ||||
| 				frame.src = PAGE; | ||||
| 			}) | ||||
| 			this.elements[`frame`].src = PAGE; | ||||
| 
 | ||||
| 			// The results page has its own container. 
 | ||||
| 			this.elements[`container`].forEach((CONTAINER) => { | ||||
| 				CONTAINER.classList[(PAGE.includes(`results`)) ? `remove` : `add`](`container`); | ||||
| 			}); | ||||
| 			this.elements[`container`].classList[(PAGE.includes(`results`)) ? `remove` : `add`](`container`); | ||||
| 		}; | ||||
| 	}; | ||||
| 	 | ||||
| 	async content() { | ||||
| 		this.elements = {}; | ||||
| 		this.elements[`container`] = document.querySelectorAll(`main`); | ||||
| 		this.elements[`frame`] = document.querySelectorAll(`main > iframe.viewer`); | ||||
| 
 | ||||
| 		this.elements[`container`] = document.querySelector(`main`); | ||||
| 		this.elements[`frame`] = document.querySelector(`main > iframe.viewer`); | ||||
| 		this.elements[`nav`] = document.querySelector(`nav`); | ||||
| 		 | ||||
| 		// Check if the frame is available.
 | ||||
| 		if (this.elements[`frame`].length) { | ||||
| 		if (this.elements[`frame`]) { | ||||
| 			await this.switch(); | ||||
| 			this.background(); | ||||
| 		} else { | ||||
|  | @ -119,18 +115,33 @@ class Page_Popup extends Page { | |||
| 			logging.error(err.name, err.message, err.stack); | ||||
| 			throw (err); | ||||
| 		}; | ||||
| 	} | ||||
| 	}; | ||||
| 
 | ||||
| 	events() { | ||||
| 		(document.querySelector(`[data-action="open,settings"]`)) ? document.querySelector(`[data-action="open,settings"]`).addEventListener("click", () => { | ||||
| 		this[`elements`] = (this[`elements`]) ? this[`elements`] : {}; | ||||
| 		this[`elements`][`button`] = {}; | ||||
| 
 | ||||
| 		document.querySelectorAll(`[data-action]`).forEach((ELEMENT) => { | ||||
| 			let ACTION = ELEMENT.getAttribute(`data-action`).trim(); | ||||
| 			this[`elements`][`button`][ACTION] = ELEMENT; | ||||
| 
 | ||||
| 			// Remove the data-action attribute.
 | ||||
| 			ELEMENT.removeAttribute(`data-action`); | ||||
| 		}); | ||||
| 
 | ||||
| 		console.log(this[`elements`]); | ||||
| 
 | ||||
| 		this[`elements`][`button`][`open,settings`].addEventListener("click", () => { | ||||
| 			chrome.runtime.openOptionsPage(); | ||||
| 		}) : false; | ||||
| 		(document.querySelector(`[data-action="open,help"]`)) ? document.querySelector(`[data-action="open,help"]`).addEventListener("click", () => { | ||||
| 		}); | ||||
| 
 | ||||
| 		this[`elements`][`button`][`open,help`].addEventListener("click", () => { | ||||
| 			new Window(`help.htm`); | ||||
| 		}) : false; | ||||
| 		(document.querySelector(`[data-action="analysis,reload"]`)) ? document.querySelector(`[data-action="analysis,reload"]`).addEventListener("click", () => { | ||||
| 		}); | ||||
| 
 | ||||
| 		this[`elements`][`button`][`analysis,reload`].addEventListener("click", () => { | ||||
| 			this.send(); | ||||
| 		}) : false; | ||||
| 		}); | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue