瀏覽代碼

LibWeb: Scroll to the top after navigating to a new document

This change fixes a bug with running tests where, if one of the
previous tests changes the scroll position, all subsequent tests that
rely on the scroll position will fail. This is because the headless
browser never resets the viewport offset.
Aliaksandr Kalenik 1 年之前
父節點
當前提交
cfcec5e18e
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      Userland/Libraries/LibWeb/DOM/Document.cpp

+ 5 - 0
Userland/Libraries/LibWeb/DOM/Document.cpp

@@ -3578,6 +3578,11 @@ void Document::update_for_history_step_application(JS::NonnullGCPtr<HTML::Sessio
     // 6. If documentIsNew is true, then:
     // 6. If documentIsNew is true, then:
     if (document_is_new) {
     if (document_is_new) {
         // FIXME: 1. Try to scroll to the fragment for document.
         // FIXME: 1. Try to scroll to the fragment for document.
+        // FIXME: According to the spec we should only scroll here if document has no parser or parsing has stopped.
+        //        It should be ok to remove this after we implement navigation events and scrolling will happen in
+        //        "process scroll behavior".
+        scroll_to_the_fragment();
+
         // FIXME: 2. At this point scripts may run for the newly-created document document.
         // FIXME: 2. At this point scripts may run for the newly-created document document.
     }
     }