-
Notifications
You must be signed in to change notification settings - Fork 740
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
www/webkit2-gtk3: unbreak GSTREAMER=off after 895bc80
PR: 258750 Reported by: madpilot@ (via mailing list) Tested by: bapt
- Loading branch information
1 parent
5dde2c0
commit f73bc57
Showing
3 changed files
with
377 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
Regressed by: https://github.com/WebKit/WebKit/commit/b87d5003f832 | ||
|
||
In file included from /wrkdirs/usr/ports/www/webkit2-gtk3/work/.build/WebCore/DerivedSources/unified-sources/UnifiedSource-3c72abbe-19.cpp:6: | ||
/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:272:33: error: out-of-line definition of 'paintFrameForMedia' does not match any declaration in 'WebCore::BifurcatedGraphicsContext' | ||
void BifurcatedGraphicsContext::paintFrameForMedia(MediaPlayer& player, const FloatRect& destination) | ||
^~~~~~~~~~~~~~~~~~ | ||
/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:274:22: error: no member named 'paintFrameForMedia' in 'WebCore::GraphicsContext' | ||
m_primaryContext.paintFrameForMedia(player, destination); | ||
~~~~~~~~~~~~~~~~ ^ | ||
/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:275:24: error: no member named 'paintFrameForMedia' in 'WebCore:: | ||
GraphicsContext' | ||
m_secondaryContext.paintFrameForMedia(player, destination); | ||
~~~~~~~~~~~~~~~~~~ ^ | ||
3 errors generated. | ||
|
||
diff --git Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp | ||
index c0ce72c..a2a58df 100644 | ||
--- Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp | ||
+++ Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp | ||
@@ -269,11 +269,13 @@ void BifurcatedGraphicsContext::drawPattern(NativeImage& nativeImage, const Floa | ||
m_secondaryContext.drawPattern(nativeImage, imageSize, destRect, tileRect, patternTransform, phase, spacing, options); | ||
} | ||
|
||
+#if ENABLE(VIDEO) | ||
void BifurcatedGraphicsContext::paintFrameForMedia(MediaPlayer& player, const FloatRect& destination) | ||
{ | ||
m_primaryContext.paintFrameForMedia(player, destination); | ||
m_secondaryContext.paintFrameForMedia(player, destination); | ||
} | ||
+#endif | ||
|
||
void BifurcatedGraphicsContext::scale(const FloatSize& scale) | ||
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,342 @@ | ||
GSTREAMER=off regressed by: https://github.com/WebKit/WebKit/commit/7c0f13f37ec: | ||
+ partly revert https://github.com/WebKit/WebKit/commit/eb3ebb4849987 | ||
(Source/WebCore/accessibility/AXObjectCache.cpp: remove #include "AXImage.h") | ||
|
||
/wrkdirs/usr/ports/www/webkit2-gtk3/work/.build/WTF/Headers/wtf/TypeCasts.h:41:9: error: static_assert failed due to requirement 'std::is_void_v<const WebCore::HTMLMediaElement>' "Missing TypeCastTraits specialization" | ||
static_assert(std::is_void_v<ExpectedType>, "Missing TypeCastTraits specialization"); | ||
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
/wrkdirs/usr/ports/www/webkit2-gtk3/work/.build/WTF/Headers/wtf/TypeCasts.h:65:73: note: in instantiation of member function 'WTF::TypeCastTraits<const WebCore::HTMLMediaElement, const WebCore::Node, false>::isOfType' requested here | ||
return source && TypeCastTraits<const ExpectedType, const ArgType>::isOfType(*source); | ||
^ | ||
/wrkdirs/usr/ports/www/webkit2-gtk3/work/webkitgtk-2.34.0/Source/WebCore/accessibility/AXObjectCache.cpp:532:9: note: in instantiation of function template specialization 'WTF::is<WebCore::HTMLMediaElement, WebCore::Node>' requested here | ||
if (is<HTMLMediaElement>(node)) | ||
|
||
diff --git Source/WebCore/Sources.txt Source/WebCore/Sources.txt | ||
index 24c515c..043f534 100644 | ||
--- Source/WebCore/Sources.txt | ||
+++ Source/WebCore/Sources.txt | ||
@@ -364,7 +364,6 @@ Modules/webxr/XRInputSourceEvent.cpp @no-unify | ||
Modules/webxr/XRInputSourcesChangeEvent.cpp @no-unify | ||
Modules/webxr/XRReferenceSpaceEvent.cpp @no-unify | ||
Modules/webxr/XRSessionEvent.cpp @no-unify | ||
-accessibility/AXImage.cpp | ||
accessibility/AXLogger.cpp | ||
accessibility/AXObjectCache.cpp | ||
accessibility/AccessibilityARIAGrid.cpp | ||
diff --git Source/WebCore/accessibility/AXImage.cpp Source/WebCore/accessibility/AXImage.cpp | ||
deleted file mode 100644 | ||
index d7226f2..0000000 | ||
--- Source/WebCore/accessibility/AXImage.cpp | ||
+++ /dev/null | ||
@@ -1,86 +0,0 @@ | ||
-/* | ||
- * Copyright (C) 2021 Apple Inc. All rights reserved. | ||
- * | ||
- * Redistribution and use in source and binary forms, with or without | ||
- * modification, are permitted provided that the following conditions | ||
- * are met: | ||
- * | ||
- * 1. Redistributions of source code must retain the above copyright | ||
- * notice, this list of conditions and the following disclaimer. | ||
- * 2. Redistributions in binary form must reproduce the above copyright | ||
- * notice, this list of conditions and the following disclaimer in the | ||
- * documentation and/or other materials provided with the distribution. | ||
- * 3. Neither the name of Apple Inc. ("Apple") nor the names of | ||
- * its contributors may be used to endorse or promote products derived | ||
- * from this software without specific prior written permission. | ||
- * | ||
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY | ||
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY | ||
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
- */ | ||
- | ||
-#include "config.h" | ||
-#include "AXImage.h" | ||
- | ||
-#include "AXLogger.h" | ||
-#include "Chrome.h" | ||
-#include "ChromeClient.h" | ||
- | ||
-namespace WebCore { | ||
- | ||
-AXImage::AXImage(RenderImage* renderer) | ||
- : AccessibilityRenderObject(renderer) | ||
-{ | ||
-} | ||
- | ||
-Ref<AXImage> AXImage::create(RenderImage* renderer) | ||
-{ | ||
- return adoptRef(*new AXImage(renderer)); | ||
-} | ||
- | ||
-AccessibilityRole AXImage::roleValue() const | ||
-{ | ||
- auto ariaRole = ariaRoleAttribute(); | ||
- if (ariaRole != AccessibilityRole::Unknown) | ||
- return ariaRole; | ||
- | ||
- return AccessibilityRole::Image; | ||
-} | ||
- | ||
-std::optional<AXCoreObject::AccessibilityChildrenVector> AXImage::imageOverlayElements() | ||
-{ | ||
- AXTRACE("AXImage::imageOverlayElements"); | ||
- | ||
- auto& children = this->children(); | ||
- if (children.size()) | ||
- return children; | ||
- | ||
-#if ENABLE(IMAGE_ANALYSIS) | ||
- auto* page = this->page(); | ||
- if (!page) | ||
- return std::nullopt; | ||
- | ||
- auto* element = this->element(); | ||
- if (!element) | ||
- return std::nullopt; | ||
- | ||
- page->chrome().client().requestTextRecognition(*element, [] (RefPtr<Element>&& imageOverlayHost) { | ||
- if (!imageOverlayHost) | ||
- return; | ||
- | ||
- if (auto* axObjectCache = imageOverlayHost->document().existingAXObjectCache()) | ||
- axObjectCache->postNotification(imageOverlayHost.get(), AXObjectCache::AXImageOverlayChanged); | ||
- }); | ||
-#endif | ||
- | ||
- return std::nullopt; | ||
-} | ||
- | ||
-} // namespace WebCore | ||
diff --git Source/WebCore/accessibility/AXImage.h Source/WebCore/accessibility/AXImage.h | ||
deleted file mode 100644 | ||
index c2034d0..0000000 | ||
--- Source/WebCore/accessibility/AXImage.h | ||
+++ /dev/null | ||
@@ -1,51 +0,0 @@ | ||
-/* | ||
- * Copyright (C) 2021 Apple Inc. All rights reserved. | ||
- * | ||
- * Redistribution and use in source and binary forms, with or without | ||
- * modification, are permitted provided that the following conditions | ||
- * are met: | ||
- * | ||
- * 1. Redistributions of source code must retain the above copyright | ||
- * notice, this list of conditions and the following disclaimer. | ||
- * 2. Redistributions in binary form must reproduce the above copyright | ||
- * notice, this list of conditions and the following disclaimer in the | ||
- * documentation and/or other materials provided with the distribution. | ||
- * 3. Neither the name of Apple Inc. ("Apple") nor the names of | ||
- * its contributors may be used to endorse or promote products derived | ||
- * from this software without specific prior written permission. | ||
- * | ||
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY | ||
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY | ||
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
- */ | ||
- | ||
-#pragma once | ||
- | ||
-#include "AccessibilityRenderObject.h" | ||
-#include "RenderImage.h" | ||
- | ||
-namespace WebCore { | ||
- | ||
-class AXImage : public AccessibilityRenderObject { | ||
-public: | ||
- static Ref<AXImage> create(RenderImage*); | ||
- virtual ~AXImage() = default; | ||
- | ||
-private: | ||
- explicit AXImage(RenderImage*); | ||
- bool isAXImageInstance() const override { return true; } | ||
- | ||
- AccessibilityRole roleValue() const override; | ||
- std::optional<AccessibilityChildrenVector> imageOverlayElements() override; | ||
-}; | ||
- | ||
-} // namespace WebCore | ||
- | ||
-SPECIALIZE_TYPE_TRAITS_ACCESSIBILITY(AXImage, isAXImageInstance()) | ||
diff --git Source/WebCore/accessibility/AXLogger.cpp Source/WebCore/accessibility/AXLogger.cpp | ||
index 3036666..7f26003 100644 | ||
--- Source/WebCore/accessibility/AXLogger.cpp | ||
+++ Source/WebCore/accessibility/AXLogger.cpp | ||
@@ -373,9 +373,6 @@ TextStream& operator<<(TextStream& stream, AXObjectCache::AXNotification notific | ||
case AXObjectCache::AXNotification::AXIdAttributeChanged: | ||
stream << "AXIdAttributeChanged"; | ||
break; | ||
- case AXObjectCache::AXNotification::AXImageOverlayChanged: | ||
- stream << "AXImageOverlayChanged"; | ||
- break; | ||
case AXObjectCache::AXNotification::AXLanguageChanged: | ||
stream << "AXLanguageChanged"; | ||
break; | ||
diff --git Source/WebCore/accessibility/AXObjectCache.cpp Source/WebCore/accessibility/AXObjectCache.cpp | ||
index f245110..2066db7 100644 | ||
--- Source/WebCore/accessibility/AXObjectCache.cpp | ||
+++ Source/WebCore/accessibility/AXObjectCache.cpp | ||
@@ -32,7 +32,6 @@ | ||
|
||
#include "AXObjectCache.h" | ||
|
||
-#include "AXImage.h" | ||
#include "AXIsolatedObject.h" | ||
#include "AXIsolatedTree.h" | ||
#include "AXLogger.h" | ||
@@ -513,28 +512,6 @@ bool nodeHasRole(Node* node, const String& role) | ||
return SpaceSplitString(roleValue, true).contains(role); | ||
} | ||
|
||
-static bool isSimpleImage(const RenderObject& renderer) | ||
-{ | ||
- if (!is<RenderImage>(renderer)) | ||
- return false; | ||
- | ||
- // Exclude ImageButtons because they are treated as buttons, not as images. | ||
- auto* node = renderer.node(); | ||
- if (is<HTMLInputElement>(node)) | ||
- return false; | ||
- | ||
- // ImageMaps are not simple images. | ||
- if (downcast<RenderImage>(renderer).imageMap() | ||
- || (is<HTMLImageElement>(node) && downcast<HTMLImageElement>(node)->hasAttributeWithoutSynchronization(usemapAttr))) | ||
- return false; | ||
- | ||
- // Exclude video and audio elements. | ||
- if (is<HTMLMediaElement>(node)) | ||
- return false; | ||
- | ||
- return true; | ||
-} | ||
- | ||
static Ref<AccessibilityObject> createFromRenderer(RenderObject* renderer) | ||
{ | ||
// FIXME: How could renderer->node() ever not be an Element? | ||
@@ -574,9 +551,6 @@ static Ref<AccessibilityObject> createFromRenderer(RenderObject* renderer) | ||
if (is<SVGElement>(node)) | ||
return AccessibilitySVGElement::create(renderer); | ||
|
||
- if (isSimpleImage(*renderer)) | ||
- return AXImage::create(downcast<RenderImage>(renderer)); | ||
- | ||
#if ENABLE(MATHML) | ||
// The mfenced element creates anonymous RenderMathMLOperators which should be treated | ||
// as MathML elements and assigned the MathElementRole so that platform logic regarding | ||
diff --git Source/WebCore/accessibility/AXObjectCache.h Source/WebCore/accessibility/AXObjectCache.h | ||
index 1dca4ca..fe3d86d 100644 | ||
--- Source/WebCore/accessibility/AXObjectCache.h | ||
+++ Source/WebCore/accessibility/AXObjectCache.h | ||
@@ -284,7 +284,6 @@ public: | ||
AXFocusedUIElementChanged, | ||
AXFrameLoadComplete, | ||
AXIdAttributeChanged, | ||
- AXImageOverlayChanged, | ||
AXLanguageChanged, | ||
AXLayoutComplete, | ||
AXLoadComplete, | ||
diff --git Source/WebCore/accessibility/AccessibilityNodeObject.cpp Source/WebCore/accessibility/AccessibilityNodeObject.cpp | ||
index 270bbd9..7902660 100644 | ||
--- Source/WebCore/accessibility/AccessibilityNodeObject.cpp | ||
+++ Source/WebCore/accessibility/AccessibilityNodeObject.cpp | ||
@@ -378,6 +378,7 @@ bool AccessibilityNodeObject::canHaveChildren() const | ||
|
||
// Elements that should not have children | ||
switch (roleValue()) { | ||
+ case AccessibilityRole::Image: | ||
case AccessibilityRole::Button: | ||
case AccessibilityRole::PopUpButton: | ||
case AccessibilityRole::CheckBox: | ||
diff --git Source/WebCore/accessibility/AccessibilityObject.h Source/WebCore/accessibility/AccessibilityObject.h | ||
index 2839da8..868f213 100644 | ||
--- Source/WebCore/accessibility/AccessibilityObject.h | ||
+++ Source/WebCore/accessibility/AccessibilityObject.h | ||
@@ -93,7 +93,6 @@ public: | ||
bool isAccessibilityRenderObject() const override { return false; } | ||
bool isAccessibilityScrollbar() const override { return false; } | ||
bool isAccessibilityScrollViewInstance() const override { return false; } | ||
- bool isAXImageInstance() const override { return false; } | ||
bool isAccessibilitySVGRoot() const override { return false; } | ||
bool isAccessibilitySVGElement() const override { return false; } | ||
bool isAccessibilityTableInstance() const override { return false; } | ||
@@ -400,7 +399,6 @@ public: | ||
String brailleLabel() const override { return getAttribute(HTMLNames::aria_braillelabelAttr); } | ||
String brailleRoleDescription() const override { return getAttribute(HTMLNames::aria_brailleroledescriptionAttr); } | ||
String embeddedImageDescription() const override; | ||
- std::optional<AccessibilityChildrenVector> imageOverlayElements() override { return std::nullopt; } | ||
|
||
// Abbreviations | ||
String expandedTextValue() const override { return String(); } | ||
diff --git Source/WebCore/accessibility/AccessibilityObjectInterface.h Source/WebCore/accessibility/AccessibilityObjectInterface.h | ||
index 2168454..4b51bdf 100644 | ||
--- Source/WebCore/accessibility/AccessibilityObjectInterface.h | ||
+++ Source/WebCore/accessibility/AccessibilityObjectInterface.h | ||
@@ -794,7 +794,6 @@ public: | ||
virtual bool isAccessibilityRenderObject() const = 0; | ||
virtual bool isAccessibilityScrollbar() const = 0; | ||
virtual bool isAccessibilityScrollViewInstance() const = 0; | ||
- virtual bool isAXImageInstance() const = 0; | ||
virtual bool isAccessibilitySVGRoot() const = 0; | ||
virtual bool isAccessibilitySVGElement() const = 0; | ||
virtual bool isAccessibilityTableInstance() const = 0; | ||
@@ -1018,7 +1017,6 @@ public: | ||
virtual String brailleLabel() const = 0; | ||
virtual String brailleRoleDescription() const = 0; | ||
virtual String embeddedImageDescription() const = 0; | ||
- virtual std::optional<AccessibilityChildrenVector> imageOverlayElements() = 0; | ||
|
||
virtual bool supportsARIAOwns() const = 0; | ||
virtual bool isActiveDescendantOfFocusedContainer() const = 0; | ||
diff --git Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp | ||
index b0bcf55..1f48485 100644 | ||
--- Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp | ||
+++ Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp | ||
@@ -1258,12 +1258,6 @@ bool AXIsolatedObject::isAccessibilityScrollViewInstance() const | ||
return false; | ||
} | ||
|
||
-bool AXIsolatedObject::isAXImageInstance() const | ||
-{ | ||
- ASSERT_NOT_REACHED(); | ||
- return false; | ||
-} | ||
- | ||
bool AXIsolatedObject::isAccessibilitySVGRoot() const | ||
{ | ||
ASSERT_NOT_REACHED(); | ||
diff --git Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h | ||
index 6fb1ada..d177a22 100644 | ||
--- Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h | ||
+++ Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h | ||
@@ -272,7 +272,6 @@ private: | ||
String brailleLabel() const override { return stringAttributeValue(AXPropertyName::BrailleLabel); } | ||
String brailleRoleDescription() const override { return stringAttributeValue(AXPropertyName::BrailleRoleDescription); } | ||
String embeddedImageDescription() const override { return stringAttributeValue(AXPropertyName::EmbeddedImageDescription); } | ||
- std::optional<AccessibilityChildrenVector> imageOverlayElements() override { return std::nullopt; } | ||
|
||
String computedRoleString() const override { return stringAttributeValue(AXPropertyName::ComputedRoleString); } | ||
bool isValueAutofilled() const override { return boolAttributeValue(AXPropertyName::IsValueAutofilled); } | ||
@@ -467,7 +466,6 @@ private: | ||
bool isAccessibilityRenderObject() const override; | ||
bool isAccessibilityScrollbar() const override; | ||
bool isAccessibilityScrollViewInstance() const override; | ||
- bool isAXImageInstance() const override; | ||
bool isAccessibilitySVGRoot() const override; | ||
bool isAccessibilitySVGElement() const override; | ||
bool isAccessibilityTableInstance() const override; | ||
|
||
|