зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1363361 - Update expected reflows on window open now that we're using nsIDOMWindowUtils to dirty the frame tree. r=florian
MozReview-Commit-ID: 13NQn1618mR --HG-- extra : rebase_source : eb0c73f7cb2aa966ff15a0d41f9f3974ecd278a3
This commit is contained in:
Родитель
6549fe80ab
Коммит
d920f99fa1
|
@ -20,21 +20,26 @@ const EXPECTED_REFLOWS = [
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
if (Services.appinfo.OS == "Darwin") {
|
if (Services.appinfo.OS == "Linux") {
|
||||||
// TabsInTitlebar._update causes a reflow on OS X trying to do calculations
|
if (gMultiProcessBrowser) {
|
||||||
// since layout info is already dirty. This doesn't seem to happen before
|
EXPECTED_REFLOWS.push(
|
||||||
// MozAfterPaint on Linux.
|
[
|
||||||
EXPECTED_REFLOWS.push(
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
[
|
"EventListener.handleEvent*tabbrowser-tabs_XBL_Constructor@chrome://browser/content/tabbrowser.xml",
|
||||||
"rect@chrome://browser/content/browser-tabsintitlebar.js",
|
],
|
||||||
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
);
|
||||||
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
} else {
|
||||||
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
EXPECTED_REFLOWS.push(
|
||||||
],
|
[
|
||||||
);
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
"inferFromText@chrome://browser/content/browser.js",
|
||||||
|
"handleEvent@chrome://browser/content/browser.js",
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Services.appinfo.OS == "WINNT" || Services.appinfo.OS == "Darwin") {
|
if (Services.appinfo.OS == "Darwin") {
|
||||||
EXPECTED_REFLOWS.push(
|
EXPECTED_REFLOWS.push(
|
||||||
[
|
[
|
||||||
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
@ -44,11 +49,93 @@ if (Services.appinfo.OS == "WINNT" || Services.appinfo.OS == "Darwin") {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (Services.appinfo.OS == "WINNT") {
|
||||||
|
EXPECTED_REFLOWS.push(
|
||||||
|
[
|
||||||
|
"verticalMargins@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"verticalMargins@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
"inferFromText@chrome://browser/content/browser.js",
|
||||||
|
"handleEvent@chrome://browser/content/browser.js",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
"EventListener.handleEvent*tabbrowser-tabs_XBL_Constructor@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Services.appinfo.OS == "WINNT" || Services.appinfo.OS == "Darwin") {
|
||||||
|
EXPECTED_REFLOWS.push(
|
||||||
|
[
|
||||||
|
"rect@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"rect@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"rect@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"rect@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"verticalMargins@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
"verticalMargins@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"_update@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"updateAppearance@chrome://browser/content/browser-tabsintitlebar.js",
|
||||||
|
"handleEvent@chrome://browser/content/tabbrowser.xml",
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This test ensures that there are no unexpected
|
* This test ensures that there are no unexpected
|
||||||
* uninterruptible reflows when opening new windows.
|
* uninterruptible reflows when opening new windows.
|
||||||
*/
|
*/
|
||||||
add_task(async function() {
|
add_task(async function() {
|
||||||
|
// Flushing all caches helps to ensure that we get consistent
|
||||||
|
// behaviour when opening a new window, even if windows have been
|
||||||
|
// opened in previous tests.
|
||||||
|
Services.obs.notifyObservers(null, "startupcache-invalidate");
|
||||||
|
Services.obs.notifyObservers(null, "chrome-flush-skin-caches");
|
||||||
|
Services.obs.notifyObservers(null, "chrome-flush-caches");
|
||||||
|
|
||||||
let win = OpenBrowserWindow();
|
let win = OpenBrowserWindow();
|
||||||
|
|
||||||
await withReflowObserver(async function() {
|
await withReflowObserver(async function() {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче