aboutsummaryrefslogtreecommitdiff
path: root/html/display-panel.js
diff options
context:
space:
mode:
Diffstat (limited to 'html/display-panel.js')
-rw-r--r--html/display-panel.js35
1 files changed, 31 insertions, 4 deletions
diff --git a/html/display-panel.js b/html/display-panel.js
index 650c234..1693182 100644
--- a/html/display-panel.js
+++ b/html/display-panel.js
@@ -144,6 +144,7 @@ function handle_page_info(message)
}
const connected_chbx = by_id("connected_chbx");
+const query_pattern_but = by_id("query_pattern");
function try_to_connect(tab_id)
{
@@ -151,21 +152,35 @@ function try_to_connect(tab_id)
const connect_info = {name: CONNECTION_TYPE.ACTIVITY_INFO, frameId: 0};
const port = browser.tabs.connect(tab_id, connect_info);
- port.onDisconnect.addListener(port => handle_disconnect(tab_id));
+ const button_cb = (e) => start_querying_repos(port);
+
+ port.onDisconnect.addListener(port => handle_disconnect(tab_id, button_cb));
port.onMessage.addListener(handle_activity_report);
+ query_pattern_but.addEventListener("click", button_cb);
+
if (is_mozilla)
setTimeout(() => monitor_connecting(port, tab_id), 1000);
}
+const query_started_chbx = by_id("query_started_chbx");
+
+function start_querying_repos(port)
+{
+ port.postMessage("dummy (trigger repo querying)");
+ query_started_chbx.checked = true;
+}
+
const loading_chbx = by_id("loading_chbx");
-function handle_disconnect(tab_id)
+function handle_disconnect(tab_id, button_cb)
{
+ query_pattern_but.removeEventListener("click", button_cb);
+
if (is_chrome && !browser.runtime.lastError)
return;
- /* return if there was no connection initialization failure */
+ /* return if error was not during connection initialization */
if (connected_chbx.checked)
return;
@@ -189,6 +204,7 @@ const blocked_span = by_id("blocked");
const payload_span = by_id("payload");
const view_payload_but = by_id("view_payload");
const container_for_injected = by_id("container_for_injected");
+const container_for_repo_responses = by_id("container_for_repo_responses");
function handle_activity_report(message)
{
@@ -197,7 +213,7 @@ function handle_activity_report(message)
const [type, data] = message;
if (type === "settings") {
- let [pattern, settings] = data;
+ let [pattern, settings, repos] = data;
settings = settings || {};
blocked_span.textContent = settings.allow ? "no" : "yes";
@@ -231,6 +247,17 @@ function handle_activity_report(message)
container_for_injected.appendChild(h4);
container_for_injected.appendChild(pre);
}
+ if (type === "repo_query_result") {
+ const [repo_url, response_text] = data;
+
+ const h4 = document.createElement("h4");
+ const pre = document.createElement("pre");
+ h4.textContent = repo_url;
+ pre.textContent = response_text;
+
+ container_for_repo_responses.appendChild(h4);
+ container_for_repo_responses.appendChild(pre);
+ }
}
by_id("settings_but")