feat(webkit): emulate background and device scale (#157)

This commit is contained in:
Pavel Feldman 2019-12-05 14:44:35 -08:00 committed by Andrey Lushnikov
parent b84d3c6cbe
commit 69d2d81c05
2 changed files with 119 additions and 45 deletions

View File

@ -1 +1 @@
1013 1014

View File

@ -1,6 +1,6 @@
From b33decbe420d2874925adee8e4dd36bc9255072c Mon Sep 17 00:00:00 2001 From 058f2450a6d88f65e939bf61b9b54a15ac0cbfd6 Mon Sep 17 00:00:00 2001
From: Andrey Lushnikov <lushnikov@chromium.org> From: Pavel Feldman <pavel.feldman@gmail.com>
Date: Thu, 5 Dec 2019 13:50:00 -0800 Date: Thu, 5 Dec 2019 14:38:40 -0800
Subject: [PATCH] chore: bootstrap Subject: [PATCH] chore: bootstrap
--- ---
@ -14,23 +14,24 @@ Subject: [PATCH] chore: bootstrap
.../inspector/protocol/Browser.json | 106 ++++ .../inspector/protocol/Browser.json | 106 ++++
.../inspector/protocol/DOM.json | 39 ++ .../inspector/protocol/DOM.json | 39 ++
.../inspector/protocol/Dialog.json | 36 ++ .../inspector/protocol/Dialog.json | 36 ++
.../inspector/protocol/Emulation.json | 21 + .../inspector/protocol/Emulation.json | 22 +
.../inspector/protocol/Input.json | 160 ++++++ .../inspector/protocol/Input.json | 160 ++++++
.../inspector/protocol/Page.json | 90 +++- .../inspector/protocol/Page.json | 97 +++-
.../inspector/protocol/Target.json | 20 +- .../inspector/protocol/Target.json | 20 +-
Source/WebCore/html/FileInputType.cpp | 6 + Source/WebCore/html/FileInputType.cpp | 6 +
.../inspector/InspectorInstrumentation.cpp | 14 +- .../inspector/InspectorInstrumentation.cpp | 14 +-
.../inspector/InspectorInstrumentation.h | 21 + .../inspector/InspectorInstrumentation.h | 21 +
.../inspector/agents/InspectorDOMAgent.cpp | 103 ++++ .../inspector/agents/InspectorDOMAgent.cpp | 108 +++-
.../inspector/agents/InspectorDOMAgent.h | 2 + .../inspector/agents/InspectorDOMAgent.h | 4 +
.../inspector/agents/InspectorPageAgent.cpp | 509 +++++++++++++++++- .../agents/InspectorDOMStorageAgent.h | 1 +
.../inspector/agents/InspectorPageAgent.h | 18 +- .../inspector/agents/InspectorPageAgent.cpp | 523 +++++++++++++++++-
.../inspector/agents/InspectorPageAgent.h | 19 +-
.../agents/page/PageRuntimeAgent.cpp | 14 +- .../agents/page/PageRuntimeAgent.cpp | 14 +-
Source/WebCore/loader/FrameLoader.cpp | 1 + Source/WebCore/loader/FrameLoader.cpp | 1 +
Source/WebCore/page/History.cpp | 1 + Source/WebCore/page/History.cpp | 1 +
.../WebCore/platform/PlatformKeyboardEvent.h | 2 + .../WebCore/platform/PlatformKeyboardEvent.h | 2 +
.../platform/gtk/PlatformKeyboardEventGtk.cpp | 242 +++++++++ .../platform/gtk/PlatformKeyboardEventGtk.cpp | 242 ++++++++
.../libwpe/PlatformKeyboardEventLibWPE.cpp | 240 +++++++++ .../libwpe/PlatformKeyboardEventLibWPE.cpp | 240 ++++++++
.../soup/NetworkStorageSessionSoup.cpp | 9 +- .../soup/NetworkStorageSessionSoup.cpp | 9 +-
.../WebKit/NetworkProcess/NetworkProcess.cpp | 30 +- .../WebKit/NetworkProcess/NetworkProcess.cpp | 30 +-
Source/WebKit/NetworkProcess/NetworkProcess.h | 5 + Source/WebKit/NetworkProcess/NetworkProcess.h | 5 +
@ -87,7 +88,7 @@ Subject: [PATCH] chore: bootstrap
.../Mock/MockAuthenticatorManager.cpp | 4 +- .../Mock/MockAuthenticatorManager.cpp | 4 +-
.../UIProcess/WebPageInspectorController.cpp | 56 +- .../UIProcess/WebPageInspectorController.cpp | 56 +-
.../UIProcess/WebPageInspectorController.h | 8 + .../UIProcess/WebPageInspectorController.h | 8 +
.../WebPageInspectorEmulationAgent.cpp | 47 ++ .../WebPageInspectorEmulationAgent.cpp | 48 ++
.../WebPageInspectorEmulationAgent.h | 42 ++ .../WebPageInspectorEmulationAgent.h | 42 ++
.../UIProcess/WebPageInspectorInputAgent.cpp | 235 ++++++++ .../UIProcess/WebPageInspectorInputAgent.cpp | 235 ++++++++
.../UIProcess/WebPageInspectorInputAgent.h | 54 ++ .../UIProcess/WebPageInspectorInputAgent.h | 54 ++
@ -106,7 +107,7 @@ Subject: [PATCH] chore: bootstrap
.../WebKit/UIProcess/mac/PageClientImplMac.mm | 5 + .../WebKit/UIProcess/mac/PageClientImplMac.mm | 5 +
.../mac/WebPageInspectorEmulationAgentMac.mm | 21 + .../mac/WebPageInspectorEmulationAgentMac.mm | 21 +
.../mac/WebPageInspectorInputAgentMac.mm | 14 + .../mac/WebPageInspectorInputAgentMac.mm | 14 +
.../mac/WebPageInspectorTargetProxyMac.mm | 18 + .../mac/WebPageInspectorTargetProxyMac.mm | 20 +
.../wpe/WebPageInspectorEmulationAgentWPE.cpp | 18 + .../wpe/WebPageInspectorEmulationAgentWPE.cpp | 18 +
.../wpe/WebPageInspectorInputAgentWPE.cpp | 76 +++ .../wpe/WebPageInspectorInputAgentWPE.cpp | 76 +++
.../wpe/WebPageInspectorTargetProxyWPE.cpp | 18 + .../wpe/WebPageInspectorTargetProxyWPE.cpp | 18 +
@ -122,7 +123,7 @@ Subject: [PATCH] chore: bootstrap
.../mac/WK2BrowserWindowController.h | 3 + .../mac/WK2BrowserWindowController.h | 3 +
.../mac/WK2BrowserWindowController.m | 37 +- .../mac/WK2BrowserWindowController.m | 37 +-
Tools/MiniBrowser/wpe/main.cpp | 37 ++ Tools/MiniBrowser/wpe/main.cpp | 37 ++
118 files changed, 4678 insertions(+), 75 deletions(-) 119 files changed, 4710 insertions(+), 77 deletions(-)
create mode 100644 Source/JavaScriptCore/inspector/protocol/Browser.json create mode 100644 Source/JavaScriptCore/inspector/protocol/Browser.json
create mode 100644 Source/JavaScriptCore/inspector/protocol/Dialog.json create mode 100644 Source/JavaScriptCore/inspector/protocol/Dialog.json
create mode 100644 Source/JavaScriptCore/inspector/protocol/Emulation.json create mode 100644 Source/JavaScriptCore/inspector/protocol/Emulation.json
@ -695,10 +696,10 @@ index 00000000000..79edea03fed
+} +}
diff --git a/Source/JavaScriptCore/inspector/protocol/Emulation.json b/Source/JavaScriptCore/inspector/protocol/Emulation.json diff --git a/Source/JavaScriptCore/inspector/protocol/Emulation.json b/Source/JavaScriptCore/inspector/protocol/Emulation.json
new file mode 100644 new file mode 100644
index 00000000000..af0f39e5249 index 00000000000..759390956ea
--- /dev/null --- /dev/null
+++ b/Source/JavaScriptCore/inspector/protocol/Emulation.json +++ b/Source/JavaScriptCore/inspector/protocol/Emulation.json
@@ -0,0 +1,21 @@ @@ -0,0 +1,22 @@
+{ +{
+ "domain": "Emulation", + "domain": "Emulation",
+ "availability": ["web"], + "availability": ["web"],
@ -708,7 +709,8 @@ index 00000000000..af0f39e5249
+ "description": "Overrides device metrics with provided values.", + "description": "Overrides device metrics with provided values.",
+ "parameters": [ + "parameters": [
+ { "name": "width", "type": "integer" }, + { "name": "width", "type": "integer" },
+ { "name": "height", "type": "integer" } + { "name": "height", "type": "integer" },
+ { "name": "deviceScaleFactor", "type": "number" }
+ ] + ]
+ }, + },
+ { + {
@ -887,7 +889,7 @@ index 00000000000..79bbe73b0df
+ ] + ]
+} +}
diff --git a/Source/JavaScriptCore/inspector/protocol/Page.json b/Source/JavaScriptCore/inspector/protocol/Page.json diff --git a/Source/JavaScriptCore/inspector/protocol/Page.json b/Source/JavaScriptCore/inspector/protocol/Page.json
index 367d1f235a8..b2ed9177528 100644 index 367d1f235a8..d7fa0aa81c5 100644
--- a/Source/JavaScriptCore/inspector/protocol/Page.json --- a/Source/JavaScriptCore/inspector/protocol/Page.json
+++ b/Source/JavaScriptCore/inspector/protocol/Page.json +++ b/Source/JavaScriptCore/inspector/protocol/Page.json
@@ -108,6 +108,40 @@ @@ -108,6 +108,40 @@
@ -953,7 +955,7 @@ index 367d1f235a8..b2ed9177528 100644
] ]
}, },
{ {
@@ -288,6 +331,27 @@ @@ -288,6 +331,34 @@
"returns": [ "returns": [
{ "name": "data", "type": "string", "description": "Base64-encoded web archive." } { "name": "data", "type": "string", "description": "Base64-encoded web archive." }
] ]
@ -977,11 +979,18 @@ index 367d1f235a8..b2ed9177528 100644
+ "description": "Intercepts file chooser dialog", + "description": "Intercepts file chooser dialog",
+ "parameters": [ + "parameters": [
+ { "name": "enabled", "type": "boolean", "description": "True to enable." } + { "name": "enabled", "type": "boolean", "description": "True to enable." }
+ ]
+ },
+ {
+ "name": "setDefaultBackgroundColorOverride",
+ "description": "Sets or clears an override of the default background color of the frame. This override is used if the content does not specify one.",
+ "parameters": [
+ { "name": "color", "$ref": "DOM.RGBAColor", "optional": true, "description": "RGBA of the default background color. If not specified, any existing override will be cleared." }
+ ] + ]
} }
], ],
"events": [ "events": [
@@ -346,12 +410,36 @@ @@ -346,12 +417,36 @@
{ "name": "frameId", "$ref": "Network.FrameId", "description": "Id of the frame that has cleared its scheduled navigation." } { "name": "frameId", "$ref": "Network.FrameId", "description": "Id of the frame that has cleared its scheduled navigation." }
] ]
}, },
@ -1194,7 +1203,7 @@ index 6698431f316..486a6781d81 100644
{ {
return context ? instrumentingAgentsForContext(*context) : nullptr; return context ? instrumentingAgentsForContext(*context) : nullptr;
diff --git a/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp b/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp diff --git a/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp b/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
index aecc79bc0ca..57ce50c1f94 100644 index aecc79bc0ca..a5e1de17d9e 100644
--- a/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp --- a/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
+++ b/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp +++ b/Source/WebCore/inspector/agents/InspectorDOMAgent.cpp
@@ -61,12 +61,16 @@ @@ -61,12 +61,16 @@
@ -1228,7 +1237,26 @@ index aecc79bc0ca..57ce50c1f94 100644
#include "StaticNodeList.h" #include "StaticNodeList.h"
#include "StyleProperties.h" #include "StyleProperties.h"
#include "StyleResolver.h" #include "StyleResolver.h"
@@ -1475,6 +1481,61 @@ void InspectorDOMAgent::setInspectedNode(ErrorString& errorString, int nodeId) @@ -128,7 +134,8 @@ using namespace HTMLNames;
static const size_t maxTextSize = 10000;
static const UChar ellipsisUChar[] = { 0x2026, 0 };
-static Color parseColor(const JSON::Object* colorObject)
+// static
+Color InspectorDOMAgent::parseColor(const JSON::Object* colorObject)
{
if (!colorObject)
return Color::transparent;
@@ -157,7 +164,7 @@ static Color parseConfigColor(const String& fieldName, const JSON::Object* confi
RefPtr<JSON::Object> colorObject;
configObject->getObject(fieldName, colorObject);
- return parseColor(colorObject.get());
+ return InspectorDOMAgent::parseColor(colorObject.get());
}
static bool parseQuad(const JSON::Array& quadArray, FloatQuad* quad)
@@ -1475,6 +1482,61 @@ void InspectorDOMAgent::setInspectedNode(ErrorString& errorString, int nodeId)
m_suppressEventListenerChangedEvent = false; m_suppressEventListenerChangedEvent = false;
} }
@ -1290,7 +1318,7 @@ index aecc79bc0ca..57ce50c1f94 100644
void InspectorDOMAgent::resolveNode(ErrorString& errorString, int nodeId, const String* objectGroup, RefPtr<Inspector::Protocol::Runtime::RemoteObject>& result) void InspectorDOMAgent::resolveNode(ErrorString& errorString, int nodeId, const String* objectGroup, RefPtr<Inspector::Protocol::Runtime::RemoteObject>& result)
{ {
String objectGroupName = objectGroup ? *objectGroup : emptyString(); String objectGroupName = objectGroup ? *objectGroup : emptyString();
@@ -2686,4 +2747,46 @@ void InspectorDOMAgent::setAllowEditingUserAgentShadowTrees(ErrorString&, bool a @@ -2686,4 +2748,46 @@ void InspectorDOMAgent::setAllowEditingUserAgentShadowTrees(ErrorString&, bool a
m_allowEditingUserAgentShadowTrees = allow; m_allowEditingUserAgentShadowTrees = allow;
} }
@ -1338,10 +1366,26 @@ index aecc79bc0ca..57ce50c1f94 100644
+ +
} // namespace WebCore } // namespace WebCore
diff --git a/Source/WebCore/inspector/agents/InspectorDOMAgent.h b/Source/WebCore/inspector/agents/InspectorDOMAgent.h diff --git a/Source/WebCore/inspector/agents/InspectorDOMAgent.h b/Source/WebCore/inspector/agents/InspectorDOMAgent.h
index 51639abeb84..16080f2c017 100644 index 51639abeb84..0ed9a1d80d5 100644
--- a/Source/WebCore/inspector/agents/InspectorDOMAgent.h --- a/Source/WebCore/inspector/agents/InspectorDOMAgent.h
+++ b/Source/WebCore/inspector/agents/InspectorDOMAgent.h +++ b/Source/WebCore/inspector/agents/InspectorDOMAgent.h
@@ -148,6 +148,8 @@ public: @@ -54,6 +54,7 @@ namespace WebCore {
class AXCoreObject;
class CharacterData;
+class Color;
class DOMEditor;
class Document;
class Element;
@@ -88,6 +89,7 @@ public:
static String toErrorString(Exception&&);
static String documentURLString(Document*);
+ static Color parseColor(const JSON::Object*);
// We represent embedded doms as a part of the same hierarchy. Hence we treat children of frame owners differently.
// We also skip whitespace text nodes conditionally. Following methods encapsulate these specifics.
@@ -148,6 +150,8 @@ public:
void focus(ErrorString&, int nodeId) override; void focus(ErrorString&, int nodeId) override;
void setInspectedNode(ErrorString&, int nodeId) override; void setInspectedNode(ErrorString&, int nodeId) override;
void setAllowEditingUserAgentShadowTrees(ErrorString&, bool allow) final; void setAllowEditingUserAgentShadowTrees(ErrorString&, bool allow) final;
@ -1350,8 +1394,20 @@ index 51639abeb84..16080f2c017 100644
// InspectorInstrumentation // InspectorInstrumentation
int identifierForNode(Node&); int identifierForNode(Node&);
diff --git a/Source/WebCore/inspector/agents/InspectorDOMStorageAgent.h b/Source/WebCore/inspector/agents/InspectorDOMStorageAgent.h
index b578660fbb3..a7c968bc9f8 100644
--- a/Source/WebCore/inspector/agents/InspectorDOMStorageAgent.h
+++ b/Source/WebCore/inspector/agents/InspectorDOMStorageAgent.h
@@ -40,6 +40,7 @@ class DOMStorageFrontendDispatcher;
namespace WebCore {
+class Color;
class Frame;
class Page;
class SecurityOrigin;
diff --git a/Source/WebCore/inspector/agents/InspectorPageAgent.cpp b/Source/WebCore/inspector/agents/InspectorPageAgent.cpp diff --git a/Source/WebCore/inspector/agents/InspectorPageAgent.cpp b/Source/WebCore/inspector/agents/InspectorPageAgent.cpp
index f2e228b7f74..1e6ef4eec98 100644 index f2e228b7f74..f31341803b7 100644
--- a/Source/WebCore/inspector/agents/InspectorPageAgent.cpp --- a/Source/WebCore/inspector/agents/InspectorPageAgent.cpp
+++ b/Source/WebCore/inspector/agents/InspectorPageAgent.cpp +++ b/Source/WebCore/inspector/agents/InspectorPageAgent.cpp
@@ -32,6 +32,8 @@ @@ -32,6 +32,8 @@
@ -1484,7 +1540,7 @@ index f2e228b7f74..1e6ef4eec98 100644
Ref<Inspector::Protocol::Page::Frame> InspectorPageAgent::buildObjectForFrame(Frame* frame) Ref<Inspector::Protocol::Page::Frame> InspectorPageAgent::buildObjectForFrame(Frame* frame)
{ {
ASSERT_ARG(frame, frame); ASSERT_ARG(frame, frame);
@@ -986,4 +1034,455 @@ void InspectorPageAgent::archive(ErrorString& errorString, String* data) @@ -986,4 +1034,469 @@ void InspectorPageAgent::archive(ErrorString& errorString, String* data)
#endif #endif
} }
@ -1938,10 +1994,24 @@ index f2e228b7f74..1e6ef4eec98 100644
+void InspectorPageAgent::setInterceptFileChooserDialog(ErrorString&, bool enabled) { +void InspectorPageAgent::setInterceptFileChooserDialog(ErrorString&, bool enabled) {
+ m_interceptFileChooserDialog = enabled; + m_interceptFileChooserDialog = enabled;
+} +}
+
+void InspectorPageAgent::setDefaultBackgroundColorOverride(ErrorString& errorString, const JSON::Object* color)
+{
+ FrameView* view = m_inspectedPage.mainFrame().view();
+ if (!view) {
+ errorString = "Internal error: No frame view to set color two"_s;
+ return;
+ }
+ if (!color) {
+ view->updateBackgroundRecursively(Optional<Color>());
+ return;
+ }
+ view->updateBackgroundRecursively(InspectorDOMAgent::parseColor(color));
+}
+ +
} // namespace WebCore } // namespace WebCore
diff --git a/Source/WebCore/inspector/agents/InspectorPageAgent.h b/Source/WebCore/inspector/agents/InspectorPageAgent.h diff --git a/Source/WebCore/inspector/agents/InspectorPageAgent.h b/Source/WebCore/inspector/agents/InspectorPageAgent.h
index 4fd8c0b1016..eb18b0fc48e 100644 index 4fd8c0b1016..1c12c0a4e54 100644
--- a/Source/WebCore/inspector/agents/InspectorPageAgent.h --- a/Source/WebCore/inspector/agents/InspectorPageAgent.h
+++ b/Source/WebCore/inspector/agents/InspectorPageAgent.h +++ b/Source/WebCore/inspector/agents/InspectorPageAgent.h
@@ -40,10 +40,15 @@ @@ -40,10 +40,15 @@
@ -1971,7 +2041,7 @@ index 4fd8c0b1016..eb18b0fc48e 100644
void overrideUserAgent(ErrorString&, const String* value) override; void overrideUserAgent(ErrorString&, const String* value) override;
void overrideSetting(ErrorString&, const String& setting, const bool* value) override; void overrideSetting(ErrorString&, const String& setting, const bool* value) override;
void getCookies(ErrorString&, RefPtr<JSON::ArrayOf<Inspector::Protocol::Page::Cookie>>& cookies) override; void getCookies(ErrorString&, RefPtr<JSON::ArrayOf<Inspector::Protocol::Page::Cookie>>& cookies) override;
@@ -113,8 +120,11 @@ public: @@ -113,8 +120,12 @@ public:
void getCompositingBordersVisible(ErrorString&, bool* out_param) override; void getCompositingBordersVisible(ErrorString&, bool* out_param) override;
void setCompositingBordersVisible(ErrorString&, bool) override; void setCompositingBordersVisible(ErrorString&, bool) override;
void snapshotNode(ErrorString&, int nodeId, String* outDataURL) override; void snapshotNode(ErrorString&, int nodeId, String* outDataURL) override;
@ -1981,10 +2051,11 @@ index 4fd8c0b1016..eb18b0fc48e 100644
+ void insertText(ErrorString&, const String& text) override; + void insertText(ErrorString&, const String& text) override;
+ void accessibilitySnapshot(ErrorString&, RefPtr<Inspector::Protocol::Page::AXNode>& out_axNode) override; + void accessibilitySnapshot(ErrorString&, RefPtr<Inspector::Protocol::Page::AXNode>& out_axNode) override;
+ void setInterceptFileChooserDialog(ErrorString&, bool enabled) override; + void setInterceptFileChooserDialog(ErrorString&, bool enabled) override;
+ void setDefaultBackgroundColorOverride(ErrorString&, const JSON::Object*) override;
// InspectorInstrumentation // InspectorInstrumentation
void domContentEventFired(); void domContentEventFired();
@@ -126,6 +136,7 @@ public: @@ -126,6 +137,7 @@ public:
void frameStoppedLoading(Frame&); void frameStoppedLoading(Frame&);
void frameScheduledNavigation(Frame&, Seconds delay); void frameScheduledNavigation(Frame&, Seconds delay);
void frameClearedScheduledNavigation(Frame&); void frameClearedScheduledNavigation(Frame&);
@ -1992,7 +2063,7 @@ index 4fd8c0b1016..eb18b0fc48e 100644
void defaultAppearanceDidChange(bool useDarkAppearance); void defaultAppearanceDidChange(bool useDarkAppearance);
void applyUserAgentOverride(String&); void applyUserAgentOverride(String&);
void applyEmulatedMedia(String&); void applyEmulatedMedia(String&);
@@ -134,6 +145,7 @@ public: @@ -134,6 +146,7 @@ public:
void didLayout(); void didLayout();
void didScroll(); void didScroll();
void didRecalculateStyle(); void didRecalculateStyle();
@ -2000,7 +2071,7 @@ index 4fd8c0b1016..eb18b0fc48e 100644
Frame* frameForId(const String& frameId); Frame* frameForId(const String& frameId);
WEBCORE_EXPORT String frameId(Frame*); WEBCORE_EXPORT String frameId(Frame*);
@@ -153,6 +165,7 @@ private: @@ -153,6 +166,7 @@ private:
RefPtr<Inspector::PageBackendDispatcher> m_backendDispatcher; RefPtr<Inspector::PageBackendDispatcher> m_backendDispatcher;
Page& m_inspectedPage; Page& m_inspectedPage;
@ -2008,7 +2079,7 @@ index 4fd8c0b1016..eb18b0fc48e 100644
InspectorClient* m_client { nullptr }; InspectorClient* m_client { nullptr };
InspectorOverlay* m_overlay { nullptr }; InspectorOverlay* m_overlay { nullptr };
@@ -165,6 +178,7 @@ private: @@ -165,6 +179,7 @@ private:
String m_bootstrapScript; String m_bootstrapScript;
bool m_isFirstLayoutAfterOnLoad { false }; bool m_isFirstLayoutAfterOnLoad { false };
bool m_showPaintRects { false }; bool m_showPaintRects { false };
@ -4892,10 +4963,10 @@ index 78caedf0c0c..40f08285590 100644
void setIndicating(bool); void setIndicating(bool);
diff --git a/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.cpp b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.cpp diff --git a/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.cpp b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.cpp
new file mode 100644 new file mode 100644
index 00000000000..e903413c95d index 00000000000..f10c1651e64
--- /dev/null --- /dev/null
+++ b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.cpp +++ b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.cpp
@@ -0,0 +1,47 @@ @@ -0,0 +1,48 @@
+// Copyright (c) Microsoft Corporation. +// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license. +// Licensed under the MIT license.
+ +
@ -4930,9 +5001,10 @@ index 00000000000..e903413c95d
+{ +{
+} +}
+ +
+void WebPageInspectorEmulationAgent::setDeviceMetricsOverride(ErrorString& error, int in_width, int in_height) +void WebPageInspectorEmulationAgent::setDeviceMetricsOverride(ErrorString& error, int in_width, int in_height, double in_deviceScaleFactor)
+{ +{
+ platformSetSize(error, in_width, in_height); + platformSetSize(error, in_width, in_height);
+ m_page.setCustomDeviceScaleFactor(in_deviceScaleFactor);
+} +}
+ +
+void WebPageInspectorEmulationAgent::setJavaScriptEnabled(ErrorString&, bool enabled) +void WebPageInspectorEmulationAgent::setJavaScriptEnabled(ErrorString&, bool enabled)
@ -4945,7 +5017,7 @@ index 00000000000..e903413c95d
+} // namespace WebKit +} // namespace WebKit
diff --git a/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.h b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.h diff --git a/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.h b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.h
new file mode 100644 new file mode 100644
index 00000000000..b02753590b3 index 00000000000..0025b0be853
--- /dev/null --- /dev/null
+++ b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.h +++ b/Source/WebKit/UIProcess/WebPageInspectorEmulationAgent.h
@@ -0,0 +1,42 @@ @@ -0,0 +1,42 @@
@ -4980,7 +5052,7 @@ index 00000000000..b02753590b3
+ void didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*) override; + void didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*) override;
+ void willDestroyFrontendAndBackend(Inspector::DisconnectReason) override; + void willDestroyFrontendAndBackend(Inspector::DisconnectReason) override;
+ +
+ void setDeviceMetricsOverride(Inspector::ErrorString&, int in_width, int in_height) override; + void setDeviceMetricsOverride(Inspector::ErrorString&, int in_width, int in_height, double in_deviceScaleFactor) override;
+ void setJavaScriptEnabled(Inspector::ErrorString&, bool enabled) override; + void setJavaScriptEnabled(Inspector::ErrorString&, bool enabled) override;
+ +
+private: +private:
@ -6095,15 +6167,16 @@ index 00000000000..7ce9b71b0fb
+} // namespace WebKit +} // namespace WebKit
diff --git a/Source/WebKit/UIProcess/mac/WebPageInspectorTargetProxyMac.mm b/Source/WebKit/UIProcess/mac/WebPageInspectorTargetProxyMac.mm diff --git a/Source/WebKit/UIProcess/mac/WebPageInspectorTargetProxyMac.mm b/Source/WebKit/UIProcess/mac/WebPageInspectorTargetProxyMac.mm
new file mode 100644 new file mode 100644
index 00000000000..06a7e286abf index 00000000000..2061f6d129b
--- /dev/null --- /dev/null
+++ b/Source/WebKit/UIProcess/mac/WebPageInspectorTargetProxyMac.mm +++ b/Source/WebKit/UIProcess/mac/WebPageInspectorTargetProxyMac.mm
@@ -0,0 +1,18 @@ @@ -0,0 +1,20 @@
+// Copyright (c) Microsoft Corporation. +// Copyright (c) Microsoft Corporation.
+// Licensed under the MIT license. +// Licensed under the MIT license.
+ +
+#include "config.h" +#import "config.h"
+#include "WebPageInspectorTargetProxy.h" +#import "WebPageInspectorTargetProxy.h"
+#import "WebPageProxy.h"
+ +
+#if PLATFORM(MAC) +#if PLATFORM(MAC)
+ +
@ -6111,7 +6184,8 @@ index 00000000000..06a7e286abf
+ +
+void WebPageInspectorTargetProxy::platformActivate(String& error) const +void WebPageInspectorTargetProxy::platformActivate(String& error) const
+{ +{
+ error = "Not Implemented"; + NSWindow* window = m_page.platformWindow();
+ [window makeKeyAndOrderFront:nil];
+} +}
+ +
+} // namespace WebKit +} // namespace WebKit
@ -7094,5 +7168,5 @@ index 2d183d39412..d94d4f06fc5 100644
webkit_web_context_set_tls_errors_policy(webContext, WEBKIT_TLS_ERRORS_POLICY_IGNORE); webkit_web_context_set_tls_errors_policy(webContext, WEBKIT_TLS_ERRORS_POLICY_IGNORE);
-- --
2.22.1 2.24.0