Skip to content

Commit ed78c31

Browse files
magomezspenap
authored andcommitted
Add the DOCUMENT_LOADED signal to WebKitWebView
1 parent dac0143 commit ed78c31

File tree

3 files changed

+22
-0
lines changed

3 files changed

+22
-0
lines changed

Source/WebKit/UIProcess/API/glib/WebKitNavigationClient.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,11 @@ class NavigationClient : public API::NavigationClient {
9191
webkitWebViewLoadFailed(m_webView, WEBKIT_LOAD_COMMITTED, resourceError.failingURL().string().utf8().data(), error.get());
9292
}
9393

94+
void didFinishDocumentLoad(WebKit::WebPageProxy&, API::Navigation*, API::Object*) override
95+
{
96+
webkitWebViewDocumentLoaded(m_webView);
97+
}
98+
9499
void didDisplayInsecureContent(WebPageProxy&, API::Object* /* userData */) override
95100
{
96101
webkitWebViewInsecureContentDetected(m_webView, WEBKIT_INSECURE_CONTENT_DISPLAYED);

Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,8 @@ enum {
196196

197197
QUERY_PERMISSION_STATE,
198198

199+
DOCUMENT_LOADED,
200+
199201
LAST_SIGNAL
200202
};
201203

@@ -2564,6 +2566,15 @@ static void webkit_web_view_class_init(WebKitWebViewClass* webViewClass)
25642566
g_cclosure_marshal_generic,
25652567
G_TYPE_BOOLEAN, 1, /* number of parameters */
25662568
WEBKIT_TYPE_PERMISSION_STATE_QUERY);
2569+
2570+
signals[DOCUMENT_LOADED] = g_signal_new(
2571+
"document-loaded",
2572+
G_TYPE_FROM_CLASS(webViewClass),
2573+
G_SIGNAL_RUN_LAST,
2574+
0,
2575+
nullptr, nullptr,
2576+
nullptr,
2577+
G_TYPE_NONE, 0);
25672578
}
25682579

25692580
static void webkitWebViewCompleteAuthenticationRequest(WebKitWebView* webView)
@@ -2683,6 +2694,11 @@ void webkitWebViewLoadFailedWithTLSErrors(WebKitWebView* webView, const char* fa
26832694
g_signal_emit(webView, signals[LOAD_CHANGED], 0, WEBKIT_LOAD_FINISHED);
26842695
}
26852696

2697+
void webkitWebViewDocumentLoaded(WebKitWebView* webView)
2698+
{
2699+
g_signal_emit(webView, signals[DOCUMENT_LOADED], 0);
2700+
}
2701+
26862702
#if PLATFORM(GTK)
26872703
void webkitWebViewGetLoadDecisionForIcon(WebKitWebView* webView, const LinkIcon& icon, Function<void(bool)>&& completionHandler)
26882704
{

Source/WebKit/UIProcess/API/glib/WebKitWebViewPrivate.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ void webkitWebViewWillStartLoad(WebKitWebView*);
5252
void webkitWebViewLoadChanged(WebKitWebView*, WebKitLoadEvent);
5353
void webkitWebViewLoadFailed(WebKitWebView*, WebKitLoadEvent, const char* failingURI, GError*);
5454
void webkitWebViewLoadFailedWithTLSErrors(WebKitWebView*, const char* failingURI, GError*, GTlsCertificateFlags, GTlsCertificate*);
55+
void webkitWebViewDocumentLoaded(WebKitWebView* webView);
5556
#if PLATFORM(GTK)
5657
void webkitWebViewGetLoadDecisionForIcon(WebKitWebView*, const WebCore::LinkIcon&, Function<void(bool)>&&);
5758
void webkitWebViewSetIcon(WebKitWebView*, const WebCore::LinkIcon&, API::Data&);

0 commit comments

Comments
 (0)