diff --git a/browser_patches/webkit/BUILD_NUMBER b/browser_patches/webkit/BUILD_NUMBER index 8712126e91..962714522c 100644 --- a/browser_patches/webkit/BUILD_NUMBER +++ b/browser_patches/webkit/BUILD_NUMBER @@ -1,2 +1,2 @@ -1508 -Changed: dkolesa@igalia.com Thu Jul 8 03:28:52 PM CEST 2021 +1509 +Changed: pavel.feldman@gmail.com Tue 13 Jul 2021 04:31:53 PM PDT diff --git a/browser_patches/webkit/patches/bootstrap.diff b/browser_patches/webkit/patches/bootstrap.diff index 1ff54ee4e5..369e7ca147 100644 --- a/browser_patches/webkit/patches/bootstrap.diff +++ b/browser_patches/webkit/patches/bootstrap.diff @@ -926,10 +926,18 @@ index 882a2d56befef0aba460cc8ff041969e0d2c1ed3..71d4bfc4a4bc5a43bd2b98aefa316b4e ], "events": [ diff --git a/Source/JavaScriptCore/inspector/protocol/Page.json b/Source/JavaScriptCore/inspector/protocol/Page.json -index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169038e8226 100644 +index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..4417e5b855ce2d1e90c698bda09599ad48a0028b 100644 --- a/Source/JavaScriptCore/inspector/protocol/Page.json +++ b/Source/JavaScriptCore/inspector/protocol/Page.json -@@ -27,7 +27,7 @@ +@@ -21,13 +21,14 @@ + "ShowDebugBorders", + "ShowRepaintCounter", + "WebRTCEncryptionEnabled", +- "WebSecurityEnabled" ++ "WebSecurityEnabled", ++ "DeviceOrientationEventEnabled" + ] + }, { "id": "ResourceType", "type": "string", @@ -938,7 +946,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 "description": "Resource type as it was perceived by the rendering engine." }, { -@@ -49,6 +49,12 @@ +@@ -49,6 +50,12 @@ "enum": ["Light", "Dark"], "description": "Page appearance name." }, @@ -951,7 +959,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 { "id": "Frame", "type": "object", -@@ -112,6 +118,51 @@ +@@ -112,6 +119,51 @@ { "name": "secure", "type": "boolean", "description": "True if cookie is secure." }, { "name": "sameSite", "$ref": "CookieSameSitePolicy", "description": "Cookie Same-Site policy." } ] @@ -1003,7 +1011,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 } ], "commands": [ -@@ -131,6 +182,14 @@ +@@ -131,6 +183,14 @@ { "name": "revalidateAllResources", "type": "boolean", "optional": true, "description": "If true, all cached subresources will be revalidated when the main resource loads. Otherwise, only expired cached subresources will be revalidated (the default behavior for most WebKit clients)." } ] }, @@ -1018,7 +1026,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 { "name": "navigate", "description": "Navigates current page to the given URL.", -@@ -204,7 +263,8 @@ +@@ -204,7 +264,8 @@ "name": "setBootstrapScript", "targetTypes": ["page"], "parameters": [ @@ -1028,7 +1036,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 ] }, { -@@ -270,6 +330,28 @@ +@@ -270,6 +331,28 @@ { "name": "appearance", "$ref": "Appearance", "optional": true } ] }, @@ -1057,7 +1065,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 { "name": "snapshotNode", "description": "Capture a snapshot of the specified node that does not include unrelated layers.", -@@ -290,7 +372,8 @@ +@@ -290,7 +373,8 @@ { "name": "y", "type": "integer", "description": "Y coordinate" }, { "name": "width", "type": "integer", "description": "Rectangle width" }, { "name": "height", "type": "integer", "description": "Rectangle height" }, @@ -1067,7 +1075,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 ], "returns": [ { "name": "dataURL", "type": "string", "description": "Base64-encoded image data (PNG)." } -@@ -308,12 +391,77 @@ +@@ -308,12 +392,77 @@ { "name": "setScreenSizeOverride", "description": "Overrides screen size exposed to DOM and used in media queries for testing with provided values.", @@ -1146,7 +1154,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 } ], "events": [ -@@ -321,14 +469,16 @@ +@@ -321,14 +470,16 @@ "name": "domContentEventFired", "targetTypes": ["page"], "parameters": [ @@ -1165,7 +1173,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 ] }, { -@@ -338,6 +488,14 @@ +@@ -338,6 +489,14 @@ { "name": "frame", "$ref": "Frame", "description": "Frame object." } ] }, @@ -1180,7 +1188,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 { "name": "frameDetached", "description": "Fired when frame has been detached from its parent.", -@@ -377,6 +535,22 @@ +@@ -377,6 +536,22 @@ { "name": "frameId", "$ref": "Network.FrameId", "description": "Id of the frame that has cleared its scheduled navigation." } ] }, @@ -1203,7 +1211,7 @@ index db52479a72d459be23d4d8d080c0ed15ea9fc4c0..5f7add78fefc2bf8718ff8af7c49c169 { "name": "defaultAppearanceDidChange", "description": "Fired when page's default appearance changes, even if there is a forced appearance.", -@@ -385,6 +559,28 @@ +@@ -385,6 +560,28 @@ "parameters": [ { "name": "appearance", "$ref": "Appearance", "description": "Name of the appearance that is active (not considering any forced appearance.)" } ] @@ -2465,6 +2473,19 @@ index 4436fd8ca990af2e5cc147047fc39c2470104e64..9ebf2f8e499066a5e7461cfa1f8287f5 bool AccessibilityObject::accessibilityIsIgnored() const { AXComputedObjectAttributeCache* attributeCache = nullptr; +diff --git a/Source/WebCore/bindings/js/WebCoreBuiltinNames.h b/Source/WebCore/bindings/js/WebCoreBuiltinNames.h +index 7790e27189a050ff4a8c37e431b01632975d27a4..8660a68fcba1d3950305669a2cbb3f36771cc9c8 100644 +--- a/Source/WebCore/bindings/js/WebCoreBuiltinNames.h ++++ b/Source/WebCore/bindings/js/WebCoreBuiltinNames.h +@@ -88,6 +88,8 @@ namespace WebCore { + macro(Database) \ + macro(DataTransferItem) \ + macro(DataTransferItemList) \ ++ macro(DeviceMotionEvent) \ ++ macro(DeviceOrientationEvent) \ + macro(DocumentTimeline) \ + macro(EnterPictureInPictureEvent) \ + macro(ExtendableEvent) \ diff --git a/Source/WebCore/css/MediaQueryEvaluator.cpp b/Source/WebCore/css/MediaQueryEvaluator.cpp index a47b2fe549a89414a207864aabe897d07a59727c..53357bc9ce111bcb1241256647c3630ae767213d 100644 --- a/Source/WebCore/css/MediaQueryEvaluator.cpp @@ -2523,6 +2544,30 @@ index b084ee416512652220e43a6d4bcccaff7c666d5a..b250f3d0161817efef7e2634a16713b0 static Ref createForDragStartEvent(const Document&); static Ref createForDrop(const Document&, std::unique_ptr&&, OptionSet, bool draggingFiles); static Ref createForUpdatingDropTarget(const Document&, std::unique_ptr&&, OptionSet, bool draggingFiles); +diff --git a/Source/WebCore/dom/DeviceMotionEvent.idl b/Source/WebCore/dom/DeviceMotionEvent.idl +index cb64adcd7af56fb2977d2403b110ff3fb74c4408..ba037ac019ed8c47fd73df234a88cbef6f7254d8 100644 +--- a/Source/WebCore/dom/DeviceMotionEvent.idl ++++ b/Source/WebCore/dom/DeviceMotionEvent.idl +@@ -25,6 +25,7 @@ + + [ + Conditional=DEVICE_ORIENTATION, ++ EnabledBySetting=DeviceOrientationEvent, + Exposed=Window + ] interface DeviceMotionEvent : Event { + readonly attribute Acceleration? acceleration; +diff --git a/Source/WebCore/dom/DeviceOrientationEvent.idl b/Source/WebCore/dom/DeviceOrientationEvent.idl +index 1c1cbc1f55089ea7c73c83f04db3caddc5a8b3b3..f1ccf42cf7f699747b31873ab9d96b3f7afc8fd3 100644 +--- a/Source/WebCore/dom/DeviceOrientationEvent.idl ++++ b/Source/WebCore/dom/DeviceOrientationEvent.idl +@@ -25,6 +25,7 @@ + + [ + Conditional=DEVICE_ORIENTATION, ++ EnabledBySetting=DeviceOrientationEvent, + Exposed=Window + ] interface DeviceOrientationEvent : Event { + readonly attribute unrestricted double? alpha; diff --git a/Source/WebCore/dom/PointerEvent.cpp b/Source/WebCore/dom/PointerEvent.cpp index f21879fdfbc64e7d2f11ab084d46794a9e601110..151c9b72f0f552c2ff741305c4c0a8c7f51a92e3 100644 --- a/Source/WebCore/dom/PointerEvent.cpp @@ -3861,7 +3906,7 @@ index 7cdc5865e58e9a9a30ea25202692d4b9aa77b2d6..7c42be0cbadf9a594926cbe89ce510b0 std::unique_ptr m_frontendDispatcher; diff --git a/Source/WebCore/inspector/agents/InspectorPageAgent.cpp b/Source/WebCore/inspector/agents/InspectorPageAgent.cpp -index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263a43f6604 100644 +index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..df235622c37211e74184df6f2aea309aeaa9a900 100644 --- a/Source/WebCore/inspector/agents/InspectorPageAgent.cpp +++ b/Source/WebCore/inspector/agents/InspectorPageAgent.cpp @@ -32,19 +32,25 @@ @@ -3997,7 +4042,18 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 Protocol::ErrorStringOr InspectorPageAgent::navigate(const String& url) { UserGestureIndicator indicator { ProcessingUserGesture }; -@@ -696,9 +742,13 @@ Protocol::ErrorStringOr> InspectorP +@@ -439,6 +485,10 @@ Protocol::ErrorStringOr InspectorPageAgent::overrideSetting(Protocol::Page + inspectedPageSettings.setAuthorAndUserStylesEnabledInspectorOverride(value); + return { }; + ++ case Protocol::Page::Setting::DeviceOrientationEventEnabled: ++ inspectedPageSettings.setDeviceOrientationEventEnabled(value.value_or(false)); ++ return { }; ++ + case Protocol::Page::Setting::ICECandidateFilteringEnabled: + inspectedPageSettings.setICECandidateFilteringEnabledInspectorOverride(value); + return { }; +@@ -696,9 +746,13 @@ Protocol::ErrorStringOr> InspectorP return { { content, base64Encoded } }; } @@ -4013,7 +4069,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 return { }; } -@@ -801,15 +851,16 @@ Protocol::ErrorStringOr InspectorPageAgent::setShowPaintRects(bool show) +@@ -801,15 +855,16 @@ Protocol::ErrorStringOr InspectorPageAgent::setShowPaintRects(bool show) return { }; } @@ -4035,7 +4091,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 } void InspectorPageAgent::frameNavigated(Frame& frame) -@@ -817,13 +868,23 @@ void InspectorPageAgent::frameNavigated(Frame& frame) +@@ -817,13 +872,23 @@ void InspectorPageAgent::frameNavigated(Frame& frame) m_frontendDispatcher->frameNavigated(buildObjectForFrame(&frame)); } @@ -4062,7 +4118,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 } Frame* InspectorPageAgent::frameForId(const Protocol::Network::FrameId& frameId) -@@ -835,20 +896,18 @@ String InspectorPageAgent::frameId(Frame* frame) +@@ -835,20 +900,18 @@ String InspectorPageAgent::frameId(Frame* frame) { if (!frame) return emptyString(); @@ -4089,7 +4145,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 } Frame* InspectorPageAgent::assertFrame(Protocol::ErrorString& errorString, const Protocol::Network::FrameId& frameId) -@@ -859,11 +918,6 @@ Frame* InspectorPageAgent::assertFrame(Protocol::ErrorString& errorString, const +@@ -859,11 +922,6 @@ Frame* InspectorPageAgent::assertFrame(Protocol::ErrorString& errorString, const return frame; } @@ -4101,7 +4157,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 void InspectorPageAgent::frameStartedLoading(Frame& frame) { m_frontendDispatcher->frameStartedLoading(frameId(&frame)); -@@ -884,6 +938,12 @@ void InspectorPageAgent::frameClearedScheduledNavigation(Frame& frame) +@@ -884,6 +942,12 @@ void InspectorPageAgent::frameClearedScheduledNavigation(Frame& frame) m_frontendDispatcher->frameClearedScheduledNavigation(frameId(&frame)); } @@ -4114,7 +4170,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 #if ENABLE(DARK_MODE_CSS) || HAVE(OS_DARK_MODE_SUPPORT) void InspectorPageAgent::defaultAppearanceDidChange(bool useDarkAppearance) { -@@ -893,13 +953,22 @@ void InspectorPageAgent::defaultAppearanceDidChange(bool useDarkAppearance) +@@ -893,13 +957,22 @@ void InspectorPageAgent::defaultAppearanceDidChange(bool useDarkAppearance) void InspectorPageAgent::didClearWindowObjectInWorld(Frame& frame, DOMWrapperWorld& world) { @@ -4140,7 +4196,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 } void InspectorPageAgent::didPaint(RenderObject& renderer, const LayoutRect& rect) -@@ -943,6 +1012,52 @@ void InspectorPageAgent::didRecalculateStyle() +@@ -943,6 +1016,52 @@ void InspectorPageAgent::didRecalculateStyle() m_overlay->update(); } @@ -4193,7 +4249,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 Ref InspectorPageAgent::buildObjectForFrame(Frame* frame) { ASSERT_ARG(frame, frame); -@@ -1079,11 +1194,13 @@ Protocol::ErrorStringOr InspectorPageAgent::snapshotNode(Protocol::DOM:: +@@ -1079,11 +1198,13 @@ Protocol::ErrorStringOr InspectorPageAgent::snapshotNode(Protocol::DOM:: return snapshot->toDataURL("image/png"_s, std::nullopt, PreserveResolution::Yes); } @@ -4208,7 +4264,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 IntRect rectangle(x, y, width, height); auto snapshot = snapshotFrameRect(m_inspectedPage.mainFrame(), rectangle, WTFMove(options)); -@@ -1094,6 +1211,47 @@ Protocol::ErrorStringOr InspectorPageAgent::snapshotRect(int x, int y, i +@@ -1094,6 +1215,47 @@ Protocol::ErrorStringOr InspectorPageAgent::snapshotRect(int x, int y, i return snapshot->toDataURL("image/png"_s, std::nullopt, PreserveResolution::Yes); } @@ -4256,7 +4312,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 #if ENABLE(WEB_ARCHIVE) && USE(CF) Protocol::ErrorStringOr InspectorPageAgent::archive() { -@@ -1106,7 +1264,6 @@ Protocol::ErrorStringOr InspectorPageAgent::archive() +@@ -1106,7 +1268,6 @@ Protocol::ErrorStringOr InspectorPageAgent::archive() } #endif @@ -4264,7 +4320,7 @@ index 64117425ba5c5b6a71d190dfc8f1eefb4ffc637c..8fa02250a9c5736a7a8099840bf8f263 Protocol::ErrorStringOr InspectorPageAgent::setScreenSizeOverride(std::optional&& width, std::optional&& height) { if (width.has_value() != height.has_value()) -@@ -1121,6 +1278,595 @@ Protocol::ErrorStringOr InspectorPageAgent::setScreenSizeOverride(std::opt +@@ -1121,6 +1282,595 @@ Protocol::ErrorStringOr InspectorPageAgent::setScreenSizeOverride(std::opt m_inspectedPage.mainFrame().setOverrideScreenSize(FloatSize(width.value_or(0), height.value_or(0))); return { }; } @@ -10551,7 +10607,7 @@ index a4391be7b637fd96d880cb06838b6deb5db552b6..3f7d5e6c9debc1cf1155da11bad14fc5 UIProcess/gtk/WebPasteboardProxyGtk.cpp UIProcess/gtk/WebPopupMenuProxyGtk.cpp diff --git a/Source/WebKit/SourcesWPE.txt b/Source/WebKit/SourcesWPE.txt -index f8fb1511f2a019a08a896f7cbf45ca470da28185..c086fd981369d998ae39b836d4a71504d9b1aeea 100644 +index f8fb1511f2a019a08a896f7cbf45ca470da28185..eca7474a51db8dcf86fd4c538addd69633ffebe9 100644 --- a/Source/WebKit/SourcesWPE.txt +++ b/Source/WebKit/SourcesWPE.txt @@ -86,6 +86,7 @@ Shared/glib/ProcessExecutablePathGLib.cpp @@ -10570,7 +10626,15 @@ index f8fb1511f2a019a08a896f7cbf45ca470da28185..c086fd981369d998ae39b836d4a71504 UIProcess/API/glib/WebKitContextMenuClient.cpp @no-unify UIProcess/API/glib/WebKitCookieManager.cpp @no-unify UIProcess/API/glib/WebKitCredential.cpp @no-unify -@@ -198,6 +200,7 @@ UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp +@@ -182,6 +184,7 @@ UIProcess/API/wpe/InputMethodFilterWPE.cpp @no-unify + UIProcess/API/wpe/PageClientImpl.cpp @no-unify + UIProcess/API/wpe/TouchGestureController.cpp @no-unify + UIProcess/API/wpe/WebKitColor.cpp @no-unify ++UIProcess/API/wpe/WebKitDataListSuggestionsDropdown.cpp @no-unify + UIProcess/API/wpe/WebKitInputMethodContextWPE.cpp @no-unify + UIProcess/API/wpe/WebKitPopupMenu.cpp @no-unify + UIProcess/API/wpe/WebKitRectangle.cpp @no-unify +@@ -198,6 +201,7 @@ UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp UIProcess/geoclue/GeoclueGeolocationProvider.cpp @@ -10578,7 +10642,7 @@ index f8fb1511f2a019a08a896f7cbf45ca470da28185..c086fd981369d998ae39b836d4a71504 UIProcess/glib/WebPageProxyGLib.cpp UIProcess/glib/WebProcessPoolGLib.cpp UIProcess/glib/WebProcessProxyGLib.cpp -@@ -220,6 +223,10 @@ UIProcess/linux/MemoryPressureMonitor.cpp +@@ -220,6 +224,10 @@ UIProcess/linux/MemoryPressureMonitor.cpp UIProcess/soup/WebCookieManagerProxySoup.cpp UIProcess/soup/WebProcessPoolSoup.cpp @@ -10589,7 +10653,7 @@ index f8fb1511f2a019a08a896f7cbf45ca470da28185..c086fd981369d998ae39b836d4a71504 UIProcess/wpe/WebPageProxyWPE.cpp WebProcess/GPU/media/gstreamer/VideoLayerRemoteGStreamer.cpp -@@ -248,6 +255,8 @@ WebProcess/WebCoreSupport/glib/WebEditorClientGLib.cpp +@@ -248,6 +256,8 @@ WebProcess/WebCoreSupport/glib/WebEditorClientGLib.cpp WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp @@ -11631,10 +11695,18 @@ index ecbe433ed888353b1e6013943b4463835c3582d2..7385877fe664515814fc5c3380a2b729 #include #include diff --git a/Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp b/Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp -index 9631a3f19d24c29286ab634c0bd65cfbc83f9334..eb465be92781c91a7c6df0b52f7b637694cfdd76 100644 +index 9631a3f19d24c29286ab634c0bd65cfbc83f9334..15c2813f21b419fc9067ae88231de2b12829c38f 100644 --- a/Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp +++ b/Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp -@@ -194,7 +194,7 @@ WebCore::IntPoint PageClientImpl::accessibilityScreenToRootView(const WebCore::I +@@ -34,6 +34,7 @@ + #include "WPEView.h" + #include "WebContextMenuProxy.h" + #include "WebContextMenuProxyWPE.h" ++#include "WebKitDataListSuggestionsDropdown.h" + #include "WebKitPopupMenu.h" + #include + #include +@@ -194,7 +195,7 @@ WebCore::IntPoint PageClientImpl::accessibilityScreenToRootView(const WebCore::I WebCore::IntRect PageClientImpl::rootViewToAccessibilityScreen(const WebCore::IntRect& rect) { @@ -11643,6 +11715,33 @@ index 9631a3f19d24c29286ab634c0bd65cfbc83f9334..eb465be92781c91a7c6df0b52f7b6376 } void PageClientImpl::doneWithKeyEvent(const NativeWebKeyboardEvent&, bool) +@@ -446,4 +447,11 @@ void PageClientImpl::selectionDidChange() + m_view.selectionDidChange(); + } + ++#if ENABLE(DATALIST_ELEMENT) ++RefPtr PageClientImpl::createDataListSuggestionsDropdown(WebKit::WebPageProxy& page) ++{ ++ return WebKitDataListSuggestionsDropdown::create(page); ++} ++#endif ++ + } // namespace WebKit +diff --git a/Source/WebKit/UIProcess/API/wpe/PageClientImpl.h b/Source/WebKit/UIProcess/API/wpe/PageClientImpl.h +index 8ab8db715db64616a15a06bb2b4760a40ad5f254..0307a117cbd5c4fb767c4905e9e3370efd5ebf9a 100644 +--- a/Source/WebKit/UIProcess/API/wpe/PageClientImpl.h ++++ b/Source/WebKit/UIProcess/API/wpe/PageClientImpl.h +@@ -166,6 +166,10 @@ private: + + void selectionDidChange() override; + ++#if ENABLE(DATALIST_ELEMENT) ++ RefPtr createDataListSuggestionsDropdown(WebKit::WebPageProxy& page) override; ++#endif ++ + WKWPE::View& m_view; + }; + diff --git a/Source/WebKit/UIProcess/API/wpe/WebKitBrowserInspector.h b/Source/WebKit/UIProcess/API/wpe/WebKitBrowserInspector.h new file mode 100644 index 0000000000000000000000000000000000000000..cb1a540d341b07581ec87b922b7d007ce45ba989 @@ -13869,7 +13968,7 @@ index a2239cec8e18850f35f7f88a9c4ebadc62bf4023..79f3ff84327dc075ec96983e04db4b10 } // namespace WebKit diff --git a/Source/WebKit/UIProcess/Inspector/WebPageInspectorController.cpp b/Source/WebKit/UIProcess/Inspector/WebPageInspectorController.cpp -index ed4e6f30b8c35966075573dccee801daceec865e..2357769f3f78a7fda3d3fff1005e77c5d082948d 100644 +index ed4e6f30b8c35966075573dccee801daceec865e..6e0bf726a6e8e8773940041bc87f3c7e14403d34 100644 --- a/Source/WebKit/UIProcess/Inspector/WebPageInspectorController.cpp +++ b/Source/WebKit/UIProcess/Inspector/WebPageInspectorController.cpp @@ -26,13 +26,21 @@ @@ -14154,7 +14253,7 @@ index ed4e6f30b8c35966075573dccee801daceec865e..2357769f3f78a7fda3d3fff1005e77c5 } void WebPageInspectorController::willDestroyProvisionalPage(const ProvisionalPageProxy& provisionalPage) -@@ -267,4 +457,20 @@ void WebPageInspectorController::browserExtensionsDisabled(HashSet&& ext +@@ -267,4 +457,27 @@ void WebPageInspectorController::browserExtensionsDisabled(HashSet&& ext m_enabledBrowserAgent->extensionsDisabled(WTFMove(extensionIDs)); } @@ -14172,6 +14271,13 @@ index ed4e6f30b8c35966075573dccee801daceec865e..2357769f3f78a7fda3d3fff1005e77c5 + // Enable popup debugging. + // TODO: allow to set preferences over the inspector protocol or find a better place for this. + m_inspectedPage.preferences().setJavaScriptCanOpenWindowsAutomatically(true); ++ ++ // Enable media stream. ++ if (!m_inspectedPage.preferences().mediaStreamEnabled()) { ++ m_inspectedPage.preferences().setMediaDevicesEnabled(true); ++ m_inspectedPage.preferences().setMediaStreamEnabled(true); ++ m_inspectedPage.preferences().setPeerConnectionEnabled(true); ++ } +} + } // namespace WebKit @@ -20812,7 +20918,7 @@ index 0000000000000000000000000000000000000000..dd6a53e2d57318489b7e49dd7373706d + LIBVPX_LIBRARIES +) diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake -index 7de2d6046a98839687ed277009bd9fd4eb5c2fe0..177951f94be605c998c7dc9f7bd2d0f1f3a3270e 100644 +index 7de2d6046a98839687ed277009bd9fd4eb5c2fe0..3f3e76253843e0322fccffec34e823c10c6482cc 100644 --- a/Source/cmake/OptionsGTK.cmake +++ b/Source/cmake/OptionsGTK.cmake @@ -5,6 +5,8 @@ WEBKIT_OPTION_BEGIN() @@ -20862,7 +20968,15 @@ index 7de2d6046a98839687ed277009bd9fd4eb5c2fe0..177951f94be605c998c7dc9f7bd2d0f1 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SPELLCHECK PUBLIC ON) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_TOUCH_EVENTS PUBLIC ON) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_CRYPTO PUBLIC ON) -@@ -180,6 +186,12 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SHAREABLE_RESOURCE PRIVATE ON) +@@ -163,7 +169,6 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_INPUT_TYPE_MONTH PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_INPUT_TYPE_TIME PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_INPUT_TYPE_WEEK PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LAYOUT_FORMATTING_CONTEXT PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) +-WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEDIA_STREAM PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MHTML PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MOUSE_CURSOR_SCALE PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_NETSCAPE_PLUGIN_API PRIVATE OFF) +@@ -180,6 +185,15 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SHAREABLE_RESOURCE PRIVATE ON) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_API_STATISTICS PRIVATE ON) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_RTC PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) @@ -20871,12 +20985,15 @@ index 7de2d6046a98839687ed277009bd9fd4eb5c2fe0..177951f94be605c998c7dc9f7bd2d0f1 +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_TRAILING_WORD PRIVATE ON) +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CURSOR_VISIBILITY PRIVATE ON) +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DOWNLOAD_ATTRIBUTE PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DEVICE_ORIENTATION PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_GAMEPAD PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEDIA_STREAM PRIVATE ON) + include(GStreamerDependencies) # Finalize the value for all options. Do not attempt to use an option before diff --git a/Source/cmake/OptionsWPE.cmake b/Source/cmake/OptionsWPE.cmake -index ed79aed95af5c7cf5525f8647258f4747a5b2553..660b1dc93f1d7dae6f3aaeca58131d32a696eda4 100644 +index ed79aed95af5c7cf5525f8647258f4747a5b2553..65621c3730e928dae6b5bcba99c1e6abc70e7e9f 100644 --- a/Source/cmake/OptionsWPE.cmake +++ b/Source/cmake/OptionsWPE.cmake @@ -3,6 +3,7 @@ include(VersioningUtils) @@ -20887,7 +21004,15 @@ index ed79aed95af5c7cf5525f8647258f4747a5b2553..660b1dc93f1d7dae6f3aaeca58131d32 set(USER_AGENT_BRANDING "" CACHE STRING "Branding to add to user agent string") find_package(Cairo 1.14.0 REQUIRED) -@@ -67,15 +68,23 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBGL2 PRIVATE OFF) +@@ -50,7 +51,6 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_TYPED_OM PRIVATE ${ENABLE_EXPERIMENT + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_FILTERS_LEVEL_2 PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_GPU_PROCESS PRIVATE OFF) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LAYOUT_FORMATTING_CONTEXT PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) +-WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEDIA_STREAM PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MHTML PRIVATE ON) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_NETSCAPE_PLUGIN_API PRIVATE OFF) + WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_NOTIFICATIONS PRIVATE ON) +@@ -67,15 +67,27 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBGL2 PRIVATE OFF) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_RTC PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBXR PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) @@ -20896,8 +21021,12 @@ index ed79aed95af5c7cf5525f8647258f4747a5b2553..660b1dc93f1d7dae6f3aaeca58131d32 +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_TRAILING_WORD PRIVATE ON) +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CURSOR_VISIBILITY PRIVATE ON) +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DARK_MODE_CSS PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DATALIST_ELEMENT PRIVATE ON) +WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DOWNLOAD_ATTRIBUTE PRIVATE ON) -+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DRAG_SUPPORT PUBLIC ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DRAG_SUPPORT PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DEVICE_ORIENTATION PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_GAMEPAD PRIVATE ON) ++WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEDIA_STREAM PRIVATE ON) + # Public options specific to the WPE port. Do not add any options here unless # there is a strong reason we should support changing the value of the option,