зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1742797 - Address review comment and ignore spurious popuphiding events on Linux r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D151622
This commit is contained in:
Родитель
04b02aad0d
Коммит
330fea72a1
|
@ -34,6 +34,21 @@ add_task(
|
||||||
// Should not already be using vsync
|
// Should not already be using vsync
|
||||||
ok(!ChromeUtils.vsyncEnabled(), "vsync should be off initially");
|
ok(!ChromeUtils.vsyncEnabled(), "vsync should be off initially");
|
||||||
|
|
||||||
|
if (
|
||||||
|
AppConstants.platform == "linux" &&
|
||||||
|
DownloadsPanel.panel.state != "open"
|
||||||
|
) {
|
||||||
|
// Panels sometime receive spurious popuphiding events on Linux.
|
||||||
|
// Given the main target of this test is Windows, avoid causing
|
||||||
|
// intermittent failures and just make the test return early.
|
||||||
|
todo(
|
||||||
|
false,
|
||||||
|
"panel should still be 'open', current state: " +
|
||||||
|
DownloadsPanel.panel.state
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const hiddenPromise = BrowserTestUtils.waitForEvent(
|
const hiddenPromise = BrowserTestUtils.waitForEvent(
|
||||||
DownloadsPanel.panel,
|
DownloadsPanel.panel,
|
||||||
"popuphidden"
|
"popuphidden"
|
||||||
|
|
|
@ -1099,6 +1099,9 @@ void nsMenuPopupFrame::HidePopup(bool aDeselectMenu, nsPopupState aNewState) {
|
||||||
mHFlip = mVFlip = false;
|
mHFlip = mVFlip = false;
|
||||||
|
|
||||||
if (auto* widget = GetWidget()) {
|
if (auto* widget = GetWidget()) {
|
||||||
|
// Ideally we should call ClearCachedWebrenderResources but there are
|
||||||
|
// intermittent failures (see bug 1748788), so we currently call
|
||||||
|
// ClearWebrenderAnimationResources instead.
|
||||||
widget->ClearWebrenderAnimationResources();
|
widget->ClearWebrenderAnimationResources();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче