diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /browser/base/content/test/performance/browser_hidden_browser_vsync.js | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/base/content/test/performance/browser_hidden_browser_vsync.js')
-rw-r--r-- | browser/base/content/test/performance/browser_hidden_browser_vsync.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/browser/base/content/test/performance/browser_hidden_browser_vsync.js b/browser/base/content/test/performance/browser_hidden_browser_vsync.js new file mode 100644 index 0000000000..a2e5cc990c --- /dev/null +++ b/browser/base/content/test/performance/browser_hidden_browser_vsync.js @@ -0,0 +1,56 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +add_task(async function test_hidden_sidebar() { + let b = document.createXULElement("browser"); + for (let [k, v] of Object.entries({ + type: "content", + disablefullscreen: "true", + disablehistory: "true", + flex: "1", + style: "min-width: 300px", + message: "true", + remote: "true", + maychangeremoteness: "true", + })) { + b.setAttribute(k, v); + } + let mainBrowser = gBrowser.selectedBrowser; + let panel = gBrowser.getPanel(mainBrowser); + panel.append(b); + let loaded = BrowserTestUtils.browserLoaded(b); + BrowserTestUtils.startLoadingURIString( + b, + `data:text/html,<!doctype html><style> + @keyframes fade-in { + from { + opacity: .25; + } + to { + opacity: 1; + } + </style> + <div style=" + animation-name: fade-in; + animation-direction: alternate; + animation-duration: 1s; + animation-iteration-count: infinite; + animation-timing-function: ease-in-out; + background-color: red; + height: 500px; + width: 100%; + "></div>` + ); + await loaded; + ok(b, "Browser was created."); + await SpecialPowers.spawn(b, [], async () => { + await new Promise(r => + content.requestAnimationFrame(() => content.requestAnimationFrame(r)) + ); + }); + b.hidden = true; + ok(b.hidden, "Browser should be hidden."); + // Now the framework will test to see vsync goes away +}); |