commit 8622a9643c973b22a420f6f2edc82610a440d999
parent f7897b977ee8ca03b981540a849b30b7e6048c15
Author: Dale Harvey <dale@arandomurl.com>
Date: Mon, 24 Nov 2025 23:56:45 +0000
Bug 1994415 - Enable dragging trust urlbar icon. r=daisuke,urlbar-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D273317
Diffstat:
2 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/browser/base/content/navigator-toolbox.js b/browser/base/content/navigator-toolbox.js
@@ -492,6 +492,11 @@ document.addEventListener(
.addEventListener("dragstart", event => {
gIdentityHandler.onDragStart(event);
});
+ document
+ .getElementById("trust-icon-container")
+ .addEventListener("dragstart", event => {
+ gIdentityHandler.onDragStart(event);
+ });
let trackingProtectionIconContainer = document.getElementById(
"tracking-protection-icon-container"
diff --git a/browser/components/urlbar/tests/browser/browser_trust_panel.js b/browser/components/urlbar/tests/browser/browser_trust_panel.js
@@ -134,3 +134,35 @@ add_task(async function test_notsecure_label_without_tracking() {
await toggleETP(tab);
await BrowserTestUtils.removeTab(tab);
});
+
+add_task(async function test_drag_and_drop() {
+ const tab = await BrowserTestUtils.openNewForegroundTab({
+ gBrowser,
+ opening: "https://example.com",
+ waitForLoad: true,
+ });
+
+ info("Start DnD");
+ let trustIcon = document.getElementById("trust-icon");
+ let newtabButton = document.getElementById("tabs-newtab-button");
+ await BrowserTestUtils.waitForCondition(() =>
+ BrowserTestUtils.isVisible(trustIcon)
+ );
+
+ let newTabOpened = BrowserTestUtils.waitForNewTab(
+ gBrowser,
+ "https://example.com/",
+ true
+ );
+
+ await EventUtils.synthesizePlainDragAndDrop({
+ srcElement: trustIcon,
+ destElement: newtabButton,
+ });
+
+ let tabByDnD = await newTabOpened;
+ Assert.ok(tabByDnD, "DnD works from trust icon correctly");
+
+ await BrowserTestUtils.removeTab(tabByDnD);
+ await BrowserTestUtils.removeTab(tab);
+});