Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: popup.js

Issue 29785555: Issue 6684 - Issue Reporter Active Tab Screenshot (Closed)
Left Patch Set: using active + inlined object literal Created May 22, 2018, 4:13 p.m.
Right Patch Set: removed checkbox.png Created June 20, 2018, 12:42 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « metadata.chrome ('k') | no next file » | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 /* 1 /*
2 * This file is part of Adblock Plus <https://adblockplus.org/>, 2 * This file is part of Adblock Plus <https://adblockplus.org/>,
3 * Copyright (C) 2006-present eyeo GmbH 3 * Copyright (C) 2006-present eyeo GmbH
4 * 4 *
5 * Adblock Plus is free software: you can redistribute it and/or modify 5 * Adblock Plus is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 3 as 6 * it under the terms of the GNU General Public License version 3 as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
8 * 8 *
9 * Adblock Plus is distributed in the hope that it will be useful, 9 * Adblock Plus is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 { 96 {
97 window.clearTimeout(activateClickHide.timeout); 97 window.clearTimeout(activateClickHide.timeout);
98 activateClickHide.timeout = null; 98 activateClickHide.timeout = null;
99 } 99 }
100 document.body.classList.remove("clickhide-active"); 100 document.body.classList.remove("clickhide-active");
101 browser.tabs.sendMessage(tab.id, {type: "composer.content.finished"}); 101 browser.tabs.sendMessage(tab.id, {type: "composer.content.finished"});
102 } 102 }
103 103
104 function reportIssue() 104 function reportIssue()
105 { 105 {
106 // capture the current visible tab 106 // the issue reporter needs to take a screenshot of the
Sebastian Noack 2018/05/23 14:48:59 Nit: This comment seems superfluous (it essentiall
a.giammarchi 2018/05/23 15:06:35 Done.
107 browser.tabs.captureVisibleTab( 107 // currently active tab, which is why active is explicitly
108 null, 108 // set as false, in case option defaults will ever change.
109 {format: "png"}, 109 browser.tabs.create({
110 (screenshot) => 110 active: false,
Sebastian Noack 2018/05/23 14:48:59 Nit: We omit the optional parenthesis in arrow fun
a.giammarchi 2018/05/23 15:06:35 Done.
111 { 111 url: browser.runtime.getURL("/issue-reporter.html?" + tab.id)
112 // setup a listener to provide once tab url 112 }).then(() =>
113 // and base64 screenshot data once asked 113 {
114 browser.runtime.onMessage.addListener( 114 window.close();
115 function onMessage(event) 115 });
116 {
117 if (event.type === "issue-reporter")
Sebastian Noack 2018/05/23 14:48:59 Nit: We prefer == over ===, as per the Mozilla cod
a.giammarchi 2018/05/23 15:06:35 Done.
118 {
119 browser.runtime.onMessage.removeListener(onMessage);
120 return Promise.resolve({url: tab.url, screenshot});
121 }
122 }
123 );
124
125 // create an active/selected issue reporter tab
Sebastian Noack 2018/05/23 14:48:59 Nit: This comment seems superfluous as well.
a.giammarchi 2018/05/23 15:06:36 Done.
126 browser.tabs.create({
127 active: true,
128 url: browser.runtime.getURL("/issue-reporter.html?" + tab.id)
129 });
130 }
131 );
132 } 116 }
133 117
134 function toggleCollapse(event) 118 function toggleCollapse(event)
135 { 119 {
136 let collapser = event.currentTarget; 120 let collapser = event.currentTarget;
137 let collapsible = document.getElementById(collapser.dataset.collapsible); 121 let collapsible = document.getElementById(collapser.dataset.collapsible);
138 collapsible.classList.toggle("collapsed"); 122 collapsible.classList.toggle("collapsed");
139 togglePref(collapser.dataset.option); 123 togglePref(collapser.dataset.option);
140 } 124 }
141 125
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 { 336 {
353 if (event.target.id == "notification-optout") 337 if (event.target.id == "notification-optout")
354 setPref("notifications_ignoredcategories", true); 338 setPref("notifications_ignoredcategories", true);
355 339
356 notificationElement.hidden = true; 340 notificationElement.hidden = true;
357 browser.runtime.sendMessage({type: "notifications.clicked"}); 341 browser.runtime.sendMessage({type: "notifications.clicked"});
358 } 342 }
359 }, true); 343 }, true);
360 }); 344 });
361 }); 345 });
LEFTRIGHT

Powered by Google App Engine
This is Rietveld