This commit is contained in:
James H 2012-12-04 20:56:21 -05:00
Родитель da1eb3e161
Коммит ad616c2af3
2 изменённых файлов: 57 добавлений и 0 удалений

Просмотреть файл

@ -26,6 +26,7 @@ MOCHITEST_CHROME_FILES = \
$(NULL)
MOCHITEST_BROWSER_FILES = \
browser_bug685470.js \
browser_bug703210.js \
browser_bug706743.js \
$(NULL)

Просмотреть файл

@ -0,0 +1,56 @@
function test() {
waitForExplicitFinish();
gBrowser.selectedTab = gBrowser.addTab();
SpecialPowers.setIntPref("ui.tooltipDelay", 0);
var popup = false;
var doc;
var win;
var p1;
let onPopupShown = function(aEvent) {
popup = true;
}
// test that a mouse click prior to the tooltip appearing blocks it and
// mouse movement without leaving the target doesn't show it
let runTest = function() {
var rc = p1.getBoundingClientRect();
EventUtils.synthesizeMouseAtCenter(p1, { type: "mousemove" }, win);
EventUtils.sendMouseEvent({type:'mousedown'}, p1, win);
EventUtils.sendMouseEvent({type:'mouseup'}, p1, win);
EventUtils.synthesizeMouse(p1, rc.left, rc.top, { type: "mousemove" }, win);
setTimeout(function() {
is(popup, false, "shouldn't get tooltip after click and mouse move " +
"within target");
document.removeEventListener("popupshown", onPopupShown, true);
SpecialPowers.clearUserPref("ui.tooltipDelay");
gBrowser.removeCurrentTab();
finish();
}, 200);
}
let onLoad = function (aEvent) {
doc = gBrowser.contentDocument;
win = gBrowser.contentWindow;
p1 = doc.getElementById("p1");
document.addEventListener("popupshown", onPopupShown, true);
runTest();
}
gBrowser.selectedBrowser.addEventListener("load", function loadListener() {
gBrowser.selectedBrowser.removeEventListener("load", loadListener, true);
setTimeout(onLoad, 0);
}, true);
content.location = "data:text/html," +
"<p id=\"p1\" title=\"tooltip is here\">This paragraph has a tooltip.</p>";
}