diff options
-rw-r--r-- | src/core/renderer/web_engine_page_render_frame.cpp | 30 | ||||
-rw-r--r-- | src/core/renderer/web_engine_page_render_frame.h | 6 | ||||
-rw-r--r-- | tests/auto/core/certificateerror/BLACKLIST | 2 |
3 files changed, 10 insertions, 28 deletions
diff --git a/src/core/renderer/web_engine_page_render_frame.cpp b/src/core/renderer/web_engine_page_render_frame.cpp index ad5aa4b93..1f7e306db 100644 --- a/src/core/renderer/web_engine_page_render_frame.cpp +++ b/src/core/renderer/web_engine_page_render_frame.cpp @@ -53,7 +53,7 @@ namespace QtWebEngineCore { WebEnginePageRenderFrame::WebEnginePageRenderFrame(content::RenderFrame *render_frame) - : content::RenderFrameObserver(render_frame), m_binding(this), m_needsLayout(false) + : content::RenderFrameObserver(render_frame), m_binding(this), m_ready(false) { render_frame->GetAssociatedInterfaceRegistry()->AddInterface( base::BindRepeating(&WebEnginePageRenderFrame::BindReceiver, base::Unretained(this))); @@ -70,8 +70,10 @@ void WebEnginePageRenderFrame::FetchDocumentMarkup(uint64_t requestId, { blink::WebLocalFrame *frame = render_frame()->GetWebFrame(); blink::WebString markup; - if (!m_needsLayout) + if (m_ready) markup = blink::WebFrameContentDumper::DumpAsMarkup(frame); + else + markup = blink::WebString::FromUTF8("<html><head></head><body></body></html>"); std::move(callback).Run(requestId, markup.Utf8()); } @@ -80,9 +82,10 @@ void WebEnginePageRenderFrame::FetchDocumentInnerText(uint64_t requestId, { blink::WebLocalFrame *frame = render_frame()->GetWebFrame(); blink::WebString text; - if (!m_needsLayout) + if (m_ready) { text = blink::WebFrameContentDumper::DumpFrameTreeAsText( frame, std::numeric_limits<std::size_t>::max()); + } std::move(callback).Run(requestId, text.Utf8()); } @@ -96,25 +99,8 @@ void WebEnginePageRenderFrame::OnDestruct() delete this; } -void WebEnginePageRenderFrame::DidMeaningfulLayout(blink::WebMeaningfulLayout layout_type) -{ - switch (layout_type) { - case blink::WebMeaningfulLayout::kFinishedParsing: - case blink::WebMeaningfulLayout::kFinishedLoading: - m_needsLayout = false; - break; - default: - break; - } -} - -void WebEnginePageRenderFrame::WasShown() -{ - m_needsLayout = true; -} - -void WebEnginePageRenderFrame::WasHidden() +void WebEnginePageRenderFrame::DidFinishLoad() { - m_needsLayout = false; + m_ready = true; } } diff --git a/src/core/renderer/web_engine_page_render_frame.h b/src/core/renderer/web_engine_page_render_frame.h index f2ae8fd25..b91c5cb52 100644 --- a/src/core/renderer/web_engine_page_render_frame.h +++ b/src/core/renderer/web_engine_page_render_frame.h @@ -63,16 +63,14 @@ private: FetchDocumentInnerTextCallback callback) override; void SetBackgroundColor(uint32_t color) override; void OnDestruct() override; - void DidMeaningfulLayout(blink::WebMeaningfulLayout layout_type) override; - void WasShown() override; - void WasHidden() override; + void DidFinishLoad() override; void BindReceiver(mojo::PendingAssociatedReceiver<qtwebenginepage::mojom::WebEnginePageRenderFrame> receiver); private: mojo::AssociatedReceiver<qtwebenginepage::mojom::WebEnginePageRenderFrame> m_binding; - bool m_needsLayout; + bool m_ready; }; } // namespace diff --git a/tests/auto/core/certificateerror/BLACKLIST b/tests/auto/core/certificateerror/BLACKLIST deleted file mode 100644 index a8fd16bf3..000000000 --- a/tests/auto/core/certificateerror/BLACKLIST +++ /dev/null @@ -1,2 +0,0 @@ -[fatalError] -* |