mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-10-31 16:28:05 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			58 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| async function test() {
 | |
|   waitForExplicitFinish();
 | |
| 
 | |
|   // ---- Test dragging the proxy icon ---
 | |
|   var value = content.location.href;
 | |
|   var urlString = value + "\n" + content.document.title;
 | |
|   var htmlString = '<a href="' + value + '">' + value + "</a>";
 | |
|   var expected = [
 | |
|     [
 | |
|       { type: "text/x-moz-url", data: urlString },
 | |
|       { type: "text/uri-list", data: value },
 | |
|       { type: "text/plain", data: value },
 | |
|       { type: "text/html", data: htmlString },
 | |
|     ],
 | |
|   ];
 | |
|   // set the valid attribute so dropping is allowed
 | |
|   var oldstate = gURLBar.getAttribute("pageproxystate");
 | |
|   gURLBar.setPageProxyState("valid");
 | |
|   let result = await EventUtils.synthesizePlainDragAndCancel(
 | |
|     {
 | |
|       srcElement: document.getElementById("identity-icon-box"),
 | |
|     },
 | |
|     expected
 | |
|   );
 | |
|   Assert.strictEqual(result, true, "dragging dataTransfer should be expected");
 | |
|   gURLBar.setPageProxyState(oldstate);
 | |
|   // Now, the identity information panel is opened by the proxy icon click.
 | |
|   // We need to close it for next tests.
 | |
|   EventUtils.synthesizeKey("VK_ESCAPE", {}, window);
 | |
| 
 | |
|   // now test dragging onto a tab
 | |
|   var tab = BrowserTestUtils.addTab(gBrowser, "about:blank", {
 | |
|     skipAnimation: true,
 | |
|   });
 | |
|   var browser = gBrowser.getBrowserForTab(tab);
 | |
| 
 | |
|   browser.addEventListener(
 | |
|     "load",
 | |
|     function () {
 | |
|       is(
 | |
|         browser.contentWindow.location,
 | |
|         "http://mochi.test:8888/",
 | |
|         "drop on tab"
 | |
|       );
 | |
|       gBrowser.removeTab(tab);
 | |
|       finish();
 | |
|     },
 | |
|     true
 | |
|   );
 | |
| 
 | |
|   EventUtils.synthesizeDrop(
 | |
|     tab,
 | |
|     tab,
 | |
|     [[{ type: "text/uri-list", data: "http://mochi.test:8888/" }]],
 | |
|     "copy",
 | |
|     window
 | |
|   );
 | |
| }
 | 
