mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 956202 - split off UITour checking functions, r=Unfocused
This commit is contained in:
parent
c5aa6552b3
commit
5b5e2949d6
@ -8,51 +8,6 @@ let gContentAPI;
|
|||||||
|
|
||||||
Components.utils.import("resource:///modules/UITour.jsm");
|
Components.utils.import("resource:///modules/UITour.jsm");
|
||||||
|
|
||||||
function is_hidden(element) {
|
|
||||||
var style = element.ownerDocument.defaultView.getComputedStyle(element, "");
|
|
||||||
if (style.display == "none")
|
|
||||||
return true;
|
|
||||||
if (style.visibility != "visible")
|
|
||||||
return true;
|
|
||||||
if (style.display == "-moz-popup")
|
|
||||||
return ["hiding","closed"].indexOf(element.state) != -1;
|
|
||||||
|
|
||||||
// Hiding a parent element will hide all its children
|
|
||||||
if (element.parentNode != element.ownerDocument)
|
|
||||||
return is_hidden(element.parentNode);
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
function is_element_visible(element, msg) {
|
|
||||||
isnot(element, null, "Element should not be null, when checking visibility");
|
|
||||||
ok(!is_hidden(element), msg);
|
|
||||||
}
|
|
||||||
|
|
||||||
function waitForElementToBeVisible(element, nextTest, msg) {
|
|
||||||
waitForCondition(() => !is_hidden(element),
|
|
||||||
() => {
|
|
||||||
ok(true, msg);
|
|
||||||
nextTest();
|
|
||||||
},
|
|
||||||
"Timeout waiting for visibility: " + msg);
|
|
||||||
}
|
|
||||||
|
|
||||||
function waitForPopupAtAnchor(popup, anchorNode, nextTest, msg) {
|
|
||||||
waitForCondition(() => popup.popupBoxObject.anchorNode == anchorNode,
|
|
||||||
() => {
|
|
||||||
ok(true, msg);
|
|
||||||
is_element_visible(popup);
|
|
||||||
nextTest();
|
|
||||||
},
|
|
||||||
"Timeout waiting for popup at anchor: " + msg);
|
|
||||||
}
|
|
||||||
|
|
||||||
function is_element_hidden(element, msg) {
|
|
||||||
isnot(element, null, "Element should not be null, when checking visibility");
|
|
||||||
ok(is_hidden(element), msg);
|
|
||||||
}
|
|
||||||
|
|
||||||
function loadTestPage(callback, host = "https://example.com/") {
|
function loadTestPage(callback, host = "https://example.com/") {
|
||||||
if (gTestTab)
|
if (gTestTab)
|
||||||
gBrowser.removeTab(gTestTab);
|
gBrowser.removeTab(gTestTab);
|
||||||
|
@ -22,3 +22,48 @@ function waitForCondition(condition, nextTest, errorMsg) {
|
|||||||
}, 100);
|
}, 100);
|
||||||
var moveOn = function() { clearInterval(interval); nextTest(); };
|
var moveOn = function() { clearInterval(interval); nextTest(); };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function is_hidden(element) {
|
||||||
|
var style = element.ownerDocument.defaultView.getComputedStyle(element, "");
|
||||||
|
if (style.display == "none")
|
||||||
|
return true;
|
||||||
|
if (style.visibility != "visible")
|
||||||
|
return true;
|
||||||
|
if (style.display == "-moz-popup")
|
||||||
|
return ["hiding","closed"].indexOf(element.state) != -1;
|
||||||
|
|
||||||
|
// Hiding a parent element will hide all its children
|
||||||
|
if (element.parentNode != element.ownerDocument)
|
||||||
|
return is_hidden(element.parentNode);
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_element_visible(element, msg) {
|
||||||
|
isnot(element, null, "Element should not be null, when checking visibility");
|
||||||
|
ok(!is_hidden(element), msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
function waitForElementToBeVisible(element, nextTest, msg) {
|
||||||
|
waitForCondition(() => !is_hidden(element),
|
||||||
|
() => {
|
||||||
|
ok(true, msg);
|
||||||
|
nextTest();
|
||||||
|
},
|
||||||
|
"Timeout waiting for visibility: " + msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
function waitForPopupAtAnchor(popup, anchorNode, nextTest, msg) {
|
||||||
|
waitForCondition(() => popup.popupBoxObject.anchorNode == anchorNode,
|
||||||
|
() => {
|
||||||
|
ok(true, msg);
|
||||||
|
is_element_visible(popup);
|
||||||
|
nextTest();
|
||||||
|
},
|
||||||
|
"Timeout waiting for popup at anchor: " + msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_element_hidden(element, msg) {
|
||||||
|
isnot(element, null, "Element should not be null, when checking visibility");
|
||||||
|
ok(is_hidden(element), msg);
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user