зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1602611 - fix browser_menuButtonFitts.js to wait for resizes on Linux, r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D61502 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
0c5c683162
Коммит
a84196411a
|
@ -266,7 +266,6 @@ skip-if = e10s # Bug 863514 - no gesture support.
|
|||
skip-if = toolkit == "windows" # Disabled on Windows due to frequent failures (bug 969405)
|
||||
# DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
|
||||
[browser_menuButtonFitts.js]
|
||||
skip-if = os == 'linux' && os_version == '18.04' # Bug 1602611
|
||||
# DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
|
||||
[browser_middleMouse_noJSPaste.js]
|
||||
# DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
|
||||
|
|
|
@ -2,9 +2,22 @@
|
|||
* http://creativecommons.org/publicdomain/zero/1.0/
|
||||
*/
|
||||
|
||||
function test() {
|
||||
waitForExplicitFinish();
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Clicking the right end of a maximized window should open the hamburger menu.
|
||||
*/
|
||||
add_task(async function test_clicking_hamburger_edge_fitts() {
|
||||
let oldWidth = window.outerWidth;
|
||||
let maximizeDone = BrowserTestUtils.waitForEvent(
|
||||
window,
|
||||
"resize",
|
||||
false,
|
||||
() => window.outerWidth >= screen.width - 1
|
||||
);
|
||||
window.maximize();
|
||||
// Ensure we actually finish the resize before continuing.
|
||||
await maximizeDone;
|
||||
|
||||
// Find where the nav-bar is vertically.
|
||||
var navBar = document.getElementById("nav-bar");
|
||||
|
@ -12,10 +25,24 @@ function test() {
|
|||
var yPixel = boundingRect.top + Math.floor(boundingRect.height / 2);
|
||||
var xPixel = boundingRect.width - 1; // Use the last pixel of the screen since it is maximized.
|
||||
|
||||
function onPopupHidden() {
|
||||
let popupHiddenResolve;
|
||||
let popupHiddenPromise = new Promise(resolve => {
|
||||
popupHiddenResolve = resolve;
|
||||
});
|
||||
async function onPopupHidden() {
|
||||
PanelUI.panel.removeEventListener("popuphidden", onPopupHidden);
|
||||
let restoreDone = BrowserTestUtils.waitForEvent(
|
||||
window,
|
||||
"resize",
|
||||
false,
|
||||
() => {
|
||||
let w = window.outerWidth;
|
||||
return w > oldWidth - 5 && w < oldWidth + 5;
|
||||
}
|
||||
);
|
||||
window.restore();
|
||||
finish();
|
||||
await restoreDone;
|
||||
popupHiddenResolve();
|
||||
}
|
||||
function onPopupShown() {
|
||||
PanelUI.panel.removeEventListener("popupshown", onPopupShown);
|
||||
|
@ -29,4 +56,5 @@ function test() {
|
|||
});
|
||||
PanelUI.panel.addEventListener("popupshown", onPopupShown);
|
||||
EventUtils.synthesizeMouseAtPoint(xPixel, yPixel, {}, window);
|
||||
}
|
||||
await popupHiddenPromise;
|
||||
});
|
||||
|
|
Загрузка…
Ссылка в новой задаче