Skip to content

Commit 3f59ab3

Browse files
committed
adds feature #1309 within poup.js as suggested
1 parent 037a804 commit 3f59ab3

File tree

3 files changed

+50
-13
lines changed

3 files changed

+50
-13
lines changed

src/css/popup.css

+4-4
Original file line numberDiff line numberDiff line change
@@ -1530,7 +1530,7 @@ input[type=text] {
15301530
.container-panel {
15311531
min-block-size: 500px;
15321532
}
1533-
1533+
.sort-container-panel,
15341534
.delete-container-panel,
15351535
.clear-container-storage-panel {
15361536
min-block-size: 500px;
@@ -1820,13 +1820,13 @@ manage things like container crud */
18201820
.container-info-tab-row img[src=""] {
18211821
margin-inline-end: 0;
18221822
}
1823-
1823+
.sort-tabs-confirm,
18241824
.delete-container-confirm,
18251825
.clear-container-storage-confirm {
18261826
padding-inline-end: 20px;
18271827
padding-inline-start: 20px;
18281828
}
1829-
1829+
.sort-tabs-confirm-title,
18301830
.delete-container-confirm-title,
18311831
.clear-container-storage-confirm-title {
18321832
color: var(--text-color-primary);
@@ -2336,7 +2336,7 @@ input {
23362336
justify-content: center;
23372337
font-weight: bolder;
23382338
}
2339-
2339+
.sort-warning,
23402340
.delete-warning,
23412341
.clear-container-storage-warning {
23422342
padding-block-end: 8px;

src/js/popup.js

+31-9
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ const ALWAYS_OPEN_IN_PICKER = "always-open-in";
3030
const P_CONTAINER_INFO = "containerInfo";
3131
const P_CONTAINER_EDIT = "containerEdit";
3232
const P_CONTAINER_DELETE = "containerDelete";
33+
const P_CONTAINER_SORT ="containerSort";
3334
const P_CONTAINERS_ACHIEVEMENT = "containersAchievement";
3435
const P_CONTAINER_ASSIGNMENTS = "containerAssignments";
3536
const P_CLEAR_CONTAINER_STORAGE = "clearContainerStorage";
@@ -756,15 +757,8 @@ Logic.registerPanel(P_CONTAINERS_LIST, {
756757
Utils.addEnterHandler(document.querySelector("#always-open-in"), () => {
757758
Logic.showPanel(ALWAYS_OPEN_IN_PICKER);
758759
});
759-
Utils.addEnterHandler(document.querySelector("#sort-containers-link"), async () => {
760-
try {
761-
await browser.runtime.sendMessage({
762-
method: "sortTabs"
763-
});
764-
window.close();
765-
} catch (e) {
766-
window.close();
767-
}
760+
Utils.addEnterHandler(document.querySelector("#sort-containers-link"), () => {
761+
Logic.showPanel(P_CONTAINER_SORT);
768762
});
769763

770764
const mozillaVpnToutName = "moz-tout-main-panel";
@@ -2412,3 +2406,31 @@ window.addEventListener("resize", function () {
24122406
root.classList.add("overflow");
24132407
}
24142408
});
2409+
2410+
// P_CONTAINER_SORT: sort tabs.
2411+
// ----------------------------------------------------------------------------
2412+
2413+
Logic.registerPanel(P_CONTAINER_SORT, {
2414+
panelSelector: "#sort-container-panel",
2415+
2416+
// This method is called when the object is registered.
2417+
initialize() {
2418+
Utils.addEnterHandler(document.querySelector("#sort-container-cancel-link"), () => {
2419+
Logic.showPreviousPanel();
2420+
});
2421+
Utils.addEnterHandler(document.querySelector("#close-container-sort-panel"), () => {
2422+
Logic.showPreviousPanel();
2423+
});
2424+
Utils.addEnterHandler(document.querySelector("#sort-container-ok-link"), async () => {
2425+
await browser.runtime.sendMessage({
2426+
method: "sortTabs"
2427+
});
2428+
window.close();
2429+
});
2430+
},
2431+
2432+
// This method is called when the panel is shown.
2433+
prepare() {
2434+
return Promise.resolve(null);
2435+
},
2436+
});

src/popup.html

+15
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,21 @@ <h4 class="delete-container-confirm-title" data-i18n-message-id="removeThisConta
427427
</div>
428428
</div>
429429

430+
<div class="hide panel sort-container-panel" id="sort-container-panel">
431+
<h3 class="title" data-i18n-message-id="default"></h3>
432+
433+
<button class="btn-return arrow-left controller" id="close-container-sort-panel"></button>
434+
<hr>
435+
<div class="panel-content sort-tabs-confirm">
436+
<h4 class="sort-tabs-confirm-title" data-i18n-message-id="sortTabs"></h4>
437+
<p class="sort-warning" data-i18n-message-id="sortTabsConfirmation"></p>
438+
</div>
439+
<div class="panel-footer">
440+
<a href="#" class="button expanded secondary footer-button cancel-button" data-i18n-message-id="cancel" id="sort-container-cancel-link"></a>
441+
<a href="#" class="button expanded confirmation-destructive-ok-btn footer-button alert-text" data-i18n-message-id="ok" id="sort-container-ok-link"></a>
442+
</div>
443+
</div>
444+
430445
<div class="hide panel clear-container-storage-panel" id="clear-container-storage-panel">
431446
<h3 class="title" id="container-clear-storage-title" data-i18n-message-id="default">
432447
</h3>

0 commit comments

Comments
 (0)