[GTK][WPE] WebKitWebContext should identify web views by their WebPageProxy identifier
https://bugs.webkit.org/show_bug.cgi?id=202924

Reviewed by Adrian Perez de Castro.

Instead of the WebPage identifier, since it maps WebPageProxy to WebKitWebView.

* UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextCreatePageForWebView):
(webkitWebContextWebViewDestroyed):
(webkitWebContextGetWebViewForPage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@251127 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog
index 59a0d85..3b8156c 100644
--- a/Source/WebKit/ChangeLog
+++ b/Source/WebKit/ChangeLog
@@ -1,3 +1,17 @@
+2019-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [GTK][WPE] WebKitWebContext should identify web views by their WebPageProxy identifier
+        https://bugs.webkit.org/show_bug.cgi?id=202924
+
+        Reviewed by Adrian Perez de Castro.
+
+        Instead of the WebPage identifier, since it maps WebPageProxy to WebKitWebView.
+
+        * UIProcess/API/glib/WebKitWebContext.cpp:
+        (webkitWebContextCreatePageForWebView):
+        (webkitWebContextWebViewDestroyed):
+        (webkitWebContextGetWebViewForPage):
+
 2019-10-15  youenn fablet  <youenn@apple.com>
 
         Handle service worker loads through NetworkResourceLoader
diff --git a/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp b/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
index 405b1c5..6a49e99 100644
--- a/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
+++ b/Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
@@ -205,7 +205,7 @@
     WebKitTLSErrorsPolicy tlsErrorsPolicy;
     WebKitProcessModel processModel;
 
-    HashMap<uint64_t, WebKitWebView*> webViews;
+    HashMap<WebPageProxyIdentifier, WebKitWebView*> webViews;
 
     CString webExtensionsDirectory;
     GRefPtr<GVariant> webExtensionsInitializationUserData;
@@ -1748,15 +1748,15 @@
         page.setURLSchemeHandlerForScheme(WTFMove(handler), it.key);
     }
 
-    context->priv->webViews.set(webkit_web_view_get_page_id(webView), webView);
+    context->priv->webViews.set(page.identifier(), webView);
 }
 
 void webkitWebContextWebViewDestroyed(WebKitWebContext* context, WebKitWebView* webView)
 {
-    context->priv->webViews.remove(webkit_web_view_get_page_id(webView));
+    context->priv->webViews.remove(webkitWebViewGetPage(webView).identifier());
 }
 
 WebKitWebView* webkitWebContextGetWebViewForPage(WebKitWebContext* context, WebPageProxy* page)
 {
-    return page ? context->priv->webViews.get(page->webPageID().toUInt64()) : nullptr;
+    return page ? context->priv->webViews.get(page->identifier()) : nullptr;
 }