tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

browser_drag_outside_palette.js (1789B)


      1 /* Any copyright is dedicated to the Public Domain.
      2 * http://creativecommons.org/publicdomain/zero/1.0/ */
      3 
      4 "use strict";
      5 
      6 /**
      7 * Check that moving items from the toolbar or panel to the palette by
      8 * dropping on the panel container (not inside the visible panel) works.
      9 */
     10 add_task(async function () {
     11  await startCustomizing();
     12  let panelContainer = document.getElementById("customization-panel-container");
     13  // Try dragging an item from the navbar:
     14  let stopReloadButton = document.getElementById("stop-reload-button");
     15  let oldNavbarPlacements = CustomizableUI.getWidgetIdsInArea("nav-bar");
     16  simulateItemDrag(stopReloadButton, panelContainer);
     17  assertAreaPlacements(
     18    CustomizableUI.AREA_NAVBAR,
     19    oldNavbarPlacements.filter(w => w != "stop-reload-button")
     20  );
     21  ok(
     22    stopReloadButton.closest("#customization-palette"),
     23    "Button should be in the palette"
     24  );
     25 
     26  // Put it in the panel and try again from there:
     27  let panelHolder = document.getElementById("customization-panelHolder");
     28  simulateItemDrag(stopReloadButton, panelHolder);
     29  assertAreaPlacements(CustomizableUI.AREA_FIXED_OVERFLOW_PANEL, [
     30    "stop-reload-button",
     31  ]);
     32 
     33  simulateItemDrag(stopReloadButton, panelContainer);
     34  assertAreaPlacements(CustomizableUI.AREA_FIXED_OVERFLOW_PANEL, []);
     35 
     36  ok(
     37    stopReloadButton.closest("#customization-palette"),
     38    "Button should be in the palette"
     39  );
     40 
     41  // Check we can't move non-removable items like this:
     42  let urlbar = document.getElementById("urlbar-container");
     43  simulateItemDrag(urlbar, panelContainer);
     44  assertAreaPlacements(
     45    CustomizableUI.AREA_NAVBAR,
     46    oldNavbarPlacements.filter(w => w != "stop-reload-button")
     47  );
     48 });
     49 
     50 registerCleanupFunction(async function () {
     51  await gCustomizeMode.reset();
     52  await endCustomizing();
     53 });