[webkit-changes] [286093] trunk

2021-11-19 Thread carlosgc
Title: [286093] trunk








Revision 286093
Author carlo...@webkit.org
Date 2021-11-19 23:52:57 -0800 (Fri, 19 Nov 2021)


Log Message
[GTK][a11y] Add implementation of image interface when building with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=232782

Reviewed by Adrian Perez de Castro.

Source/WebCore:

* SourcesGTK.txt:
* accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::interfacesForObject):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
* accessibility/atspi/AccessibilityObjectAtspi.h:
* accessibility/atspi/AccessibilityObjectImageAtspi.cpp: Added.
(WebCore::AccessibilityObjectAtspi::imageDescription const):

Tools:

Add unit tests for the image interface.

* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testImageBasic):
(beforeAll):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/SourcesGTK.txt
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp


Added Paths

trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectImageAtspi.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286092 => 286093)

--- trunk/Source/WebCore/ChangeLog	2021-11-20 06:57:51 UTC (rev 286092)
+++ trunk/Source/WebCore/ChangeLog	2021-11-20 07:52:57 UTC (rev 286093)
@@ -1,3 +1,19 @@
+2021-11-19  Carlos Garcia Campos  
+
+[GTK][a11y] Add implementation of image interface when building with ATSPI
+https://bugs.webkit.org/show_bug.cgi?id=232782
+
+Reviewed by Adrian Perez de Castro.
+
+* SourcesGTK.txt:
+* accessibility/atspi/AccessibilityObjectAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::interfacesForObject):
+(WebCore::AccessibilityObjectAtspi::path):
+(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
+* accessibility/atspi/AccessibilityObjectAtspi.h:
+* accessibility/atspi/AccessibilityObjectImageAtspi.cpp: Added.
+(WebCore::AccessibilityObjectAtspi::imageDescription const):
+
 2021-11-19  Commit Queue  
 
 Unreviewed, reverting r286058.


Modified: trunk/Source/WebCore/SourcesGTK.txt (286092 => 286093)

--- trunk/Source/WebCore/SourcesGTK.txt	2021-11-20 06:57:51 UTC (rev 286092)
+++ trunk/Source/WebCore/SourcesGTK.txt	2021-11-20 07:52:57 UTC (rev 286093)
@@ -46,6 +46,7 @@
 accessibility/atspi/AccessibilityObjectDocumentAtspi.cpp
 accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp
 accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp
+accessibility/atspi/AccessibilityObjectImageAtspi.cpp
 accessibility/atspi/AccessibilityObjectTextAtspi.cpp
 accessibility/atspi/AccessibilityObjectValueAtspi.cpp
 accessibility/atspi/AccessibilityRootAtspi.cpp


Modified: trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp (286092 => 286093)

--- trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp	2021-11-20 06:57:51 UTC (rev 286092)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp	2021-11-20 07:52:57 UTC (rev 286093)
@@ -94,6 +94,9 @@
 if (coreObject.roleValue() == AccessibilityRole::WebArea)
 interfaces.add(Interface::Document);
 
+if (coreObject.isImage())
+interfaces.add(Interface::Image);
+
 return interfaces;
 }
 
@@ -490,6 +493,8 @@
 interfaces.append({ const_cast(_action_interface), _actionFunctions });
 if (m_interfaces.contains(Interface::Document))
 interfaces.append({ const_cast(_document_interface), _documentFunctions });
+if (m_interfaces.contains(Interface::Image))
+interfaces.append({ const_cast(_image_interface), _imageFunctions });
 m_path = atspiRoot->atspi().registerObject(*this, WTFMove(interfaces));
 }
 
@@ -1132,6 +1137,8 @@
 g_variant_builder_add(builder, "s", webkit_action_interface.name);
 if (m_interfaces.contains(Interface::Document))
 g_variant_builder_add(builder, "s", webkit_document_interface.name);
+if (m_interfaces.contains(Interface::Image))
+g_variant_builder_add(builder, "s", webkit_image_interface.name);
 }
 
 void AccessibilityObjectAtspi::serialize(GVariantBuilder* builder) const


Modified: trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h (286092 => 286093)

--- trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h	2021-11-20 06:57:51 UTC (rev 286092)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h	2021-11-20 07:52:57 UTC (rev 286093)
@@ -42,7 +42,7 @@
 static Ref create(AXCoreObject*);
 ~AccessibilityObjectAtspi() = default;
 
-enum class Interface : uint8_t {
+enum class Interface : uint16_t {
 Accessible = 1 << 0,
 Component = 1 << 1,
 Text = 1 << 2,
@@ -50,7 +50,8 @@
 Hyperlink = 1 << 

[webkit-changes] [286092] trunk

2021-11-19 Thread commit-queue
Title: [286092] trunk








Revision 286092
Author commit-qu...@webkit.org
Date 2021-11-19 22:57:51 -0800 (Fri, 19 Nov 2021)


Log Message
Fix WebAssembly memory.fill out of bounds error message
https://bugs.webkit.org/show_bug.cgi?id=233392

Patch by Asumu Takikawa  on 2021-11-19
Reviewed by Yusuke Suzuki.

JSTests:

* wasm/references/memory_fill_out_of_bounds.js: Added.
(async test):

Source/_javascript_Core:

* wasm/WasmAirIRGenerator.cpp:
(JSC::Wasm::AirIRGenerator::addMemoryFill):
* wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addMemoryFill):
* wasm/WasmSlowPaths.cpp:
(JSC::LLInt::WASM_SLOW_PATH_DECL):

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/wasm/WasmAirIRGenerator.cpp
trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp
trunk/Source/_javascript_Core/wasm/WasmSlowPaths.cpp


Added Paths

trunk/JSTests/wasm/references/memory_fill_out_of_bounds.js




Diff

Modified: trunk/JSTests/ChangeLog (286091 => 286092)

--- trunk/JSTests/ChangeLog	2021-11-20 06:40:27 UTC (rev 286091)
+++ trunk/JSTests/ChangeLog	2021-11-20 06:57:51 UTC (rev 286092)
@@ -1,3 +1,13 @@
+2021-11-19  Asumu Takikawa  
+
+Fix WebAssembly memory.fill out of bounds error message
+https://bugs.webkit.org/show_bug.cgi?id=233392
+
+Reviewed by Yusuke Suzuki.
+
+* wasm/references/memory_fill_out_of_bounds.js: Added.
+(async test):
+
 2021-11-19  Saam Barati  
 
 Fix assertion added in r285592


Added: trunk/JSTests/wasm/references/memory_fill_out_of_bounds.js (0 => 286092)

--- trunk/JSTests/wasm/references/memory_fill_out_of_bounds.js	(rev 0)
+++ trunk/JSTests/wasm/references/memory_fill_out_of_bounds.js	2021-11-20 06:57:51 UTC (rev 286092)
@@ -0,0 +1,20 @@
+import * as assert from '../assert.js';
+import { instantiate } from "../wabt-wrapper.js";
+
+async function test() {
+  let wat = `
+  (module
+(import "env" "memory" (memory $mem0 1 1))
+(func (export "fill_oob")
+  (memory.fill (i32.const 0) (i32.const 42) (i32.const 65537))
+)
+  )
+  `;
+
+  let memory = new WebAssembly.Memory({initial: 1, maximum: 1});
+  const instance = await instantiate(wat, {env: {"memory": memory}}, {reference_types: true});
+
+  assert.throws(() => { instance.exports.fill_oob() }, WebAssembly.RuntimeError, "Out of bounds memory access");
+}
+
+assert.asyncTest(test());


Modified: trunk/Source/_javascript_Core/ChangeLog (286091 => 286092)

--- trunk/Source/_javascript_Core/ChangeLog	2021-11-20 06:40:27 UTC (rev 286091)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-11-20 06:57:51 UTC (rev 286092)
@@ -1,3 +1,17 @@
+2021-11-19  Asumu Takikawa  
+
+Fix WebAssembly memory.fill out of bounds error message
+https://bugs.webkit.org/show_bug.cgi?id=233392
+
+Reviewed by Yusuke Suzuki.
+
+* wasm/WasmAirIRGenerator.cpp:
+(JSC::Wasm::AirIRGenerator::addMemoryFill):
+* wasm/WasmB3IRGenerator.cpp:
+(JSC::Wasm::B3IRGenerator::addMemoryFill):
+* wasm/WasmSlowPaths.cpp:
+(JSC::LLInt::WASM_SLOW_PATH_DECL):
+
 2021-11-19  Commit Queue  
 
 Unreviewed, reverting r286030.


Modified: trunk/Source/_javascript_Core/wasm/WasmAirIRGenerator.cpp (286091 => 286092)

--- trunk/Source/_javascript_Core/wasm/WasmAirIRGenerator.cpp	2021-11-20 06:40:27 UTC (rev 286091)
+++ trunk/Source/_javascript_Core/wasm/WasmAirIRGenerator.cpp	2021-11-20 06:57:51 UTC (rev 286092)
@@ -1343,7 +1343,7 @@
 emitCheck([&] {
 return Inst(BranchTest32, nullptr, Arg::resCond(MacroAssembler::Zero), result, result);
 }, [=] (CCallHelpers& jit, const B3::StackmapGenerationParams&) {
-this->emitThrowException(jit, ExceptionType::OutOfBoundsTableAccess);
+this->emitThrowException(jit, ExceptionType::OutOfBoundsMemoryAccess);
 });
 
 return { };


Modified: trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp (286091 => 286092)

--- trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp	2021-11-20 06:40:27 UTC (rev 286091)
+++ trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp	2021-11-20 06:57:51 UTC (rev 286092)
@@ -1291,7 +1291,7 @@
 m_currentBlock->appendNew(m_proc, Equal, origin(), resultValue, m_currentBlock->appendNew(m_proc, origin(), 0)));
 
 check->setGenerator([=] (CCallHelpers& jit, const B3::StackmapGenerationParams&) {
-this->emitExceptionCheck(jit, ExceptionType::OutOfBoundsTableAccess);
+this->emitExceptionCheck(jit, ExceptionType::OutOfBoundsMemoryAccess);
 });
 }
 


Modified: trunk/Source/_javascript_Core/wasm/WasmSlowPaths.cpp (286091 => 286092)

--- trunk/Source/_javascript_Core/wasm/WasmSlowPaths.cpp	2021-11-20 06:40:27 UTC (rev 286091)
+++ trunk/Source/_javascript_Core/wasm/WasmSlowPaths.cpp	2021-11-20 06:57:51 UTC (rev 286092)
@@ -390,7 +390,7 @@
 uint32_t targetValue = READ(instruction.m_targetValue).unboxedUInt32();
 uint32_t 

[webkit-changes] [286091] trunk/Source/WebCore

2021-11-19 Thread commit-queue
Title: [286091] trunk/Source/WebCore








Revision 286091
Author commit-qu...@webkit.org
Date 2021-11-19 22:40:27 -0800 (Fri, 19 Nov 2021)


Log Message
Unreviewed, reverting r286058.
https://bugs.webkit.org/show_bug.cgi?id=233394

Speedometer2 is crashing

Reverted changeset:

"Factor child change invalidation into class"
https://bugs.webkit.org/show_bug.cgi?id=233311
https://commits.webkit.org/r286058

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Sources.txt
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/dom/CharacterData.cpp
trunk/Source/WebCore/dom/CharacterData.h
trunk/Source/WebCore/dom/ContainerNode.cpp
trunk/Source/WebCore/dom/ContainerNode.h
trunk/Source/WebCore/dom/Element.cpp
trunk/Source/WebCore/dom/Element.h
trunk/Source/WebCore/dom/ShadowRoot.cpp
trunk/Source/WebCore/style/StyleAdjuster.h


Removed Paths

trunk/Source/WebCore/style/ChildChangeInvalidation.cpp
trunk/Source/WebCore/style/ChildChangeInvalidation.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286090 => 286091)

--- trunk/Source/WebCore/ChangeLog	2021-11-20 04:50:28 UTC (rev 286090)
+++ trunk/Source/WebCore/ChangeLog	2021-11-20 06:40:27 UTC (rev 286091)
@@ -1,3 +1,16 @@
+2021-11-19  Commit Queue  
+
+Unreviewed, reverting r286058.
+https://bugs.webkit.org/show_bug.cgi?id=233394
+
+Speedometer2 is crashing
+
+Reverted changeset:
+
+"Factor child change invalidation into class"
+https://bugs.webkit.org/show_bug.cgi?id=233311
+https://commits.webkit.org/r286058
+
 2021-11-19  Kiet Ho  
 
 Implement parsing and animation support for ray() shape accepted by offset-path


Modified: trunk/Source/WebCore/Sources.txt (286090 => 286091)

--- trunk/Source/WebCore/Sources.txt	2021-11-20 04:50:28 UTC (rev 286090)
+++ trunk/Source/WebCore/Sources.txt	2021-11-20 06:40:27 UTC (rev 286091)
@@ -2524,7 +2524,6 @@
 storage/StorageNamespaceProvider.cpp
 storage/StorageQuotaManager.cpp
 style/AttributeChangeInvalidation.cpp
-style/ChildChangeInvalidation.cpp
 style/ClassChangeInvalidation.cpp
 style/ElementRuleCollector.cpp
 style/IdChangeInvalidation.cpp


Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (286090 => 286091)

--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2021-11-20 04:50:28 UTC (rev 286090)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2021-11-20 06:40:27 UTC (rev 286091)
@@ -5342,7 +5342,6 @@
 		E4C1789B0EE6903800824D69 /* CSSSelectorList.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C178960EE6903800824D69 /* CSSSelectorList.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		E4C279590CF9741900E97B98 /* RenderMedia.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C279570CF9741900E97B98 /* RenderMedia.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		E4C3B1FA0F0E4161009693F6 /* LegacyTileCache.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C3B1F90F0E4161009693F6 /* LegacyTileCache.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		E4C4C61A27452A7900A040E7 /* ChildChangeInvalidation.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C4C61827452A7900A040E7 /* ChildChangeInvalidation.h */; };
 		E4C91A0E1802343100A17F6D /* TextPaintStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C91A0D1802343100A17F6D /* TextPaintStyle.h */; };
 		E4C91A16180999F100A17F6D /* RenderTextLineBoxes.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C91A15180999F100A17F6D /* RenderTextLineBoxes.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		E4D33F3B252AEECD00837D05 /* InlineRunAndOffset.h in Headers */ = {isa = PBXBuildFile; fileRef = E4D33F39252AEECC00837D05 /* InlineRunAndOffset.h */; };
@@ -17047,8 +17046,6 @@
 		E4C279570CF9741900E97B98 /* RenderMedia.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderMedia.h; sourceTree = ""; };
 		E4C3B1F90F0E4161009693F6 /* LegacyTileCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LegacyTileCache.h; sourceTree = ""; };
 		E4C3B1FB0F0E4170009693F6 /* LegacyTileCache.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LegacyTileCache.mm; sourceTree = ""; };
-		E4C4C61827452A7900A040E7 /* ChildChangeInvalidation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChildChangeInvalidation.h; sourceTree = ""; };
-		E4C4C61B27452A8A00A040E7 /* ChildChangeInvalidation.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = ChildChangeInvalidation.cpp; sourceTree = ""; };
 		E4C91A0D1802343100A17F6D /* TextPaintStyle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextPaintStyle.h; sourceTree = ""; };
 		E4C91A0F1802343900A17F6D /* TextPaintStyle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextPaintStyle.cpp; sourceTree = 

[webkit-changes] [286090] trunk/PerformanceTests

2021-11-19 Thread zalan
Title: [286090] trunk/PerformanceTests








Revision 286090
Author za...@apple.com
Date 2021-11-19 20:50:28 -0800 (Fri, 19 Nov 2021)


Log Message
Add layout performance test for simple bidi content
(this is not about inline axis direction, just mixed, bidirectional content)

Unreviewed.

* Layout/line-layout-simple-bidi.html: Added.

Modified Paths

trunk/PerformanceTests/ChangeLog


Added Paths

trunk/PerformanceTests/Layout/line-layout-simple-bidi.html




Diff

Modified: trunk/PerformanceTests/ChangeLog (286089 => 286090)

--- trunk/PerformanceTests/ChangeLog	2021-11-20 03:19:03 UTC (rev 286089)
+++ trunk/PerformanceTests/ChangeLog	2021-11-20 04:50:28 UTC (rev 286090)
@@ -1,3 +1,12 @@
+2021-11-19  Alan Bujtas  
+
+Add layout performance test for simple bidi content
+(this is not about inline axis direction, just mixed, bidirectional content)
+
+Unreviewed.
+
+* Layout/line-layout-simple-bidi.html: Added.
+
 2021-11-19  Angelos Oikonomopoulos  
 
 [JSC] Workaround for failing mips tests


Added: trunk/PerformanceTests/Layout/line-layout-simple-bidi.html (0 => 286090)

--- trunk/PerformanceTests/Layout/line-layout-simple-bidi.html	(rev 0)
+++ trunk/PerformanceTests/Layout/line-layout-simple-bidi.html	2021-11-20 04:50:28 UTC (rev 286090)
@@ -0,0 +1,998 @@
+
+
+
+Line breaking performance test
+
+
+

+

[webkit-changes] [286089] trunk/LayoutTests

2021-11-19 Thread commit-queue
Title: [286089] trunk/LayoutTests








Revision 286089
Author commit-qu...@webkit.org
Date 2021-11-19 19:19:03 -0800 (Fri, 19 Nov 2021)


Log Message
[GLIB] Update test expectations and baselines. Unreviewed test gardening.
https://bugs.webkit.org/show_bug.cgi?id=233385

Patch by Arcady Goldmints-Orlov  on 2021-11-19

LayoutTests/imported/w3c:

* web-platform-tests/html/canvas/offscreen/text/2d.text.drawing.style.fontVariant.settings-expected.txt:

LayoutTests:

* platform/glib/TestExpectations:
* platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt:
* platform/glib/imported/w3c/web-platform-tests/html/interaction/focus/chrome-object-tab-focus-bug-expected.txt: Added.
* platform/glib/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative-expected.txt: Added.
* platform/gtk/TestExpectations:
* transitions/clip-path-path-transitions-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/html/canvas/offscreen/text/2d.text.drawing.style.fontVariant.settings-expected.txt
trunk/LayoutTests/platform/glib/TestExpectations
trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt
trunk/LayoutTests/platform/gtk/TestExpectations
trunk/LayoutTests/transitions/clip-path-path-transitions-expected.txt


Added Paths

trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/interaction/
trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/interaction/focus/
trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/interaction/focus/chrome-object-tab-focus-bug-expected.txt
trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (286088 => 286089)

--- trunk/LayoutTests/ChangeLog	2021-11-20 03:05:27 UTC (rev 286088)
+++ trunk/LayoutTests/ChangeLog	2021-11-20 03:19:03 UTC (rev 286089)
@@ -1,3 +1,15 @@
+2021-11-19  Arcady Goldmints-Orlov  
+
+[GLIB] Update test expectations and baselines. Unreviewed test gardening.
+https://bugs.webkit.org/show_bug.cgi?id=233385
+
+* platform/glib/TestExpectations:
+* platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt:
+* platform/glib/imported/w3c/web-platform-tests/html/interaction/focus/chrome-object-tab-focus-bug-expected.txt: Added.
+* platform/glib/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads.tentative-expected.txt: Added.
+* platform/gtk/TestExpectations:
+* transitions/clip-path-path-transitions-expected.txt:
+
 2021-11-19  Kiet Ho  
 
 Integrate motion path transforms in transformation pipeline


Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286088 => 286089)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-11-20 03:05:27 UTC (rev 286088)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-11-20 03:19:03 UTC (rev 286089)
@@ -1,3 +1,10 @@
+2021-11-19  Arcady Goldmints-Orlov  
+
+[GLIB] Update test expectations and baselines. Unreviewed test gardening.
+https://bugs.webkit.org/show_bug.cgi?id=233385
+
+* web-platform-tests/html/canvas/offscreen/text/2d.text.drawing.style.fontVariant.settings-expected.txt:
+
 2021-11-19  Kiet Ho  
 
 Implement parsing and animation support for ray() shape accepted by offset-path


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/canvas/offscreen/text/2d.text.drawing.style.fontVariant.settings-expected.txt (286088 => 286089)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/html/canvas/offscreen/text/2d.text.drawing.style.fontVariant.settings-expected.txt	2021-11-20 03:05:27 UTC (rev 286088)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/canvas/offscreen/text/2d.text.drawing.style.fontVariant.settings-expected.txt	2021-11-20 03:19:03 UTC (rev 286089)
@@ -3,5 +3,5 @@
 Testing basic functionalities of fontKerning for canvas
 
 
-FAIL Testing basic functionalities of fontKerning for canvas assert_equals: ctx.fontVariantCaps === "Normal" (got [undefined], expected Normal[string]) expected (string) "Normal" but got (undefined) undefined
+FAIL Testing basic functionalities of fontKerning for canvas assert_equals: ctx.fontVariantCaps === "normal" (got [undefined], expected normal[string]) expected (string) "normal" but got (undefined) undefined
 


Modified: trunk/LayoutTests/platform/glib/TestExpectations (286088 => 286089)

--- trunk/LayoutTests/platform/glib/TestExpectations	2021-11-20 03:05:27 UTC (rev 286088)

[webkit-changes] [286088] trunk/WebDriverTests

2021-11-19 Thread lmoura
Title: [286088] trunk/WebDriverTests








Revision 286088
Author lmo...@igalia.com
Date 2021-11-19 19:05:27 -0800 (Fri, 19 Nov 2021)


Log Message
[GLIB][WebDriver] Gardening COOP-related timeouts

Unreviewed test gardening.

* TestExpectations.json:

Modified Paths

trunk/WebDriverTests/ChangeLog
trunk/WebDriverTests/TestExpectations.json




Diff

Modified: trunk/WebDriverTests/ChangeLog (286087 => 286088)

--- trunk/WebDriverTests/ChangeLog	2021-11-20 02:33:42 UTC (rev 286087)
+++ trunk/WebDriverTests/ChangeLog	2021-11-20 03:05:27 UTC (rev 286088)
@@ -1,3 +1,11 @@
+2021-11-19  Lauro Moura  
+
+[GLIB][WebDriver] Gardening COOP-related timeouts
+
+Unreviewed test gardening.
+
+* TestExpectations.json:
+
 2021-10-08  Carlos Garcia Campos  
 
 [WebDriver] Update w3c and selenium tests


Modified: trunk/WebDriverTests/TestExpectations.json (286087 => 286088)

--- trunk/WebDriverTests/TestExpectations.json	2021-11-20 02:33:42 UTC (rev 286087)
+++ trunk/WebDriverTests/TestExpectations.json	2021-11-20 03:05:27 UTC (rev 286088)
@@ -321,6 +321,9 @@
 
 "imported/w3c/webdriver/tests/back/back.py": {
 "subtests": {
+"test_cross_origin[capabilities0]": {
+"expected": {"all": {"status": ["TIMEOUT"], "bug": "webkit.org/b/233391"}}
+},
 "test_data_urls": {
 "expected": {"wpe": {"status": ["FAIL"], "bug": "webkit.org/b/212950"}}
 },
@@ -387,6 +390,9 @@
 
 "imported/w3c/webdriver/tests/forward/forward.py": {
 "subtests": {
+"test_cross_origin[capabilities0]": {
+"expected": {"all": {"status": ["TIMEOUT"], "bug": "webkit.org/b/233391"}}
+},
 "test_data_urls": {
 "expected": {"wpe": {"status": ["FAIL"], "bug": "webkit.org/b/212950"}}
 },
@@ -814,6 +820,9 @@
 },
 "imported/w3c/webdriver/tests/element_click/navigate.py": {
 "subtests": {
+"test_link_cross_origin[capabilities0]": {
+"expected": {"all": {"status": ["TIMEOUT"], "bug": "webkit.org/b/233391"}}
+},
 "test_link_closes_window": {
 "expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/211548"}}
 },
@@ -1012,6 +1021,9 @@
 
 "imported/w3c/webdriver/tests/navigate_to/navigate.py": {
 "subtests": {
+"test_cross_origin[capabilities0]": {
+"expected": {"all": {"status": ["TIMEOUT"], "bug": "webkit.org/b/233391"}}
+},
 "test_no_top_browsing_context": {
 "expected": {"wpe": {"status": ["FAIL"], "bug": "webkit.org/b/212950"}}
 },
@@ -1303,6 +1315,9 @@
 },
 "test_no_browsing_context": {
 "expected": {"wpe": {"status": ["FAIL"], "bug": "webkit.org/b/212950"}}
+},
+"test_navigation_with_coop_headers[capabilities0]": {
+"expected": {"all": {"status": ["TIMEOUT"], "bug": "webkit.org/b/233391"}}
 }
 }
 },






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286085] trunk

2021-11-19 Thread commit-queue
Title: [286085] trunk








Revision 286085
Author commit-qu...@webkit.org
Date 2021-11-19 16:49:21 -0800 (Fri, 19 Nov 2021)


Log Message
Integrate motion path transforms in transformation pipeline
https://bugs.webkit.org/show_bug.cgi?id=233144

Patch by Kiet Ho  on 2021-11-19
Reviewed by Dean Jackson.

Source/WebCore:

This patch ties everything together and renders CSS Motion Path out onto the screen.
Motion path properties are desugared into two transformations: one translate to move
the element to the specified location on the path, and one rotate to rotate the element
to the correct orientation specified by offset-rotate. The two transformations are applied
after scale() and before the individual transform functions, as specified in the CSS
Transforms spec.

Tests: imported/w3c/web-platform-tests/css/motion/animation/reftests/offset-path-with-transforms-001.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-001.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-002.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-003.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-004.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-005.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-006.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-007.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-008.html
   imported/w3c/web-platform-tests/css/motion/offset-distance-009.html
   imported/w3c/web-platform-tests/css/motion/offset-path-string-001.html
   imported/w3c/web-platform-tests/css/motion/offset-path-string-002.html
   imported/w3c/web-platform-tests/css/motion/offset-rotate-003.html
   imported/w3c/web-platform-tests/css/motion/offset-rotate-004.html
   imported/w3c/web-platform-tests/css/motion/offset-rotate-005.html

* platform/graphics/Path.cpp:
(WebCore::Path::isClosed const): Added method to determine if a Path is closed (i.e,
the last draw command is CloseSubpath). This is required because offset-distance is
handled differently depending on if the Path is closed or not.
* platform/graphics/Path.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::recompositeChangeRequiresGeometryUpdate): Account in changes in motion path properties.
* rendering/RenderObject.h:
(WebCore::RenderObject::hasTransform const): Account in motion path properties.
* rendering/style/RenderStyle.cpp:
(WebCore::rareNonInheritedDataChangeRequiresLayout):
(WebCore::RenderStyle::applyTransform const): Add an additional step to apply motion path transforms.
(WebCore::getPathFromPathOperation):
(WebCore::getTraversalStateAtDistance):
(WebCore::RenderStyle::applyMotionPathTransform const): Added method to apply motion path transforms.
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::hasTransform const): Account for motion path properties.

LayoutTests:

Removed ImageOnlyFailure expectations for tests that should now pass.

* TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/Path.cpp
trunk/Source/WebCore/platform/graphics/Path.h
trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp
trunk/Source/WebCore/rendering/RenderObject.h
trunk/Source/WebCore/rendering/style/RenderStyle.cpp
trunk/Source/WebCore/rendering/style/RenderStyle.h




Diff

Modified: trunk/LayoutTests/ChangeLog (286084 => 286085)

--- trunk/LayoutTests/ChangeLog	2021-11-19 23:52:41 UTC (rev 286084)
+++ trunk/LayoutTests/ChangeLog	2021-11-20 00:49:21 UTC (rev 286085)
@@ -1,3 +1,14 @@
+2021-11-19  Kiet Ho  
+
+Integrate motion path transforms in transformation pipeline
+https://bugs.webkit.org/show_bug.cgi?id=233144
+
+Reviewed by Dean Jackson.
+
+Removed ImageOnlyFailure expectations for tests that should now pass.
+
+* TestExpectations:
+
 2021-11-19  Antti Koivisto  
 
 [CSS Cascade Layers] [Debug] ASSERTION FAILED: m_childRules.isEmpty() when using @import with layer name


Modified: trunk/LayoutTests/TestExpectations (286084 => 286085)

--- trunk/LayoutTests/TestExpectations	2021-11-19 23:52:41 UTC (rev 286084)
+++ trunk/LayoutTests/TestExpectations	2021-11-20 00:49:21 UTC (rev 286085)
@@ -5089,42 +5089,29 @@
 # import-w3c-tests copies -notref.html to -expected.html, so expected image failure here.
 imported/w3c/web-platform-tests/html/semantics/forms/the-textarea-element/placeholder-white-space.tentative.html [ ImageOnlyFailure ]
 
-# CSS motion path tests, currently failing.
-imported/w3c/web-platform-tests/css/motion/animation/reftests/offset-path-with-transforms-001.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/motion/offset-anchor-transform-box-fill-box-001.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/motion/offset-anchor-transform-box-fill-box-002.html [ ImageOnlyFailure ]

[webkit-changes] [286084] trunk

2021-11-19 Thread achristensen
Title: [286084] trunk








Revision 286084
Author achristen...@apple.com
Date 2021-11-19 15:52:41 -0800 (Fri, 19 Nov 2021)


Log Message
Implement extension-path variant of redirect action in WKContentRuleList
https://bugs.webkit.org/show_bug.cgi?id=233351

Reviewed by Tim Hatcher.

Source/WebCore:

Because the extension path changes each time you relaunch Safari but the compiled bytecode does not,
we need a way to pass in the extension base URL when adding the looked-up or compiled WKContentRuleList
to the WKUserContentController.

* contentextensions/ContentExtension.cpp:
(WebCore::ContentExtensions::ContentExtension::create):
(WebCore::ContentExtensions::ContentExtension::ContentExtension):
* contentextensions/ContentExtension.h:
(WebCore::ContentExtensions::ContentExtension::extensionBaseURL const):
* contentextensions/ContentExtensionActions.cpp:
(WebCore::ContentExtensions::RedirectAction::applyToRequest):
* contentextensions/ContentExtensionActions.h:
* contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::addContentExtension):
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentRuleListsForLoad):
(WebCore::ContentExtensions::applyResultsToRequest):
* contentextensions/ContentExtensionsBackend.h:
* contentextensions/ContentRuleListResults.h:

Source/WebKit:

* NetworkProcess/NetworkContentRuleListManager.cpp:
(WebKit::NetworkContentRuleListManager::addContentRuleLists):
* NetworkProcess/NetworkContentRuleListManager.h:
* NetworkProcess/NetworkContentRuleListManager.messages.in:
* Shared/ServiceWorkerInitializationData.cpp:
(WebKit::ServiceWorkerInitializationData::decode):
* Shared/ServiceWorkerInitializationData.h:
* Shared/UserContentControllerParameters.cpp:
(WebKit::UserContentControllerParameters::decode):
* Shared/UserContentControllerParameters.h:
* Shared/WebCompiledContentRuleListData.cpp:
(WebKit::WebCompiledContentRuleListData::encode const):
(WebKit::WebCompiledContentRuleListData::decode):
* Shared/WebCompiledContentRuleListData.h:
(WebKit::WebCompiledContentRuleListData::WebCompiledContentRuleListData):
* UIProcess/API/APIContentRuleList.cpp:
(API::ContentRuleList::ContentRuleList):
(API::ContentRuleList::name const):
* UIProcess/API/APIContentRuleList.h:
* UIProcess/API/APIContentRuleListStore.cpp:
(API::createExtension):
* UIProcess/API/Cocoa/WKUserContentController.mm:
(-[WKUserContentController _addContentRuleList:extensionBaseURL:]):
* UIProcess/API/Cocoa/WKUserContentControllerPrivate.h:
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::contentExtensionRules):
* UIProcess/UserContent/WebUserContentControllerProxy.cpp:
(WebKit::WebUserContentControllerProxy::contentRuleListData const):
(WebKit::WebUserContentControllerProxy::addContentRuleList):
* UIProcess/UserContent/WebUserContentControllerProxy.h:
(WebKit::WebUserContentControllerProxy::addContentRuleList):
(WebKit::WebUserContentControllerProxy::contentExtensionRules):
* UIProcess/WebProcessProxy.cpp:
(WebKit::contentRuleListsFromIdentifier):
* WebProcess/UserContent/WebUserContentController.cpp:
(WebKit::WebUserContentController::addContentRuleLists):
* WebProcess/UserContent/WebUserContentController.h:
* WebProcess/UserContent/WebUserContentController.messages.in:

Tools:

* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::makeBackend):
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
(TEST_F):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/contentextensions/ContentExtension.cpp
trunk/Source/WebCore/contentextensions/ContentExtension.h
trunk/Source/WebCore/contentextensions/ContentExtensionActions.cpp
trunk/Source/WebCore/contentextensions/ContentExtensionActions.h
trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp
trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.h
trunk/Source/WebCore/contentextensions/ContentRuleListResults.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/NetworkContentRuleListManager.cpp
trunk/Source/WebKit/NetworkProcess/NetworkContentRuleListManager.h
trunk/Source/WebKit/NetworkProcess/NetworkContentRuleListManager.messages.in
trunk/Source/WebKit/Shared/ServiceWorkerInitializationData.cpp
trunk/Source/WebKit/Shared/ServiceWorkerInitializationData.h
trunk/Source/WebKit/Shared/UserContentControllerParameters.cpp
trunk/Source/WebKit/Shared/UserContentControllerParameters.h
trunk/Source/WebKit/Shared/WebCompiledContentRuleListData.cpp
trunk/Source/WebKit/Shared/WebCompiledContentRuleListData.h
trunk/Source/WebKit/UIProcess/API/APIContentRuleList.cpp
trunk/Source/WebKit/UIProcess/API/APIContentRuleList.h
trunk/Source/WebKit/UIProcess/API/APIContentRuleListStore.cpp
trunk/Source/WebKit/UIProcess/API/Cocoa/WKUserContentController.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKUserContentControllerPrivate.h
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp

[webkit-changes] [286083] trunk/Source/JavaScriptCore

2021-11-19 Thread commit-queue
Title: [286083] trunk/Source/_javascript_Core








Revision 286083
Author commit-qu...@webkit.org
Date 2021-11-19 15:19:44 -0800 (Fri, 19 Nov 2021)


Log Message
Unreviewed, reverting r286030.
https://bugs.webkit.org/show_bug.cgi?id=233387

5% JetStream2 regression

Reverted changeset:

"DFGByteCodeParser.cpp should avoid resizing the Operands<> of
every BasicBlock on every inlining"
https://bugs.webkit.org/show_bug.cgi?id=228053
https://commits.webkit.org/r286030

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/bytecode/Operands.h
trunk/Source/_javascript_Core/dfg/DFGBasicBlock.cpp
trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h
trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (286082 => 286083)

--- trunk/Source/_javascript_Core/ChangeLog	2021-11-19 23:14:48 UTC (rev 286082)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-11-19 23:19:44 UTC (rev 286083)
@@ -1,3 +1,17 @@
+2021-11-19  Commit Queue  
+
+Unreviewed, reverting r286030.
+https://bugs.webkit.org/show_bug.cgi?id=233387
+
+5% JetStream2 regression
+
+Reverted changeset:
+
+"DFGByteCodeParser.cpp should avoid resizing the Operands<> of
+every BasicBlock on every inlining"
+https://bugs.webkit.org/show_bug.cgi?id=228053
+https://commits.webkit.org/r286030
+
 2021-11-19  Saam Barati  
 
 Fix assertion added in r285592


Modified: trunk/Source/_javascript_Core/bytecode/Operands.h (286082 => 286083)

--- trunk/Source/_javascript_Core/bytecode/Operands.h	2021-11-19 23:14:48 UTC (rev 286082)
+++ trunk/Source/_javascript_Core/bytecode/Operands.h	2021-11-19 23:19:44 UTC (rev 286083)
@@ -274,25 +274,16 @@
 }
 }
 
-void ensureLocalsAndTmps(size_t newNumLocals, size_t newNumTmps, const T& ensuredValue = T())
+void ensureTmps(size_t size, const T& ensuredValue = T())
 {
-ASSERT(newNumLocals >= numberOfLocals());
-ASSERT(newNumTmps >= numberOfTmps());
+if (size <= numberOfTmps())
+return;
 
-size_t oldNumLocals = numberOfLocals();
-size_t oldNumTmps = numberOfTmps();
-
 size_t oldSize = m_values.size();
-size_t newSize = numberOfArguments() + newNumLocals + newNumTmps;
+size_t newSize = numberOfArguments() + numberOfLocals() + size;
 m_values.grow(newSize);
 
-for (size_t i = 0; i < oldNumTmps; ++i)
-m_values[newSize - 1 - i] = m_values[tmpIndex(oldNumTmps - 1 - i)];
-
-m_numLocals = newNumLocals;
 if (ensuredValue != T() || !WTF::VectorTraits::needsInitialization) {
-for (size_t i = 0; i < newNumLocals - oldNumLocals; ++i)
-m_values[localIndex(oldNumLocals + i)] = ensuredValue;
 for (size_t i = oldSize; i < newSize; ++i)
 m_values[i] = ensuredValue;
 }


Modified: trunk/Source/_javascript_Core/dfg/DFGBasicBlock.cpp (286082 => 286083)

--- trunk/Source/_javascript_Core/dfg/DFGBasicBlock.cpp	2021-11-19 23:14:48 UTC (rev 286082)
+++ trunk/Source/_javascript_Core/dfg/DFGBasicBlock.cpp	2021-11-19 23:19:44 UTC (rev 286083)
@@ -63,6 +63,24 @@
 {
 }
 
+void BasicBlock::ensureLocals(unsigned newNumLocals)
+{
+variablesAtHead.ensureLocals(newNumLocals);
+variablesAtTail.ensureLocals(newNumLocals);
+valuesAtHead.ensureLocals(newNumLocals);
+valuesAtTail.ensureLocals(newNumLocals);
+intersectionOfPastValuesAtHead.ensureLocals(newNumLocals, AbstractValue::fullTop());
+}
+
+void BasicBlock::ensureTmps(unsigned newNumTmps)
+{
+variablesAtHead.ensureTmps(newNumTmps);
+variablesAtTail.ensureTmps(newNumTmps);
+valuesAtHead.ensureTmps(newNumTmps);
+valuesAtTail.ensureTmps(newNumTmps);
+intersectionOfPastValuesAtHead.ensureTmps(newNumTmps, AbstractValue::fullTop());
+}
+
 void BasicBlock::replaceTerminal(Graph& graph, Node* node)
 {
 NodeAndIndex result = findTerminal();


Modified: trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h (286082 => 286083)

--- trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h	2021-11-19 23:14:48 UTC (rev 286082)
+++ trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h	2021-11-19 23:19:44 UTC (rev 286083)
@@ -53,6 +53,9 @@
 float executionCount);
 ~BasicBlock();
 
+void ensureLocals(unsigned newNumLocals);
+void ensureTmps(unsigned newNumTmps);
+
 size_t size() const { return m_nodes.size(); }
 bool isEmpty() const { return !size(); }
 Node*& at(size_t i) { return m_nodes[i]; }


Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (286082 => 286083)

--- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp	2021-11-19 23:14:48 UTC (rev 286082)
+++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp	2021-11-19 23:19:44 UTC (rev 286083)
@@ -138,7 +138,7 @@
 // Just parse from m_currentIndex to the end of the current CodeBlock.
 void parseCodeBlock();
 
-

[webkit-changes] [286082] trunk/Source/WebKit

2021-11-19 Thread graouts
Title: [286082] trunk/Source/WebKit








Revision 286082
Author grao...@webkit.org
Date 2021-11-19 15:14:48 -0800 (Fri, 19 Nov 2021)


Log Message
[Model] Use RefPtr across ARKitInlinePreviewModelPlayer when creating strong pointers
https://bugs.webkit.org/show_bug.cgi?id=233375

Reviewed by Wenson Hsieh.

* WebProcess/Model/ARKitInlinePreviewModelPlayer.mm:
(WebKit::ARKitInlinePreviewModelPlayer::getCamera):
(WebKit::ARKitInlinePreviewModelPlayer::setCamera):
(WebKit::ARKitInlinePreviewModelPlayer::isPlayingAnimation):
(WebKit::ARKitInlinePreviewModelPlayer::setAnimationIsPlaying):
* WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm:
(WebKit::ARKitInlinePreviewModelPlayerIOS::enterFullscreen):
* WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm:
(WebKit::ARKitInlinePreviewModelPlayerMac::load):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm
trunk/Source/WebKit/WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm
trunk/Source/WebKit/WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286081 => 286082)

--- trunk/Source/WebKit/ChangeLog	2021-11-19 22:41:30 UTC (rev 286081)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 23:14:48 UTC (rev 286082)
@@ -1,5 +1,22 @@
 2021-11-19  Antoine Quint  
 
+[Model] Use RefPtr across ARKitInlinePreviewModelPlayer when creating strong pointers
+https://bugs.webkit.org/show_bug.cgi?id=233375
+
+Reviewed by Wenson Hsieh.
+
+* WebProcess/Model/ARKitInlinePreviewModelPlayer.mm:
+(WebKit::ARKitInlinePreviewModelPlayer::getCamera):
+(WebKit::ARKitInlinePreviewModelPlayer::setCamera):
+(WebKit::ARKitInlinePreviewModelPlayer::isPlayingAnimation):
+(WebKit::ARKitInlinePreviewModelPlayer::setAnimationIsPlaying):
+* WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm:
+(WebKit::ARKitInlinePreviewModelPlayerIOS::enterFullscreen):
+* WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm:
+(WebKit::ARKitInlinePreviewModelPlayerMac::load):
+
+2021-11-19  Antoine Quint  
+
 [Model] Reduce use of callOnMainRunLoop in ModelElementControllerCocoa
 https://bugs.webkit.org/show_bug.cgi?id=233376
 


Modified: trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm (286081 => 286082)

--- trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm	2021-11-19 22:41:30 UTC (rev 286081)
+++ trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm	2021-11-19 23:14:48 UTC (rev 286082)
@@ -63,7 +63,7 @@
 return;
 }
 
-auto* strongPage = m_page.get();
+RefPtr strongPage = m_page.get();
 if (!strongPage) {
 completionHandler(std::nullopt);
 return;
@@ -89,7 +89,7 @@
 return;
 }
 
-auto* strongPage = m_page.get();
+RefPtr strongPage = m_page.get();
 if (!strongPage) {
 completionHandler(false);
 return;
@@ -110,7 +110,7 @@
 return;
 }
 
-auto* strongPage = m_page.get();
+RefPtr strongPage = m_page.get();
 if (!strongPage) {
 completionHandler(std::nullopt);
 return;
@@ -136,7 +136,7 @@
 return;
 }
 
-auto* strongPage = m_page.get();
+RefPtr strongPage = m_page.get();
 if (!strongPage) {
 completionHandler(false);
 return;


Modified: trunk/Source/WebKit/WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm (286081 => 286082)

--- trunk/Source/WebKit/WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm	2021-11-19 22:41:30 UTC (rev 286081)
+++ trunk/Source/WebKit/WebProcess/Model/ios/ARKitInlinePreviewModelPlayerIOS.mm	2021-11-19 23:14:48 UTC (rev 286082)
@@ -63,7 +63,7 @@
 
 void ARKitInlinePreviewModelPlayerIOS::enterFullscreen()
 {
-auto* strongPage = page();
+RefPtr strongPage = page();
 if (!strongPage)
 return;
 


Modified: trunk/Source/WebKit/WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm (286081 => 286082)

--- trunk/Source/WebKit/WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm	2021-11-19 22:41:30 UTC (rev 286081)
+++ trunk/Source/WebKit/WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm	2021-11-19 23:14:48 UTC (rev 286082)
@@ -128,7 +128,7 @@
 if (!strongClient)
 return;
 
-auto* strongPage = page();
+RefPtr strongPage = page();
 if (!strongPage) {
 strongClient->didFailLoading(*this, WebCore::ResourceError { WebCore::errorDomainWebKitInternal, 0, modelSource.url(), "WebPage destroyed"_s });
 return;
@@ -140,7 +140,7 @@
 LOG(ModelElement, "ARKitInlinePreviewModelPlayer::modelDidChange() created preview with UUID %s and size %f x %f.", ((String)[m_inlinePreview uuid].UUIDString).utf8().data(), size.width(), size.height());
 
 CompletionHandler, WebCore::ResourceError>)> completionHandler = [weakSelf = WeakPtr { *this }] (Expected, 

[webkit-changes] [286081] trunk/Source/WebKit

2021-11-19 Thread graouts
Title: [286081] trunk/Source/WebKit








Revision 286081
Author grao...@webkit.org
Date 2021-11-19 14:41:30 -0800 (Fri, 19 Nov 2021)


Log Message
[Model] Reduce use of callOnMainRunLoop in ModelElementControllerCocoa
https://bugs.webkit.org/show_bug.cgi?id=233376

Reviewed by Wenson Hsieh.

We only need to use callOnMainRunLoop inside of blocks.

* UIProcess/Cocoa/ModelElementControllerCocoa.mm:
(WebKit::ModelElementController::getCameraForModelElement):
(WebKit::ModelElementController::setCameraForModelElement):
(WebKit::ModelElementController::isPlayingAnimationForModelElement):
(WebKit::ModelElementController::setAnimationIsPlayingForModelElement):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286080 => 286081)

--- trunk/Source/WebKit/ChangeLog	2021-11-19 22:38:00 UTC (rev 286080)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 22:41:30 UTC (rev 286081)
@@ -1,3 +1,18 @@
+2021-11-19  Antoine Quint  
+
+[Model] Reduce use of callOnMainRunLoop in ModelElementControllerCocoa
+https://bugs.webkit.org/show_bug.cgi?id=233376
+
+Reviewed by Wenson Hsieh.
+
+We only need to use callOnMainRunLoop inside of blocks.
+
+* UIProcess/Cocoa/ModelElementControllerCocoa.mm:
+(WebKit::ModelElementController::getCameraForModelElement):
+(WebKit::ModelElementController::setCameraForModelElement):
+(WebKit::ModelElementController::isPlayingAnimationForModelElement):
+(WebKit::ModelElementController::setAnimationIsPlayingForModelElement):
+
 2021-11-19  Chris Dumez  
 
 Revert r282446 to bring back support for WebKitAdditions in Framework headers


Modified: trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm (286080 => 286081)

--- trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm	2021-11-19 22:38:00 UTC (rev 286080)
+++ trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm	2021-11-19 22:41:30 UTC (rev 286081)
@@ -246,10 +246,7 @@
 {
 auto* preview = previewForModelIdentifier(modelIdentifier);
 if (!previewHasCameraSupport(preview)) {
-callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
-if (weakThis)
-completionHandler(makeUnexpected(error));
-});
+completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
 return;
 }
 
@@ -256,9 +253,9 @@
 #if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
 [preview getCameraTransform:makeBlockPtr([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] (simd_float3 cameraTransform, NSError *error) mutable {
 if (error) {
-callOnMainRunLoop([weakThis = WTFMove(weakThis), completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
+callOnMainRunLoop([weakThis = WTFMove(weakThis), completionHandler = WTFMove(completionHandler)] () mutable {
 if (weakThis)
-completionHandler(makeUnexpected(error));
+completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
 });
 return;
 }
@@ -269,11 +266,7 @@
 });
 }).get()];
 #else
-callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
-if (weakThis)
-completionHandler(makeUnexpected(error));
-});
-return;
+ASSERT_NOT_REACHED();
 #endif
 }
 
@@ -281,25 +274,16 @@
 {
 auto* preview = previewForModelIdentifier(modelIdentifier);
 if (!previewHasCameraSupport(preview)) {
-callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-if (weakThis)
-completionHandler(false);
-});
+completionHandler(false);
 return;
 }
 
 #if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
 [preview setCameraTransform:simd_make_float3(camera.pitch, camera.yaw, camera.scale)];
-#endif
-
-callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-if (weakThis)
-#if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
-completionHandler(true);
+completionHandler(true);
 #else
-completionHandler(false);
+ASSERT_NOT_REACHED();
 #endif
-});
 }
 
 static bool previewHasAnimationSupport(ASVInlinePreview *preview)
@@ -315,22 +299,15 @@
 {
 auto* preview = previewForModelIdentifier(modelIdentifier);
 if (!previewHasAnimationSupport(preview)) {
-

[webkit-changes] [286080] trunk/Source/WebKit

2021-11-19 Thread cdumez
Title: [286080] trunk/Source/WebKit








Revision 286080
Author cdu...@apple.com
Date 2021-11-19 14:38:00 -0800 (Fri, 19 Nov 2021)


Log Message
Revert r282446 to bring back support for WebKitAdditions in Framework headers
https://bugs.webkit.org/show_bug.cgi?id=233374

Reviewed by Wenson Hsieh.

* WebKit.xcodeproj/project.pbxproj:
* mac/replace-webkit-additions-includes.py: Added.
(read_content_from_webkit_additions):
(main):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj


Added Paths

trunk/Source/WebKit/mac/replace-webkit-additions-includes.py




Diff

Modified: trunk/Source/WebKit/ChangeLog (286079 => 286080)

--- trunk/Source/WebKit/ChangeLog	2021-11-19 22:20:47 UTC (rev 286079)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 22:38:00 UTC (rev 286080)
@@ -1,3 +1,15 @@
+2021-11-19  Chris Dumez  
+
+Revert r282446 to bring back support for WebKitAdditions in Framework headers
+https://bugs.webkit.org/show_bug.cgi?id=233374
+
+Reviewed by Wenson Hsieh.
+
+* WebKit.xcodeproj/project.pbxproj:
+* mac/replace-webkit-additions-includes.py: Added.
+(read_content_from_webkit_additions):
+(main):
+
 2021-11-19  J Pascoe  
 
 [WebAuthn] Add headers for [_WKWebAuthenticationPanel makeCredentialWithClientDataHash] and [_WKWebAuthenticationPanel getAssertionWithClientDataHash]


Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (286079 => 286080)

--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2021-11-19 22:20:47 UTC (rev 286079)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj	2021-11-19 22:38:00 UTC (rev 286080)
@@ -13802,6 +13802,7 @@
 1A6280C81919956B006AD9F9 /* Migrate WebKitLegacy Headers */,
 375A248817E5048E00C9A086 /* Postprocess WKBase.h */,
 1AD98ECF191D867300CAA6DF /* Postprocess WKFoundation.h */,
+F4EFBAD522540CBB00049BA6 /* Replace WebKitAdditions in Framework Headers */,
 1A1D2115191D96380001619F /* Postprocess Framework Headers */,
 2E16B6F42019BC25008996D6 /* Copy Additional Resources */,
 8DC2EF520486A6940098B216 /* Resources */,
@@ -14674,6 +14675,20 @@
 			shellPath = /bin/sh;
 			shellScript = "echo \"Preprocessing sandbox\"\nScripts/generate-derived-sources.sh sandbox-profiles-ios\ncp ${BUILT_PRODUCTS_DIR}/DerivedSources/WebKit2/com.apple.WebKit.WebContent.sb ${DSTROOT}/${INSTALL_PATH}\n";
 		};
+		F4EFBAD522540CBB00049BA6 /* Replace WebKitAdditions in Framework Headers */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Replace WebKitAdditions in Framework Headers";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "if [ \"${XCODE_VERSION_ACTUAL}\" -ge \"1140\" -a \"${WK_USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n# In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\nexit 0\nfi\n\nif [ \"${ACTION}\" = \"analyze\" -o \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" -o \"${ACTION}\" = \"installapi\" ]; then\nfor HEADERS_DIRECTORY in \"${PUBLIC_HEADERS_FOLDER_PATH}\" \"${PRIVATE_HEADERS_FOLDER_PATH}\"; do\nfor HEADER_PATH in \"${TARGET_BUILD_DIR}/${HEADERS_DIRECTORY}/\"*.*; do\nif [[ ! -z `grep '#import ' \"${HEADER_PATH}\"` ]]; then\npython \"${SRCROOT}/mac/replace-webk
 it-additions-includes.py\" \"${HEADER_PATH}\" \"${BUILT_PRODUCTS_DIR}\" \"${SDKROOT}\" || exit $?\nfi\ndone\ndone\nfi\n\n\n";
+		};
 /* End PBXShellScriptBuildPhase section */
 
 /* Begin PBXSourcesBuildPhase section */


Added: trunk/Source/WebKit/mac/replace-webkit-additions-includes.py (0 => 286080)

--- trunk/Source/WebKit/mac/replace-webkit-additions-includes.py	(rev 0)
+++ trunk/Source/WebKit/mac/replace-webkit-additions-includes.py	2021-11-19 22:38:00 UTC (rev 286080)
@@ -0,0 +1,89 @@
+#!/usr/bin/env python
+#
+# Copyright (C) 2019 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.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE INC. 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 INC. OR ITS 

[webkit-changes] [286079] trunk/Tools

2021-11-19 Thread jenner
Title: [286079] trunk/Tools








Revision 286079
Author jen...@apple.com
Date 2021-11-19 14:20:47 -0800 (Fri, 19 Nov 2021)


Log Message
[ Monterey ] TestWebKitAPI.WebSocket.PageWithAttributedBundleIdentifierDestroyed (API-test) is a constant timeout
https://bugs.webkit.org/show_bug.cgi?id=233224

Unreviewed test gardening.

* TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm




Diff

Modified: trunk/Tools/ChangeLog (286078 => 286079)

--- trunk/Tools/ChangeLog	2021-11-19 22:19:52 UTC (rev 286078)
+++ trunk/Tools/ChangeLog	2021-11-19 22:20:47 UTC (rev 286079)
@@ -12,6 +12,16 @@
 * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
 (TestWebKitAPI::TEST):
 
+2021-11-19  Robert Jenner  
+
+[ Monterey ] TestWebKitAPI.WebSocket.PageWithAttributedBundleIdentifierDestroyed (API-test) is a constant timeout 
+https://bugs.webkit.org/show_bug.cgi?id=233224
+
+Unreviewed test gardening.
+
+* TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm:
+(TestWebKitAPI::TEST):
+
 2021-11-18  Jonathan Bedard  
 
 [webkitcorepy] Indicate to user the default option


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm (286078 => 286079)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm	2021-11-19 22:19:52 UTC (rev 286078)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm	2021-11-19 22:20:47 UTC (rev 286079)
@@ -86,7 +86,12 @@
 EXPECT_WK_STREQ([webView _test_waitForAlert], "PASS");
 }
 
+// FIXME: Re-enable this test for Monterey+ once webkit.org/b/233224 is resolved.
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 12
+TEST(WebSocket, DISABLED_PageWithAttributedBundleIdentifierDestroyed)
+#else
 TEST(WebSocket, PageWithAttributedBundleIdentifierDestroyed)
+#endif
 {
 HTTPServer server([](Connection connection) {
 connection.webSocketHandshake();






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286078] trunk

2021-11-19 Thread j_pascoe
Title: [286078] trunk








Revision 286078
Author j_pas...@apple.com
Date 2021-11-19 14:19:52 -0800 (Fri, 19 Nov 2021)


Log Message
[WebAuthn] Add headers for [_WKWebAuthenticationPanel makeCredentialWithClientDataHash] and [_WKWebAuthenticationPanel getAssertionWithClientDataHash]
https://bugs.webkit.org/show_bug.cgi?id=233371

Source/WebKit:

Reviewed by Brent Fulgham.

These SPIs were added in https://bugs.webkit.org/show_bug.cgi?id=233216, but were not added to the header
file _WKWebAuthenticationPanel.h, this change adds them.

* UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h:

Tools:

Reviewed by Brent Fulgham.

Add tests for [_WKWebAuthenticationPanel makeCredentialWithClientDataHash] and
[_WKWebAuthenticationPanel getAssertionWithClientDataHash].

* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286077 => 286078)

--- trunk/Source/WebKit/ChangeLog	2021-11-19 22:05:29 UTC (rev 286077)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 22:19:52 UTC (rev 286078)
@@ -1,3 +1,16 @@
+2021-11-19  J Pascoe  
+
+[WebAuthn] Add headers for [_WKWebAuthenticationPanel makeCredentialWithClientDataHash] and [_WKWebAuthenticationPanel getAssertionWithClientDataHash]
+https://bugs.webkit.org/show_bug.cgi?id=233371
+
+
+Reviewed by Brent Fulgham.
+
+These SPIs were added in https://bugs.webkit.org/show_bug.cgi?id=233216, but were not added to the header
+file _WKWebAuthenticationPanel.h, this change adds them.
+
+* UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h:
+
 2021-11-19  Myles C. Maxfield  
 
 [WebGPU] Add converters from serializable descriptors to interface descriptors


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h (286077 => 286078)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h	2021-11-19 22:05:29 UTC (rev 286077)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h	2021-11-19 22:19:52 UTC (rev 286078)
@@ -126,7 +126,9 @@
 
 // FIXME:  Adds detailed NSError.
 - (void)makeCredentialWithChallenge:(NSData *)challenge origin:(NSString *)origin options:(_WKPublicKeyCredentialCreationOptions *)options completionHandler:(void (^)(_WKAuthenticatorAttestationResponse *, NSError *))handler WK_API_AVAILABLE(macos(12.0), ios(15.0));
+- (void)makeCredentialWithClientDataHash:(NSData *)clientDataHash options:(_WKPublicKeyCredentialCreationOptions *)options completionHandler:(void (^)(_WKAuthenticatorAttestationResponse *, NSError *))handler WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
 - (void)getAssertionWithChallenge:(NSData *)challenge origin:(NSString *)origin options:(_WKPublicKeyCredentialRequestOptions *)options completionHandler:(void (^)(_WKAuthenticatorAssertionResponse *, NSError *))handler WK_API_AVAILABLE(macos(12.0), ios(15.0));
+- (void)getAssertionWithClientDataHash:(NSData *)clientDataHash options:(_WKPublicKeyCredentialRequestOptions *)options completionHandler:(void (^)(_WKAuthenticatorAssertionResponse *, NSError *))handler WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
 - (void)cancel;
 
 // FIXME:  Deprecate the following properties.


Modified: trunk/Tools/ChangeLog (286077 => 286078)

--- trunk/Tools/ChangeLog	2021-11-19 22:05:29 UTC (rev 286077)
+++ trunk/Tools/ChangeLog	2021-11-19 22:19:52 UTC (rev 286078)
@@ -1,3 +1,17 @@
+2021-11-19  J Pascoe  
+
+[WebAuthn] Add headers for [_WKWebAuthenticationPanel makeCredentialWithClientDataHash] and [_WKWebAuthenticationPanel getAssertionWithClientDataHash]
+https://bugs.webkit.org/show_bug.cgi?id=233371
+
+
+Reviewed by Brent Fulgham.
+
+Add tests for [_WKWebAuthenticationPanel makeCredentialWithClientDataHash] and 
+[_WKWebAuthenticationPanel getAssertionWithClientDataHash].
+
+* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
+(TestWebKitAPI::TEST):
+
 2021-11-18  Jonathan Bedard  
 
 [webkitcorepy] Indicate to user the default option


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm (286077 => 286078)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm	2021-11-19 22:05:29 UTC (rev 286077)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm	2021-11-19 22:19:52 UTC (rev 286078)
@@ -1898,6 +1898,44 @@
 }];
 Util::run();
 }
+
+TEST(WebAuthenticationPanel, MakeCredentialLAClientDataHash)
+{
+reset();
+
+uint8_t identifier[] = { 0x01, 0x02, 0x03, 0x04 };
+uint8_t hash[] = { 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 

[webkit-changes] [286076] trunk/Tools

2021-11-19 Thread jbedard
Title: [286076] trunk/Tools








Revision 286076
Author jbed...@apple.com
Date 2021-11-19 14:00:09 -0800 (Fri, 19 Nov 2021)


Log Message
[webkitcorepy] Indicate to user the default option
https://bugs.webkit.org/show_bug.cgi?id=233342


Reviewed by Ryan Haddad.

* Tools/Scripts/libraries/webkitcorepy/setup.py: Bump version.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py:
(Terminal.choose): Surround the default option with square brackets.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/terminal_unittest.py:
(TerminalTests.test_choose_triple):
* Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.github): We should construct a user owned mirror by default.
* Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/land_unittest.py:
(TestLand.test_default):
(TestLand.test_canonicalize):
(TestLand.test_svn):
(TestLandGitHub):
* Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py:
(TestSetup.test_github):

Canonical link: https://commits.webkit.org/244463@main

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/libraries/webkitcorepy/setup.py
trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py
trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py
trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/tests/terminal_unittest.py
trunk/Tools/Scripts/libraries/webkitscmpy/setup.py
trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py
trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py
trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/land_unittest.py
trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (286075 => 286076)

--- trunk/Tools/ChangeLog	2021-11-19 21:43:17 UTC (rev 286075)
+++ trunk/Tools/ChangeLog	2021-11-19 22:00:09 UTC (rev 286076)
@@ -1,3 +1,29 @@
+2021-11-18  Jonathan Bedard  
+
+[webkitcorepy] Indicate to user the default option
+https://bugs.webkit.org/show_bug.cgi?id=233342
+
+
+Reviewed by Ryan Haddad.
+
+* Scripts/libraries/webkitcorepy/setup.py: Bump version.
+* Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
+* Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py:
+(Terminal.choose): Surround the default option with square brackets.
+* Scripts/libraries/webkitcorepy/webkitcorepy/tests/terminal_unittest.py:
+(TerminalTests.test_choose_triple):
+* Scripts/libraries/webkitscmpy/setup.py: Bump version.
+* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
+* Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
+(Setup.github): We should construct a user owned mirror by default.
+* Scripts/libraries/webkitscmpy/webkitscmpy/test/land_unittest.py:
+(TestLand.test_default):
+(TestLand.test_canonicalize):
+(TestLand.test_svn):
+(TestLandGitHub):
+* Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py:
+(TestSetup.test_github):
+
 2021-11-19  Brady Eidson  
 
 More webpushd architecture work


Modified: trunk/Tools/Scripts/libraries/webkitcorepy/setup.py (286075 => 286076)

--- trunk/Tools/Scripts/libraries/webkitcorepy/setup.py	2021-11-19 21:43:17 UTC (rev 286075)
+++ trunk/Tools/Scripts/libraries/webkitcorepy/setup.py	2021-11-19 22:00:09 UTC (rev 286076)
@@ -30,7 +30,7 @@
 
 setup(
 name='webkitcorepy',
-version='0.12.1',
+version='0.12.2',
 description='Library containing various Python support classes and functions.',
 long_description=readme(),
 classifiers=[


Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py (286075 => 286076)

--- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py	2021-11-19 21:43:17 UTC (rev 286075)
+++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py	2021-11-19 22:00:09 UTC (rev 286076)
@@ -44,7 +44,7 @@
 from webkitcorepy.editor import Editor
 from webkitcorepy.file_lock import FileLock
 
-version = Version(0, 12, 1)
+version = Version(0, 12, 2)
 
 from webkitcorepy.autoinstall import Package, AutoInstall
 if sys.version_info > (3, 0):


Modified: trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py (286075 => 286076)

--- trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py	2021-11-19 21:43:17 UTC (rev 286075)
+++ trunk/Tools/Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py	2021-11-19 22:00:09 UTC (rev 286076)
@@ -45,10 +45,15 @@
 response = None
 while response is None:
 if numbered:
-numbered_options = ['{}) {}'.format(i + 1, options[i]) for i in range(len(options))]
+ 

[webkit-changes] [286075] trunk

2021-11-19 Thread beidson
Title: [286075] trunk








Revision 286075
Author beid...@apple.com
Date 2021-11-19 13:43:17 -0800 (Fri, 19 Nov 2021)


Log Message
More webpushd architecture work
https://bugs.webkit.org/show_bug.cgi?id=233295

Reviewed by Alex Christensen.

Source/WebKit:

Covered by API tests.

This patch:
- Adds entitlement checks for connections to webpushd
- Adds a "ClientConnection" object to the daemon to manage per-connection state
- Adds a debug enabled setting
- Adds the ability for the connecting app (com.apple.WebKit.Networking) to pass the host app's audit_token
- Tests some of the above
- Adds the beginnings of other future infrastructure

* NetworkProcess/Notifications/NetworkNotificationManager.cpp:
(WebKit::NetworkNotificationManager::NetworkNotificationManager):

* Resources/ios/XPCService-embedded-simulator.entitlements:
* Scripts/process-entitlements.sh:

* Shared/Cocoa/CodeSigning.h:
* Shared/Cocoa/CodeSigning.mm:
(WebKit::codeSigningIdentifierAndPlatformBinaryStatus):
(WebKit::codeSigningIdentifier):

* Shared/WebPushDaemonConstants.h:
(WebKit::WebPushD::messageTypeSendsReply):

* WebKit.xcodeproj/project.pbxproj:

* webpushd/PushClientConnection.h: Copied from Source/WebKit/Shared/Cocoa/CodeSigning.h.
(WebPushD::ClientConnection::hasAuditToken const):
(WebPushD::ClientConnection::debugModeIsEnabled const):
* webpushd/PushClientConnection.mm: Added.
(WebPushD::ClientConnection::ClientConnection):
(WebPushD::ClientConnection::setAuditTokenData):
(WebPushD::ClientConnection::hostCodeSigningIdentifier):
(WebPushD::ClientConnection::hostHasPushEntitlement):
(WebPushD::ClientConnection::setDebugModeIsEnabled):

* webpushd/WebPushDaemon.h:
* webpushd/WebPushDaemon.mm:
(WebPushD::handleWebPushDMessageWithReply):
(WebPushD::handleWebPushDMessage):
(WebPushD::Daemon::broadcastDebugMessage):
(WebPushD::Daemon::connectionEventHandler):
(WebPushD::Daemon::connectionAdded):
(WebPushD::Daemon::connectionRemoved):
(WebPushD::Daemon::decodeAndHandleMessage):
(WebPushD::Daemon::echoTwice):
(WebPushD::Daemon::canRegisterForNotifications):
(WebPushD::Daemon::requestSystemNotificationPermission):
(WebPushD::Daemon::getOriginsWithPushAndNotificationPermissions):
(WebPushD::Daemon::deletePushAndNotificationRegistration):
(WebPushD::Daemon::setHostAppAuditToken):
(WebPushD::Daemon::setDebugModeIsEnabled):
(WebPushD::Daemon::toClientConnection):
* webpushd/WebPushDaemonMain.mm:
(main):

Tools:

* TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements:
* TestWebKitAPI/Configurations/TestWebKitAPI-macOS-internal.entitlements:
* TestWebKitAPI/Configurations/TestWebKitAPI-macOS.entitlements:
* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.cpp
trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.h
trunk/Source/WebKit/Resources/ios/XPCService-embedded-simulator.entitlements
trunk/Source/WebKit/Scripts/process-entitlements.sh
trunk/Source/WebKit/Shared/Cocoa/CodeSigning.h
trunk/Source/WebKit/Shared/Cocoa/CodeSigning.mm
trunk/Source/WebKit/Shared/WebPushDaemonConstants.h
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
trunk/Source/WebKit/webpushd/WebPushDaemon.h
trunk/Source/WebKit/webpushd/WebPushDaemon.mm
trunk/Source/WebKit/webpushd/WebPushDaemonMain.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements
trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-macOS-internal.entitlements
trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-macOS.entitlements
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm


Added Paths

trunk/Source/WebKit/webpushd/PushClientConnection.h
trunk/Source/WebKit/webpushd/PushClientConnection.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286074 => 286075)

--- trunk/Source/WebKit/ChangeLog	2021-11-19 21:35:00 UTC (rev 286074)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 21:43:17 UTC (rev 286075)
@@ -1,3 +1,66 @@
+2021-11-19  Brady Eidson  
+
+More webpushd architecture work
+https://bugs.webkit.org/show_bug.cgi?id=233295
+
+Reviewed by Alex Christensen.
+
+Covered by API tests.
+
+This patch:
+- Adds entitlement checks for connections to webpushd
+- Adds a "ClientConnection" object to the daemon to manage per-connection state
+- Adds a debug enabled setting
+- Adds the ability for the connecting app (com.apple.WebKit.Networking) to pass the host app's audit_token
+- Tests some of the above
+- Adds the beginnings of other future infrastructure
+
+* NetworkProcess/Notifications/NetworkNotificationManager.cpp:
+(WebKit::NetworkNotificationManager::NetworkNotificationManager):
+
+* Resources/ios/XPCService-embedded-simulator.entitlements:
+* Scripts/process-entitlements.sh:
+
+* Shared/Cocoa/CodeSigning.h:
+* 

[webkit-changes] [286074] trunk/Tools

2021-11-19 Thread jbedard
Title: [286074] trunk/Tools








Revision 286074
Author jbed...@apple.com
Date 2021-11-19 13:35:00 -0800 (Fri, 19 Nov 2021)


Log Message
[resultsdbpy] Move AuthedBlueprint to webkitflaskpy
https://bugs.webkit.org/show_bug.cgi?id=29


Reviewed by Ryan Haddad.

* Scripts/libraries/resultsdbpy/resultsdbpy/__init__.py: Bump version.
* Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py: Import
AuthedBlueprint from webkitflaskpy.
* Scripts/libraries/resultsdbpy/resultsdbpy/view/view_routes.py: Ditto.
* Scripts/libraries/resultsdbpy/setup.py: Bump version.
* Scripts/libraries/webkitflaskpy/setup.py: Ditto.
* Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py: Bump Export object.
* Scripts/libraries/webkitflaskpy/webkitflaskpy/authed_blueprint.py: Renamed from
Tools/Scripts/libraries/resultsdbpy/resultsdbpy/flask_support/authed_blueprint.py.

Canonical link: https://commits.webkit.org/244461@main

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/__init__.py
trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py
trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/view_routes.py
trunk/Tools/Scripts/libraries/resultsdbpy/setup.py
trunk/Tools/Scripts/libraries/webkitflaskpy/setup.py
trunk/Tools/Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py


Added Paths

trunk/Tools/Scripts/libraries/webkitflaskpy/webkitflaskpy/authed_blueprint.py


Removed Paths

trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/flask_support/authed_blueprint.py




Diff

Modified: trunk/Tools/ChangeLog (286073 => 286074)

--- trunk/Tools/ChangeLog	2021-11-19 21:20:53 UTC (rev 286073)
+++ trunk/Tools/ChangeLog	2021-11-19 21:35:00 UTC (rev 286074)
@@ -1,3 +1,21 @@
+2021-11-18  Jonathan Bedard  
+
+[resultsdbpy] Move AuthedBlueprint to webkitflaskpy
+https://bugs.webkit.org/show_bug.cgi?id=29
+
+
+Reviewed by Ryan Haddad.
+
+* Scripts/libraries/resultsdbpy/resultsdbpy/__init__.py: Bump version.
+* Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py: Import
+AuthedBlueprint from webkitflaskpy.
+* Scripts/libraries/resultsdbpy/resultsdbpy/view/view_routes.py: Ditto.
+* Scripts/libraries/resultsdbpy/setup.py: Bump version.
+* Scripts/libraries/webkitflaskpy/setup.py: Ditto.
+* Scripts/libraries/webkitflaskpy/webkitflaskpy/__init__.py: Bump Export object.
+* Scripts/libraries/webkitflaskpy/webkitflaskpy/authed_blueprint.py: Renamed from
+Tools/Scripts/libraries/resultsdbpy/resultsdbpy/flask_support/authed_blueprint.py.
+
 2021-11-19  Brent Fulgham  
 
 Add support for web app manifest icons in WebKit/UI Process layer


Modified: trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/__init__.py (286073 => 286074)

--- trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/__init__.py	2021-11-19 21:20:53 UTC (rev 286073)
+++ trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/__init__.py	2021-11-19 21:35:00 UTC (rev 286074)
@@ -44,7 +44,7 @@
 "Please install webkitcorepy with `pip install webkitcorepy --extra-index-url `"
 )
 
-version = Version(3, 1, 4)
+version = Version(3, 1, 5)
 
 import webkitflaskpy
 


Modified: trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py (286073 => 286074)

--- trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py	2021-11-19 21:20:53 UTC (rev 286073)
+++ trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py	2021-11-19 21:35:00 UTC (rev 286074)
@@ -30,7 +30,7 @@
 from resultsdbpy.controller.suite_controller import SuiteController
 from resultsdbpy.controller.test_controller import TestController
 from resultsdbpy.controller.upload_controller import UploadController
-from resultsdbpy.flask_support.authed_blueprint import AuthedBlueprint
+from webkitflaskpy import AuthedBlueprint
 from werkzeug.exceptions import HTTPException
 
 


Deleted: trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/flask_support/authed_blueprint.py (286073 => 286074)

--- trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/flask_support/authed_blueprint.py	2021-11-19 21:20:53 UTC (rev 286073)
+++ trunk/Tools/Scripts/libraries/resultsdbpy/resultsdbpy/flask_support/authed_blueprint.py	2021-11-19 21:35:00 UTC (rev 286074)
@@ -1,34 +0,0 @@
-# Copyright (C) 2019 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.
-#
-# THIS 

[webkit-changes] [286073] trunk

2021-11-19 Thread bfulgham
Title: [286073] trunk








Revision 286073
Author bfulg...@apple.com
Date 2021-11-19 13:20:53 -0800 (Fri, 19 Nov 2021)


Log Message
Add support for web app manifest icons in WebKit/UI Process layer
https://bugs.webkit.org/show_bug.cgi?id=233350


Reviewed by Chris Dumez.

Source/WebCore:

This patch builds on the work in Bug 231339 and threads the new icons
feature through the WebKit layer.

This change modifies the parser to represent the 'sizes' member of the
icon as an array of strings, rather than a single string containing the
sizes as a set of space-separated items. This more closesly matches the
behavior of the WebKit API layer.

Tested by TestWebKitAPI.

* Modules/applicationmanifest/ApplicationManifest.h:
* Modules/applicationmanifest/ApplicationManifestParser.cpp:
(WebCore::ApplicationManifestParser::parseIcons):

Source/WebKit:

This patch builds on the work in Bug 231339 and threads the new icons
feature through the WebKit layer.

Note: This change also moves the implementation of _WKApplicationManifestIcon
earlier in the file since the implementation is needed for proper serialization
of the _WKApplicationManifest.

Tested by TestWebKitAPI (ApplicationManifest.Icons) test.

* UIProcess/API/Cocoa/_WKApplicationManifest.h:
* UIProcess/API/Cocoa/_WKApplicationManifest.mm:
(fromPurposes): New helper function.
(makeVectorElement): Ditto.
(-[_WKApplicationManifestIcon initWithCoder:]): Updated to call proper
serialization methods.
(-[_WKApplicationManifestIcon initWithCoreIcon:]): Added.
(-[_WKApplicationManifest initWithCoder:]): Updated to properly handle
serializing the object.
(-[_WKApplicationManifest icons]): Added.

Tools:

Add a new API test to exercise the _WKApplicationManifestIcon API.

* TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
(ApplicationManifestParserTest::testIconsSizes):
(TEST_F):
* TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h
trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (286072 => 286073)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 20:12:56 UTC (rev 286072)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 21:20:53 UTC (rev 286073)
@@ -1,3 +1,25 @@
+2021-11-19  Brent Fulgham  
+
+Add support for web app manifest icons in WebKit/UI Process layer
+https://bugs.webkit.org/show_bug.cgi?id=233350
+
+
+Reviewed by Chris Dumez.
+
+This patch builds on the work in Bug 231339 and threads the new icons
+feature through the WebKit layer.
+
+This change modifies the parser to represent the 'sizes' member of the
+icon as an array of strings, rather than a single string containing the
+sizes as a set of space-separated items. This more closesly matches the
+behavior of the WebKit API layer.
+
+Tested by TestWebKitAPI.
+
+* Modules/applicationmanifest/ApplicationManifest.h:
+* Modules/applicationmanifest/ApplicationManifestParser.cpp:
+(WebCore::ApplicationManifestParser::parseIcons):
+
 2021-11-19  Antoine Quint  
 
 [Model] add support for seeking animations


Modified: trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h (286072 => 286073)

--- trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h	2021-11-19 20:12:56 UTC (rev 286072)
+++ trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h	2021-11-19 21:20:53 UTC (rev 286073)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2017-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
@@ -50,7 +50,7 @@
 };
 
 URL src;
-String sizes;
+Vector sizes;
 String type;
 OptionSet purposes;
 


Modified: trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.cpp (286072 => 286073)

--- trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.cpp	2021-11-19 20:12:56 UTC (rev 286072)
+++ trunk/Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.cpp	2021-11-19 21:20:53 UTC (rev 286073)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2017-2021 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the 

[webkit-changes] [286072] trunk/Tools

2021-11-19 Thread jenner
Title: [286072] trunk/Tools








Revision 286072
Author jen...@apple.com
Date 2021-11-19 12:12:56 -0800 (Fri, 19 Nov 2021)


Log Message
[ Monterey ]TestWebKitAPI.PrivateClickMeasurement.EphemeralWithAttributedBundleIdentifier (API-test) is a constant timeout
https://bugs.webkit.org/show_bug.cgi?id=233345

Unreviewed test gardening.

* TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm:
(TestWebKitAPI::TEST):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm




Diff

Modified: trunk/Tools/ChangeLog (286071 => 286072)

--- trunk/Tools/ChangeLog	2021-11-19 19:47:37 UTC (rev 286071)
+++ trunk/Tools/ChangeLog	2021-11-19 20:12:56 UTC (rev 286072)
@@ -1,3 +1,13 @@
+2021-11-19  Robert Jenner  
+
+[ Monterey ]TestWebKitAPI.PrivateClickMeasurement.EphemeralWithAttributedBundleIdentifier (API-test) is a constant timeout
+https://bugs.webkit.org/show_bug.cgi?id=233345
+
+Unreviewed test gardening.
+
+* TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm:
+(TestWebKitAPI::TEST):
+
 2021-11-19  Carlos Garcia Campos  
 
 [GTK][a11y] Add implementation of document interface when building with ATSPI


Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm (286071 => 286072)

--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm	2021-11-19 19:47:37 UTC (rev 286071)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm	2021-11-19 20:12:56 UTC (rev 286072)
@@ -354,7 +354,12 @@
 });
 }
 
+// FIXME: Re-enable this test for Monterey+ once webkit.org/b/233345 is resolved.
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 12
+TEST(PrivateClickMeasurement, DISABLED_EphemeralWithAttributedBundleIdentifier)
+#else
 TEST(PrivateClickMeasurement, EphemeralWithAttributedBundleIdentifier)
+#endif
 {
 auto configuration = configurationWithoutUsingDaemon();
 configuration.get()._attributedBundleIdentifier = @"other.test.bundle.id";






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286071] trunk/Source/WebKit

2021-11-19 Thread pvollan
Title: [286071] trunk/Source/WebKit








Revision 286071
Author pvol...@apple.com
Date 2021-11-19 11:47:37 -0800 (Fri, 19 Nov 2021)


Log Message
[macOS] Enable message filtering for all WebKit processes
https://bugs.webkit.org/show_bug.cgi?id=24


Reviewed by Brent Fulgham.

The sandbox parameter enabling message filtering should be set in all WebKit processes.

* Shared/mac/AuxiliaryProcessMac.mm:
(WebKit::AuxiliaryProcess::initializeSandbox):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::initializeSandbox):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Shared/mac/AuxiliaryProcessMac.mm
trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286070 => 286071)

--- trunk/Source/WebKit/ChangeLog	2021-11-19 19:36:35 UTC (rev 286070)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 19:47:37 UTC (rev 286071)
@@ -1,3 +1,18 @@
+2021-11-19  Per Arne  
+
+[macOS] Enable message filtering for all WebKit processes
+https://bugs.webkit.org/show_bug.cgi?id=24
+
+
+Reviewed by Brent Fulgham.
+
+The sandbox parameter enabling message filtering should be set in all WebKit processes.
+
+* Shared/mac/AuxiliaryProcessMac.mm:
+(WebKit::AuxiliaryProcess::initializeSandbox):
+* WebProcess/cocoa/WebProcessCocoa.mm:
+(WebKit::WebProcess::initializeSandbox):
+
 2021-11-19  Antoine Quint  
 
 [Model] add support for seeking animations


Modified: trunk/Source/WebKit/Shared/mac/AuxiliaryProcessMac.mm (286070 => 286071)

--- trunk/Source/WebKit/Shared/mac/AuxiliaryProcessMac.mm	2021-11-19 19:36:35 UTC (rev 286070)
+++ trunk/Source/WebKit/Shared/mac/AuxiliaryProcessMac.mm	2021-11-19 19:47:37 UTC (rev 286071)
@@ -56,6 +56,7 @@
 #import 
 #import 
 #import 
+#import 
 #import 
 #import 
 #import 
@@ -720,6 +721,12 @@
 String dataVaultParentDirectory;
 #endif
 
+bool enableMessageFilter = false;
+#if HAVE(SANDBOX_MESSAGE_FILTERING)
+enableMessageFilter = WTF::processHasEntitlement("com.apple.private.security.message-filter");
+#endif
+sandboxParameters.addParameter("ENABLE_SANDBOX_MESSAGE_FILTER", enableMessageFilter ? "YES" : "NO");
+
 initializeSandboxParameters(parameters, sandboxParameters);
 
 if (!applySandbox(parameters, sandboxParameters, dataVaultParentDirectory)) {


Modified: trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm (286070 => 286071)

--- trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm	2021-11-19 19:36:35 UTC (rev 286070)
+++ trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm	2021-11-19 19:47:37 UTC (rev 286071)
@@ -102,7 +102,6 @@
 #import 
 #import 
 #import 
-#import 
 #import 
 #import 
 #import 
@@ -696,12 +695,6 @@
 
 sandboxParameters.setOverrideSandboxProfilePath(makeString(String([webKitBundle resourcePath]), "/com.apple.WebProcess.sb"));
 
-bool enableMessageFilter = false;
-#if HAVE(SANDBOX_MESSAGE_FILTERING)
-enableMessageFilter = WTF::processHasEntitlement("com.apple.private.security.message-filter");
-#endif
-sandboxParameters.addParameter("ENABLE_SANDBOX_MESSAGE_FILTER", enableMessageFilter ? "YES" : "NO");
-
 AuxiliaryProcess::initializeSandbox(parameters, sandboxParameters);
 #endif
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286070] trunk

2021-11-19 Thread sbarati
Title: [286070] trunk








Revision 286070
Author sbar...@apple.com
Date 2021-11-19 11:36:35 -0800 (Fri, 19 Nov 2021)


Log Message
Fix assertion added in r285592
https://bugs.webkit.org/show_bug.cgi?id=233373
JSTests:

Reviewed by Keith Miller.

* stress/validate-assert-uid-is-not-index-or-it-is-symbol.js: Added.
(main.v11):
(main.v29):
(main):

Source/_javascript_Core:

rdar://85451012

Reviewed by Keith Miller.

The assertion added in r285592 should not apply to Symbols. This patch
fixes that error. We don't care if a Symbol can be parsed as an index
since the string value in a Symbol is just its description, not the
actual property.

* dfg/DFGValidate.cpp:

Modified Paths

trunk/JSTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/dfg/DFGValidate.cpp


Added Paths

trunk/JSTests/stress/validate-assert-uid-is-not-index-or-it-is-symbol.js




Diff

Modified: trunk/JSTests/ChangeLog (286069 => 286070)

--- trunk/JSTests/ChangeLog	2021-11-19 19:17:04 UTC (rev 286069)
+++ trunk/JSTests/ChangeLog	2021-11-19 19:36:35 UTC (rev 286070)
@@ -1,3 +1,15 @@
+2021-11-19  Saam Barati  
+
+Fix assertion added in r285592
+https://bugs.webkit.org/show_bug.cgi?id=233373
+
+Reviewed by Keith Miller.
+
+* stress/validate-assert-uid-is-not-index-or-it-is-symbol.js: Added.
+(main.v11):
+(main.v29):
+(main):
+
 2021-11-19  Joseph Griego  
 
 [JSC] Shadow realms: set correct Function prototype on wrapped functions


Added: trunk/JSTests/stress/validate-assert-uid-is-not-index-or-it-is-symbol.js (0 => 286070)

--- trunk/JSTests/stress/validate-assert-uid-is-not-index-or-it-is-symbol.js	(rev 0)
+++ trunk/JSTests/stress/validate-assert-uid-is-not-index-or-it-is-symbol.js	2021-11-19 19:36:35 UTC (rev 286070)
@@ -0,0 +1,26 @@
+//@ runDefault("--validateGraphAtEachPhase=1", "--useConcurrentJIT=false", "--thresholdForJITAfterWarmUp=1")
+
+function main() {
+  let v8 = 0;
+  let v9 = Symbol(v8);
+  
+  let v10 = 0;
+  function v11(v12,v13) {
+  ++v10;
+  }
+  
+  let v27 = 0;
+  while (v27 < 4096) {
+  function v29(v30,v31) {
+  do {
+  arguments[v9] = ReferenceError;
+  const v42 = v8++;
+  } while (v8 < 3); 
+  v51 = ++v27;
+  }   
+  const v53 = new Promise(v29);
+  }
+}
+noDFG(main);
+noFTL(main);
+main();


Modified: trunk/Source/_javascript_Core/ChangeLog (286069 => 286070)

--- trunk/Source/_javascript_Core/ChangeLog	2021-11-19 19:17:04 UTC (rev 286069)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-11-19 19:36:35 UTC (rev 286070)
@@ -1,3 +1,18 @@
+2021-11-19  Saam Barati  
+
+Fix assertion added in r285592
+https://bugs.webkit.org/show_bug.cgi?id=233373
+rdar://85451012
+
+Reviewed by Keith Miller.
+
+The assertion added in r285592 should not apply to Symbols. This patch
+fixes that error. We don't care if a Symbol can be parsed as an index
+since the string value in a Symbol is just its description, not the 
+actual property.
+
+* dfg/DFGValidate.cpp:
+
 2021-11-19  Joseph Griego  
 
 [JSC] Shadow realms: set correct Function prototype on wrapped functions


Modified: trunk/Source/_javascript_Core/dfg/DFGValidate.cpp (286069 => 286070)

--- trunk/Source/_javascript_Core/dfg/DFGValidate.cpp	2021-11-19 19:17:04 UTC (rev 286069)
+++ trunk/Source/_javascript_Core/dfg/DFGValidate.cpp	2021-11-19 19:36:35 UTC (rev 286070)
@@ -238,7 +238,7 @@
 
 if (node->hasCacheableIdentifier()) {
 auto* uid = node->cacheableIdentifier().uid();
-VALIDATE((node), !parseIndex(*uid));
+VALIDATE((node), uid->isSymbol() || !parseIndex(*uid));
 }
  
 switch (node->op()) {






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286069] trunk

2021-11-19 Thread commit-queue
Title: [286069] trunk








Revision 286069
Author commit-qu...@webkit.org
Date 2021-11-19 11:17:04 -0800 (Fri, 19 Nov 2021)


Log Message
[JSC] Shadow realms: set correct Function prototype on wrapped functions
https://bugs.webkit.org/show_bug.cgi?id=233143

Patch by Joseph Griego  on 2021-11-19
Reviewed by Yusuke Suzuki.

At present, the Function prototype set on each of the returned wrapped
functions will be the Function object from the realm the shadow realm
builtin is from--to comply with the latest draft of the shadow realms
spec [1], wrapped function objects should have the Function prototype
from the realm the wrapper object is destined for, instead.

At present, this requires tracking both the calling (destination) and
target (source) realm and switching between the two as function
arguments are wrapped (when the notion of source and destination realm
also flips)

Adds a simple builtin (moveFunctionToRealm) that can switch the Function
prototype given only the Shadow Realm object corresponding to the
correct global object.

Also marks the corresponding part of test262 as passing.

JSTests:

* test262/expectations.yaml:

Source/_javascript_Core:

[1] https://tc39.es/proposal-shadowrealm/ sections 2.1, 2.2

* builtins/BuiltinNames.h:
* builtins/ShadowRealmPrototype.js:
(wrapped):
(globalPrivate.wrap):
(evaluate):
(importValue):
(globalPrivate.wrap.wrapped): Deleted.
* bytecode/LinkTimeConstant.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
* runtime/ShadowRealmPrototype.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
* runtime/ShadowRealmPrototype.h:

Modified Paths

trunk/JSTests/ChangeLog
trunk/JSTests/stress/shadow-realm-evaluate.js
trunk/JSTests/test262/expectations.yaml
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/builtins/BuiltinNames.h
trunk/Source/_javascript_Core/builtins/ShadowRealmPrototype.js
trunk/Source/_javascript_Core/bytecode/LinkTimeConstant.h
trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp
trunk/Source/_javascript_Core/runtime/ShadowRealmPrototype.cpp
trunk/Source/_javascript_Core/runtime/ShadowRealmPrototype.h




Diff

Modified: trunk/JSTests/ChangeLog (286068 => 286069)

--- trunk/JSTests/ChangeLog	2021-11-19 19:05:53 UTC (rev 286068)
+++ trunk/JSTests/ChangeLog	2021-11-19 19:17:04 UTC (rev 286069)
@@ -1,3 +1,29 @@
+2021-11-19  Joseph Griego  
+
+[JSC] Shadow realms: set correct Function prototype on wrapped functions
+https://bugs.webkit.org/show_bug.cgi?id=233143
+
+Reviewed by Yusuke Suzuki.
+
+At present, the Function prototype set on each of the returned wrapped
+functions will be the Function object from the realm the shadow realm
+builtin is from--to comply with the latest draft of the shadow realms
+spec [1], wrapped function objects should have the Function prototype
+from the realm the wrapper object is destined for, instead.
+
+At present, this requires tracking both the calling (destination) and
+target (source) realm and switching between the two as function
+arguments are wrapped (when the notion of source and destination realm
+also flips)
+
+Adds a simple builtin (moveFunctionToRealm) that can switch the Function
+prototype given only the Shadow Realm object corresponding to the
+correct global object.
+
+Also marks the corresponding part of test262 as passing.
+
+* test262/expectations.yaml:
+
 2021-11-19  Angelos Oikonomopoulos  
 
 [JSC] Workaround for failing mips tests


Modified: trunk/JSTests/stress/shadow-realm-evaluate.js (286068 => 286069)

--- trunk/JSTests/stress/shadow-realm-evaluate.js	2021-11-19 19:05:53 UTC (rev 286068)
+++ trunk/JSTests/stress/shadow-realm-evaluate.js	2021-11-19 19:17:04 UTC (rev 286069)
@@ -77,6 +77,7 @@
 let wrappedInvokeAndAdd = realm.evaluate("function invokeAndAdd(xFn, yFn) { return xFn() + yFn(); }; invokeAndAdd");
 shouldBe(wrappedInvokeAndAdd(() => { return 1 }, () => { return 2 }), 3);
 shouldBe($.globalObjectFor(wrappedInvokeAndAdd), globalThis);
+shouldBe(Object.getPrototypeOf(wrappedInvokeAndAdd), Function.prototype);
 
 // name and length properties from wrapped function are absent
 shouldBe(Object.getOwnPropertyDescriptor(wrappedInvokeAndAdd, "length"), undefined);
@@ -122,6 +123,7 @@
 let f = doEval(realm, '(x) => { return x() + globalThis.secret; }');
 shouldBe($.globalObjectFor(f), globalThis);
 shouldBe(f(() => { return 41; }), 42);
+shouldBe(Object.getPrototypeOf(f), Function.prototype);
 }
 // (potential) inlining of wrapped function uses correct global object
 let f = doEval(realm, '(x) => { return x() + globalThis.secret; }');
@@ -128,6 +130,7 @@
 for (var i = 0; i < 1; ++i) {
 shouldBe($.globalObjectFor(f), globalThis);
 shouldBe(f(() => { return 41; }), 42);
+shouldBe(Object.getPrototypeOf(f), Function.prototype);
 }

[webkit-changes] [286068] trunk/Source

2021-11-19 Thread graouts
Title: [286068] trunk/Source








Revision 286068
Author grao...@webkit.org
Date 2021-11-19 11:05:53 -0800 (Fri, 19 Nov 2021)


Log Message
[Model] add support for seeking animations
https://bugs.webkit.org/show_bug.cgi?id=233362


Reviewed by Wenson Hsieh.

Source/WebCore:

We add three new promise-based methods to the HTMLModelElement IDL to allow seeking the animation
built into the USDZ asset: animationDuration(), animationCurrentTime() and setAnimationCurrentTime().
All these methods are promise-based.

* Modules/model-element/HTMLModelElement.cpp:
(WebCore::HTMLModelElement::animationDuration):
(WebCore::HTMLModelElement::animationCurrentTime):
(WebCore::HTMLModelElement::setAnimationCurrentTime):
* Modules/model-element/HTMLModelElement.h:
* Modules/model-element/HTMLModelElement.idl:
* Modules/model-element/ModelPlayer.h:
* Modules/model-element/dummy/DummyModelPlayer.cpp:
(WebCore::DummyModelPlayer::animationDuration):
(WebCore::DummyModelPlayer::animationCurrentTime):
(WebCore::DummyModelPlayer::setAnimationCurrentTime):
* Modules/model-element/dummy/DummyModelPlayer.h:
* Modules/model-element/scenekit/SceneKitModelPlayer.h:
* Modules/model-element/scenekit/SceneKitModelPlayer.mm:
(WebCore::SceneKitModelPlayer::animationDuration):
(WebCore::SceneKitModelPlayer::animationCurrentTime):
(WebCore::SceneKitModelPlayer::setAnimationCurrentTime):

Source/WebCore/PAL:

Add the new ARQL SPIs we are using to query the animation duration, the current and time
as well as allowing to set the latter.

* pal/spi/ios/SystemPreviewSPI.h:
* pal/spi/mac/SystemPreviewSPI.h:

Source/WebKit:

Expose new WebPageProxy messages to let the WebProcess message the UIProcess
to call into ASVInlinePreview methods to get and set the animation's current
time as well as getting its duration.

* UIProcess/Cocoa/ModelElementControllerCocoa.mm:
(WebKit::ModelElementController::animationDurationForModelElement):
(WebKit::ModelElementController::animationCurrentTimeForModelElement):
(WebKit::ModelElementController::setAnimationCurrentTimeForModelElement):
* UIProcess/ModelElementController.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::modelElementAnimationDuration):
(WebKit::WebPageProxy::modelElementAnimationCurrentTime):
(WebKit::WebPageProxy::modelElementSetAnimationCurrentTime):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/Model/ARKitInlinePreviewModelPlayer.h:
* WebProcess/Model/ARKitInlinePreviewModelPlayer.mm:
(WebKit::ARKitInlinePreviewModelPlayer::animationDuration):
(WebKit::ARKitInlinePreviewModelPlayer::animationCurrentTime):
(WebKit::ARKitInlinePreviewModelPlayer::setAnimationCurrentTime):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.cpp
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.h
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.idl
trunk/Source/WebCore/Modules/model-element/ModelPlayer.h
trunk/Source/WebCore/Modules/model-element/dummy/DummyModelPlayer.cpp
trunk/Source/WebCore/Modules/model-element/dummy/DummyModelPlayer.h
trunk/Source/WebCore/Modules/model-element/scenekit/SceneKitModelPlayer.h
trunk/Source/WebCore/Modules/model-element/scenekit/SceneKitModelPlayer.mm
trunk/Source/WebCore/PAL/ChangeLog
trunk/Source/WebCore/PAL/pal/spi/ios/SystemPreviewSPI.h
trunk/Source/WebCore/PAL/pal/spi/mac/SystemPreviewSPI.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm
trunk/Source/WebKit/UIProcess/ModelElementController.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.h
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.h
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (286067 => 286068)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 18:52:40 UTC (rev 286067)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 19:05:53 UTC (rev 286068)
@@ -1,3 +1,33 @@
+2021-11-19  Antoine Quint  
+
+[Model] add support for seeking animations
+https://bugs.webkit.org/show_bug.cgi?id=233362
+
+
+Reviewed by Wenson Hsieh.
+
+We add three new promise-based methods to the HTMLModelElement IDL to allow seeking the animation
+built into the USDZ asset: animationDuration(), animationCurrentTime() and setAnimationCurrentTime().
+All these methods are promise-based.
+
+* Modules/model-element/HTMLModelElement.cpp:
+(WebCore::HTMLModelElement::animationDuration):
+(WebCore::HTMLModelElement::animationCurrentTime):
+(WebCore::HTMLModelElement::setAnimationCurrentTime):
+* Modules/model-element/HTMLModelElement.h:
+* Modules/model-element/HTMLModelElement.idl:
+* Modules/model-element/ModelPlayer.h:
+* Modules/model-element/dummy/DummyModelPlayer.cpp:
+

[webkit-changes] [286066] trunk/Source

2021-11-19 Thread graouts
Title: [286066] trunk/Source








Revision 286066
Author grao...@webkit.org
Date 2021-11-19 10:21:57 -0800 (Fri, 19 Nov 2021)


Log Message
[Model] add support for controlling looping animations
https://bugs.webkit.org/show_bug.cgi?id=233356


Reviewed by Wenson Hsieh.

Source/WebCore:

We add two new promise-based methods to the HTMLModelElement IDL to control the looping state
of the animation built into the USDZ asset: isLoopingAnimation() and setIsLoopingAnimation().
All these methods are promise-based.

* Modules/model-element/HTMLModelElement.cpp:
(WebCore::HTMLModelElement::isLoopingAnimation):
(WebCore::HTMLModelElement::setIsLoopingAnimation):
* Modules/model-element/HTMLModelElement.h:
* Modules/model-element/HTMLModelElement.idl:
* Modules/model-element/ModelPlayer.h:
* Modules/model-element/dummy/DummyModelPlayer.cpp:
(WebCore::DummyModelPlayer::isLoopingAnimation):
(WebCore::DummyModelPlayer::setIsLoopingAnimation):
* Modules/model-element/dummy/DummyModelPlayer.h:
* Modules/model-element/scenekit/SceneKitModelPlayer.h:
* Modules/model-element/scenekit/SceneKitModelPlayer.mm:
(WebCore::SceneKitModelPlayer::isLoopingAnimation):
(WebCore::SceneKitModelPlayer::setIsLoopingAnimation):

Source/WebCore/PAL:

Add the new ARQL SPIs we are using to control animation looping.

* pal/spi/ios/SystemPreviewSPI.h:
* pal/spi/mac/SystemPreviewSPI.h:

Source/WebKit:

Expose new WebPageProxy messages to let the WebProcess message the UIProcess
to call into ASVInlinePreview methods to get and set the animation's looping
state.

* UIProcess/Cocoa/ModelElementControllerCocoa.mm:
(WebKit::ModelElementController::isLoopingAnimationForModelElement):
(WebKit::ModelElementController::setIsLoopingAnimationForModelElement):
* UIProcess/ModelElementController.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::modelElementIsLoopingAnimation):
(WebKit::WebPageProxy::modelElementSetIsLoopingAnimation):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/Model/ARKitInlinePreviewModelPlayer.h:
* WebProcess/Model/ARKitInlinePreviewModelPlayer.mm:
(WebKit::ARKitInlinePreviewModelPlayer::isLoopingAnimation):
(WebKit::ARKitInlinePreviewModelPlayer::setIsLoopingAnimation):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.cpp
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.h
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.idl
trunk/Source/WebCore/Modules/model-element/ModelPlayer.h
trunk/Source/WebCore/Modules/model-element/dummy/DummyModelPlayer.cpp
trunk/Source/WebCore/Modules/model-element/dummy/DummyModelPlayer.h
trunk/Source/WebCore/Modules/model-element/scenekit/SceneKitModelPlayer.h
trunk/Source/WebCore/Modules/model-element/scenekit/SceneKitModelPlayer.mm
trunk/Source/WebCore/PAL/ChangeLog
trunk/Source/WebCore/PAL/pal/spi/ios/SystemPreviewSPI.h
trunk/Source/WebCore/PAL/pal/spi/mac/SystemPreviewSPI.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm
trunk/Source/WebKit/UIProcess/ModelElementController.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.h
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.h
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (286065 => 286066)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 17:42:38 UTC (rev 286065)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 18:21:57 UTC (rev 286066)
@@ -1,5 +1,32 @@
 2021-11-19  Antoine Quint  
 
+[Model] add support for controlling looping animations
+https://bugs.webkit.org/show_bug.cgi?id=233356
+
+
+Reviewed by Wenson Hsieh.
+
+We add two new promise-based methods to the HTMLModelElement IDL to control the looping state
+of the animation built into the USDZ asset: isLoopingAnimation() and setIsLoopingAnimation().
+All these methods are promise-based.
+
+* Modules/model-element/HTMLModelElement.cpp:
+(WebCore::HTMLModelElement::isLoopingAnimation):
+(WebCore::HTMLModelElement::setIsLoopingAnimation):
+* Modules/model-element/HTMLModelElement.h:
+* Modules/model-element/HTMLModelElement.idl:
+* Modules/model-element/ModelPlayer.h:
+* Modules/model-element/dummy/DummyModelPlayer.cpp:
+(WebCore::DummyModelPlayer::isLoopingAnimation):
+(WebCore::DummyModelPlayer::setIsLoopingAnimation):
+* Modules/model-element/dummy/DummyModelPlayer.h:
+* Modules/model-element/scenekit/SceneKitModelPlayer.h:
+* Modules/model-element/scenekit/SceneKitModelPlayer.mm:
+(WebCore::SceneKitModelPlayer::isLoopingAnimation):
+(WebCore::SceneKitModelPlayer::setIsLoopingAnimation):
+
+2021-11-19  Antoine Quint  
+
 [Model] add audio support
 

[webkit-changes] [286065] trunk/Source

2021-11-19 Thread graouts
Title: [286065] trunk/Source








Revision 286065
Author grao...@webkit.org
Date 2021-11-19 09:42:38 -0800 (Fri, 19 Nov 2021)


Log Message
[Model] add audio support
https://bugs.webkit.org/show_bug.cgi?id=233365


Reviewed by Wenson Hsieh.

Source/WebCore:

We add three new promise-based methods to the HTMLModelElement IDL to control the audio state
of the animation built into the USDZ asset: hasAudio(), isMuted() and setIsMuted().
All these methods are promise-based.

* Modules/model-element/HTMLModelElement.cpp:
(WebCore::HTMLModelElement::hasAudio):
(WebCore::HTMLModelElement::isMuted):
(WebCore::HTMLModelElement::setIsMuted):
* Modules/model-element/HTMLModelElement.h:
* Modules/model-element/HTMLModelElement.idl:
* Modules/model-element/ModelPlayer.h:
* Modules/model-element/dummy/DummyModelPlayer.cpp:
(WebCore::DummyModelPlayer::hasAudio):
(WebCore::DummyModelPlayer::isMuted):
(WebCore::DummyModelPlayer::setIsMuted):
* Modules/model-element/dummy/DummyModelPlayer.h:
* Modules/model-element/scenekit/SceneKitModelPlayer.h:
* Modules/model-element/scenekit/SceneKitModelPlayer.mm:
(WebCore::SceneKitModelPlayer::hasAudio):
(WebCore::SceneKitModelPlayer::isMuted):
(WebCore::SceneKitModelPlayer::setIsMuted):

Source/WebCore/PAL:

Add the new ARQL SPIs we are using for audio control.

* pal/spi/ios/SystemPreviewSPI.h:
* pal/spi/mac/SystemPreviewSPI.h:

Source/WebKit:

Expose new WebPageProxy messages to let the WebProcess message the UIProcess
to call into ASVInlinePreview methods to get and set the muted state and get
whehter the model contains audio.

* UIProcess/Cocoa/ModelElementControllerCocoa.mm:
(WebKit::previewHasAudioSupport):
(WebKit::ModelElementController::hasAudioForModelElement):
(WebKit::ModelElementController::isMutedForModelElement):
(WebKit::ModelElementController::setIsMutedForModelElement):
* UIProcess/ModelElementController.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::modelElementHasAudio):
(WebKit::WebPageProxy::modelElementIsMuted):
(WebKit::WebPageProxy::modelElementSetIsMuted):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/Model/ARKitInlinePreviewModelPlayer.h:
* WebProcess/Model/ARKitInlinePreviewModelPlayer.mm:
(WebKit::ARKitInlinePreviewModelPlayer::hasAudio):
(WebKit::ARKitInlinePreviewModelPlayer::isMuted):
(WebKit::ARKitInlinePreviewModelPlayer::setIsMuted):

Source/WTF:

Add a new compile-time flag for the new autio-related ARQL SPIs we are using.

* wtf/PlatformEnableCocoa.h:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/PlatformEnableCocoa.h
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.cpp
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.h
trunk/Source/WebCore/Modules/model-element/HTMLModelElement.idl
trunk/Source/WebCore/Modules/model-element/ModelPlayer.h
trunk/Source/WebCore/Modules/model-element/dummy/DummyModelPlayer.cpp
trunk/Source/WebCore/Modules/model-element/dummy/DummyModelPlayer.h
trunk/Source/WebCore/Modules/model-element/scenekit/SceneKitModelPlayer.h
trunk/Source/WebCore/Modules/model-element/scenekit/SceneKitModelPlayer.mm
trunk/Source/WebCore/PAL/ChangeLog
trunk/Source/WebCore/PAL/pal/spi/ios/SystemPreviewSPI.h
trunk/Source/WebCore/PAL/pal/spi/mac/SystemPreviewSPI.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm
trunk/Source/WebKit/UIProcess/ModelElementController.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.h
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.h
trunk/Source/WebKit/WebProcess/Model/ARKitInlinePreviewModelPlayer.mm




Diff

Modified: trunk/Source/WTF/ChangeLog (286064 => 286065)

--- trunk/Source/WTF/ChangeLog	2021-11-19 17:09:32 UTC (rev 286064)
+++ trunk/Source/WTF/ChangeLog	2021-11-19 17:42:38 UTC (rev 286065)
@@ -1,3 +1,15 @@
+2021-11-19  Antoine Quint  
+
+[Model] add audio support
+https://bugs.webkit.org/show_bug.cgi?id=233365
+
+
+Reviewed by Wenson Hsieh.
+
+Add a new compile-time flag for the new autio-related ARQL SPIs we are using.
+
+* wtf/PlatformEnableCocoa.h:
+
 2021-11-19  Alex Christensen  
 
 Remove allocation in JSON::Value::parseJSON


Modified: trunk/Source/WTF/wtf/PlatformEnableCocoa.h (286064 => 286065)

--- trunk/Source/WTF/wtf/PlatformEnableCocoa.h	2021-11-19 17:09:32 UTC (rev 286064)
+++ trunk/Source/WTF/wtf/PlatformEnableCocoa.h	2021-11-19 17:42:38 UTC (rev 286065)
@@ -747,4 +747,5 @@
 #if (ENABLE(ARKIT_INLINE_PREVIEW_MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 120400) || (ENABLE(ARKIT_INLINE_PREVIEW_IOS) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 150400)
 #define ENABLE_ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM 1
 #define ENABLE_ARKIT_INLINE_PREVIEW_ANIMATIONS_CONTROL 1
+#define ENABLE_ARKIT_INLINE_PREVIEW_AUDIO_CONTROL 1
 #endif


Modified: trunk/Source/WebCore/ChangeLog (286064 

[webkit-changes] [286064] trunk

2021-11-19 Thread antti
Title: [286064] trunk








Revision 286064
Author an...@apple.com
Date 2021-11-19 09:09:32 -0800 (Fri, 19 Nov 2021)


Log Message
[CSS Cascade Layers] [Debug] ASSERTION FAILED: m_childRules.isEmpty() when using @import with layer name
https://bugs.webkit.org/show_bug.cgi?id=233283


Reviewed by Antoine Quint.

Source/WebCore:

CSS parser is allowing rules in illegal order (@import rule following @layer block)

Test: fast/css/layer-illegal-import.html

* css/parser/CSSParserImpl.cpp:
(WebCore::computeNewAllowedRules):

Only stay in AllowLayerStatementRules state if the new layer is a statement, not a block.

LayoutTests:

* fast/css/layer-illegal-import-expected.html: Added.
* fast/css/layer-illegal-import.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/parser/CSSParserImpl.cpp


Added Paths

trunk/LayoutTests/fast/css/layer-illegal-import-expected.html
trunk/LayoutTests/fast/css/layer-illegal-import.html




Diff

Modified: trunk/LayoutTests/ChangeLog (286063 => 286064)

--- trunk/LayoutTests/ChangeLog	2021-11-19 16:53:01 UTC (rev 286063)
+++ trunk/LayoutTests/ChangeLog	2021-11-19 17:09:32 UTC (rev 286064)
@@ -1,5 +1,16 @@
 2021-11-19  Antti Koivisto  
 
+[CSS Cascade Layers] [Debug] ASSERTION FAILED: m_childRules.isEmpty() when using @import with layer name
+https://bugs.webkit.org/show_bug.cgi?id=233283
+
+
+Reviewed by Antoine Quint.
+
+* fast/css/layer-illegal-import-expected.html: Added.
+* fast/css/layer-illegal-import.html: Added.
+
+2021-11-19  Antti Koivisto  
+
 :hover with descendant selector not invalidated correctly in shadow tree
 https://bugs.webkit.org/show_bug.cgi?id=233354
 


Added: trunk/LayoutTests/fast/css/layer-illegal-import-expected.html (0 => 286064)

--- trunk/LayoutTests/fast/css/layer-illegal-import-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/css/layer-illegal-import-expected.html	2021-11-19 17:09:32 UTC (rev 286064)
@@ -0,0 +1,11 @@
+
+
+
+
+div { color: green; }
+
+
+
+This should be green because the misplaced @import shouldn't parse
+
+


Added: trunk/LayoutTests/fast/css/layer-illegal-import.html (0 => 286064)

--- trunk/LayoutTests/fast/css/layer-illegal-import.html	(rev 0)
+++ trunk/LayoutTests/fast/css/layer-illegal-import.html	2021-11-19 17:09:32 UTC (rev 286064)
@@ -0,0 +1,21 @@
+
+
+
+
+@layer imported {
+div { color: blue; }
+}
+
+@layer imported, special;
+
+@import url("data:text/css,div{color:red}") layer(special);
+
+@layer imported {
+div { color: green; }
+}
+
+
+
+This should be green because the misplaced @import shouldn't parse
+
+


Modified: trunk/Source/WebCore/ChangeLog (286063 => 286064)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 16:53:01 UTC (rev 286063)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 17:09:32 UTC (rev 286064)
@@ -1,5 +1,22 @@
 2021-11-19  Antti Koivisto  
 
+[CSS Cascade Layers] [Debug] ASSERTION FAILED: m_childRules.isEmpty() when using @import with layer name
+https://bugs.webkit.org/show_bug.cgi?id=233283
+
+
+Reviewed by Antoine Quint.
+
+CSS parser is allowing rules in illegal order (@import rule following @layer block)
+
+Test: fast/css/layer-illegal-import.html
+
+* css/parser/CSSParserImpl.cpp:
+(WebCore::computeNewAllowedRules):
+
+Only stay in AllowLayerStatementRules state if the new layer is a statement, not a block.
+
+2021-11-19  Antti Koivisto  
+
 :hover with descendant selector not invalidated correctly in shadow tree
 https://bugs.webkit.org/show_bug.cgi?id=233354
 


Modified: trunk/Source/WebCore/css/parser/CSSParserImpl.cpp (286063 => 286064)

--- trunk/Source/WebCore/css/parser/CSSParserImpl.cpp	2021-11-19 16:53:01 UTC (rev 286063)
+++ trunk/Source/WebCore/css/parser/CSSParserImpl.cpp	2021-11-19 17:09:32 UTC (rev 286064)
@@ -343,9 +343,12 @@
 {
 if (!rule || allowedRules == CSSParserImpl::KeyframeRules || allowedRules == CSSParserImpl::CounterStyleRules || allowedRules == CSSParserImpl::NoRules)
 return allowedRules;
+
 ASSERT(allowedRules <= CSSParserImpl::RegularRules);
-if (allowedRules <= CSSParserImpl::AllowLayerStatementRules && (rule->isCharsetRule() || rule->isLayerRule()))
+if (rule->isCharsetRule())
 return CSSParserImpl::AllowLayerStatementRules;
+if (allowedRules <= CSSParserImpl::AllowLayerStatementRules && rule->isLayerRule() && downcast(*rule).isStatement())
+return CSSParserImpl::AllowLayerStatementRules;
 if (rule->isImportRule())
 return CSSParserImpl::AllowImportRules;
 if (rule->isNamespaceRule())






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286063] trunk

2021-11-19 Thread antti
Title: [286063] trunk








Revision 286063
Author an...@apple.com
Date 2021-11-19 08:53:01 -0800 (Fri, 19 Nov 2021)


Log Message
:hover with descendant selector not invalidated correctly in shadow tree
https://bugs.webkit.org/show_bug.cgi?id=233354

Reviewed by Antoine Quint.

Source/WebCore:

We optimize :hover and :active by only invalidating for descendant selectors with a single tree walk.
This doesn't work correctly for shadow trees as their scoped style may differ and the invalidation
is limited to a single scope anyway.

Fix by doing descendant invalidation for each affected scope.

Test: fast/selectors/hover-descendant-shadow-tree.html

* dom/Document.cpp:
(WebCore::Document::updateHoverActiveState):

We need to perform scoped descendant invalidation for elements that are parented to ShadowRoot.

LayoutTests:

* fast/selectors/hover-descendant-shadow-tree-expected.html: Added.
* fast/selectors/hover-descendant-shadow-tree.html: Added.
* platform/ios/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Document.cpp


Added Paths

trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree-expected.html
trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree.html




Diff

Modified: trunk/LayoutTests/ChangeLog (286062 => 286063)

--- trunk/LayoutTests/ChangeLog	2021-11-19 15:57:39 UTC (rev 286062)
+++ trunk/LayoutTests/ChangeLog	2021-11-19 16:53:01 UTC (rev 286063)
@@ -1,3 +1,14 @@
+2021-11-19  Antti Koivisto  
+
+:hover with descendant selector not invalidated correctly in shadow tree
+https://bugs.webkit.org/show_bug.cgi?id=233354
+
+Reviewed by Antoine Quint.
+
+* fast/selectors/hover-descendant-shadow-tree-expected.html: Added.
+* fast/selectors/hover-descendant-shadow-tree.html: Added.
+* platform/ios/TestExpectations:
+
 2021-11-19  Arcady Goldmints-Orlov  
 
 REGRESSION(r285859) [GTK][WPE] a number of accessibility/* tests crash on GTK and WPE


Added: trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree-expected.html (0 => 286063)

--- trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree-expected.html	2021-11-19 16:53:01 UTC (rev 286063)
@@ -0,0 +1,21 @@
+
+
+
+.parent {
+  width: 100px;
+  height: 100px;
+  background: blue;
+}
+  
+.child {
+  width: 30px;
+  height: 30px;
+  background: green;
+}
+
+
+
+  
+  
+
+


Added: trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree.html (0 => 286063)

--- trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree.html	(rev 0)
+++ trunk/LayoutTests/fast/selectors/hover-descendant-shadow-tree.html	2021-11-19 16:53:01 UTC (rev 286063)
@@ -0,0 +1,44 @@
+
+
+
+
+.parent {
+  width: 100px;
+  height: 100px;
+  background: blue;
+}
+  
+.child {
+  width: 30px;
+  height: 30px;
+}
+
+.parent:hover .child { 
+background: green;
+}
+
+
+
+  
+  
+
+
+
+
+customElements.define('custom-element', class extends HTMLElement {
+  connectedCallback() {
+this.attachShadow({mode: 'open'}).append(template.content.cloneNode(true));
+  }
+});
+
+
+
+
+
+if (window.eventSender) {
+var x = target.offsetLeft + target.offsetWidth / 2;
+var y = target.offsetTop + target.offsetHeight / 2;
+eventSender.mouseMoveTo(x, y);
+}
+
+


Modified: trunk/LayoutTests/platform/ios/TestExpectations (286062 => 286063)

--- trunk/LayoutTests/platform/ios/TestExpectations	2021-11-19 15:57:39 UTC (rev 286062)
+++ trunk/LayoutTests/platform/ios/TestExpectations	2021-11-19 16:53:01 UTC (rev 286063)
@@ -710,6 +710,7 @@
 fast/selectors/active-hover-strict.html [ Skip ]
 fast/selectors/active-quirks.html [ Skip ]
 fast/selectors/active-strict.html [ Skip ]
+fast/selectors/hover-descendant-shadow-tree.html [ Skip ]
 fast/selectors/hover-invalidation-descendant-clear.html [ Skip ]
 fast/selectors/hover-invalidation-descendant-dynamic.html [ Skip ]
 fast/selectors/hover-quirks.html [ Skip ]


Modified: trunk/Source/WebCore/ChangeLog (286062 => 286063)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 15:57:39 UTC (rev 286062)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 16:53:01 UTC (rev 286063)
@@ -1,3 +1,23 @@
+2021-11-19  Antti Koivisto  
+
+:hover with descendant selector not invalidated correctly in shadow tree
+https://bugs.webkit.org/show_bug.cgi?id=233354
+
+Reviewed by Antoine Quint.
+
+We optimize :hover and :active by only invalidating for descendant selectors with a single tree walk.
+This doesn't work correctly for shadow trees as their scoped style may differ and the invalidation
+is limited to a single scope anyway.
+
+Fix by doing descendant invalidation for each affected scope.
+
+Test: fast/selectors/hover-descendant-shadow-tree.html
+
+* 

[webkit-changes] [286062] trunk/Source/WTF

2021-11-19 Thread commit-queue
Title: [286062] trunk/Source/WTF








Revision 286062
Author commit-qu...@webkit.org
Date 2021-11-19 07:57:39 -0800 (Fri, 19 Nov 2021)


Log Message
Remove allocation in JSON::Value::parseJSON
https://bugs.webkit.org/show_bug.cgi?id=233346

Patch by Alex Christensen  on 2021-11-19
Reviewed by Yusuke Suzuki.

Parse the characters as Latin1 characters if we have an 8 bit string rather than converting them to UTF-16 just to be parsed.

* wtf/JSONValues.cpp:
(WTF::JSONImpl::Value::parseJSON):

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/JSONValues.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (286061 => 286062)

--- trunk/Source/WTF/ChangeLog	2021-11-19 15:37:03 UTC (rev 286061)
+++ trunk/Source/WTF/ChangeLog	2021-11-19 15:57:39 UTC (rev 286062)
@@ -1,3 +1,15 @@
+2021-11-19  Alex Christensen  
+
+Remove allocation in JSON::Value::parseJSON
+https://bugs.webkit.org/show_bug.cgi?id=233346
+
+Reviewed by Yusuke Suzuki.
+
+Parse the characters as Latin1 characters if we have an 8 bit string rather than converting them to UTF-16 just to be parsed.
+
+* wtf/JSONValues.cpp:
+(WTF::JSONImpl::Value::parseJSON):
+
 2021-11-18  Antoine Quint  
 
 [Model] add support for pausing and resuming animations


Modified: trunk/Source/WTF/wtf/JSONValues.cpp (286061 => 286062)

--- trunk/Source/WTF/wtf/JSONValues.cpp	2021-11-19 15:37:03 UTC (rev 286061)
+++ trunk/Source/WTF/wtf/JSONValues.cpp	2021-11-19 15:57:39 UTC (rev 286062)
@@ -61,7 +61,8 @@
 const char* const trueToken = "true";
 const char* const falseToken = "false";
 
-bool parseConstToken(const UChar* start, const UChar* end, const UChar** tokenEnd, const char* token)
+template
+bool parseConstToken(const CodeUnit* start, const CodeUnit* end, const CodeUnit** tokenEnd, const char* token)
 {
 while (start < end && *token != '\0' && *start++ == *token++) { }
 
@@ -72,7 +73,8 @@
 return true;
 }
 
-bool readInt(const UChar* start, const UChar* end, const UChar** tokenEnd, bool canHaveLeadingZeros)
+template
+bool readInt(const CodeUnit* start, const CodeUnit* end, const CodeUnit** tokenEnd, bool canHaveLeadingZeros)
 {
 if (start == end)
 return false;
@@ -94,7 +96,8 @@
 return true;
 }
 
-bool parseNumberToken(const UChar* start, const UChar* end, const UChar** tokenEnd)
+template
+bool parseNumberToken(const CodeUnit* start, const CodeUnit* end, const CodeUnit** tokenEnd)
 {
 // We just grab the number here. We validate the size in DecodeNumber.
 // According to RFC 4627, a valid number is: [minus] int [frac] [exp]
@@ -101,7 +104,7 @@
 if (start == end)
 return false;
 
-UChar c = *start;
+CodeUnit c = *start;
 if ('-' == c)
 ++start;
 
@@ -145,7 +148,8 @@
 return true;
 }
 
-bool readHexDigits(const UChar* start, const UChar* end, const UChar** tokenEnd, int digits)
+template
+bool readHexDigits(const CodeUnit* start, const CodeUnit* end, const CodeUnit** tokenEnd, int digits)
 {
 if (end - start < digits)
 return false;
@@ -159,10 +163,11 @@
 return true;
 }
 
-bool parseStringToken(const UChar* start, const UChar* end, const UChar** tokenEnd)
+template
+bool parseStringToken(const CodeUnit* start, const CodeUnit* end, const CodeUnit** tokenEnd)
 {
 while (start < end) {
-UChar c = *start++;
+CodeUnit c = *start++;
 if ('\\' == c && start < end) {
 c = *start++;
 // Make sure the escaped char is valid.
@@ -197,7 +202,8 @@
 return false;
 }
 
-Token parseToken(const UChar* start, const UChar* end, const UChar** tokenStart, const UChar** tokenEnd)
+template
+Token parseToken(const CodeUnit* start, const CodeUnit* end, const CodeUnit** tokenStart, const CodeUnit** tokenEnd)
 {
 while (start < end && isSpaceOrNewline(*start))
 ++start;
@@ -261,7 +267,8 @@
 return Token::Invalid;
 }
 
-bool decodeString(const UChar* start, const UChar* end, StringBuilder& output)
+template
+bool decodeString(const CodeUnit* start, const CodeUnit* end, StringBuilder& output)
 {
 while (start < end) {
 UChar c = *start++;
@@ -316,7 +323,8 @@
 return true;
 }
 
-bool decodeString(const UChar* start, const UChar* end, String& output)
+template
+bool decodeString(const CodeUnit* start, const CodeUnit* end, String& output)
 {
 if (start == end) {
 output = emptyString();
@@ -335,14 +343,15 @@
 return true;
 }
 
-RefPtr buildValue(const UChar* start, const UChar* end, const UChar** valueTokenEnd, int depth)
+template
+RefPtr buildValue(const CodeUnit* start, const CodeUnit* end, const CodeUnit** valueTokenEnd, int depth)
 {
 if (depth > stackLimit)
 return nullptr;
 
 RefPtr result;
-const UChar* tokenStart;
-const UChar* tokenEnd;
+const CodeUnit* tokenStart;
+const CodeUnit* tokenEnd;
 Token token = parseToken(start, end, , );
 switch (token) {
 case Token::Invalid:
@@ -506,20 +515,32 

[webkit-changes] [286061] trunk

2021-11-19 Thread commit-queue
Title: [286061] trunk








Revision 286061
Author commit-qu...@webkit.org
Date 2021-11-19 07:37:03 -0800 (Fri, 19 Nov 2021)


Log Message
LayoutTests/imported/w3c:
Import css/css-values/urls web-platform-tests
Don't modify fragment-only or empty image URLs
https://bugs.webkit.org/show_bug.cgi?id=229917

Patch by Matt Woodrow  on 2021-11-19
Reviewed by Darin Adler.

Change handling of empty and fragment url()s for images to not convert to a fully resolved
path, and instead preserve them as-is, to match css-values4 requirements.

Import new tests in css/css-values/urls from 5e3187856a311f583124735cad5a03baa61951b3 and
add expectations for the new tests.

* resources/import-expectations.json:
* web-platform-tests/css/css-values/urls/empty-expected.txt:
* web-platform-tests/css/css-values/urls/empty.html:
* web-platform-tests/css/css-values/urls/fragment-only-expected.txt: Added.
* web-platform-tests/css/css-values/urls/fragment-only.html: Added.
* web-platform-tests/css/css-values/urls/resolve-relative-to-base-expected.txt: Added.
* web-platform-tests/css/css-values/urls/resolve-relative-to-base.html: Added.
* web-platform-tests/css/css-values/urls/resolve-relative-to-stylesheet-expected.txt: Added.
* web-platform-tests/css/css-values/urls/resolve-relative-to-stylesheet.html: Added.
* web-platform-tests/css/css-values/urls/support/fragment-only-urls.css: Added.
(:root):
(#external-unquoted):
(#external-quoted):
(#external-variable):
* web-platform-tests/css/css-values/urls/support/relative-urls.css: Added.
(:root):
(#stylesheet-relative-image):
(#stylesheet-relative-variable-image):
(#stylesheet-relative-document-variable-image):
* web-platform-tests/css/css-values/urls/support/w3c-import.log:
* web-platform-tests/css/css-values/urls/w3c-import.log:

Source/WebCore:
Don't modify fragment-only or empty image URLs
https://bugs.webkit.org/show_bug.cgi?id=229917

Patch by Matt Woodrow  on 2021-11-19
Reviewed by Darin Adler.

Don't modify fragment-only or empty image URLs, as-per css-values-4

Existing web-platform-tests are marked as passing.

* css/CSSImageValue.cpp:
(WebCore::CSSImageValue::reresolvedURL const):
* css/parser/CSSParserContext.cpp:
(WebCore::CSSParserContext::completeURL const):
* css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeImage):
* dom/Document.cpp:
(WebCore::Document::completeURL const):

Modified Paths

trunk/LayoutTests/fast/css/invalid-cursor-property-crash.html
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/resources/import-expectations.json
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/empty.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/support/empty-urls.css
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/support/w3c-import.log
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/w3c-import.log
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/CSSImageValue.cpp
trunk/Source/WebCore/css/CSSValue.cpp
trunk/Source/WebCore/css/CSSValue.h
trunk/Source/WebCore/css/parser/CSSParserContext.cpp
trunk/Source/WebCore/dom/Document.cpp


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/fragment-only-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/fragment-only.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/resolve-relative-to-base-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/resolve-relative-to-base.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/resolve-relative-to-stylesheet-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/resolve-relative-to-stylesheet.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/support/fragment-only-urls.css
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/urls/support/relative-urls.css




Diff

Modified: trunk/LayoutTests/fast/css/invalid-cursor-property-crash.html (286060 => 286061)

--- trunk/LayoutTests/fast/css/invalid-cursor-property-crash.html	2021-11-19 15:01:50 UTC (rev 286060)
+++ trunk/LayoutTests/fast/css/invalid-cursor-property-crash.html	2021-11-19 15:37:03 UTC (rev 286061)
@@ -7,8 +7,8 @@
 
 var d = document.getElementById('theDiv');
 var style = document.defaultView.getComputedStyle(d, '');
-
-if (style && style.cursor == 'url("' + document.location + '"), auto')
+
+if (style && style.cursor == 'url(""), auto')
 document.getElementById('result').innerHTML = 'SUCCESS';
 }
 


Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286060 => 286061)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-11-19 15:01:50 UTC (rev 286060)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-11-19 15:37:03 UTC (rev 286061)
@@ -1,3 +1,39 @@
+2021-11-19  Matt Woodrow  
+
+Import 

[webkit-changes] [286060] trunk

2021-11-19 Thread angelos
Title: [286060] trunk








Revision 286060
Author ange...@igalia.com
Date 2021-11-19 07:01:50 -0800 (Fri, 19 Nov 2021)


Log Message
[JSC] Workaround for failing mips tests
https://bugs.webkit.org/show_bug.cgi?id=233359

Reviewed by Adrian Perez de Castro.

.:

Add a compiler flag on GCC+mips to work around a code generation bug
resulting in SIGBUS. This only manifests when running 32-bit mips code
on mips64 hardware (which the buildbots do).

* Source/cmake/WebKitCompilerFlags.cmake:

JSTests:

Re-enable tests skipped on mips after adding workaround.

* stress/call-varargs-double-new-array-buffer.js:
* stress/callee-save-fpr.js:
* stress/forward-varargs-double-new-array-buffer.js:
* stress/new-array-with-spread-cow-double.js:
* stress/new-array-with-spread-double-new-array-buffer.js:
* stress/spread-escapes-but-new-array-buffer-does-not-double.js:

PerformanceTests:

Re-enable tests skipped on mips after adding workaround.

* ARES-6/Basic/basic-tests.yaml:

Modified Paths

trunk/ChangeLog
trunk/JSTests/ChangeLog
trunk/JSTests/stress/call-varargs-double-new-array-buffer.js
trunk/JSTests/stress/callee-save-fpr.js
trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js
trunk/JSTests/stress/new-array-with-spread-cow-double.js
trunk/JSTests/stress/new-array-with-spread-double-new-array-buffer.js
trunk/JSTests/stress/spread-escapes-but-new-array-buffer-does-not-double.js
trunk/PerformanceTests/ARES-6/Basic/basic-tests.yaml
trunk/PerformanceTests/ChangeLog
trunk/Source/cmake/WebKitCompilerFlags.cmake




Diff

Modified: trunk/ChangeLog (286059 => 286060)

--- trunk/ChangeLog	2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/ChangeLog	2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,3 +1,16 @@
+2021-11-19  Angelos Oikonomopoulos  
+
+[JSC] Workaround for failing mips tests
+https://bugs.webkit.org/show_bug.cgi?id=233359
+
+Reviewed by Adrian Perez de Castro.
+
+Add a compiler flag on GCC+mips to work around a code generation bug
+resulting in SIGBUS. This only manifests when running 32-bit mips code
+on mips64 hardware (which the buildbots do).
+
+* Source/cmake/WebKitCompilerFlags.cmake:
+
 2021-11-18  Yoshiaki Jitsukawa  
 
 Implement JPEG XL image decoder using libjxl


Modified: trunk/JSTests/ChangeLog (286059 => 286060)

--- trunk/JSTests/ChangeLog	2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/ChangeLog	2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,3 +1,19 @@
+2021-11-19  Angelos Oikonomopoulos  
+
+[JSC] Workaround for failing mips tests
+https://bugs.webkit.org/show_bug.cgi?id=233359
+
+Reviewed by Adrian Perez de Castro.
+
+Re-enable tests skipped on mips after adding workaround.
+
+* stress/call-varargs-double-new-array-buffer.js:
+* stress/callee-save-fpr.js:
+* stress/forward-varargs-double-new-array-buffer.js:
+* stress/new-array-with-spread-cow-double.js:
+* stress/new-array-with-spread-double-new-array-buffer.js:
+* stress/spread-escapes-but-new-array-buffer-does-not-double.js:
+
 2021-11-17  Yusuke Suzuki  
 
 [JSC] TypedArray GetArrayLength should not use Reuse


Modified: trunk/JSTests/stress/call-varargs-double-new-array-buffer.js (286059 => 286060)

--- trunk/JSTests/stress/call-varargs-double-new-array-buffer.js	2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/call-varargs-double-new-array-buffer.js	2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
 function assert(b, m = "") {
 if (!b)
 throw new Error("Bad assert: " + m);


Modified: trunk/JSTests/stress/callee-save-fpr.js (286059 => 286060)

--- trunk/JSTests/stress/callee-save-fpr.js	2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/callee-save-fpr.js	2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
 'use strict';
 
 function _f(a1, a2, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) {


Modified: trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js (286059 => 286060)

--- trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js	2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/forward-varargs-double-new-array-buffer.js	2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
 "use strict";
 
 function assert(b, m="") {


Modified: trunk/JSTests/stress/new-array-with-spread-cow-double.js (286059 => 286060)

--- trunk/JSTests/stress/new-array-with-spread-cow-double.js	2021-11-19 14:51:09 UTC (rev 286059)
+++ trunk/JSTests/stress/new-array-with-spread-cow-double.js	2021-11-19 15:01:50 UTC (rev 286060)
@@ -1,4 +1,3 @@
-//@ skip if ["mips"].include?($architecture)
 function shouldBe(actual, expected) {
 if (actual !== expected)
 throw new Error('bad value: ' + actual);


Modified: trunk/JSTests/stress/new-array-with-spread-double-new-array-buffer.js (286059 => 286060)

--- 

[webkit-changes] [286059] trunk

2021-11-19 Thread carlosgc
Title: [286059] trunk








Revision 286059
Author carlo...@webkit.org
Date 2021-11-19 06:51:09 -0800 (Fri, 19 Nov 2021)


Log Message
[GTK][a11y] Add implementation of document interface when building with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=232755

Reviewed by Adrian Perez de Castro.

Source/WebCore:

* SourcesGTK.txt:
* accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::interfacesForObject):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::locale const):
(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
* accessibility/atspi/AccessibilityObjectAtspi.h:
* accessibility/atspi/AccessibilityObjectDocumentAtspi.cpp: Added.
(WebCore::AccessibilityObjectAtspi::documentAttribute const):
(WebCore::AccessibilityObjectAtspi::documentAttributes const):
(WebCore::AccessibilityObjectAtspi::documentLocale const):

Tools:

Add unit test for the document interface and WTR implementation.

* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testDocumentBasic):
(beforeAll):
* WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/SourcesGTK.txt
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp
trunk/Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp


Added Paths

trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectDocumentAtspi.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286058 => 286059)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 14:48:24 UTC (rev 286058)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 14:51:09 UTC (rev 286059)
@@ -1,3 +1,22 @@
+2021-11-19  Carlos Garcia Campos  
+
+[GTK][a11y] Add implementation of document interface when building with ATSPI
+https://bugs.webkit.org/show_bug.cgi?id=232755
+
+Reviewed by Adrian Perez de Castro.
+
+* SourcesGTK.txt:
+* accessibility/atspi/AccessibilityObjectAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::interfacesForObject):
+(WebCore::AccessibilityObjectAtspi::path):
+(WebCore::AccessibilityObjectAtspi::locale const):
+(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
+* accessibility/atspi/AccessibilityObjectAtspi.h:
+* accessibility/atspi/AccessibilityObjectDocumentAtspi.cpp: Added.
+(WebCore::AccessibilityObjectAtspi::documentAttribute const):
+(WebCore::AccessibilityObjectAtspi::documentAttributes const):
+(WebCore::AccessibilityObjectAtspi::documentLocale const):
+
 2021-11-19  Antti Koivisto  
 
 Factor child change invalidation into class


Modified: trunk/Source/WebCore/SourcesGTK.txt (286058 => 286059)

--- trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 14:48:24 UTC (rev 286058)
+++ trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 14:51:09 UTC (rev 286059)
@@ -43,6 +43,7 @@
 accessibility/atspi/AccessibilityObjectAtspi.cpp
 accessibility/atspi/AccessibilityObjectActionAtspi.cpp
 accessibility/atspi/AccessibilityObjectComponentAtspi.cpp
+accessibility/atspi/AccessibilityObjectDocumentAtspi.cpp
 accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp
 accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp
 accessibility/atspi/AccessibilityObjectTextAtspi.cpp


Modified: trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp (286058 => 286059)

--- trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp	2021-11-19 14:48:24 UTC (rev 286058)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp	2021-11-19 14:51:09 UTC (rev 286059)
@@ -91,6 +91,9 @@
 if (coreObject.isLink() || (isRendererReplacedElement(renderer)))
 interfaces.add(Interface::Hyperlink);
 
+if (coreObject.roleValue() == AccessibilityRole::WebArea)
+interfaces.add(Interface::Document);
+
 return interfaces;
 }
 
@@ -445,7 +448,7 @@
 if (!g_strcmp0(propertyName, "Description"))
 return g_variant_new_string(atspiObject->description().data());
 if (!g_strcmp0(propertyName, "Locale"))
-return g_variant_new_string(setlocale(LC_MESSAGES, nullptr));
+return g_variant_new_string(atspiObject->locale().utf8().data());
 if (!g_strcmp0(propertyName, "AccessibleId"))
 return g_variant_new_string(atspiObject->m_axObject ? String::number(atspiObject->m_axObject->objectID().toUInt64()).utf8().data() : "");
 if (!g_strcmp0(propertyName, "Parent"))
@@ -485,6 +488,8 @@
 interfaces.append({ const_cast(_hypertext_interface), _hypertextFunctions });
 if 

[webkit-changes] [286058] trunk/Source/WebCore

2021-11-19 Thread antti
Title: [286058] trunk/Source/WebCore








Revision 286058
Author an...@apple.com
Date 2021-11-19 06:48:24 -0800 (Fri, 19 Nov 2021)


Log Message
Factor child change invalidation into class
https://bugs.webkit.org/show_bug.cgi?id=233311

Reviewed by Alan Bujtas.

Use similar pattern as ClassChangeInvalidation and others where we create a stack object scoped
over a DOM mutation. This will allow more sophisticated ruleset based invalidation in
future.

This patch moves the invalidation code from childrenChanged() to the new ChildChangeInvalidation class.
ChildChangeInvalidation is instantiated in ContainerNode and CharacterData mutation functions
that call childrenChanged(). It uses the same ChildChange argument type as childrenChanged().

There are no changes to invalidation functionality in this patch.

* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* dom/CharacterData.cpp:
(WebCore::makeChildChange):
(WebCore::CharacterData::parserAppendData):
(WebCore::CharacterData::setDataAndUpdate):
(WebCore::CharacterData::notifyParentAfterChange):
* dom/CharacterData.h:
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::removeAllChildrenWithScriptAssertion):
(WebCore::makeChildChangeForRemoval):
(WebCore::ContainerNode::removeNodeWithScriptAssertion):
(WebCore::makeChildChangeForInsertion):
(WebCore::executeNodeInsertionWithScriptAssertion):
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::parserInsertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::ContainerNode::replaceAll):
(WebCore::ContainerNode::appendChildWithoutPreInsertionValidityCheck):
(WebCore::ContainerNode::parserAppendChild):
(WebCore::affectsElements):
* dom/ContainerNode.h:
(WebCore::ContainerNode::ChildChange::isInsertion const):

Add a new FinishedParsingChildren change type, only used when invalidating from Element::finishParsingChildren.

* dom/Element.cpp:
(WebCore::invalidateForSiblingCombinators):
(WebCore::Element::childTypeAllowed const):
(WebCore::Element::childrenChanged):
(WebCore::Element::finishParsingChildren):
(WebCore::checkForEmptyStyleChange): Deleted.
(WebCore::invalidateForForwardPositionalRules): Deleted.
(WebCore::invalidateForBackwardPositionalRules): Deleted.
(WebCore::checkForSiblingStyleChanges): Deleted.
* dom/Element.h:
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::childrenChanged):
* style/ChildChangeInvalidation.cpp: Added.
(WebCore::Style::ChildChangeInvalidation::ChildChangeInvalidation):
(WebCore::Style::ChildChangeInvalidation::~ChildChangeInvalidation):
(WebCore::Style::ChildChangeInvalidation::invalidateAfterChange):
(WebCore::Style::ChildChangeInvalidation::checkForEmptyStyleChange):
(WebCore::Style::invalidateForForwardPositionalRules):
(WebCore::Style::invalidateForBackwardPositionalRules):
(WebCore::Style::ChildChangeInvalidation::checkForSiblingStyleChanges):
* style/ChildChangeInvalidation.h: Added.
(WebCore::Style::ChildChangeInvalidation::parentElement):
* style/StyleAdjuster.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Sources.txt
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/dom/CharacterData.cpp
trunk/Source/WebCore/dom/CharacterData.h
trunk/Source/WebCore/dom/ContainerNode.cpp
trunk/Source/WebCore/dom/ContainerNode.h
trunk/Source/WebCore/dom/Element.cpp
trunk/Source/WebCore/dom/Element.h
trunk/Source/WebCore/dom/ShadowRoot.cpp
trunk/Source/WebCore/style/StyleAdjuster.h


Added Paths

trunk/Source/WebCore/style/ChildChangeInvalidation.cpp
trunk/Source/WebCore/style/ChildChangeInvalidation.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286057 => 286058)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 14:39:07 UTC (rev 286057)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 14:48:24 UTC (rev 286058)
@@ -1,3 +1,70 @@
+2021-11-19  Antti Koivisto  
+
+Factor child change invalidation into class
+https://bugs.webkit.org/show_bug.cgi?id=233311
+
+Reviewed by Alan Bujtas.
+
+Use similar pattern as ClassChangeInvalidation and others where we create a stack object scoped
+over a DOM mutation. This will allow more sophisticated ruleset based invalidation in
+future.
+
+This patch moves the invalidation code from childrenChanged() to the new ChildChangeInvalidation class.
+ChildChangeInvalidation is instantiated in ContainerNode and CharacterData mutation functions
+that call childrenChanged(). It uses the same ChildChange argument type as childrenChanged().
+
+There are no changes to invalidation functionality in this patch.
+
+* Sources.txt:
+* WebCore.xcodeproj/project.pbxproj:
+* dom/CharacterData.cpp:
+(WebCore::makeChildChange):
+(WebCore::CharacterData::parserAppendData):
+(WebCore::CharacterData::setDataAndUpdate):
+(WebCore::CharacterData::notifyParentAfterChange):
+* dom/CharacterData.h:
+* dom/ContainerNode.cpp:
+

[webkit-changes] [286057] trunk/Tools/buildstream

2021-11-19 Thread aperez
Title: [286057] trunk/Tools/buildstream








Revision 286057
Author ape...@igalia.com
Date 2021-11-19 06:39:07 -0800 (Fri, 19 Nov 2021)


Log Message
[Flatpak SDK] Add build recipe for libjxl
https://bugs.webkit.org/show_bug.cgi?id=233326

Reviewed by Philippe Normand.

Add the build recipe for libjxl, which in turns needs highway (libhwy), which gets imported
as well. Highway is always built as a static library, and therefore only needed at build
time. As for libjxl, the recipe tries to disable as much as possible of bundled sources from
its third_party/ subdirectory, but LodePNG gets always needed, and the same goes for either
SkCMS or LCMS2; and in both cases they get built and linked statically into the resulting
libjxl library. Ideally we would prefer that libjxl could use a system-installed copy of
LCMS2 because that is already available in the SDK, but that not being an option SkCMS is
preferred as it is smaller.

* elements/sdk-platform.bst: List libjxl for installation in the SDK.
* elements/sdk/highway.bst: Added.
* elements/sdk/libjxl.bst: Added.

Modified Paths

trunk/Tools/buildstream/ChangeLog
trunk/Tools/buildstream/elements/sdk-platform.bst


Added Paths

trunk/Tools/buildstream/elements/sdk/highway.bst
trunk/Tools/buildstream/elements/sdk/libjxl.bst




Diff

Modified: trunk/Tools/buildstream/ChangeLog (286056 => 286057)

--- trunk/Tools/buildstream/ChangeLog	2021-11-19 14:30:34 UTC (rev 286056)
+++ trunk/Tools/buildstream/ChangeLog	2021-11-19 14:39:07 UTC (rev 286057)
@@ -1,3 +1,23 @@
+2021-11-19  Adrian Perez de Castro  
+
+[Flatpak SDK] Add build recipe for libjxl
+https://bugs.webkit.org/show_bug.cgi?id=233326
+
+Reviewed by Philippe Normand.
+
+Add the build recipe for libjxl, which in turns needs highway (libhwy), which gets imported
+as well. Highway is always built as a static library, and therefore only needed at build
+time. As for libjxl, the recipe tries to disable as much as possible of bundled sources from
+its third_party/ subdirectory, but LodePNG gets always needed, and the same goes for either
+SkCMS or LCMS2; and in both cases they get built and linked statically into the resulting
+libjxl library. Ideally we would prefer that libjxl could use a system-installed copy of
+LCMS2 because that is already available in the SDK, but that not being an option SkCMS is
+preferred as it is smaller.
+
+* elements/sdk-platform.bst: List libjxl for installation in the SDK.
+* elements/sdk/highway.bst: Added.
+* elements/sdk/libjxl.bst: Added.
+
 2021-11-06  David Kilzer  
 
 Remove empty directories from from svn.webkit.org repository as of r285357


Added: trunk/Tools/buildstream/elements/sdk/highway.bst (0 => 286057)

--- trunk/Tools/buildstream/elements/sdk/highway.bst	(rev 0)
+++ trunk/Tools/buildstream/elements/sdk/highway.bst	2021-11-19 14:39:07 UTC (rev 286057)
@@ -0,0 +1,16 @@
+kind: cmake
+
+build-depends:
+- freedesktop-sdk.bst:public-stacks/buildsystem-cmake.bst
+
+variables:
+  cmake-local: |
+-DBUILD_TESTING=OFF \
+-DHWY_WARNINGS_ARE_ERRORS=OFF \
+-DHWY_ENABLE_EXAMPLES=OFF \
+-DHWY_ENABLE_INSTALL=ON
+
+sources:
+- kind: tar
+  url: https://github.com/google/highway/archive/refs/tags/0.15.0.tar.gz
+  ref: 4bbd4439eae08cf038f1c5cc5d9ebc6a1a50f2c610c13a1483adccacfa24c150


Added: trunk/Tools/buildstream/elements/sdk/libjxl.bst (0 => 286057)

--- trunk/Tools/buildstream/elements/sdk/libjxl.bst	(rev 0)
+++ trunk/Tools/buildstream/elements/sdk/libjxl.bst	2021-11-19 14:39:07 UTC (rev 286057)
@@ -0,0 +1,54 @@
+kind: cmake
+
+build-depends:
+- freedesktop-sdk.bst:public-stacks/buildsystem-cmake.bst
+- sdk/highway.bst
+
+depends:
+- freedesktop-sdk.bst:components/brotli.bst
+
+variables:
+  cmake-local: |
+-DBUILD_TESTING=OFF \
+-DJPEGXL_ENABLE_FUZZERS=OFF \
+-DJPEGXL_ENABLE_DEVTOOLS=OFF \
+-DJPEGXL_ENABLE_TOOLS=OFF \
+-DJPEGXL_ENABLE_MANPAGES=OFF \
+-DJPEGXL_ENABLE_BENCHMARK=OFF \
+-DJPEGXL_ENABLE_EXAMPLES=OFF \
+-DJPEGXL_ENABLE_JNI=OFF \
+-DJPEGXL_ENABLE_VIEWERS=OFF \
+-DJPEGXL_ENABLE_TCMALLOC=OFF \
+-DJPEGXL_ENABLE_PLUGINS=OFF \
+-DJPEGXL_ENABLE_COVERAGE=OFF \
+-DJPEGXL_ENABLE_PROFILER=OFF \
+-DJPEGXL_ENABLE_TRANSCODE_JPEG=OFF \
+-DJPEGXL_ENABLE_SJPEG=OFF \
+-DJPEGXL_STATIC=OFF \
+-DJPEGXL_WARNINGS_AS_ERRORS=OFF \
+-DJPEGXL_ENABLE_SKCMS=ON \
+-DJPEGXL_FORCE_SYSTEM_BROTLI=ON \
+-DJPEGXL_FORCE_SYSTEM_GTEST=ON \
+-DJPEGXL_FORCE_SYSTEM_HWY=ON
+
+sources:
+- kind: tar
+  url: https://github.com/libjxl/libjxl/archive/refs/tags/v0.6.1.tar.gz
+  ref: ccbd5a729d730152303be399f033b905e608309d5802d77a61a95faa092592c5
+- kind: remote
+  url: https://github.com/lvandeve/lodepng/raw/8c6a9e30576f07bf470ad6f09458a2dcd7a6a84a/lodepng.h
+  ref: e6cb1736b11217209873f02b8859256e662e14d297f1f9346fbf1778d5efadbb
+  directory: 

[webkit-changes] [286056] trunk

2021-11-19 Thread carlosgc
Title: [286056] trunk








Revision 286056
Author carlo...@webkit.org
Date 2021-11-19 06:30:34 -0800 (Fri, 19 Nov 2021)


Log Message
[GTK][a11y] Add implementation of action interface when building with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=232749

Reviewed by Adrian Perez de Castro.

Source/WebCore:

* SourcesGTK.txt:
* accessibility/atspi/AccessibilityObjectActionAtspi.cpp: Added.
(WebCore::AccessibilityObjectAtspi::actionName const):
(WebCore::AccessibilityObjectAtspi::localizedActionName const):
(WebCore::AccessibilityObjectAtspi::actionKeyBinding const):
(WebCore::AccessibilityObjectAtspi::doAction const):
* accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::interfacesForObject):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
* accessibility/atspi/AccessibilityObjectAtspi.h:

Tools:

Add a unit test for the action interface and WTR implementation.

* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testActionBasic):
(beforeAll):
* WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::press):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/SourcesGTK.txt
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp
trunk/Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp


Added Paths

trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectActionAtspi.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286055 => 286056)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 13:35:55 UTC (rev 286055)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 14:30:34 UTC (rev 286056)
@@ -1,5 +1,24 @@
 2021-11-19  Carlos Garcia Campos  
 
+[GTK][a11y] Add implementation of action interface when building with ATSPI
+https://bugs.webkit.org/show_bug.cgi?id=232749
+
+Reviewed by Adrian Perez de Castro.
+
+* SourcesGTK.txt:
+* accessibility/atspi/AccessibilityObjectActionAtspi.cpp: Added.
+(WebCore::AccessibilityObjectAtspi::actionName const):
+(WebCore::AccessibilityObjectAtspi::localizedActionName const):
+(WebCore::AccessibilityObjectAtspi::actionKeyBinding const):
+(WebCore::AccessibilityObjectAtspi::doAction const):
+* accessibility/atspi/AccessibilityObjectAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::interfacesForObject):
+(WebCore::AccessibilityObjectAtspi::path):
+(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
+* accessibility/atspi/AccessibilityObjectAtspi.h:
+
+2021-11-19  Carlos Garcia Campos  
+
 [GTK][a11y] Add implementation of hypertext interface when building with ATSPI
 https://bugs.webkit.org/show_bug.cgi?id=232708
 


Modified: trunk/Source/WebCore/SourcesGTK.txt (286055 => 286056)

--- trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 13:35:55 UTC (rev 286055)
+++ trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 14:30:34 UTC (rev 286056)
@@ -41,6 +41,7 @@
 
 accessibility/atspi/AccessibilityAtspi.cpp
 accessibility/atspi/AccessibilityObjectAtspi.cpp
+accessibility/atspi/AccessibilityObjectActionAtspi.cpp
 accessibility/atspi/AccessibilityObjectComponentAtspi.cpp
 accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp
 accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp


Added: trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectActionAtspi.cpp (0 => 286056)

--- trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectActionAtspi.cpp	(rev 0)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectActionAtspi.cpp	2021-11-19 14:30:34 UTC (rev 286056)
@@ -0,0 +1,107 @@
+/*
+ * Copyright (C) 2021 Igalia S.L.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public License
+ * along with this library; see the file COPYING.LIB.  If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+#include "AccessibilityObjectAtspi.h"
+
+#if ENABLE(ACCESSIBILITY) && USE(ATSPI)
+
+#include "AccessibilityRootAtspi.h"
+#include 
+#include 
+
+namespace WebCore {
+

[webkit-changes] [286055] trunk

2021-11-19 Thread carlosgc
Title: [286055] trunk








Revision 286055
Author carlo...@webkit.org
Date 2021-11-19 05:35:55 -0800 (Fri, 19 Nov 2021)


Log Message
[GTK][a11y] Add implementation of hypertext interface when building with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=232708

Reviewed by Adrian Perez de Castro.

Source/WebCore:

* SourcesGTK.txt:
* accessibility/atspi/AccessibilityAtspi.cpp:
(WebCore::AccessibilityAtspi::unregisterObject):
(WebCore::AccessibilityAtspi::registerHyperlink):
* accessibility/atspi/AccessibilityAtspi.h:
* accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::interfacesForObject):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::hyperlinkReference):
(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
* accessibility/atspi/AccessibilityObjectAtspi.h:
* accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp: Added.
(WebCore::AccessibilityObjectAtspi::hyperlinkCount const):
(WebCore::AccessibilityObjectAtspi::hyperlink const):
(WebCore::AccessibilityObjectAtspi::hyperlinkIndex const):
* accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::characterIndex const):

Tools:

Add unit tests to check hypertext interface.

* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testHypertextBasic):
(beforeAll):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/SourcesGTK.txt
trunk/Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityAtspi.h
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp


Added Paths

trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286054 => 286055)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 09:52:50 UTC (rev 286054)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 13:35:55 UTC (rev 286055)
@@ -1,5 +1,30 @@
 2021-11-19  Carlos Garcia Campos  
 
+[GTK][a11y] Add implementation of hypertext interface when building with ATSPI
+https://bugs.webkit.org/show_bug.cgi?id=232708
+
+Reviewed by Adrian Perez de Castro.
+
+* SourcesGTK.txt:
+* accessibility/atspi/AccessibilityAtspi.cpp:
+(WebCore::AccessibilityAtspi::unregisterObject):
+(WebCore::AccessibilityAtspi::registerHyperlink):
+* accessibility/atspi/AccessibilityAtspi.h:
+* accessibility/atspi/AccessibilityObjectAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::interfacesForObject):
+(WebCore::AccessibilityObjectAtspi::path):
+(WebCore::AccessibilityObjectAtspi::hyperlinkReference):
+(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
+* accessibility/atspi/AccessibilityObjectAtspi.h:
+* accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp: Added.
+(WebCore::AccessibilityObjectAtspi::hyperlinkCount const):
+(WebCore::AccessibilityObjectAtspi::hyperlink const):
+(WebCore::AccessibilityObjectAtspi::hyperlinkIndex const):
+* accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::characterIndex const):
+
+2021-11-19  Carlos Garcia Campos  
+
 [GTK][a11y] Add implementation of hyperlink interface when building with ATSPI
 https://bugs.webkit.org/show_bug.cgi?id=232707
 


Modified: trunk/Source/WebCore/SourcesGTK.txt (286054 => 286055)

--- trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 09:52:50 UTC (rev 286054)
+++ trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 13:35:55 UTC (rev 286055)
@@ -43,6 +43,7 @@
 accessibility/atspi/AccessibilityObjectAtspi.cpp
 accessibility/atspi/AccessibilityObjectComponentAtspi.cpp
 accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp
+accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp
 accessibility/atspi/AccessibilityObjectTextAtspi.cpp
 accessibility/atspi/AccessibilityObjectValueAtspi.cpp
 accessibility/atspi/AccessibilityRootAtspi.cpp


Modified: trunk/Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp (286054 => 286055)

--- trunk/Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp	2021-11-19 09:52:50 UTC (rev 286054)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp	2021-11-19 13:35:55 UTC (rev 286055)
@@ -135,6 +135,12 @@
 if (!m_connection)
 return;
 
+if (m_atspiHyperlinks.contains(atspiObject.ptr())) {
+auto registeredObjects = m_atspiHyperlinks.take(atspiObject.ptr());
+for (auto id : registeredObjects)
+g_dbus_connection_unregister_object(m_connection.get(), id);
+}
+
 g_dbus_connection_emit_signal(m_connection.get(), nullptr, 

[webkit-changes] [286054] trunk/Tools

2021-11-19 Thread carlosgc
Title: [286054] trunk/Tools








Revision 286054
Author carlo...@webkit.org
Date 2021-11-19 01:52:50 -0800 (Fri, 19 Nov 2021)


Log Message
Unreviewed. [GLIB] Add new test case to /jsc/class

Add a test case to check using JSC_TYPE_VALUE for a JSCClass property.

* TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp:
(setFooValue):
(getFooValue):
(testJSCClass):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp




Diff

Modified: trunk/Tools/ChangeLog (286053 => 286054)

--- trunk/Tools/ChangeLog	2021-11-19 09:38:27 UTC (rev 286053)
+++ trunk/Tools/ChangeLog	2021-11-19 09:52:50 UTC (rev 286054)
@@ -1,3 +1,14 @@
+2021-11-19  Carlos Garcia Campos  
+
+Unreviewed. [GLIB] Add new test case to /jsc/class
+
+Add a test case to check using JSC_TYPE_VALUE for a JSCClass property.
+
+* TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp:
+(setFooValue):
+(getFooValue):
+(testJSCClass):
+
 2021-11-19  Arcady Goldmints-Orlov  
 
 REGRESSION(r285859) [GTK][WPE] a number of accessibility/* tests crash on GTK and WPE


Modified: trunk/Tools/TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp (286053 => 286054)

--- trunk/Tools/TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp	2021-11-19 09:38:27 UTC (rev 286053)
+++ trunk/Tools/TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp	2021-11-19 09:52:50 UTC (rev 286054)
@@ -1641,6 +1641,25 @@
 return foo->foo;
 }
 
+static void setFooValue(Foo* foo, JSCValue* value)
+{
+if (jsc_value_is_undefined(value))
+foo->foo = std::numeric_limits::min();
+else if (jsc_value_is_null(value))
+foo->foo = std::numeric_limits::max();
+else
+foo->foo = jsc_value_to_int32(value);
+}
+
+static JSCValue* getFooValue(Foo* foo)
+{
+if (foo->foo == std::numeric_limits::min())
+return jsc_value_new_undefined(jsc_context_get_current());
+if (foo->foo == std::numeric_limits::max())
+return jsc_value_new_null(jsc_context_get_current());
+return jsc_value_new_number(jsc_context_get_current(), foo->foo);
+}
+
 static void setSibling(Foo* foo, Foo* sibling)
 {
 foo->sibling = sibling;
@@ -2729,6 +2748,78 @@
 g_assert_true(jsc_value_is_boolean(result.get()));
 g_assert_true(jsc_value_to_boolean(result.get()));
 }
+
+{
+LeakChecker checker;
+GRefPtr context = adoptGRef(jsc_context_new());
+checker.watch(context.get());
+ExceptionHandler exceptionHandler(context.get());
+
+JSCClass* jscClass = jsc_context_register_class(context.get(), "Foo", nullptr, , reinterpret_cast(fooFree));
+checker.watch(jscClass);
+g_object_set_data(G_OBJECT(jscClass), "leak-checker", );
+
+GRefPtr constructor = adoptGRef(jsc_class_add_constructor(jscClass, nullptr, G_CALLBACK(fooCreate), nullptr, nullptr, G_TYPE_POINTER, 0, G_TYPE_NONE));
+checker.watch(constructor.get());
+g_assert_true(jsc_value_is_constructor(constructor.get()));
+jsc_context_set_value(context.get(), jsc_class_get_name(jscClass), constructor.get());
+jsc_class_add_property(jscClass, "foo", JSC_TYPE_VALUE, G_CALLBACK(getFooValue), G_CALLBACK(setFooValue), nullptr, nullptr);
+
+GRefPtr foo = adoptGRef(jsc_context_evaluate(context.get(), "f = new Foo();", -1));
+checker.watch(foo.get());
+g_assert_true(jsc_value_is_object(foo.get()));
+g_assert_true(jsc_value_object_has_property(foo.get(), "foo"));
+
+GRefPtr result = adoptGRef(jsc_context_evaluate(context.get(), "f.foo", -1));
+checker.watch(result.get());
+g_assert_true(jsc_value_is_number(result.get()));
+g_assert_cmpuint(jsc_value_to_int32(result.get()), ==, 0);
+
+GRefPtr value = adoptGRef(jsc_value_object_get_property(foo.get(), "foo"));
+checker.watch(value.get());
+g_assert_true(value.get() == result.get());
+
+result = adoptGRef(jsc_context_evaluate(context.get(), "f.foo = 52", -1));
+checker.watch(result.get());
+value = adoptGRef(jsc_context_evaluate(context.get(), "f.foo", -1));
+checker.watch(value.get());
+g_assert_true(jsc_value_is_number(value.get()));
+g_assert_cmpint(jsc_value_to_int32(value.get()), ==, 52);
+
+value = adoptGRef(jsc_value_new_number(context.get(), 25));
+checker.watch(value.get());
+jsc_value_object_set_property(foo.get(), "foo", value.get());
+result = adoptGRef(jsc_context_evaluate(context.get(), "f.foo", -1));
+checker.watch(result.get());
+g_assert_true(jsc_value_is_number(result.get()));
+g_assert_cmpint(jsc_value_to_int32(result.get()), ==, 25);
+
+result = adoptGRef(jsc_context_evaluate(context.get(), "f.foo = undefined", -1));
+checker.watch(result.get());
+value = adoptGRef(jsc_context_evaluate(context.get(), "f.foo", -1));
+

[webkit-changes] [286053] trunk/Source/JavaScriptCore

2021-11-19 Thread rmorisset
Title: [286053] trunk/Source/_javascript_Core








Revision 286053
Author rmoris...@apple.com
Date 2021-11-19 01:38:27 -0800 (Fri, 19 Nov 2021)


Log Message
AirFixObviousSpills should be optimized
https://bugs.webkit.org/show_bug.cgi?id=228052

Reviewed by Yusuke Suzuki.

There were two problems with AirFixObviousSpills:
- merge() had a quadratic blow-up, as for each element in a vector, it was searching it in a different vector.
- it would visit blocks even when their state at head had not changed.

I fixed the first problem by making sure that the vectors are sorted before calling merge, and making use of that invariant in the search of the vectors
(see filterVectorAgainst)
This reduced the total time spent in that phase from 390ms to 230ms, and the worst case time spent in that phase for one function from 100ms to 30ms (all of the results in this Changelog are for JetStream2 on a M1 MBP).

I fixed the second problem even more easily by adding a m_shouldVisit BitVector. I also moved the m_wasVisited boolean that was in State to a m_notBottom BitVector for simplicity and symmetry.
That change further reduced the total/max time from 230ms/30ms to 140ms/16ms.

* b3/air/AirFixObviousSpills.cpp:

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/b3/air/AirFixObviousSpills.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (286052 => 286053)

--- trunk/Source/_javascript_Core/ChangeLog	2021-11-19 09:01:37 UTC (rev 286052)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-11-19 09:38:27 UTC (rev 286053)
@@ -1,3 +1,23 @@
+2021-11-19  Robin Morisset  
+
+AirFixObviousSpills should be optimized
+https://bugs.webkit.org/show_bug.cgi?id=228052
+
+Reviewed by Yusuke Suzuki.
+
+There were two problems with AirFixObviousSpills:
+- merge() had a quadratic blow-up, as for each element in a vector, it was searching it in a different vector.
+- it would visit blocks even when their state at head had not changed.
+
+I fixed the first problem by making sure that the vectors are sorted before calling merge, and making use of that invariant in the search of the vectors
+(see filterVectorAgainst)
+This reduced the total time spent in that phase from 390ms to 230ms, and the worst case time spent in that phase for one function from 100ms to 30ms (all of the results in this Changelog are for JetStream2 on a M1 MBP).
+
+I fixed the second problem even more easily by adding a m_shouldVisit BitVector. I also moved the m_wasVisited boolean that was in State to a m_notBottom BitVector for simplicity and symmetry.
+That change further reduced the total/max time from 230ms/30ms to 140ms/16ms.
+
+* b3/air/AirFixObviousSpills.cpp:
+
 2021-11-18  Robin Morisset  
 
 [JSC/Air] Optimize enableMovesOnValueAndAdjacents in IRC


Modified: trunk/Source/_javascript_Core/b3/air/AirFixObviousSpills.cpp (286052 => 286053)

--- trunk/Source/_javascript_Core/b3/air/AirFixObviousSpills.cpp	2021-11-19 09:01:37 UTC (rev 286052)
+++ trunk/Source/_javascript_Core/b3/air/AirFixObviousSpills.cpp	2021-11-19 09:38:27 UTC (rev 286053)
@@ -48,6 +48,8 @@
 FixObviousSpills(Code& code)
 : m_code(code)
 , m_atHead(code.size())
+, m_notBottom(code.size())
+, m_shouldVisit(code.size())
 {
 }
 
@@ -63,17 +65,19 @@
 private:
 void computeAliases()
 {
-m_atHead[m_code[0]].wasVisited = true;
+m_notBottom.quickSet(0);
+m_shouldVisit.quickSet(0);
 
 bool changed = true;
 while (changed) {
 changed = false;
 
-for (BasicBlock* block : m_code) {
+for (unsigned blockIndex : m_shouldVisit) {
+m_shouldVisit.quickClear(blockIndex);
+BasicBlock* block = m_code[blockIndex];
+ASSERT(m_notBottom.quickGet(blockIndex));
 m_block = block;
 m_state = m_atHead[block];
-if (!m_state.wasVisited)
-continue;
 
 if (AirFixObviousSpillsInternal::verbose)
 dataLog("Executing block ", *m_block, ": ", m_state, "\n");
@@ -81,13 +85,23 @@
 for (m_instIndex = 0; m_instIndex < block->size(); ++m_instIndex)
 executeInst();
 
+// Before we call merge we must make sure that the two states are sorted.
+m_state.sort();
+
 for (BasicBlock* successor : block->successorBlocks()) {
+unsigned successorIndex = successor->index();
 State& toState = m_atHead[successor];
-if (toState.wasVisited)
-changed |= toState.merge(m_state);
-else {
+if (m_notBottom.quickGet(successorIndex)) {
+bool changedAtSuccessorHead = toState.merge(m_state);
+   

[webkit-changes] [286052] trunk

2021-11-19 Thread commit-queue
Title: [286052] trunk








Revision 286052
Author commit-qu...@webkit.org
Date 2021-11-19 01:01:37 -0800 (Fri, 19 Nov 2021)


Log Message
REGRESSION(r285859) [GTK][WPE] a number of accessibility/* tests crash on GTK and WPE
https://bugs.webkit.org/show_bug.cgi?id=233221

Patch by Arcady Goldmints-Orlov  on 2021-11-19
Reviewed by Carlos Garcia Campos.

Tools:

Add null checks in the ATK code to ensure AccessibilityUIElement::create()
is not passed a NULL pointer.

* WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
(WTR::AccessibilityController::focusedElement):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):

LayoutTests:

* platform/glib/TestExpectations:
* platform/glib/accessibility/add-children-pseudo-element-expected.txt:
* platform/glib/accessibility/aria-modal-text-descendants-expected.txt: Added.
* platform/glib/accessibility/table-cell-display-block-expected.txt: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/glib/TestExpectations
trunk/LayoutTests/platform/glib/accessibility/add-children-pseudo-element-expected.txt
trunk/Tools/ChangeLog
trunk/Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp
trunk/Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp


Added Paths

trunk/LayoutTests/platform/glib/accessibility/aria-modal-text-descendants-expected.txt
trunk/LayoutTests/platform/glib/accessibility/table-cell-display-block-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (286051 => 286052)

--- trunk/LayoutTests/ChangeLog	2021-11-19 08:54:33 UTC (rev 286051)
+++ trunk/LayoutTests/ChangeLog	2021-11-19 09:01:37 UTC (rev 286052)
@@ -1,3 +1,15 @@
+2021-11-19  Arcady Goldmints-Orlov  
+
+REGRESSION(r285859) [GTK][WPE] a number of accessibility/* tests crash on GTK and WPE
+https://bugs.webkit.org/show_bug.cgi?id=233221
+
+Reviewed by Carlos Garcia Campos.
+
+* platform/glib/TestExpectations:
+* platform/glib/accessibility/add-children-pseudo-element-expected.txt:
+* platform/glib/accessibility/aria-modal-text-descendants-expected.txt: Added.
+* platform/glib/accessibility/table-cell-display-block-expected.txt: Added.
+
 2021-11-18  Frédéric Wang  
 
 Nullptr crash in SimplifiedBackwardsTextIterator::range() via previousSentencePosition


Modified: trunk/LayoutTests/platform/glib/TestExpectations (286051 => 286052)

--- trunk/LayoutTests/platform/glib/TestExpectations	2021-11-19 08:54:33 UTC (rev 286051)
+++ trunk/LayoutTests/platform/glib/TestExpectations	2021-11-19 09:01:37 UTC (rev 286052)
@@ -2013,7 +2013,7 @@
 webkit.org/b/160248 fast/text/synthetic-bold-transformed.html [ ImageOnlyFailure ]
 webkit.org/b/160248 fast/text/trailing-word-detection.html [ Failure ]
 webkit.org/b/160249 fast/shrink-wrap/rect-shrink-wrap.html [ ImageOnlyFailure ]
-webkit.org/b/161583 accessibility/auto-fill-types.html [ Failure ]
+webkit.org/b/161583 accessibility/auto-fill-types.html [ Timeout ]
 webkit.org/b/161589 css3/masking/mask-repeat-space-padding.html [ ImageOnlyFailure ]
 webkit.org/b/162815 fast/text/variations/font-face-clamp.html [ ImageOnlyFailure ]
 webkit.org/b/162815 fast/text/variations/font-selection-properties.html [ ImageOnlyFailure ]


Modified: trunk/LayoutTests/platform/glib/accessibility/add-children-pseudo-element-expected.txt (286051 => 286052)

--- trunk/LayoutTests/platform/glib/accessibility/add-children-pseudo-element-expected.txt	2021-11-19 08:54:33 UTC (rev 286051)
+++ trunk/LayoutTests/platform/glib/accessibility/add-children-pseudo-element-expected.txt	2021-11-19 09:01:37 UTC (rev 286052)
@@ -1,4 +1,3 @@
-Language Email
 Make sure that we are updating the render block flow element's children correctly.
 
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -5,7 +4,7 @@
 
 
 PASS element.childrenCount is 2
-PASS element.childrenCount is 1
+PASS element.childrenCount === 1
 PASS successfullyParsed is true
 
 TEST COMPLETE


Added: trunk/LayoutTests/platform/glib/accessibility/aria-modal-text-descendants-expected.txt (0 => 286052)

--- trunk/LayoutTests/platform/glib/accessibility/aria-modal-text-descendants-expected.txt	(rev 0)
+++ trunk/LayoutTests/platform/glib/accessibility/aria-modal-text-descendants-expected.txt	2021-11-19 09:01:37 UTC (rev 286052)
@@ -0,0 +1,17 @@
+This tests text descendants of modal dialog are accessible.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS backgroundAccessible() is false
+FAIL text.isIgnored should be false. Threw exception TypeError: null is not an object (evaluating 'text.isIgnored')
+PASS successfullyParsed is true
+
+TEST COMPLETE
+Other page content with a dummy focusable element
+
+Display a dialog
+
+Just an example.
+
+text


Added: 

[webkit-changes] [286051] trunk/Source/bmalloc

2021-11-19 Thread ysuzuki
Title: [286051] trunk/Source/bmalloc








Revision 286051
Author ysuz...@apple.com
Date 2021-11-19 00:54:33 -0800 (Fri, 19 Nov 2021)


Log Message
[libpas] Unreviewed, build fix for relatively old clang on oss-fuzz
https://bugs.webkit.org/show_bug.cgi?id=233097

* libpas/src/libpas/pas_utils.h:
* libpas/src/libpas/pas_utils_prefix.h:
(__pas_depend_impl):
(__pas_depend):
(__pas_depend_cpu_only):

Modified Paths

trunk/Source/bmalloc/ChangeLog
trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h
trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h




Diff

Modified: trunk/Source/bmalloc/ChangeLog (286050 => 286051)

--- trunk/Source/bmalloc/ChangeLog	2021-11-19 08:51:53 UTC (rev 286050)
+++ trunk/Source/bmalloc/ChangeLog	2021-11-19 08:54:33 UTC (rev 286051)
@@ -1,3 +1,14 @@
+2021-11-19  Yusuke Suzuki  
+
+[libpas] Unreviewed, build fix for relatively old clang on oss-fuzz
+https://bugs.webkit.org/show_bug.cgi?id=233097
+
+* libpas/src/libpas/pas_utils.h:
+* libpas/src/libpas/pas_utils_prefix.h:
+(__pas_depend_impl):
+(__pas_depend):
+(__pas_depend_cpu_only):
+
 2021-11-18  Basuke Suzuki  
 
 [bmalloc] freeableMemory and footprint of Heap are completely broken


Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h (286050 => 286051)

--- trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h	2021-11-19 08:51:53 UTC (rev 286050)
+++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h	2021-11-19 08:54:33 UTC (rev 286051)
@@ -83,15 +83,11 @@
 
 #define PAS_ARM __PAS_ARM
 
-#if PAS_COMPILER(CLANG)
-#define PAS_TYPEOF(a) typeof (a)
-#else
 #ifdef __cplusplus
 #define PAS_TYPEOF(a) decltype (a)
 #else
 #define PAS_TYPEOF(a) typeof (a)
 #endif
-#endif
 
 /* NOTE: panic format string must have \n at the end. */
 PAS_API PAS_NO_RETURN void pas_panic(const char* format, ...) PAS_FORMAT_PRINTF(1, 2);


Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h (286050 => 286051)

--- trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h	2021-11-19 08:51:53 UTC (rev 286050)
+++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h	2021-11-19 08:54:33 UTC (rev 286051)
@@ -112,7 +112,7 @@
 #endif
 }
 
-static __PAS_ALWAYS_INLINE unsigned __pas_depend_impl(unsigned long input, _Bool cpu_only)
+static __PAS_ALWAYS_INLINE unsigned __pas_depend_impl(unsigned long input, int cpu_only)
 {
 unsigned output;
 #if __PAS_ARM64
@@ -148,13 +148,13 @@
 
 static __PAS_ALWAYS_INLINE unsigned __pas_depend(unsigned long input)
 {
-_Bool cpu_only = 0;
+int cpu_only = 0;
 return __pas_depend_impl(input, cpu_only);
 }
 
 static __PAS_ALWAYS_INLINE unsigned __pas_depend_cpu_only(unsigned long input)
 {
-_Bool cpu_only = 1;
+int cpu_only = 1;
 return __pas_depend_impl(input, cpu_only);
 }
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [286050] trunk

2021-11-19 Thread carlosgc
Title: [286050] trunk








Revision 286050
Author carlo...@webkit.org
Date 2021-11-19 00:51:53 -0800 (Fri, 19 Nov 2021)


Log Message
[GTK][a11y] Add implementation of hyperlink interface when building with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=232707

Reviewed by Adrian Perez de Castro.

Source/WebCore:

Add hyperlink implementation and make links be handled as replaced objects too, to ensure all hyperlinks are
handled the same way. That's consistent with chromium.

* SourcesGTK.txt:
* accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::interfacesForObject):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
* accessibility/atspi/AccessibilityObjectAtspi.h:
* accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp: Added.
(WebCore::AccessibilityObjectAtspi::url const):
(WebCore::AccessibilityObjectAtspi::offsetInParent const):
* accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::characterOffset const):
* editing/TextIterator.cpp:
(WebCore::isRendererReplacedElement):
(WebCore::TextIterator::handleReplacedElement):

Tools:

Add unit tests to check hyperlink interface and implement AccessibilityUIElement::url() in WTR.

* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testTextReplacedObjects):
(testHyperlinkBasic):
(beforeAll):
* WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::url):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/SourcesGTK.txt
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp
trunk/Source/WebCore/editing/TextIterator.cpp
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp
trunk/Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp


Added Paths

trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286049 => 286050)

--- trunk/Source/WebCore/ChangeLog	2021-11-19 07:30:40 UTC (rev 286049)
+++ trunk/Source/WebCore/ChangeLog	2021-11-19 08:51:53 UTC (rev 286050)
@@ -1,3 +1,28 @@
+2021-11-19  Carlos Garcia Campos  
+
+[GTK][a11y] Add implementation of hyperlink interface when building with ATSPI
+https://bugs.webkit.org/show_bug.cgi?id=232707
+
+Reviewed by Adrian Perez de Castro.
+
+Add hyperlink implementation and make links be handled as replaced objects too, to ensure all hyperlinks are
+handled the same way. That's consistent with chromium.
+
+* SourcesGTK.txt:
+* accessibility/atspi/AccessibilityObjectAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::interfacesForObject):
+(WebCore::AccessibilityObjectAtspi::path):
+(WebCore::AccessibilityObjectAtspi::buildInterfaces const):
+* accessibility/atspi/AccessibilityObjectAtspi.h:
+* accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp: Added.
+(WebCore::AccessibilityObjectAtspi::url const):
+(WebCore::AccessibilityObjectAtspi::offsetInParent const):
+* accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
+(WebCore::AccessibilityObjectAtspi::characterOffset const):
+* editing/TextIterator.cpp:
+(WebCore::isRendererReplacedElement):
+(WebCore::TextIterator::handleReplacedElement):
+
 2021-11-18  Frédéric Wang  
 
 Nullptr crash in SimplifiedBackwardsTextIterator::range() via previousSentencePosition


Modified: trunk/Source/WebCore/SourcesGTK.txt (286049 => 286050)

--- trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 07:30:40 UTC (rev 286049)
+++ trunk/Source/WebCore/SourcesGTK.txt	2021-11-19 08:51:53 UTC (rev 286050)
@@ -42,6 +42,7 @@
 accessibility/atspi/AccessibilityAtspi.cpp
 accessibility/atspi/AccessibilityObjectAtspi.cpp
 accessibility/atspi/AccessibilityObjectComponentAtspi.cpp
+accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp
 accessibility/atspi/AccessibilityObjectTextAtspi.cpp
 accessibility/atspi/AccessibilityObjectValueAtspi.cpp
 accessibility/atspi/AccessibilityRootAtspi.cpp


Modified: trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp (286049 => 286050)

--- trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp	2021-11-19 07:30:40 UTC (rev 286049)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp	2021-11-19 08:51:53 UTC (rev 286050)
@@ -30,6 +30,7 @@
 #include "RenderAncestorIterator.h"
 #include "RenderBlock.h"
 #include "RenderObject.h"
+#include "TextIterator.h"
 #include 
 #include 
 #include 
@@ -86,6 +87,9 @@
 if (coreObject.supportsRangeValue())
 interfaces.add(Interface::Value);
 
+if (coreObject.isLink() || (isRendererReplacedElement(renderer)))
+