From 99c9b106c1ae15a6adde0806d620007c6aba6677 Mon Sep 17 00:00:00 2001 From: Jack Case Date: Mon, 17 Nov 2025 00:35:17 +0000 Subject: [PATCH] final tweaks for 0.4 release --- pages/action_popup.html | 1 + src/browser-action.ts | 10 ++++++++++ src/report-slop.ts | 14 ++++++++++++-- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/pages/action_popup.html b/pages/action_popup.html index 8f47b02..e6ca568 100644 --- a/pages/action_popup.html +++ b/pages/action_popup.html @@ -45,5 +45,6 @@
+

\ No newline at end of file diff --git a/src/browser-action.ts b/src/browser-action.ts index faf8e39..6e6799a 100644 --- a/src/browser-action.ts +++ b/src/browser-action.ts @@ -87,6 +87,8 @@ async function initialize_popup() { const signup_button = document.getElementById("signup-select") as HTMLButtonElement const login_button = document.getElementById("login-select") as HTMLButtonElement + const report_button = document.getElementById("report-button") as HTMLButtonElement + const report_status = report_section.querySelector("h2") const page_sections = new Map() page_sections.set("signup", signup_section) @@ -97,6 +99,9 @@ async function initialize_popup() { page_elements.set("login_form", login_form as HTMLElement) page_elements.set("login_status", login_status) page_elements.set("signup_form", signup_form as HTMLElement) + page_elements.set("report_button", report_button) + page_elements.set("report_status", report_status) + const logged_in = await check_login() @@ -107,6 +112,11 @@ async function initialize_popup() { signup_button.addEventListener("click", (event) => {popup_state.set_visible_section("signup")}) login_button.addEventListener("click", (event) => {popup_state.set_visible_section("login")}) + report_button.addEventListener("click", async (event) => { + const result = await send_message_to_background({type: "report"}) + popup_state.page_elements.get("report_status").textContent = "report accepted" + setTimeout(() => { window.close() }, 1000) + }) } addEventListener("DOMContentLoaded", (event) => { diff --git a/src/report-slop.ts b/src/report-slop.ts index 9be890a..a4cd8a6 100644 --- a/src/report-slop.ts +++ b/src/report-slop.ts @@ -182,10 +182,11 @@ async function update_page_action_icon(details: browser.webNavigation._OnCommitt } function message_listener(message: any, sender: any, send_response: Function): Promise { + const sender_tab = sender.tab ? sender.tab : undefined + const tabid = sender_tab ? sender_tab.id : undefined switch (message.type) { - + case "check": - const tabid = sender.tab.id let check_promises = new Array() let not_found_local = new Array() @@ -223,6 +224,15 @@ function message_listener(message: any, sender: any, send_response: Function): P const response = { logged_in: token != null ? true : false } return new Promise((resolve, reject) => { resolve(response) }) break + + case "report": + return new Promise((resolve, reject) => { + browser.tabs.query({ active: true, currentWindow: true }).then((tabs) => { + const tab_url = new URL(tabs[0].url) + insert_slop(tab_url.hostname, tab_url.pathname, true).then(() => resolve(true)) + }) + }) + break } }