tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

exceed-then-not-exceed.html (1230B)


      1 <!DOCTYPE html>
      2 <html>
      3 <head>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <script>
      7 promise_test(async () => {
      8  await new Promise(resolve => document.addEventListener('DOMContentLoaded', resolve, {once:true}));
      9  await new Promise(resolve => requestAnimationFrame(resolve));
     10  await new Promise(resolve => requestAnimationFrame(resolve));
     11  // #fs1, #container, and #child were laid out.
     12 
     13  // Move #child.
     14  // It makes #container dirty, and it exceeds from #fs1's 1x1 grid.
     15  document.querySelector('#fs1').insertBefore(
     16      document.querySelector('#child'), document.querySelector('#container'));
     17  await new Promise(resolve => requestAnimationFrame(resolve));
     18  await new Promise(resolve => requestAnimationFrame(resolve));
     19 
     20  // Removing #child makes #container visible again.
     21  document.querySelector('#child').remove();
     22  await new Promise(resolve => requestAnimationFrame(resolve));
     23  await new Promise(resolve => requestAnimationFrame(resolve));
     24 }, 'No crash when a dirty FRAMESET exceeds from the grid then fits in it again');
     25 </script>
     26 </head>
     27 <frameset id="fs1">
     28 <frameset id="container">
     29 <frameset id="child"></frameset>
     30 </frameset>
     31 </frameset>
     32 </html>