forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			30 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| "use strict";
 | |
| 
 | |
| /**
 | |
|  * Test dragging a removable=false widget within its own area as well as to the palette.
 | |
|  */
 | |
| add_task(async function() {
 | |
|   await startCustomizing();
 | |
|   let forwardButton = document.getElementById("forward-button");
 | |
|   is(forwardButton.getAttribute("removable"), "false", "forward-button should not be removable");
 | |
|   ok(CustomizableUI.inDefaultState, "Should start in default state.");
 | |
| 
 | |
|   let urlbarContainer = document.getElementById("urlbar-container");
 | |
|   let placementsAfterDrag = getAreaWidgetIds(CustomizableUI.AREA_NAVBAR);
 | |
|   placementsAfterDrag.splice(placementsAfterDrag.indexOf("forward-button"), 1);
 | |
|   placementsAfterDrag.splice(placementsAfterDrag.indexOf("urlbar-container"), 0, "forward-button");
 | |
| 
 | |
|   // Force layout flush to ensure the drag completes as expected
 | |
|   urlbarContainer.clientWidth;
 | |
| 
 | |
|   simulateItemDrag(forwardButton, urlbarContainer, "start");
 | |
|   assertAreaPlacements(CustomizableUI.AREA_NAVBAR, placementsAfterDrag);
 | |
|   ok(!CustomizableUI.inDefaultState, "Should no longer be in default state.");
 | |
|   let palette = document.getElementById("customization-palette");
 | |
|   simulateItemDrag(forwardButton, palette);
 | |
|   is(CustomizableUI.getPlacementOfWidget("forward-button").area, CustomizableUI.AREA_NAVBAR, "forward-button was not able to move to palette");
 | |
| 
 | |
|   await endCustomizing();
 | |
|   await resetCustomization();
 | |
|   ok(CustomizableUI.inDefaultState, "Should be in default state again.");
 | |
| });
 | 
