mirror of
https://github.com/microsoft/playwright.git
synced 2025-06-26 21:40:17 +00:00
browser(webkit): fix debug compilation and some assertions (#498)
This commit is contained in:
parent
30022a326f
commit
ce1e79fe9f
@ -1 +1 @@
|
||||
1089
|
||||
1090
|
||||
|
||||
@ -197,6 +197,19 @@ index 95d9d81188e735e8f1b70cc0deee2682cb6714f0..4c67ce34302f74e0d07f64ae53a4eaf1
|
||||
|
||||
// Note that 'unused' is a workaround so the compiler can pick the right sendResponse based on arity.
|
||||
// When <http://webkit.org/b/179847> is fixed or this class is renamed for the JSON::Object case,
|
||||
diff --git a/Source/JavaScriptCore/inspector/InspectorFrontendRouter.cpp b/Source/JavaScriptCore/inspector/InspectorFrontendRouter.cpp
|
||||
index d408d364f1986983161f9d44efbc8bc6f6898676..1375ce9990f0c63d7e6f33ee62930051d6cd44cb 100644
|
||||
--- a/Source/JavaScriptCore/inspector/InspectorFrontendRouter.cpp
|
||||
+++ b/Source/JavaScriptCore/inspector/InspectorFrontendRouter.cpp
|
||||
@@ -49,7 +49,7 @@ void FrontendRouter::connectFrontend(FrontendChannel& connection)
|
||||
void FrontendRouter::disconnectFrontend(FrontendChannel& connection)
|
||||
{
|
||||
if (!m_connections.contains(&connection)) {
|
||||
- ASSERT_NOT_REACHED();
|
||||
+ ASSERT(m_connections.isEmpty());
|
||||
return;
|
||||
}
|
||||
|
||||
diff --git a/Source/JavaScriptCore/inspector/InspectorTarget.h b/Source/JavaScriptCore/inspector/InspectorTarget.h
|
||||
index 4b95964db4d902b4b7f4b0b4c40afea51654ff2f..78455c32fc5ddb0f1b9a828233a652d4f86b4d90 100644
|
||||
--- a/Source/JavaScriptCore/inspector/InspectorTarget.h
|
||||
@ -1391,7 +1404,7 @@ index 4e41fd3f807e8f34bfef3f63f0ba6119a619821e..1f7be602cb2134f8867bf95afe0c9337
|
||||
return;
|
||||
|
||||
diff --git a/Source/WebCore/inspector/InspectorInstrumentation.cpp b/Source/WebCore/inspector/InspectorInstrumentation.cpp
|
||||
index 4f18b58c6cd01e0b69a8953ad09a739c3520496a..170e3a81bc02303ce708d914376a1c527737fbc0 100644
|
||||
index 4f18b58c6cd01e0b69a8953ad09a739c3520496a..724fdb3d8e37dfc29069e2e2a65adefb72818cf5 100644
|
||||
--- a/Source/WebCore/inspector/InspectorInstrumentation.cpp
|
||||
+++ b/Source/WebCore/inspector/InspectorInstrumentation.cpp
|
||||
@@ -121,7 +121,7 @@ static Frame* frameForScriptExecutionContext(ScriptExecutionContext& context)
|
||||
@ -1498,7 +1511,7 @@ index 4f18b58c6cd01e0b69a8953ad09a739c3520496a..170e3a81bc02303ce708d914376a1c52
|
||||
+ return false;
|
||||
+}
|
||||
+
|
||||
+bool InspectorInstrumentation::interceptRequestImpl(InstrumentingAgents& instrumentingAgents, ResourceLoader& loader, CompletionHandler<void(bool handled)>&& handler)
|
||||
+bool InspectorInstrumentation::interceptRequestImpl(InstrumentingAgents& instrumentingAgents, ResourceLoader& loader, Function<void(bool handled)>&& handler)
|
||||
+{
|
||||
+ if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
|
||||
+ return networkAgent->interceptRequest(loader, WTFMove(handler));
|
||||
@ -1509,10 +1522,10 @@ index 4f18b58c6cd01e0b69a8953ad09a739c3520496a..170e3a81bc02303ce708d914376a1c52
|
||||
{
|
||||
return workerGlobalScope.inspectorController().m_instrumentingAgents;
|
||||
diff --git a/Source/WebCore/inspector/InspectorInstrumentation.h b/Source/WebCore/inspector/InspectorInstrumentation.h
|
||||
index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd9b63b40d 100644
|
||||
index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..4a01c8001ec080c4a9f41cb6a2ad43df10cfec65 100644
|
||||
--- a/Source/WebCore/inspector/InspectorInstrumentation.h
|
||||
+++ b/Source/WebCore/inspector/InspectorInstrumentation.h
|
||||
@@ -45,6 +45,7 @@
|
||||
@@ -45,11 +45,13 @@
|
||||
#include "HitTestResult.h"
|
||||
#include "InspectorInstrumentationPublic.h"
|
||||
#include "Page.h"
|
||||
@ -1520,7 +1533,13 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
#include "StorageArea.h"
|
||||
#include "WebAnimation.h"
|
||||
#include <JavaScriptCore/ConsoleMessage.h>
|
||||
@@ -77,6 +78,7 @@ class DOMWrapperWorld;
|
||||
#include <initializer_list>
|
||||
#include <wtf/CompletionHandler.h>
|
||||
+#include <wtf/Function.h>
|
||||
#include <wtf/MemoryPressureHandler.h>
|
||||
#include <wtf/RefPtr.h>
|
||||
|
||||
@@ -77,6 +79,7 @@ class DOMWrapperWorld;
|
||||
class Document;
|
||||
class DocumentLoader;
|
||||
class EventListener;
|
||||
@ -1528,7 +1547,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
class HTTPHeaderMap;
|
||||
class InspectorTimelineAgent;
|
||||
class InstrumentingAgents;
|
||||
@@ -197,6 +199,7 @@ public:
|
||||
@@ -197,6 +200,7 @@ public:
|
||||
static void didReceiveData(Frame*, unsigned long identifier, const char* data, int dataLength, int encodedDataLength);
|
||||
static void didFinishLoading(Frame*, DocumentLoader*, unsigned long identifier, const NetworkLoadMetrics&, ResourceLoader*);
|
||||
static void didFailLoading(Frame*, DocumentLoader*, unsigned long identifier, const ResourceError&);
|
||||
@ -1536,7 +1555,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
|
||||
static void willSendRequest(WorkerGlobalScope&, unsigned long identifier, ResourceRequest&);
|
||||
static void didReceiveResourceResponse(WorkerGlobalScope&, unsigned long identifier, const ResourceResponse&);
|
||||
@@ -223,11 +226,11 @@ public:
|
||||
@@ -223,11 +227,11 @@ public:
|
||||
static void frameDetachedFromParent(Frame&);
|
||||
static void didCommitLoad(Frame&, DocumentLoader*);
|
||||
static void frameDocumentUpdated(Frame&);
|
||||
@ -1549,19 +1568,19 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
static void defaultAppearanceDidChange(Page&, bool useDarkAppearance);
|
||||
static void willDestroyCachedResource(CachedResource&);
|
||||
|
||||
@@ -314,6 +317,11 @@ public:
|
||||
@@ -314,6 +318,11 @@ public:
|
||||
static void layerTreeDidChange(Page*);
|
||||
static void renderLayerDestroyed(Page*, const RenderLayer&);
|
||||
|
||||
+ static void runOpenPanel(Frame*, HTMLInputElement*, bool*);
|
||||
+ static void frameAttached(Frame*);
|
||||
+ static bool shouldBypassCSP(ScriptExecutionContext*);
|
||||
+ static bool interceptRequest(ResourceLoader&, CompletionHandler<void(bool handled)>&&);
|
||||
+ static bool interceptRequest(ResourceLoader&, Function<void(bool handled)>&&);
|
||||
+
|
||||
static void frontendCreated();
|
||||
static void frontendDeleted();
|
||||
static bool hasFrontends() { return InspectorInstrumentationPublic::hasFrontends(); }
|
||||
@@ -414,6 +422,7 @@ private:
|
||||
@@ -414,6 +423,7 @@ private:
|
||||
static void didReceiveDataImpl(InstrumentingAgents&, unsigned long identifier, const char* data, int dataLength, int encodedDataLength);
|
||||
static void didFinishLoadingImpl(InstrumentingAgents&, unsigned long identifier, DocumentLoader*, const NetworkLoadMetrics&, ResourceLoader*);
|
||||
static void didFailLoadingImpl(InstrumentingAgents&, unsigned long identifier, DocumentLoader*, const ResourceError&);
|
||||
@ -1569,7 +1588,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
static void willLoadXHRSynchronouslyImpl(InstrumentingAgents&);
|
||||
static void didLoadXHRSynchronouslyImpl(InstrumentingAgents&);
|
||||
static void scriptImportedImpl(InstrumentingAgents&, unsigned long identifier, const String& sourceString);
|
||||
@@ -424,11 +433,11 @@ private:
|
||||
@@ -424,11 +434,11 @@ private:
|
||||
static void frameDetachedFromParentImpl(InstrumentingAgents&, Frame&);
|
||||
static void didCommitLoadImpl(InstrumentingAgents&, Frame&, DocumentLoader*);
|
||||
static void frameDocumentUpdatedImpl(InstrumentingAgents&, Frame&);
|
||||
@ -1582,19 +1601,19 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
static void defaultAppearanceDidChangeImpl(InstrumentingAgents&, bool useDarkAppearance);
|
||||
static void willDestroyCachedResourceImpl(CachedResource&);
|
||||
|
||||
@@ -511,6 +520,11 @@ private:
|
||||
@@ -511,6 +521,11 @@ private:
|
||||
static void layerTreeDidChangeImpl(InstrumentingAgents&);
|
||||
static void renderLayerDestroyedImpl(InstrumentingAgents&, const RenderLayer&);
|
||||
|
||||
+ static void runOpenPanelImpl(InstrumentingAgents&, HTMLInputElement*, bool*);
|
||||
+ static void frameAttachedImpl(InstrumentingAgents&, Frame&);
|
||||
+ static bool shouldBypassCSPImpl(InstrumentingAgents&);
|
||||
+ static bool interceptRequestImpl(InstrumentingAgents&, ResourceLoader&, CompletionHandler<void(bool handled)>&&);
|
||||
+ static bool interceptRequestImpl(InstrumentingAgents&, ResourceLoader&, Function<void(bool handled)>&&);
|
||||
+
|
||||
static InstrumentingAgents& instrumentingAgentsForPage(Page&);
|
||||
static InstrumentingAgents& instrumentingAgentsForWorkerGlobalScope(WorkerGlobalScope&);
|
||||
|
||||
@@ -1091,6 +1105,13 @@ inline void InspectorInstrumentation::didFailLoading(Frame* frame, DocumentLoade
|
||||
@@ -1091,6 +1106,13 @@ inline void InspectorInstrumentation::didFailLoading(Frame* frame, DocumentLoade
|
||||
didFailLoadingImpl(*instrumentingAgents, identifier, loader, error);
|
||||
}
|
||||
|
||||
@ -1608,7 +1627,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
inline void InspectorInstrumentation::didFailLoading(WorkerGlobalScope& workerGlobalScope, unsigned long identifier, const ResourceError& error)
|
||||
{
|
||||
didFailLoadingImpl(instrumentingAgentsForWorkerGlobalScope(workerGlobalScope), identifier, nullptr, error);
|
||||
@@ -1186,13 +1207,6 @@ inline void InspectorInstrumentation::frameDocumentUpdated(Frame& frame)
|
||||
@@ -1186,13 +1208,6 @@ inline void InspectorInstrumentation::frameDocumentUpdated(Frame& frame)
|
||||
frameDocumentUpdatedImpl(*instrumentingAgents, frame);
|
||||
}
|
||||
|
||||
@ -1622,7 +1641,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
inline void InspectorInstrumentation::frameStartedLoading(Frame& frame)
|
||||
{
|
||||
FAST_RETURN_IF_NO_FRONTENDS(void());
|
||||
@@ -1221,6 +1235,13 @@ inline void InspectorInstrumentation::frameClearedScheduledNavigation(Frame& fra
|
||||
@@ -1221,6 +1236,13 @@ inline void InspectorInstrumentation::frameClearedScheduledNavigation(Frame& fra
|
||||
frameClearedScheduledNavigationImpl(*instrumentingAgents, frame);
|
||||
}
|
||||
|
||||
@ -1636,7 +1655,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
inline void InspectorInstrumentation::defaultAppearanceDidChange(Page& page, bool useDarkAppearance)
|
||||
{
|
||||
FAST_RETURN_IF_NO_FRONTENDS(void());
|
||||
@@ -1650,6 +1671,36 @@ inline void InspectorInstrumentation::renderLayerDestroyed(Page* page, const Ren
|
||||
@@ -1650,6 +1672,36 @@ inline void InspectorInstrumentation::renderLayerDestroyed(Page* page, const Ren
|
||||
renderLayerDestroyedImpl(*instrumentingAgents, renderLayer);
|
||||
}
|
||||
|
||||
@ -1662,7 +1681,7 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
+ return false;
|
||||
+}
|
||||
+
|
||||
+inline bool InspectorInstrumentation::interceptRequest(ResourceLoader& loader, CompletionHandler<void(bool handled)>&& handler)
|
||||
+inline bool InspectorInstrumentation::interceptRequest(ResourceLoader& loader, Function<void(bool handled)>&& handler)
|
||||
+{
|
||||
+ FAST_RETURN_IF_NO_FRONTENDS(false);
|
||||
+ if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(loader.frame()))
|
||||
@ -1674,14 +1693,14 @@ index dbf82205db5bccbe169ed0e947d1ad83dd850fd6..e050d993b8cd8ab18a832283094e25fd
|
||||
{
|
||||
return context ? instrumentingAgentsForContext(*context) : nullptr;
|
||||
diff --git a/Source/WebCore/inspector/InspectorInstrumentationWebKit.cpp b/Source/WebCore/inspector/InspectorInstrumentationWebKit.cpp
|
||||
index 954aaf121a9fa507d83bc10ae37de1f128f7dcfc..043bfa8b5302e599e3fd2ad729e09acb211a0ec3 100644
|
||||
index 954aaf121a9fa507d83bc10ae37de1f128f7dcfc..9f16be3dbcf4857742ec2ab131e2b2f962a2a47c 100644
|
||||
--- a/Source/WebCore/inspector/InspectorInstrumentationWebKit.cpp
|
||||
+++ b/Source/WebCore/inspector/InspectorInstrumentationWebKit.cpp
|
||||
@@ -30,6 +30,11 @@
|
||||
|
||||
namespace WebCore {
|
||||
|
||||
+bool InspectorInstrumentationWebKit::interceptRequestInternal(ResourceLoader& loader, CompletionHandler<void(bool handled)>&& handler)
|
||||
+bool InspectorInstrumentationWebKit::interceptRequestInternal(ResourceLoader& loader, Function<void(bool handled)>&& handler)
|
||||
+{
|
||||
+ return InspectorInstrumentation::interceptRequest(loader, WTFMove(handler));
|
||||
+}
|
||||
@ -1690,24 +1709,32 @@ index 954aaf121a9fa507d83bc10ae37de1f128f7dcfc..043bfa8b5302e599e3fd2ad729e09acb
|
||||
{
|
||||
return InspectorInstrumentation::shouldInterceptResponse(frame, response);
|
||||
diff --git a/Source/WebCore/inspector/InspectorInstrumentationWebKit.h b/Source/WebCore/inspector/InspectorInstrumentationWebKit.h
|
||||
index b67e89b80b4e7a8586cac81ade5d58a1bcb0d431..e7b2cebbe0054802fb5378f269570c28497ed0ff 100644
|
||||
index b67e89b80b4e7a8586cac81ade5d58a1bcb0d431..c468bc0981d1fb13272b28095f9f7584840b5861 100644
|
||||
--- a/Source/WebCore/inspector/InspectorInstrumentationWebKit.h
|
||||
+++ b/Source/WebCore/inspector/InspectorInstrumentationWebKit.h
|
||||
@@ -36,14 +36,22 @@ class SharedBuffer;
|
||||
@@ -27,6 +27,7 @@
|
||||
|
||||
#include "InspectorInstrumentationPublic.h"
|
||||
#include <wtf/CompletionHandler.h>
|
||||
+#include <wtf/Function.h>
|
||||
|
||||
namespace WebCore {
|
||||
|
||||
@@ -36,14 +37,22 @@ class SharedBuffer;
|
||||
|
||||
class WEBCORE_EXPORT InspectorInstrumentationWebKit {
|
||||
public:
|
||||
+ static bool interceptRequest(ResourceLoader&, CompletionHandler<void(bool handled)>&&);
|
||||
+ static bool interceptRequest(ResourceLoader&, Function<void(bool handled)>&&);
|
||||
static bool shouldInterceptResponse(const Frame*, const ResourceResponse&);
|
||||
static void interceptResponse(const Frame*, const ResourceResponse&, unsigned long identifier, CompletionHandler<void(const ResourceResponse&, RefPtr<SharedBuffer>)>&&);
|
||||
|
||||
private:
|
||||
+ static bool interceptRequestInternal(ResourceLoader&, CompletionHandler<void(bool handled)>&&);
|
||||
+ static bool interceptRequestInternal(ResourceLoader&, Function<void(bool handled)>&&);
|
||||
static bool shouldInterceptResponseInternal(const Frame&, const ResourceResponse&);
|
||||
static void interceptResponseInternal(const Frame&, const ResourceResponse&, unsigned long identifier, CompletionHandler<void(const ResourceResponse&, RefPtr<SharedBuffer>)>&&);
|
||||
};
|
||||
|
||||
+inline bool InspectorInstrumentationWebKit::interceptRequest(ResourceLoader& loader, CompletionHandler<void(bool handled)>&& handler)
|
||||
+inline bool InspectorInstrumentationWebKit::interceptRequest(ResourceLoader& loader, Function<void(bool handled)>&& handler)
|
||||
+{
|
||||
+ FAST_RETURN_IF_NO_FRONTENDS(false);
|
||||
+ return interceptRequestInternal(loader, WTFMove(handler));
|
||||
@ -2080,7 +2107,7 @@ index b578660fbb3ce176e4e0aeb5a22021dc880e47f0..a7c968bc9f88c7d26e1887bb53106b4a
|
||||
class Page;
|
||||
class SecurityOrigin;
|
||||
diff --git a/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp b/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp
|
||||
index ca8f169d18a697a4dea405c933398e67feef01c6..f5bb8f4580cb1e1c1121b47063ce4da66aa27aef 100644
|
||||
index ca8f169d18a697a4dea405c933398e67feef01c6..e1dfdf06bccaf40ca52622cd1b2dd670e3d80ca8 100644
|
||||
--- a/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp
|
||||
+++ b/Source/WebCore/inspector/agents/InspectorNetworkAgent.cpp
|
||||
@@ -56,6 +56,7 @@
|
||||
@ -2170,7 +2197,7 @@ index ca8f169d18a697a4dea405c933398e67feef01c6..f5bb8f4580cb1e1c1121b47063ce4da6
|
||||
|
||||
-void InspectorNetworkAgent::interceptContinue(ErrorString& errorString, const String& requestId)
|
||||
-{
|
||||
+bool InspectorNetworkAgent::interceptRequest(ResourceLoader& loader, CompletionHandler<void(bool handled)>&& handler) {
|
||||
+bool InspectorNetworkAgent::interceptRequest(ResourceLoader& loader, Function<void(bool handled)>&& handler) {
|
||||
+ if (!m_interceptionEnabled || !m_interceptRequests)
|
||||
+ return false;
|
||||
+ String requestId = IdentifiersFactory::requestId(loader.identifier());
|
||||
@ -2332,7 +2359,7 @@ index ca8f169d18a697a4dea405c933398e67feef01c6..f5bb8f4580cb1e1c1121b47063ce4da6
|
||||
{
|
||||
m_resourcesData->clear(loaderIdentifier(&loader));
|
||||
diff --git a/Source/WebCore/inspector/agents/InspectorNetworkAgent.h b/Source/WebCore/inspector/agents/InspectorNetworkAgent.h
|
||||
index a68f84520736977c8b9216616c5a178fbf5275d6..bee832c4c65f9a4487c0d0b7c6fd6985ae17f885 100644
|
||||
index a68f84520736977c8b9216616c5a178fbf5275d6..b839460cf769887f49d1944d780a526fcb681b90 100644
|
||||
--- a/Source/WebCore/inspector/agents/InspectorNetworkAgent.h
|
||||
+++ b/Source/WebCore/inspector/agents/InspectorNetworkAgent.h
|
||||
@@ -87,11 +87,13 @@ public:
|
||||
@ -2356,7 +2383,7 @@ index a68f84520736977c8b9216616c5a178fbf5275d6..bee832c4c65f9a4487c0d0b7c6fd6985
|
||||
bool willInterceptRequest(const ResourceRequest&);
|
||||
bool shouldInterceptResponse(const ResourceResponse&);
|
||||
void interceptResponse(const ResourceResponse&, unsigned long identifier, CompletionHandler<void(const ResourceResponse&, RefPtr<SharedBuffer>)>&&);
|
||||
+ bool interceptRequest(ResourceLoader& loader, CompletionHandler<void(bool handled)>&&);
|
||||
+ bool interceptRequest(ResourceLoader& loader, Function<void(bool handled)>&&);
|
||||
|
||||
void searchOtherRequests(const JSC::Yarr::RegularExpression&, RefPtr<JSON::ArrayOf<Inspector::Protocol::Page::SearchResult>>&);
|
||||
void searchInRequest(ErrorString&, const String& requestId, const String& query, bool caseSensitive, bool isRegex, RefPtr<JSON::ArrayOf<Inspector::Protocol::GenericTypes::SearchMatch>>&);
|
||||
@ -7806,7 +7833,7 @@ index 846a5aa27dfab3d274cffa4873861f2587d17fd8..cf0dc99f5601636c48abff09cd47ace4
|
||||
}
|
||||
|
||||
diff --git a/Source/WebKit/UIProcess/WebPageInspectorController.cpp b/Source/WebKit/UIProcess/WebPageInspectorController.cpp
|
||||
index 1ee28bf716374371433215148aa20a51927a8a33..527957a5424a0c5ebdd174f97f4672f9f711610d 100644
|
||||
index 1ee28bf716374371433215148aa20a51927a8a33..0b9d8337877111bf4ba9c7bd0a78edc969ffe2fc 100644
|
||||
--- a/Source/WebKit/UIProcess/WebPageInspectorController.cpp
|
||||
+++ b/Source/WebKit/UIProcess/WebPageInspectorController.cpp
|
||||
@@ -26,10 +26,16 @@
|
||||
@ -7930,28 +7957,32 @@ index 1ee28bf716374371433215148aa20a51927a8a33..527957a5424a0c5ebdd174f97f4672f9
|
||||
m_frontendRouter->connectFrontend(frontendChannel);
|
||||
|
||||
if (connectingFirstFrontend)
|
||||
@@ -98,8 +168,10 @@ void WebPageInspectorController::disconnectFrontend(FrontendChannel& frontendCha
|
||||
@@ -98,8 +168,12 @@ void WebPageInspectorController::disconnectFrontend(FrontendChannel& frontendCha
|
||||
m_frontendRouter->disconnectFrontend(frontendChannel);
|
||||
|
||||
bool disconnectingLastFrontend = !m_frontendRouter->hasFrontends();
|
||||
- if (disconnectingLastFrontend)
|
||||
+ if (disconnectingLastFrontend) {
|
||||
m_agents.willDestroyFrontendAndBackend(DisconnectReason::InspectorDestroyed);
|
||||
+ for (auto& it : m_pendingNavigations)
|
||||
+ it.value("Page closed", 0);
|
||||
+ m_pendingNavigations.clear();
|
||||
+ }
|
||||
|
||||
m_page.didChangeInspectorFrontendCount(m_frontendRouter->frontendCount());
|
||||
|
||||
@@ -122,6 +194,8 @@ void WebPageInspectorController::disconnectAllFrontends()
|
||||
@@ -122,6 +196,10 @@ void WebPageInspectorController::disconnectAllFrontends()
|
||||
// Disconnect any remaining remote frontends.
|
||||
m_frontendRouter->disconnectAllFrontends();
|
||||
|
||||
+ for (auto& it : m_pendingNavigations)
|
||||
+ it.value("Page closed", 0);
|
||||
+ m_pendingNavigations.clear();
|
||||
+
|
||||
m_page.didChangeInspectorFrontendCount(m_frontendRouter->frontendCount());
|
||||
|
||||
#if ENABLE(REMOTE_INSPECTOR)
|
||||
@@ -134,6 +208,11 @@ void WebPageInspectorController::dispatchMessageFromFrontend(const String& messa
|
||||
@@ -134,6 +212,11 @@ void WebPageInspectorController::dispatchMessageFromFrontend(const String& messa
|
||||
m_backendDispatcher->dispatch(message);
|
||||
}
|
||||
|
||||
@ -7963,7 +7994,7 @@ index 1ee28bf716374371433215148aa20a51927a8a33..527957a5424a0c5ebdd174f97f4672f9
|
||||
#if ENABLE(REMOTE_INSPECTOR)
|
||||
void WebPageInspectorController::setIndicating(bool indicating)
|
||||
{
|
||||
@@ -148,6 +227,55 @@ void WebPageInspectorController::setIndicating(bool indicating)
|
||||
@@ -148,6 +231,55 @@ void WebPageInspectorController::setIndicating(bool indicating)
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -8019,7 +8050,7 @@ index 1ee28bf716374371433215148aa20a51927a8a33..527957a5424a0c5ebdd174f97f4672f9
|
||||
void WebPageInspectorController::createInspectorTarget(const String& targetId, Inspector::InspectorTargetType type)
|
||||
{
|
||||
addTarget(InspectorTargetProxy::create(m_page, targetId, type));
|
||||
@@ -186,7 +314,7 @@ void WebPageInspectorController::setContinueLoadingCallback(const ProvisionalPag
|
||||
@@ -186,7 +318,7 @@ void WebPageInspectorController::setContinueLoadingCallback(const ProvisionalPag
|
||||
|
||||
void WebPageInspectorController::didCreateProvisionalPage(ProvisionalPageProxy& provisionalPage)
|
||||
{
|
||||
@ -8028,7 +8059,7 @@ index 1ee28bf716374371433215148aa20a51927a8a33..527957a5424a0c5ebdd174f97f4672f9
|
||||
}
|
||||
|
||||
void WebPageInspectorController::willDestroyProvisionalPage(const ProvisionalPageProxy& provisionalPage)
|
||||
@@ -218,4 +346,16 @@ void WebPageInspectorController::addTarget(std::unique_ptr<InspectorTargetProxy>
|
||||
@@ -218,4 +350,16 @@ void WebPageInspectorController::addTarget(std::unique_ptr<InspectorTargetProxy>
|
||||
m_targets.set(target->identifier(), WTFMove(target));
|
||||
}
|
||||
|
||||
@ -10776,7 +10807,7 @@ index fbdf254ec42dc736ca0a00f521de8339f08ffbf2..5bd0472c37cc18d5dd6680e833fab394
|
||||
// If async scrolling is disabled, we have to force-disable async frame and overflow scrolling
|
||||
// to keep the non-async scrolling on those elements working.
|
||||
diff --git a/Source/WebKit/WebProcess/WebPage/WebDocumentLoader.cpp b/Source/WebKit/WebProcess/WebPage/WebDocumentLoader.cpp
|
||||
index b2d54a627b94583bda3518c4e7c3364481b605a4..62f1dc0b6075e867ddd19a216bdf0d374d326ff7 100644
|
||||
index b2d54a627b94583bda3518c4e7c3364481b605a4..d407e32b6a7b8b27925c49391e86d42c9b3dfa8b 100644
|
||||
--- a/Source/WebKit/WebProcess/WebPage/WebDocumentLoader.cpp
|
||||
+++ b/Source/WebKit/WebProcess/WebPage/WebDocumentLoader.cpp
|
||||
@@ -47,6 +47,14 @@ void WebDocumentLoader::detachFromFrame()
|
||||
@ -10785,7 +10816,7 @@ index b2d54a627b94583bda3518c4e7c3364481b605a4..62f1dc0b6075e867ddd19a216bdf0d37
|
||||
|
||||
+void WebDocumentLoader::replacedByFragmentNavigation(Frame& frame)
|
||||
+{
|
||||
+ ASSERT(!frame());
|
||||
+ ASSERT(!this->frame());
|
||||
+ // Notify WebPageProxy that the navigation has been converted into same page navigation.
|
||||
+ if (m_navigationID)
|
||||
+ WebFrame::fromCoreFrame(frame)->documentLoaderDetached(m_navigationID);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user