Timeline
Jan 8, 2022:
- 11:43 PM Changeset in webkit [287817] by
-
- 12 edits2 adds in trunk
If the drop-shadow filter has no color, it should use the value of the color property
https://bugs.webkit.org/show_bug.cgi?id=235012
Reviewed by Alan Bujtas.
LayoutTests/imported/w3c:
- web-platform-tests/css/filter-effects/animation/filter-interpolation-004-expected.txt:
- web-platform-tests/css/filter-effects/parsing/filter-computed-expected.txt:
Source/WebCore:
https://drafts.fxtf.org/filter-effects-1/#funcdef-filter-drop-shadow states that if
drop-shadow() does not specify a color, the value of the color property should be used.
Test: css3/filters/drop-shadow-no-color.html
- style/StyleBuilderState.cpp:
(WebCore::Style::BuilderState::createFilterOperations):
LayoutTests:
Fix tests to serialize with rgb(0, 0, 0) instead of the transparent color.
- css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt:
- css3/filters/backdrop/backdropfilter-property-computed-style.html:
- css3/filters/drop-shadow-no-color-expected.html: Added.
- css3/filters/drop-shadow-no-color.html: Added.
- css3/filters/filter-property-computed-style-expected.txt:
- css3/filters/filter-property-computed-style.html:
- css3/filters/unprefixed-expected.txt:
- css3/filters/unprefixed.html:
- 8:16 PM Changeset in webkit [287816] by
-
- 2 edits in trunk/LayoutTests
[GLIB] Update test expectations for known failures.
https://bugs.webkit.org/show_bug.cgi?id=234972
Unreviewed test gardening.
Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2022-01-08
- platform/glib/TestExpectations:
- 3:40 PM Changeset in webkit [287815] by
-
- 8 edits in trunk
Fix some CSS filter interpolation issues
https://bugs.webkit.org/show_bug.cgi?id=235007
Reviewed by Antoine Quint.
LayoutTests/imported/w3c:
More passing now.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-002-expected.txt:
- web-platform-tests/css/filter-effects/animation/filter-interpolation-003-expected.txt:
- web-platform-tests/css/filter-effects/animation/filter-interpolation-004-expected.txt:
Source/WebCore:
Ensure that filter values are clamped after animation according to
https://drafts.fxtf.org/filter-effects-1/.
Tested by WPT.
- platform/graphics/filters/FilterOperation.cpp:
(WebCore::BasicColorMatrixFilterOperation::blend):
(WebCore::BasicComponentTransferFilterOperation::blend):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::blend):
LayoutTests:
imported/w3c/web-platform-tests/css/filter-effects/animation/filter-interpolation-004.html no longer asserts.
- 2:12 PM Changeset in webkit [287814] by
-
- 4 edits1 add in trunk
Null pointer crash when calling into
-[WebView close]in-webView:didCommitLoadForFrame:
https://bugs.webkit.org/show_bug.cgi?id=234994
rdar://86845512
Reviewed by Chris Dumez and Geoff Garen.
Source/WebCore:
Add a null check in
FrameLoader::dispatchDidCommitLoad()before calling into any methods on the frame's Page.
Since we called into the client layer todispatchDidCommitLoad()immediately prior to this, a legacy WebKit
client may have already caused the page to be destroyed (e.g. by closing the web view). Since Frame's pointer
to Page is a WeakPtr, this triggers null derefs when attempting to call eitherdidCommitLoad()or
remoteInspectorInformationDidChange().
Test: WebKitLegacy.CloseWhileCommittingLoad
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::dispatchDidCommitLoad):
Tools:
Add a new API test to exercise the fix.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/CloseWhileCommittingLoad.mm: Added.
(-[CloseWhileCommittingLoadDelegate webView:didCommitLoadForFrame:]):
(TestWebKitAPI::TEST):
- 10:26 AM Changeset in webkit [287813] by
-
- 6 edits608 adds in trunk/LayoutTests
Import css/filter-effects web platform tests
https://bugs.webkit.org/show_bug.cgi?id=235001
Reviewed by Alan Bujtas.
LayoutTests/imported/w3c:
Imported from WPT ba3997e9f9a2f10a00688061f785d4c9b70cc5d5.
- resources/import-expectations.json:
- resources/resource-files.json:
- web-platform-tests/css/filter-effects/META.yml: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-001-expected.txt: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-001.html: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-002-expected.txt: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-002.html: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-003-expected.txt: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-003.html: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-004-expected.txt: Added.
- web-platform-tests/css/filter-effects/animation/backdrop-filter-interpolation-004.html: Added.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-001-expected.txt: Added.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-001.html: Added.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-002-expected.txt: Added.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-002.html: Added.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-003.html: Added.
- web-platform-tests/css/filter-effects/animation/filter-interpolation-004.html: Added.
- web-platform-tests/css/filter-effects/animation/w3c-import.log: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-background-color-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-background-color-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-background-color.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-2-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-2-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-2.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-opacity.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-basic.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clip-rect-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clip-rect-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clip-rect.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clip-rounded-clip-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clip-rounded-clip-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clip-rounded-clip.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clipped-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clipped-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-clipped.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-containing-block-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-containing-block-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-containing-block.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-behavior-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-behavior-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-behavior.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-clipping-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-clipping.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-pixels-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-pixels-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-edge-pixels.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-fixed-clip-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-fixed-clip-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-fixed-clip.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation-fixed-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation-fixed.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation-isolate-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation-isolate.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-isolation.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-non-isolation-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-opacity-rounded-clip-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-opacity-rounded-clip-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-opacity-rounded-clip.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-paint-order-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-paint-order-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-paint-order.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-plus-filter-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-plus-filter-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-plus-filter.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-plus-opacity-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-plus-opacity-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-plus-opacity.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-reference-filter-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-reference-filter.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-root-element-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-root-element-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-root-element.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-svg-foreignObject-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-svg-foreignObject.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-update-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-update-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-update.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-zero-size-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-zero-size-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filter-zero-size.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-brightness-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-brightness-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-brightness.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-contrast-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-contrast-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-contrast.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-grayscale-001-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-grayscale-001.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-grayscale-002-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-grayscale-002.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-grayscale-003-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-grayscale-003.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-hue-rotate-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-hue-rotate-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-hue-rotate.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-invert-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-invert-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-invert.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-opacity-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-opacity-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-opacity.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-saturate-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-saturate-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-saturate.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-sepia-expected.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-sepia-ref.html: Added.
- web-platform-tests/css/filter-effects/backdrop-filters-sepia.html: Added.
- web-platform-tests/css/filter-effects/background-image-blur-repaint-expected.html: Added.
- web-platform-tests/css/filter-effects/background-image-blur-repaint.html: Added.
- web-platform-tests/css/filter-effects/blur-clip-stacking-context-001-expected.html: Added.
- web-platform-tests/css/filter-effects/blur-clip-stacking-context-001.html: Added.
- web-platform-tests/css/filter-effects/blur-clip-stacking-context-002-expected-mismatch.html: Added.
- web-platform-tests/css/filter-effects/blur-clip-stacking-context-002.html: Added.
- web-platform-tests/css/filter-effects/blur-clip-stacking-context-ref.html: Added.
- web-platform-tests/css/filter-effects/clip-under-filter-001-expected.html: Added.
- web-platform-tests/css/filter-effects/clip-under-filter-001.html: Added.
- web-platform-tests/css/filter-effects/clip-under-filter-002-expected.html: Added.
- web-platform-tests/css/filter-effects/clip-under-filter-002.html: Added.
- web-platform-tests/css/filter-effects/clip-under-filter-003-expected.html: Added.
- web-platform-tests/css/filter-effects/clip-under-filter-003.html: Added.
- web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-001-expected.txt: Added.
- web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-001.html: Added.
- web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-002-expected.txt: Added.
- web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-002.html: Added.
- web-platform-tests/css/filter-effects/crashtests/w3c-import.log: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-blur-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-blur-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-blur.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-brightness-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-brightness-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-brightness.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-combined-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-combined-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-combined.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-contrast-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-contrast-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-contrast.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-drop-shadow-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-drop-shadow-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-drop-shadow.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-grayscale-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-grayscale-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-grayscale.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-hue-rotate-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-hue-rotate-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-hue-rotate.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-invert-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-invert-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-invert.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-opacity-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-opacity-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-opacity.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-saturate-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-saturate-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-saturate.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-sepia-expected.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-sepia-ref.html: Added.
- web-platform-tests/css/filter-effects/css-backdrop-filters-animation-sepia.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-blur-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-blur-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-blur.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-brightness-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-brightness-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-brightness.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-combined-001-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-combined-001-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-combined-001.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-contrast-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-contrast-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-contrast.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-drop-shadow-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-drop-shadow-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-drop-shadow.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-grayscale-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-grayscale-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-grayscale.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-hue-rotate-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-hue-rotate-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-hue-rotate.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-invert-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-invert-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-invert.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-opacity-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-opacity-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-opacity.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-saturate-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-saturate-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-saturate.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-sepia-expected.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-sepia-ref.html: Added.
- web-platform-tests/css/filter-effects/css-filters-animation-sepia.html: Added.
- web-platform-tests/css/filter-effects/drop-shadow-clipped-001-expected.html: Added.
- web-platform-tests/css/filter-effects/drop-shadow-clipped-001.html: Added.
- web-platform-tests/css/filter-effects/dynamic-filter-changes-001-expected.html: Added.
- web-platform-tests/css/filter-effects/dynamic-filter-changes-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-add-hw-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-add-hw-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-after-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-after-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-delete-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-delete.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-displacement-negative-scale-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-displacement-negative-scale-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-feimage-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-feimage-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-feimage-002-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-feimage-002.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-feimage-003-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-feimage-003.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-lighting-no-light.tentative-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-lighting-no-light.tentative.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-local-url-with-base-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-local-url-with-base-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-merge-no-inputs.tentative-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-merge-no-inputs.tentative.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-obb-dimensions-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-obb-dimensions.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-on-span-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-on-span.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-on-transparent-element-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-on-transparent-element.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-rename-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-rename-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-rename-002-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-rename-002.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-reset-style-delete-crash-expected.txt: Added.
- web-platform-tests/css/filter-effects/effect-reference-reset-style-delete-crash.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-source-alpha-001-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-source-alpha-001.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-source-alpha-002-expected.html: Added.
- web-platform-tests/css/filter-effects/effect-reference-source-alpha-002.html: Added.
- web-platform-tests/css/filter-effects/empty-element-with-filter-expected.html: Added.
- web-platform-tests/css/filter-effects/empty-element-with-filter.html: Added.
- web-platform-tests/css/filter-effects/fecolormatrix-type-expected.html: Added.
- web-platform-tests/css/filter-effects/fecolormatrix-type-ref.html: Added.
- web-platform-tests/css/filter-effects/fecolormatrix-type.html: Added.
- web-platform-tests/css/filter-effects/fecomposite-non-zero-inoffset-001-expected.html: Added.
- web-platform-tests/css/filter-effects/fecomposite-non-zero-inoffset-001.html: Added.
- web-platform-tests/css/filter-effects/feflood-with-filter-reference-expected.html: Added.
- web-platform-tests/css/filter-effects/feflood-with-filter-reference.html: Added.
- web-platform-tests/css/filter-effects/feimage-circular-reference-foreign-object-crash-expected.txt: Added.
- web-platform-tests/css/filter-effects/feimage-circular-reference-foreign-object-crash.html: Added.
- web-platform-tests/css/filter-effects/feimage-reference-foreign-object-crash-expected.txt: Added.
- web-platform-tests/css/filter-effects/feimage-reference-foreign-object-crash.html: Added.
- web-platform-tests/css/filter-effects/feimage-target-child-reference-crash-expected.txt: Added.
- web-platform-tests/css/filter-effects/feimage-target-child-reference-crash.html: Added.
- web-platform-tests/css/filter-effects/felighting-no-light-source-style-update-crash-expected.txt: Added.
- web-platform-tests/css/filter-effects/felighting-no-light-source-style-update-crash.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-001.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-002-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-002.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-003-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-003-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-abspos-inline-003.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-dynamic-1-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-dynamic-1a-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-dynamic-1a.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-dynamic-1b-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-cb-dynamic-1b.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-001.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-002-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-002-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-002.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-003-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-003-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-contrast-003.html: Added.
- web-platform-tests/css/filter-effects/filter-effect-remove-unattached-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-effect-remove-unattached.html: Added.
- web-platform-tests/css/filter-effects/filter-external-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-external-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-external-001-test.html: Added.
- web-platform-tests/css/filter-effects/filter-external-002-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-external-002-test.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-001.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-002-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-002.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-003-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-003.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-004-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-004.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-005-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-005.html: Added.
- web-platform-tests/css/filter-effects/filter-grayscale-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-hue_rotate-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-hue_rotate-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-hue_rotate-001-test.html: Added.
- web-platform-tests/css/filter-effects/filter-invert-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-invert-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-invert-001-test.html: Added.
- web-platform-tests/css/filter-effects/filter-invert-002-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-invert-002-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-invert-002-test.html: Added.
- web-platform-tests/css/filter-effects/filter-region-negative-positioned-child-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-region-negative-positioned-child-001.html: Added.
- web-platform-tests/css/filter-effects/filter-region-transformed-child-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-region-transformed-child-001.html: Added.
- web-platform-tests/css/filter-effects/filter-region-transformed-composited-child-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-region-transformed-composited-child-001.html: Added.
- web-platform-tests/css/filter-effects/filter-saturate-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-saturate-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-saturate-001-test.html: Added.
- web-platform-tests/css/filter-effects/filter-scale-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-scale-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-scale-001.html: Added.
- web-platform-tests/css/filter-effects/filter-scaling-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-scaling-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-scaling-001.html: Added.
- web-platform-tests/css/filter-effects/filter-subregion-01-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-subregion-01-ref.html: Added.
- web-platform-tests/css/filter-effects/filter-subregion-01.html: Added.
- web-platform-tests/css/filter-effects/filter-turbulence-invalid-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-turbulence-invalid-001.html: Added.
- web-platform-tests/css/filter-effects/filter-url-to-non-existent-filter-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filter-url-to-non-existent-filter-001.html: Added.
- web-platform-tests/css/filter-effects/filtered-block-is-container-expected.html: Added.
- web-platform-tests/css/filter-effects/filtered-block-is-container-ref.html: Added.
- web-platform-tests/css/filter-effects/filtered-block-is-container.html: Added.
- web-platform-tests/css/filter-effects/filtered-html-is-not-container-expected.html: Added.
- web-platform-tests/css/filter-effects/filtered-html-is-not-container-ref.html: Added.
- web-platform-tests/css/filter-effects/filtered-html-is-not-container.html: Added.
- web-platform-tests/css/filter-effects/filtered-inline-applies-to-float-expected.html: Added.
- web-platform-tests/css/filter-effects/filtered-inline-applies-to-float-ref.html: Added.
- web-platform-tests/css/filter-effects/filtered-inline-applies-to-float.html: Added.
- web-platform-tests/css/filter-effects/filtered-inline-is-container-expected.html: Added.
- web-platform-tests/css/filter-effects/filtered-inline-is-container-ref.html: Added.
- web-platform-tests/css/filter-effects/filtered-inline-is-container.html: Added.
- web-platform-tests/css/filter-effects/filters-drop-shadow-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-drop-shadow-001.html: Added.
- web-platform-tests/css/filter-effects/filters-drop-shadow-002-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-drop-shadow-002.html: Added.
- web-platform-tests/css/filter-effects/filters-grayscale-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filters-grayscale-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-grayscale-001-test.html: Added.
- web-platform-tests/css/filter-effects/filters-opacity-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-opacity-001-test.html: Added.
- web-platform-tests/css/filter-effects/filters-opacity-002-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-opacity-002-test.html: Added.
- web-platform-tests/css/filter-effects/filters-sepia-001-ref.html: Added.
- web-platform-tests/css/filter-effects/filters-sepia-001-test-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-sepia-001-test.html: Added.
- web-platform-tests/css/filter-effects/filters-test-brightness-001-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-test-brightness-001.html: Added.
- web-platform-tests/css/filter-effects/filters-test-brightness-002-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-test-brightness-002.html: Added.
- web-platform-tests/css/filter-effects/filters-test-brightness-003-expected.html: Added.
- web-platform-tests/css/filter-effects/filters-test-brightness-003.html: Added.
- web-platform-tests/css/filter-effects/idlharness.any-expected.txt: Added.
- web-platform-tests/css/filter-effects/idlharness.any.html: Added.
- web-platform-tests/css/filter-effects/idlharness.any.js: Added.
- web-platform-tests/css/filter-effects/idlharness.any.serviceworker-expected.txt: Added.
- web-platform-tests/css/filter-effects/idlharness.any.serviceworker.html: Added.
- web-platform-tests/css/filter-effects/idlharness.any.worker-expected.txt: Added.
- web-platform-tests/css/filter-effects/idlharness.any.worker.html: Added.
- web-platform-tests/css/filter-effects/inheritance-expected.txt: Added.
- web-platform-tests/css/filter-effects/inheritance.html: Added.
- web-platform-tests/css/filter-effects/morphology-mirrored-expected.html: Added.
- web-platform-tests/css/filter-effects/morphology-mirrored.html: Added.
- web-platform-tests/css/filter-effects/parsing/backdrop-filter-computed-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/backdrop-filter-computed.html: Added.
- web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-invalid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-invalid.html: Added.
- web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-valid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/backdrop-filter-parsing-valid.html: Added.
- web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-computed-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-computed.html: Added.
- web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-invalid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-invalid.html: Added.
- web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-valid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/color-interpolation-filters-parsing-valid.html: Added.
- web-platform-tests/css/filter-effects/parsing/filter-computed-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/filter-computed.html: Added.
- web-platform-tests/css/filter-effects/parsing/filter-parsing-invalid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/filter-parsing-invalid.html: Added.
- web-platform-tests/css/filter-effects/parsing/filter-parsing-valid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/filter-parsing-valid.html: Added.
- web-platform-tests/css/filter-effects/parsing/flood-color-computed-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/flood-color-computed.html: Added.
- web-platform-tests/css/filter-effects/parsing/flood-color-invalid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/flood-color-invalid.html: Added.
- web-platform-tests/css/filter-effects/parsing/flood-color-valid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/flood-color-valid.html: Added.
- web-platform-tests/css/filter-effects/parsing/flood-opacity-computed-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/flood-opacity-computed.svg: Added.
- web-platform-tests/css/filter-effects/parsing/flood-opacity-invalid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/flood-opacity-invalid.svg: Added.
- web-platform-tests/css/filter-effects/parsing/flood-opacity-valid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/flood-opacity-valid.svg: Added.
- web-platform-tests/css/filter-effects/parsing/lighting-color-computed-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/lighting-color-computed.html: Added.
- web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-invalid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-invalid.html: Added.
- web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-valid-expected.txt: Added.
- web-platform-tests/css/filter-effects/parsing/lighting-color-parsing-valid.html: Added.
- web-platform-tests/css/filter-effects/parsing/w3c-import.log: Added.
- web-platform-tests/css/filter-effects/reference-filter-update-on-attribute-change-001-expected.html: Added.
- web-platform-tests/css/filter-effects/reference-filter-update-on-attribute-change-001.html: Added.
- web-platform-tests/css/filter-effects/remove-filter-repaint-expected.html: Added.
- web-platform-tests/css/filter-effects/remove-filter-repaint.html: Added.
- web-platform-tests/css/filter-effects/resources/reference.png: Added.
- web-platform-tests/css/filter-effects/resources/w3c-import.log: Added.
- web-platform-tests/css/filter-effects/root-element-with-opacity-filter-001-expected.html: Added.
- web-platform-tests/css/filter-effects/root-element-with-opacity-filter-001.html: Added.
- web-platform-tests/css/filter-effects/support/1x1-green.png: Added.
- web-platform-tests/css/filter-effects/support/1x1-lime.png: Added.
- web-platform-tests/css/filter-effects/support/1x1-maroon.png: Added.
- web-platform-tests/css/filter-effects/support/1x1-navy.png: Added.
- web-platform-tests/css/filter-effects/support/1x1-red.png: Added.
- web-platform-tests/css/filter-effects/support/1x1-white.png: Added.
- web-platform-tests/css/filter-effects/support/60x60-gg-rr.png: Added.
- web-platform-tests/css/filter-effects/support/60x60-green.png: Added.
- web-platform-tests/css/filter-effects/support/README: Added.
- web-platform-tests/css/filter-effects/support/a-green.css: Added.
(.a):
- web-platform-tests/css/filter-effects/support/b-green.css: Added.
(.b):
- web-platform-tests/css/filter-effects/support/c-red.css: Added.
(.c):
- web-platform-tests/css/filter-effects/support/cat.png: Added.
- web-platform-tests/css/filter-effects/support/color-palette.png: Added.
- web-platform-tests/css/filter-effects/support/div-with-filter.html: Added.
- web-platform-tests/css/filter-effects/support/filter-external-002-filter.svg: Added.
- web-platform-tests/css/filter-effects/support/filter-from-external-url.css: Added.
(.hue-rotate):
- web-platform-tests/css/filter-effects/support/filtersubregion00.png: Added.
- web-platform-tests/css/filter-effects/support/hueRotate.svg: Added.
- web-platform-tests/css/filter-effects/support/import-green.css: Added.
(.import):
- web-platform-tests/css/filter-effects/support/import-red.css: Added.
(.import):
- web-platform-tests/css/filter-effects/support/pattern-grg-rgr-grg.png: Added.
- web-platform-tests/css/filter-effects/support/pattern-grg-rrg-rgg.png: Added.
- web-platform-tests/css/filter-effects/support/pattern-rgr-grg-rgr.png: Added.
- web-platform-tests/css/filter-effects/support/pattern-tr.png: Added.
- web-platform-tests/css/filter-effects/support/ruler-h-50%.png: Added.
- web-platform-tests/css/filter-effects/support/ruler-h-50px.png: Added.
- web-platform-tests/css/filter-effects/support/ruler-v-100px.png: Added.
- web-platform-tests/css/filter-effects/support/ruler-v-50px.png: Added.
- web-platform-tests/css/filter-effects/support/square-purple.png: Added.
- web-platform-tests/css/filter-effects/support/square-teal.png: Added.
- web-platform-tests/css/filter-effects/support/square-white.png: Added.
- web-platform-tests/css/filter-effects/support/support/README: Added.
- web-platform-tests/css/filter-effects/support/support/swatch-green.png: Added.
- web-platform-tests/css/filter-effects/support/support/swatch-red.png: Added.
- web-platform-tests/css/filter-effects/support/support/w3c-import.log: Added.
- web-platform-tests/css/filter-effects/support/swatch-blue.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-green.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-lime.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-orange.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-red.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-teal.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-white.png: Added.
- web-platform-tests/css/filter-effects/support/swatch-yellow.png: Added.
- web-platform-tests/css/filter-effects/support/test-bl.png: Added.
- web-platform-tests/css/filter-effects/support/test-br.png: Added.
- web-platform-tests/css/filter-effects/support/test-inner-half-size.png: Added.
- web-platform-tests/css/filter-effects/support/test-outer.png: Added.
- web-platform-tests/css/filter-effects/support/test-tl.png: Added.
- web-platform-tests/css/filter-effects/support/test-tr.png: Added.
- web-platform-tests/css/filter-effects/support/w3c-import.log: Added.
- web-platform-tests/css/filter-effects/svg-empty-container-with-filter-content-added-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-empty-container-with-filter-content-added.html: Added.
- web-platform-tests/css/filter-effects/svg-feflood-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-feflood-001.html: Added.
- web-platform-tests/css/filter-effects/svg-feimage-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-feimage-001.html: Added.
- web-platform-tests/css/filter-effects/svg-feoffset-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-feoffset-001.html: Added.
- web-platform-tests/css/filter-effects/svg-filter-vs-clip-path-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-filter-vs-clip-path.html: Added.
- web-platform-tests/css/filter-effects/svg-filter-vs-mask-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-filter-vs-mask.html: Added.
- web-platform-tests/css/filter-effects/svg-multiple-filter-functions-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-multiple-filter-functions.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-color-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-color.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-offset-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-drop-shadow-offset.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-function-to-url-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-function-to-url.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-group-position-changed-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-group-position-changed.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-group-size-changed-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-group-size-changed.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-group-transform-changed-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-group-transform-changed.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-object-position-changed-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-object-position-changed.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-object-size-changed-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-object-size-changed.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-object-transform-changed-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-object-transform-changed.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-001.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-002-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-single-to-multiple-002.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-url-to-function-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-mutation-url-to-function.html: Added.
- web-platform-tests/css/filter-effects/svg-relative-urls-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-relative-urls-001.html: Added.
- web-platform-tests/css/filter-effects/svg-relative-urls-002-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-relative-urls-002.html: Added.
- web-platform-tests/css/filter-effects/svg-shorthand-drop-shadow-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-shorthand-drop-shadow-001.html: Added.
- web-platform-tests/css/filter-effects/svg-shorthand-hue-rotate-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-shorthand-hue-rotate-001.html: Added.
- web-platform-tests/css/filter-effects/svg-sourcegraphic-currentcolor-dynamic-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-sourcegraphic-currentcolor-dynamic-001.html: Added.
- web-platform-tests/css/filter-effects/svg-sourcegraphic-invalidation-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-sourcegraphic-invalidation-001.html: Added.
- web-platform-tests/css/filter-effects/svg-unknown-input-001-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-unknown-input-001.html: Added.
- web-platform-tests/css/filter-effects/svg-unknown-input-002-expected.html: Added.
- web-platform-tests/css/filter-effects/svg-unknown-input-002.html: Added.
- web-platform-tests/css/filter-effects/svg-unknown-input-ref.html: Added.
- web-platform-tests/css/filter-effects/svg-unused-filter-on-clippath-mutated-crash-expected.txt: Added.
- web-platform-tests/css/filter-effects/svg-unused-filter-on-clippath-mutated-crash.html: Added.
- web-platform-tests/css/filter-effects/svgfeblendelement-mode-001-expected.txt: Added.
- web-platform-tests/css/filter-effects/svgfeblendelement-mode-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-feblend-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feblend-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-feblend-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feblend-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomponenttransfer-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomposite-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomposite-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomposite-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fecomposite-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-feconvolvematrix-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feconvolvematrix-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-feconvolvematrix-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feconvolvematrix-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-003-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-003.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-dynamic-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fediffuselighting-dynamic.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedisplacementmap-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedisplacementmap-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedisplacementmap-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedisplacementmap-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedropshadow-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedropshadow-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedropshadow-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedropshadow-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedropshadow-003-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fedropshadow-003.html: Added.
- web-platform-tests/css/filter-effects/tainting-feflood-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feflood-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-feflood-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feflood-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-feflood-dynamic-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feflood-dynamic.html: Added.
- web-platform-tests/css/filter-effects/tainting-fegaussianblur-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fegaussianblur-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fegaussianblur-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fegaussianblur-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-femorphology-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-femorphology-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-femorphology-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-femorphology-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-feoffset-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feoffset-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-feoffset-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-feoffset-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fespecularlighting-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fespecularlighting-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fespecularlighting-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fespecularlighting-002.html: Added.
- web-platform-tests/css/filter-effects/tainting-fespecularlighting-003-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fespecularlighting-003.html: Added.
- web-platform-tests/css/filter-effects/tainting-fetile-001-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fetile-001.html: Added.
- web-platform-tests/css/filter-effects/tainting-fetile-002-expected.html: Added.
- web-platform-tests/css/filter-effects/tainting-fetile-002.html: Added.
- web-platform-tests/css/filter-effects/w3c-import.log: Added.
LayoutTests:
Imported from WPT ba3997e9f9a2f10a00688061f785d4c9b70cc5d5.
- TestExpectations:
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-001-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/crashtests/multiple-references-id-crash-002-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/effect-reference-reset-style-delete-crash-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/feimage-circular-reference-foreign-object-crash-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/feimage-reference-foreign-object-crash-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/feimage-target-child-reference-crash-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/felighting-no-light-source-style-update-crash-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/idlharness.any.serviceworker-expected.txt: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/css/filter-effects/svg-unused-filter-on-clippath-mutated-crash-expected.txt: Added.
- platform/mac/TestExpectations:
- 10:21 AM Changeset in webkit [287812] by
-
- 4 edits7 adds in trunk
null ptr deref in WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange
https://bugs.webkit.org/show_bug.cgi?id=234862
Patch by Gabriel Nava Marino <gnavamarino@apple.com> on 2022-01-08
Reviewed by Darin Adler.
Source/WebCore:
ModifySelectionListLevelCommand::appendSiblingNodeRange loops through nodes assuming
existence of siblings, which is not guaranteed, and can result in nullptr deref. Instead,
check for node existence as part of loop condition, and change raw pointer usage to RefPtr.
This addresses the crash but results in ASSERT(isEndOfParagraph(endOfParagraphToMove))
failing in CompositeEditCommand::moveParagraph. We modify WebCore::findEndOfParagraph
to check for HTMLBRElement nodes to avoid unexpectedly changing the AnchorType.
Test: http/tests/lists/list-new-parent-no-sibling-append.html
- editing/ModifySelectionListLevel.cpp:
(WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore):
(WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeAfter):
(WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange):
- editing/VisibleUnits.cpp:
(WebCore::findEndOfParagraph):
LayoutTests:
- http/tests/lists/list-new-parent-no-sibling-append-expected.txt: Added.
- http/tests/lists/list-new-parent-no-sibling-append.html: Added.
- platform/gtk/http/tests/lists/list-new-parent-no-sibling-append-expected.txt: Added.
- platform/win/http/tests/lists/list-new-parent-no-sibling-append-expected.txt: Added.
- 8:46 AM Changeset in webkit [287811] by
-
- 2 edits in trunk/Source/WebCore
AX: Improve WeakHashSet hygienics in AXObjectCache
https://bugs.webkit.org/show_bug.cgi?id=234961
Reviewed by Andres Gonzalez.
AXObjectCache owns four WeakHashSets. WeakHashSets are not notified
when the objects they hold are deleted[1], so we should be cleaning
them up in AXObjectCache::remove(Node&).
This patch also replaces range-based for loop iteration over these
WeakHashSets with WeakHashSet::forEach, which inherently checks that
each item is valid (non-null and contained in the hashset) before
using the item.
[1]: https://github.com/WebKit/WebKit/blob/main/Introduction.md#weakhashset
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::remove):
Delete the removed node from AXObjectCache's owned WeakHashSets.
(WebCore::filterWeakHashSetForRemoval): Added.
(WebCore::AXObjectCache::prepareForDocumentDestruction):
Use filterWeakHashSetForRemoval to remove soon-to-be-deleted nodes
from AXObjectCache's owned WeakHashSets.
(WebCore::AXObjectCache::performDeferredCacheUpdate):
Use WeakHashSet::forEach instead of range-based for loops.
- 8:40 AM Changeset in webkit [287810] by
-
- 15 edits4 adds in trunk
AX: AccessibilityObject::setFocused(true) should make the webpage focused, and make web content the first responder
https://bugs.webkit.org/show_bug.cgi?id=234885
Reviewed by Darin Adler.
Source/WebCore:
With this patch, focusing an element via an AX client on iOS makes
the page focused immediately. This allows a focus ring to be drawn,
even when apps that embed WKWebViews don't make web content the
first responder themselves ([WKContentViewInteraction becomeFirstResponderForWebView]
makes the page focused after a delay due to async IPC between the UI and web processes).
Tests: accessibility/ios-simulator/accessibility-make-first-responder.html
accessibility/ios-simulator/taking-focus-should-refocus-page.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::setFocused):
Make the webpage focused if it isn't already focused.
- testing/Internals.cpp:
(WebCore::Internals::setPageIsFocused):
Added to simulate the scenario where the webpage doesn't gain focus
through becoming first responder.
- testing/Internals.h:
Add setPageIsFocused.
- testing/Internals.idl:
Add setPageIsFocused.
Source/WebKit:
With this patch, focusing an element via an AX client on iOS makes web content
the first responder. This allows a focus ring to be drawn and for web content
to perform other important actions upon taking first respondership
(see[WKContentViewInteraction becomeFirstResponderForWebView]), even when apps
that embed WKWebViews don't make web content the first responder themselves.
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::assistiveTechnologyMakeFirstResponder):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::assistiveTechnologyMakeFirstResponder):
Tools:
Add testing functionality necessary to check that web content is the
first responder in the UI process.
- TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
- TestRunnerShared/UIScriptContext/UIScriptController.h:
(WTR::UIScriptController::isWebContentFirstResponder const):
Added.
- WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::takeFocus):
Implement this method.
- WebKitTestRunner/ios/UIScriptControllerIOS.h:
- WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptControllerIOS::isWebContentFirstResponder const):
Added.
LayoutTests:
Add tests verifying that focusing an element via an AX client:
- Makes the page focused immediately
- Makes web content the first responder
This allows a focus ring to be drawn, even when apps that embed
WKWebViews don't make web content the first responder themselves.
- accessibility/ios-simulator/accessibility-make-first-responder-expected.txt: Added.
- accessibility/ios-simulator/accessibility-make-first-responder.html: Added.
- accessibility/ios-simulator/taking-focus-should-refocus-page-expected.txt: Added.
- accessibility/ios-simulator/taking-focus-should-refocus-page.html: Added.
- 6:27 AM Changeset in webkit [287809] by
-
- 2 edits in trunk/Source/WebCore
[LFC][IFC] Implement TextUtil::breakWord for the complex font codepath using ubrk_next
https://bugs.webkit.org/show_bug.cgi?id=234998
Reviewed by Antti Koivisto.
In order to use ubrk_preceding/ubrk_following with arbitrary position (binary search) inside a cluster with surrogate pairs we have to
implement some additional surrogate boundary checks (it would move the index to the beginning/end of the surrogate when it falls right
in the middle of it). In addition to that, ICU would still need to scan the content from the start to find the right index for
the boundary.
This new breakWord implementation simply iterates over the clusters by calling ubrk_next until the content overflows.
- layout/formattingContexts/inline/text/TextUtil.cpp:
(WebCore::Layout::TextUtil::breakWord):
Jan 7, 2022:
- 10:23 PM Changeset in webkit [287808] by
-
- 65 edits2 deletes in trunk/Source
Remove IPC::SharedBufferDataReference and use IPC::SharedBufferCopy instead
https://bugs.webkit.org/show_bug.cgi?id=234921
rdar://problem/87196287
Reviewed by Youenn Fablet.
Source/WebCore:
Pass the FragmentedSharedBuffer through const reference to avoid
having to const_cast the argument in WebKit.
No change in observable behaviour, covered by existing tests.
- platform/graphics/ImageDecoder.h:
- platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.h:
- platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:
(WebCore::ImageDecoderAVFObjC::create):
(WebCore::ImageDecoderAVFObjC::ImageDecoderAVFObjC):
(WebCore::ImageDecoderAVFObjC::setData):
- platform/graphics/cg/ImageDecoderCG.cpp:
(WebCore::ImageDecoderCG::setData):
- platform/graphics/cg/ImageDecoderCG.h:
- platform/graphics/gstreamer/ImageDecoderGStreamer.cpp:
(WebCore::ImageDecoderGStreamer::setData):
- platform/graphics/gstreamer/ImageDecoderGStreamer.h:
- platform/graphics/win/ImageDecoderDirect2D.cpp:
(WebCore::ImageDecoderDirect2D::setData):
- platform/graphics/win/ImageDecoderDirect2D.h:
- platform/image-decoders/ScalableImageDecoder.h:
- platform/image-decoders/bmp/BMPImageDecoder.cpp:
(WebCore::BMPImageDecoder::setData):
- platform/image-decoders/bmp/BMPImageDecoder.h:
- platform/image-decoders/gif/GIFImageDecoder.cpp:
(WebCore::GIFImageDecoder::setData):
- platform/image-decoders/gif/GIFImageDecoder.h:
- platform/image-decoders/ico/ICOImageDecoder.cpp:
(WebCore::ICOImageDecoder::setData):
- platform/image-decoders/ico/ICOImageDecoder.h:
- platform/image-decoders/webp/WEBPImageDecoder.cpp:
(WebCore::WEBPImageDecoder::setData):
- platform/image-decoders/webp/WEBPImageDecoder.h:
Source/WebKit:
SharedBufferCopy didn't have to create a new SharedBuffer
and copy its content; its IPC decoder can instead wrap the underlying
SharedMemory into a SharedBuffer.
Having removed those copies and extra allocations there's no longer a
technical need to have both SharedBufferDataReference and SharedBufferCopy.
The biggest winners of this change are the images transferred over IPC.
We remove two memory allocation/copy the was occurring at both IPC
boundaries.
We also remove the need for SharedBufferCopy to use a contiguous
SharedBuffer. This makes the IPC encoding much more efficient.
Once transferred over IPC, with the current encoding implementation,
the SharedBufferCopy automatically becomes a contiguous SharedBuffer,
so calling makeContiguous() on the SharedBufferCopy is a no-op;
this allows for zero regression speed-wise from this change.
Fly-by changes: the PDF code uses IPC::DataReference object; the data
was copied into a CFData or a SharedBuffer. By using IPC::SharedBufferCopy
was can remove those copies as a SharedBuffer can be wrapped in a CFData.
In the future, it's likely where such code pattern was used; more
IPC::DataReference can be replaced broadly with IPC::SharedBufferCopy.
- GPUProcess/media/RemoteImageDecoderAVFProxy.cpp:
(WebKit::RemoteImageDecoderAVFProxy::createDecoder):
(WebKit::RemoteImageDecoderAVFProxy::setData):
- GPUProcess/media/RemoteImageDecoderAVFProxy.h:
- GPUProcess/media/RemoteImageDecoderAVFProxy.messages.in:
- GPUProcess/media/RemoteLegacyCDMSessionProxy.cpp:
(WebKit::convertToUint8Array):
(WebKit::convertToOptionalSharedBuffer):
(WebKit::RemoteLegacyCDMSessionProxy::generateKeyRequest):
(WebKit::RemoteLegacyCDMSessionProxy::update):
(WebKit::RemoteLegacyCDMSessionProxy::cachedKeyForKeyID):
(WebKit::RemoteLegacyCDMSessionProxy::sendMessage):
- NetworkProcess/NetworkResourceLoader.cpp:
- NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.cpp:
(WebKit::ServiceWorkerDownloadTask::didReceiveData):
- Platform/IPC/HandleMessage.h:
- Platform/IPC/SharedBufferCopy.cpp:
(IPC::SharedBufferCopy::encode const):
(IPC::SharedBufferCopy::decode):
(IPC::SharedBufferCopy::safeBuffer const):
- Platform/IPC/SharedBufferCopy.h:
(IPC::SharedBufferCopy::SharedBufferCopy):
(IPC::SharedBufferCopy::buffer):
(IPC::SharedBufferCopy::buffer const):
(IPC::SharedBufferCopy::contiguousBuffer const):
- Platform/IPC/SharedBufferDataReference.cpp: Removed.
- Platform/IPC/SharedBufferDataReference.h: Removed.
- Scripts/webkit/messages.py:
(function_parameter_type):
(reply_arguments_type):
(message_to_struct_declaration):
(generate_message_handler):
- Shared/WebCompiledContentRuleListData.cpp:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<SerializedAttachmentData>::encode):
(IPC::ArgumentCoder<WebCore::SerializedAttachmentData>::decode):
- Sources.txt:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView createPDFWithConfiguration:completionHandler:]):
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::platformRegisterAttachment):
- UIProcess/Cocoa/WebProcessProxyCocoa.mm:
(WebKit::WebProcessProxy::sendAudioComponentRegistrations):
- UIProcess/WebPageProxy.cpp:
(WebKit::CompletionHandler<void):
(WebKit::WebPageProxy::drawToPDF):
(WebKit::WebPageProxy::getLoadDecisionForIcon):
(WebKit::WebPageProxy::updateAttachmentAttributes):
- UIProcess/WebPageProxy.h:
- UIProcess/WebURLSchemeTask.cpp:
- UIProcess/ios/WKContentView.mm:
(-[WKContentView _wk_pageCountForPrintFormatter:]):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::computePagesForPrintingAndDrawToPDF):
- WebProcess/GPU/media/RemoteImageDecoderAVF.cpp:
(WebKit::RemoteImageDecoderAVF::setData):
- WebProcess/GPU/media/RemoteImageDecoderAVF.h:
- WebProcess/GPU/media/RemoteImageDecoderAVFManager.cpp:
(WebKit::RemoteImageDecoderAVFManager::createImageDecoder):
- WebProcess/GPU/media/RemoteLegacyCDMSession.cpp:
(WebKit::convertToArrayBuffer):
- WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveData):
- WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getContentsAsMHTMLData):
(WebKit::WebPage::getSelectionAsWebArchiveData):
(WebKit::WebPage::getMainResourceDataOfFrame):
(WebKit::WebPage::getResourceDataFromFrame):
(WebKit::WebPage::getWebArchiveOfFrame):
(WebKit::WebPage::drawToPDF):
(WebKit::WebPage::drawPagesToPDF):
(WebKit::WebPage::didGetLoadDecisionForIcon):
(WebKit::WebPage::urlSchemeTaskDidReceiveData):
(WebKit::WebPage::updateAttachmentAttributes):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::drawToPDFiOS):
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::consumeAudioComponentRegistrations):
- 8:09 PM Changeset in webkit [287807] by
-
- 2 edits in trunk/Source/WebCore
[Hardening] Improve multi draw offset validation
https://bugs.webkit.org/show_bug.cgi?id=234966
<rdar://problem/86814830>
Reviewed by Darin Adler.
Incorporate draw count into validation of the offset.
- html/canvas/WebGLMultiDraw.cpp:
(WebCore::WebGLMultiDraw::validateOffset):
- 7:42 PM Changeset in webkit [287806] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed. Appease an assertion that was broken by r287801 by slightly
refactoring code so we don't clobber the same named register twice.
- b3/air/AirAllocateRegistersAndStackAndGenerateCode.cpp:
(JSC::B3::Air::GenerateAndAllocateRegisters::generate):
- 7:18 PM Changeset in webkit [287805] by
-
- 6 edits2 adds in trunk
[GPU Process] Can't getImageData on canvas larger than 4096x4096
https://bugs.webkit.org/show_bug.cgi?id=234321
<rdar://problem/83575501>
Reviewed by Tim Horton.
Source/WebCore:
We already have a policy about how big canvases can be. Simply export that policy
so it can be consulted from the GPU process.
Test: fast/canvas/large-getImageData.html
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::maxActivePixelMemory):
(WebCore::maxActivePixelMemory): Deleted.
- html/HTMLCanvasElement.h:
Source/WebKit:
Consult the policy for how big a canvas can be, rather than hardcoding a number.
- GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::updateSharedMemoryForGetPixelBufferHelper):
LayoutTests:
- fast/canvas/large-getImageData-expected.txt: Added.
- fast/canvas/large-getImageData.html: Added.
- 6:45 PM Changeset in webkit [287804] by
-
- 4 edits4 deletes in branches/safari-612.4.9.3-branch
Revert "Cherry-pick r287604. rdar://problem/85966622"
This reverts commit r287751.
- 6:20 PM Changeset in webkit [287803] by
-
- 7 edits in trunk/Source
Make FullscreenManager::requestFullscreenForElement more robust
https://bugs.webkit.org/show_bug.cgi?id=234995
Patch by Alex Christensen <achristensen@webkit.org> on 2022-01-07
Reviewed by Darin Adler.
Source/WebCore:
I think this may fix the Windows crashes after bug 233963 lands, and it makes things more robust anyways.
- dom/Element.cpp:
(WebCore::Element::webkitRequestFullscreen):
- dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::requestFullscreenForElement):
- dom/FullscreenManager.h:
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::enterFullscreen):
Source/WebKit:
- WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::requestEnterFullScreen):
- 6:13 PM Changeset in webkit [287802] by
-
- 5 edits in trunk/Source/WebCore
Don't dispatch "focusin" / "focusout" events if there are no listeners
https://bugs.webkit.org/show_bug.cgi?id=234928
Patch by Alexey Shvayka <ashvayka@apple.com> on 2022-01-07
Reviewed by Geoff Garen.
This patch avoids creating and dispatching "focusin" / "focusout" events if it's
guaranteed there are no registered listeners for them. These events are rather new
and not widely popular: according to Chrome stats, only 17% page loads use them [1],
which is even less thandocument.all.
Together with r287787, creation of four FocusEvent instances is now avoided when
focus is changed, advancing attached microbenchmark by 6%.
[1] https://chromestatus.com/metrics/feature/timeline/popularity/433
No new tests, no behavior change.
- dom/Document.cpp:
(WebCore::Document::setFocusedElement):
(WebCore::Document::addListenerTypeIfNeeded):
- dom/Document.h:
- dom/Element.cpp:
(WebCore::Element::dispatchFocusInEventIfNeeded):
(WebCore::Element::dispatchFocusOutEventIfNeeded):
(WebCore::Element::dispatchFocusInEvent): Deleted.
(WebCore::Element::dispatchFocusOutEvent): Deleted.
- dom/Element.h:
- 5:57 PM Changeset in webkit [287801] by
-
- 12 edits1 add in trunk/Source/JavaScriptCore
Add support for Wasm exceptions in the Air generator
https://bugs.webkit.org/show_bug.cgi?id=231211
<rdar://problem/84132861>
Reviewed by Filip Pizlo.
This patch adds support to Air for Wasm exceptions. The implementation
is very similar to how we implement it in the B3 Wasm tier. This patch
shares code with the B3 tier where it can.
This patch also fixes a bug where you the early clobbered registers
of a patchpoint could prevent the prior instruction from register allocating.
For example, you can have the instructions I1, I2. Where I2 clobbers the
entire register file. It doesn't mean I1 shouldn't be able to allocate
registers. Instead, the clobber should occur after I1 executes. This patch
fixes the issue.
- JavaScriptCore.xcodeproj/project.pbxproj:
- b3/air/AirAllocateRegistersAndStackAndGenerateCode.cpp:
(JSC::B3::Air::GenerateAndAllocateRegisters::generate):
- wasm/WasmAirIRGenerator.cpp:
(JSC::Wasm::AirIRGenerator::ControlData::ControlData):
(JSC::Wasm::AirIRGenerator::ControlData::isTry):
(JSC::Wasm::AirIRGenerator::ControlData::isCatch):
(JSC::Wasm::AirIRGenerator::ControlData::convertTryToCatch):
(JSC::Wasm::AirIRGenerator::ControlData::convertTryToCatchAll):
(JSC::Wasm::AirIRGenerator::ControlData::tryStart const):
(JSC::Wasm::AirIRGenerator::ControlData::tryEnd const):
(JSC::Wasm::AirIRGenerator::ControlData::tryDepth const):
(JSC::Wasm::AirIRGenerator::ControlData::catchKind const):
(JSC::Wasm::AirIRGenerator::ControlData::exception const):
(JSC::Wasm::AirIRGenerator::emitCallPatchpoint):
(JSC::Wasm::AirIRGenerator::addStackMap):
(JSC::Wasm::AirIRGenerator::takeStackmaps):
(JSC::Wasm::AirIRGenerator::takeExceptionHandlers):
(JSC::Wasm::AirIRGenerator::newTmp):
(JSC::Wasm::AirIRGenerator::emitPatchpoint):
(JSC::Wasm::AirIRGenerator::emitLoad):
(JSC::Wasm::AirIRGenerator::AirIRGenerator):
(JSC::Wasm::AirIRGenerator::finalizeEntrypoints):
(JSC::Wasm::AirIRGenerator::forEachLiveValue):
(JSC::Wasm::AirIRGenerator::emitLoopTierUpCheck):
(JSC::Wasm::AirIRGenerator::addTry):
(JSC::Wasm::AirIRGenerator::addCatch):
(JSC::Wasm::AirIRGenerator::addCatchAll):
(JSC::Wasm::AirIRGenerator::addCatchToUnreachable):
(JSC::Wasm::AirIRGenerator::addCatchAllToUnreachable):
(JSC::Wasm::AirIRGenerator::emitCatchImpl):
(JSC::Wasm::AirIRGenerator::addDelegate):
(JSC::Wasm::AirIRGenerator::addDelegateToUnreachable):
(JSC::Wasm::AirIRGenerator::addThrow):
(JSC::Wasm::AirIRGenerator::addRethrow):
(JSC::Wasm::AirIRGenerator::addEndToUnreachable):
(JSC::Wasm::AirIRGenerator::addCall):
(JSC::Wasm::AirIRGenerator::emitIndirectCall):
(JSC::Wasm::parseAndCompileAir):
(JSC::Wasm::AirIRGenerator::preparePatchpointForExceptions):
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::insertEntrySwitch):
(JSC::Wasm::B3IRGenerator::emitCatchImpl):
(JSC::Wasm::B3IRGenerator::addThrow):
(JSC::Wasm::B3IRGenerator::addRethrow):
(JSC::Wasm::PatchpointExceptionHandle::generate const): Deleted.
(JSC::Wasm::buildEntryBufferForCatch): Deleted.
(JSC::Wasm::computeExceptionHandlerLocations): Deleted.
- wasm/WasmB3IRGenerator.h:
- wasm/WasmBBQPlan.cpp:
(JSC::Wasm::BBQPlan::compileFunction):
- wasm/WasmIRGeneratorHelpers.h: Added.
(JSC::Wasm::PatchpointExceptionHandle::generate const):
(JSC::Wasm::computeExceptionHandlerLocations):
(JSC::Wasm::emitRethrowImpl):
(JSC::Wasm::emitThrowImpl):
(JSC::Wasm::buildEntryBufferForCatch):
(JSC::Wasm::emitCatchPrologueShared):
- wasm/WasmLLIntGenerator.cpp:
(JSC::Wasm::LLIntGenerator::finalize):
- wasm/WasmModuleInformation.h:
- wasm/WasmOMGPlan.cpp:
- wasm/WasmOSREntryPlan.cpp:
- wasm/WasmStreamingParser.cpp:
(JSC::Wasm::StreamingParser::parseCodeSectionSize):
- 5:52 PM Changeset in webkit [287800] by
-
- 5 edits3 adds in trunk
Expand the set of objects we take JSArray::fastSlice() path for
https://bugs.webkit.org/show_bug.cgi?id=234539
Patch by Alexey Shvayka <ashvayka@apple.com> on 2022-01-07
Reviewed by Yusuke Suzuki.
JSTests:
- microbenchmarks/array-slice-call-cloned-arguments.js: Added.
- stress/array-slice-beyond-length.js: Added.
- stress/array-slice-length-lookup.js: Added.
Source/JavaScriptCore:
Currently, Array.prototype's slice() / splice() methods take a fast path only for
JSArray source objects. With this change, gcSafeMemcpy-based path is taken for any
object with ordinary getOwnPropertySlotByIndex() method, which speeds up the common
case of[].slice.call(arguments)by 140% (in strict mode only, see ClonedArguments).
Also, once is https://webkit.org/b/234538 resolved, calling Array.prototype.slice()
on a static NodeList, which is a common idiom to acquire map() / filter() methods,
will become faster as well.
This patch was thoroughly evaluated to be spec-perfect and memory-safe:
- indexing mode check and holesMustForwardToPrototype() guarantee that there are no observable userland code to be invoked;
- fastSlice() signature is upgraded to uint64_t so
nullptris returned in case of large "length", resulting in a RangeError being thrown on the slow path; - to handle the case of source array being shrinked after "length" lookup (see r175420), OOB read check is moved to JSArray::fastSlice() and refined to rely on vectorLength() so the double "length" lookup is avoided (added a test for this).
All this (and more) is well covered by the test262 suite.
This change improves Speedometer2/EmberJS-Debug-TodoMVC score by 0.5%: although the test
is slow on its own,[].slice.call(arguments)is performed ~56k times per run.
- runtime/ArrayPrototype.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
- runtime/JSArray.cpp:
(JSC::JSArray::fastSlice):
- runtime/JSArray.h:
- 5:00 PM Changeset in webkit [287799] by
-
- 1 copy in tags/Safari-612.4.9.3.1
Tag Safari-612.4.9.3.1.
- 4:49 PM Changeset in webkit [287798] by
-
- 1 copy in tags/Safari-612.4.9.1.2
Tag Safari-612.4.9.1.2.
- 4:46 PM Changeset in webkit [287797] by
-
- 1 copy in tags/Safari-612.4.9.2.1
Tag Safari-612.4.9.2.1.
- 4:45 PM Changeset in webkit [287796] by
-
- 1 copy in tags/Safari-612.4.9.0.1
Tag Safari-612.4.9.0.1.
- 4:05 PM Changeset in webkit [287795] by
-
- 26 edits in branches/safari-612.4.9.2-branch
Cherry-pick r286094. rdar://problem/87125111
Report the initiating url instead of the redirected one
https://bugs.webkit.org/show_bug.cgi?id=233037
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-11-20
Reviewed by Brent Fulgham.
LayoutTests/imported/w3c:
- web-platform-tests/content-security-policy/securitypolicyviolation/img-src-redirect.sub-expected.txt:
Source/WebCore:
As per the spec, blockedURI should use the requested URL of original request instead of redirected location.
- loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::isAllowedByContentSecurityPolicy):
- loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::willSendRequestInternal):
- loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::allowedByContentSecurityPolicy const): (WebCore::CachedResourceLoader::canRequestAfterRedirection const): (WebCore::CachedResourceLoader::updateRequestAfterRedirection):
- loader/cache/CachedResourceLoader.h:
- page/csp/ContentSecurityPolicy.cpp: (WebCore::ContentSecurityPolicy::allowChildContextFromSource const): (WebCore::ContentSecurityPolicy::allowScriptFromSource const): (WebCore::ContentSecurityPolicy::allowImageFromSource const): (WebCore::ContentSecurityPolicy::allowStyleFromSource const): (WebCore::ContentSecurityPolicy::allowFontFromSource const): (WebCore::ContentSecurityPolicy::allowManifestFromSource const): (WebCore::ContentSecurityPolicy::allowMediaFromSource const):
- page/csp/ContentSecurityPolicy.h:
Source/WebKit:
Pass pre-redirect URL to allowChildContextFromSource() and allowScriptFromSource().
- NetworkProcess/NetworkLoadChecker.cpp: (WebKit::NetworkLoadChecker::isAllowedByContentSecurityPolicy):
LayoutTests:
- TestExpectations: Unskip imported/w3c/web-platform-tests/content-security-policy/securitypolicyviolation/img-src-redirect.sub.html
- http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/font-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/image-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/script-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/stylesheet-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/svg-font-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/svg-image-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/track-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/xsl-redirect-blocked-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:47 PM Changeset in webkit [287794] by
-
- 2 edits in trunk/Source/WebKit
[GTK] REGRESSION: Kinetic scrolling via touch-screen behaves oddly
https://bugs.webkit.org/show_bug.cgi?id=234958
Reviewed by Michael Catanzaro.
The swipe signal handler didn't take into account
Scrollbar::pixelsPerLineStep() and also incorrectly negated the
vertical velocity. Ideally, touch scrolling would use precise wheel
events, but as the rest of the code works correctly and scales by this
amount, make the one-line change that conforms with the previous code.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseTouchSwipe):
- 3:47 PM Changeset in webkit [287793] by
-
- 2 edits in trunk/LayoutTests
REGRESSION (r283935): [ macOS wk1 ] imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-autofocus-multiple-times.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=231918
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations: Mark test as flaky.
- 3:45 PM Changeset in webkit [287792] by
-
- 26 edits in branches/safari-612.4.9.0-branch
Cherry-pick r286094. rdar://problem/87125111
Report the initiating url instead of the redirected one
https://bugs.webkit.org/show_bug.cgi?id=233037
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-11-20
Reviewed by Brent Fulgham.
LayoutTests/imported/w3c:
- web-platform-tests/content-security-policy/securitypolicyviolation/img-src-redirect.sub-expected.txt:
Source/WebCore:
As per the spec, blockedURI should use the requested URL of original request instead of redirected location.
- loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::isAllowedByContentSecurityPolicy):
- loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::willSendRequestInternal):
- loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::allowedByContentSecurityPolicy const): (WebCore::CachedResourceLoader::canRequestAfterRedirection const): (WebCore::CachedResourceLoader::updateRequestAfterRedirection):
- loader/cache/CachedResourceLoader.h:
- page/csp/ContentSecurityPolicy.cpp: (WebCore::ContentSecurityPolicy::allowChildContextFromSource const): (WebCore::ContentSecurityPolicy::allowScriptFromSource const): (WebCore::ContentSecurityPolicy::allowImageFromSource const): (WebCore::ContentSecurityPolicy::allowStyleFromSource const): (WebCore::ContentSecurityPolicy::allowFontFromSource const): (WebCore::ContentSecurityPolicy::allowManifestFromSource const): (WebCore::ContentSecurityPolicy::allowMediaFromSource const):
- page/csp/ContentSecurityPolicy.h:
Source/WebKit:
Pass pre-redirect URL to allowChildContextFromSource() and allowScriptFromSource().
- NetworkProcess/NetworkLoadChecker.cpp: (WebKit::NetworkLoadChecker::isAllowedByContentSecurityPolicy):
LayoutTests:
- TestExpectations: Unskip imported/w3c/web-platform-tests/content-security-policy/securitypolicyviolation/img-src-redirect.sub.html
- http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/font-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/image-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/script-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/stylesheet-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/svg-font-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/svg-image-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/track-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/xsl-redirect-blocked-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:22 PM Changeset in webkit [287791] by
-
- 26 edits in branches/safari-612.4.9.1-branch
Cherry-pick r286094. rdar://problem/87125111
Report the initiating url instead of the redirected one
https://bugs.webkit.org/show_bug.cgi?id=233037
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-11-20
Reviewed by Brent Fulgham.
LayoutTests/imported/w3c:
- web-platform-tests/content-security-policy/securitypolicyviolation/img-src-redirect.sub-expected.txt:
Source/WebCore:
As per the spec, blockedURI should use the requested URL of original request instead of redirected location.
- loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::isAllowedByContentSecurityPolicy):
- loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::willSendRequestInternal):
- loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::allowedByContentSecurityPolicy const): (WebCore::CachedResourceLoader::canRequestAfterRedirection const): (WebCore::CachedResourceLoader::updateRequestAfterRedirection):
- loader/cache/CachedResourceLoader.h:
- page/csp/ContentSecurityPolicy.cpp: (WebCore::ContentSecurityPolicy::allowChildContextFromSource const): (WebCore::ContentSecurityPolicy::allowScriptFromSource const): (WebCore::ContentSecurityPolicy::allowImageFromSource const): (WebCore::ContentSecurityPolicy::allowStyleFromSource const): (WebCore::ContentSecurityPolicy::allowFontFromSource const): (WebCore::ContentSecurityPolicy::allowManifestFromSource const): (WebCore::ContentSecurityPolicy::allowMediaFromSource const):
- page/csp/ContentSecurityPolicy.h:
Source/WebKit:
Pass pre-redirect URL to allowChildContextFromSource() and allowScriptFromSource().
- NetworkProcess/NetworkLoadChecker.cpp: (WebKit::NetworkLoadChecker::isAllowedByContentSecurityPolicy):
LayoutTests:
- TestExpectations: Unskip imported/w3c/web-platform-tests/content-security-policy/securitypolicyviolation/img-src-redirect.sub.html
- http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/font-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/image-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/script-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/stylesheet-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/svg-font-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/svg-image-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/track-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/xsl-redirect-blocked-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:19 PM Changeset in webkit [287790] by
-
- 2 edits in trunk/Tools
A/B comparison tests fail trying to look up fuzzy match tolerance
https://bugs.webkit.org/show_bug.cgi?id=234974
Reviewed by Aditya Keerthi.
- Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_self_comparison_test):
(SingleTestRunner._compare_output_with_reference):
Disable fuzzy matching for A/B tests, because A) we don't really want it
and B) it crashes run-webkit-tests because there is no actual reference file
in which to find the tolerance value.
- 2:56 PM Changeset in webkit [287789] by
-
- 3 edits in trunk/Tools
check-webkit-style: add checker for unexpected fall through after ASSERT_NOT_REACHED() statements
<https://webkit.org/b/234932>
<rdar://87213520>
Reviewed by Brent Fulgham.
This checker only returns a confidence level of 4 (out of 5)
since there are too many different code patterns to check them
all perfectly using regular expressions.
Run new checker tests like this:
$ test-webkitpy webkitpy.style.checkers.cpp_unittest.CppStyleTest.test_debug_not_reached_assertion
Run this checker against a file or folder like this:
$ check-webkit-style --filter "-,+security/assertion_fallthrough" (file|folder)
- Scripts/webkitpy/style/checkers/cpp.py:
(SingleLineView.init):
- Expose
trimmed_linesas a property on SingleLineView.
(_FunctionState.body_view): Add.
- Add method to return a SingleLineView object containing the body of the function.
(check_function_body): Add.
- New function to check for fall through after ASSERT_NOT_REACHED() statements.
(process_line):
- Call check_function_body() to implement the new check.
(CppChecker.categories):
- Add 'security/assertion_fallthrough' to the list of known checkers.
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTestBase.perform_function_body_check): Add.
- Add method to call check_function_body() for testing.
(CppStyleTest.test_debug_not_reached_assertion): Add.
- Add tests for the new checker.
- 2:56 PM Changeset in webkit [287788] by
-
- 20 edits14 adds in trunk/LayoutTests
Resync web-platform-tests/dom from upstream
https://bugs.webkit.org/show_bug.cgi?id=234963
Reviewed by Geoffrey Garen.
Resync web-platform-tests/dom from upstream 84b2be5b17e8542dea2.
- resources/resource-files.json:
- web-platform-tests/dom/*: Updated.
- 2:51 PM Changeset in webkit [287787] by
-
- 14 edits in trunk
Remove obsolete DOM Level 2 "DOMFocusIn" / "DOMFocusOut" events
https://bugs.webkit.org/show_bug.cgi?id=234978
Patch by Alexey Shvayka <ashvayka@apple.com> on 2022-01-07
Reviewed by Geoff Garen.
Source/WebCore:
This patch removes these events because according to Chrome stats, only 0.04%
of page loads use them [1], which is below the Blink's removal threshold of 0.10%.
All the "top sites" listed as "DOMFocusIn" / "DOMFocusOut" adopters, are now dead.
Also, these events were never implemented in Firefox.
[1] https://chromestatus.com/metrics/feature/timeline/popularity/211
No new tests because it's a feature removal.
- dom/Document.cpp:
(WebCore::Document::setFocusedElement):
- dom/Document.h:
- dom/Element.cpp:
(WebCore::Element::dispatchFocusInEvent):
(WebCore::Element::dispatchFocusOutEvent):
- dom/Element.h:
- dom/EventNames.h:
Source/WebInspectorUI:
- UserInterface/Models/ScriptTimelineRecord.js:
(WI.ScriptTimelineRecord.EventType.displayName):
LayoutTests:
- editing/deleting/insert-in-orphaned-selection-crash.html:
- fast/events/focusinout-expected.txt:
- fast/events/focusinout.html:
- fast/events/scoped/editing-commands.html:
- fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html:
- fast/forms/textarea/textarea-autofocus-removal-while-focusing.html:
- 2:46 PM Changeset in webkit [287786] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r286498): Web Inspector: Inspector2 fails to load in release builds and crashes with an assertion in debug builds
https://bugs.webkit.org/show_bug.cgi?id=234968
Reviewed by Devin Rousso.
Inspector2 would fail to open a local inspector frontend because m_inspectedPageIdentifier was not set before
it was used inWebInspectorUIProxy::createFrontendPage. To correct this, we now cache the inspected page
identifier immediately upon creating the WebInspectorUIProxy, instead of only in
WebInspectorUIProxy::updateForNewPageProcess. This also allows us to use the cached identifier in
WebInspectorUIProxy::openLocalInspectorFrontendas discussed in <http://webkit.org/b/233293#c5>.
- UIProcess/Inspector/WebInspectorUIProxy.cpp:
(WebKit::WebInspectorUIProxy::WebInspectorUIProxy):
(WebKit::WebInspectorUIProxy::openLocalInspectorFrontend):
- 2:46 PM Changeset in webkit [287785] by
-
- 4 edits4 adds in trunk/LayoutTests/imported/w3c
Resync web-platform-tests/webaudio from upstream
https://bugs.webkit.org/show_bug.cgi?id=234981
Reviewed by Geoffrey Garen.
Resync web-platform-tests/webaudio from upstream 84b2be5b17e8542dea2.
- web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/acquire-the-content-expected.txt: Added.
- web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/acquire-the-content.html: Added.
- web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/w3c-import.log:
- web-platform-tests/webaudio/the-audio-api/the-audiocontext-interface/w3c-import.log:
- web-platform-tests/webaudio/the-audio-api/the-periodicwave-interface/createPeriodicWaveInfiniteValuesThrows-expected.txt: Added.
- web-platform-tests/webaudio/the-audio-api/the-periodicwave-interface/createPeriodicWaveInfiniteValuesThrows.html: Added.
- web-platform-tests/webaudio/the-audio-api/the-periodicwave-interface/w3c-import.log:
- 2:45 PM Changeset in webkit [287784] by
-
- 9 edits in trunk/Source
Adopt linkedOnOrAfter() in more places
https://bugs.webkit.org/show_bug.cgi?id=234951
Reviewed by Wenson Hsieh.
Source/JavaScriptCore:
- API/JSWrapperMap.mm:
(supportsInitMethodConstructors):
- API/tests/testapi.cpp:
(TestAPI::promiseDrainDoesNotEatExceptions):
- API/tests/testapi.mm:
(testMicrotaskWithFunction):
- runtime/JSLock.cpp:
(JSC::JSLock::willReleaseLock):
- runtime/ObjectPrototype.cpp:
(JSC::isPokerBros):
Adopt linkedOnOrAfter.
Source/WTF:
- wtf/cocoa/LanguageCocoa.mm:
(WTF::canMinimizeLanguages):
Adopt linkedOnOrAfter and simplify.
- wtf/cocoa/RuntimeApplicationChecksCocoa.h:
The weird mismatch between the iOS and macOS values for FirstVersionThatSupportsInitConstructors
is correct; the iOS version was bumped in r202670.
- 2:22 PM Changeset in webkit [287783] by
-
- 7 edits9 adds in trunk
CSP: strict-dynamic is causing incorrect and unexpected behavior
https://bugs.webkit.org/show_bug.cgi?id=234756
<rdar://problem/87018316>
Reviewed by Brent Fulgham.
Source/WebCore:
Per the CSP spec, if strict-dynamic is included in the script-src
directive, 'self' and 'unsafe-inline' should be ignored. This fixes a
bug where they were only ignored if specified before 'strict-dynamic'.
Additionally, this reports the sourceURL as empty for inline scripts
instead of using the contextURL, which was unexpectedly allowing
inline scripts when "self" was used with "strict-dynamic".
Tests: http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-host-list.html
http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-scheme-list.html
http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-self.html
http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-unsafe-inline.html
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestClassicScript):
(WebCore::ScriptElement::executeClassicScript):
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::allScriptPoliciesAllow const):
(WebCore::ContentSecurityPolicy::allowNonParserInsertedScripts const):
- page/csp/ContentSecurityPolicy.h:
- page/csp/ContentSecurityPolicySourceList.cpp:
(WebCore::ContentSecurityPolicySourceList::parseSource):
LayoutTests:
Add tests with re-arranged ordering of the source expressions.
- http/tests/security/contentSecurityPolicy/resources/simpleSourcedScript.js: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-host-list-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-host-list.html: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-scheme-list-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-scheme-list.html: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-self-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-self.html: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-unsafe-inline-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-mixed-order-unsafe-inline.html: Added.
- 2:21 PM Changeset in webkit [287782] by
-
- 26 edits1 add in trunk/Source
[GPU Process] Remove the result FilterImage from FilterEffect
https://bugs.webkit.org/show_bug.cgi?id=232840
rdar://85425842
Reviewed by Darin Adler.
Source/WebCore:
Removing the result FilterImage from FilterEffect will allow reusing the
same FilterEffect for all the renderers that reference it. The results
will now be stored in the new class 'FilterResults'.
-- FilterData still keeps the results of applying the Filter to its
renderer in a new member of type FilterResults.
-- RenderLayerFilters will not need to clear its CSSFilter intermediate
results because this will happen once the temporary FilterResults goes
out of scope.
FilterResults will have two maps:
- FilterEffect -> FilterImage: The value is the result FilterImage of applying the FilterEffect.
- FilterImage -> FilterEffectSet: The value is a list of FilterEffects, whose FilterImages depend on the key FilterImage.
- Headers.cmake:
- WebCore.xcodeproj/project.pbxproj:
- platform/graphics/ConcreteImageBuffer.h:
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawFilteredImageBuffer):
- platform/graphics/GraphicsContext.h:
- platform/graphics/displaylists/DisplayListItems.cpp:
(WebCore::DisplayList::DrawFilteredImageBuffer::apply):
- platform/graphics/displaylists/DisplayListItems.h:
- platform/graphics/displaylists/DisplayListRecorder.cpp:
(WebCore::DisplayList::Recorder::drawFilteredImageBuffer):
- platform/graphics/displaylists/DisplayListRecorder.h:
- platform/graphics/filters/Filter.cpp:
(WebCore::Filter::apply):
- platform/graphics/filters/Filter.h:
- platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::apply):
(WebCore::FilterEffect::clearResult): Deleted.
(WebCore::FilterEffect::clearResultsRecursive): Deleted.
- platform/graphics/filters/FilterEffect.h:
(WebCore::FilterEffect::hasResult const): Deleted.
(WebCore::FilterEffect::filterImage const): Deleted.
- platform/graphics/filters/FilterFunction.h:
(WebCore::FilterFunction::apply):
(WebCore::FilterFunction::outsets const):
(WebCore::FilterFunction::clearResult): Deleted.
- platform/graphics/filters/FilterResults.h: Added.
(WebCore::FilterResults::effectResult const):
(WebCore::FilterResults::setEffectResult):
(WebCore::FilterResults::clearEffectResult):
- platform/network/SynchronousLoaderClient.cpp:
- rendering/CSSFilter.cpp:
(WebCore::CSSFilter::apply):
(WebCore::CSSFilter::clearIntermediateResults): Deleted.
- rendering/CSSFilter.h:
- rendering/RenderLayerFilters.cpp:
(WebCore::RenderLayerFilters::applyFilterEffect):
- rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::postApplyResource):
(WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
- rendering/svg/RenderSVGResourceFilter.h:
- svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::apply):
(WebCore::SVGFilter::clearResult): Deleted.
- svg/graphics/filters/SVGFilter.h:
- svg/graphics/filters/SVGFilterBuilder.cpp:
(WebCore::SVGFilterBuilder::setupBuiltinEffects):
(WebCore::SVGFilterBuilder::buildFilterEffects):
(WebCore::SVGFilterBuilder::appendEffectToEffectRenderer):
(WebCore::SVGFilterBuilder::appendEffectToEffectReferences): Deleted.
(WebCore::SVGFilterBuilder::clearEffects): Deleted.
(WebCore::SVGFilterBuilder::clearResultsRecursive): Deleted.
- svg/graphics/filters/SVGFilterBuilder.h:
(WebCore::SVGFilterBuilder::lastEffect const): Deleted.
(WebCore::SVGFilterBuilder::effectReferences): Deleted.
(WebCore::SVGFilterBuilder::addBuiltinEffects): Deleted.
Source/WebKit:
- GPUProcess/graphics/RemoteDisplayListRecorder.cpp:
(WebKit::RemoteDisplayListRecorder::drawFilteredImageBuffer):
- 1:52 PM Changeset in webkit [287781] by
-
- 19 edits in trunk/Source
[Cocoa] Web Driver: WebSocket over TLS failing over WebDriver with acceptInsecureCerts on Big Sur
https://bugs.webkit.org/show_bug.cgi?id=234403
Reviewed by BJ Burg.
Source/WebCore:
- page/SocketProvider.cpp:
(WebCore::SocketProvider::createSocketStreamHandle):
- platform/network/cf/SocketStreamHandleImpl.h:
(WebCore::SocketStreamHandleImpl::create):
- platform/network/cf/SocketStreamHandleImplCFNet.cpp:
(WebCore::SocketStreamHandleImpl::SocketStreamHandleImpl):
(WebCore::SocketStreamHandleImpl::createStreams):
- platform/network/curl/SocketStreamHandleImpl.h:
(WebCore::SocketStreamHandleImpl::create):
- platform/network/soup/SocketStreamHandleImpl.h:
Source/WebKit:
macOS Big Sur and earlier do not use NSURLSession-based WebSockets, so we need a way to allow insecure
certificates under automation that does not rely on theWKNavigationDelegateto determine if an
authentication challenge should be accepted. In order to accomplish this we now plumb through an
_shouldAcceptInsecureCertificatesForWebSocketsvalue from_WKAutomationSessionConfigurationto
SocketStreamHandleImplCFNeton platforms that do notHAVE(NSURLSESSION_WEBSOCKET), which allows automation
clients to enable this behavior when theacceptInsecureCertscapability is set on a session.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::createSocketStream):
- NetworkProcess/NetworkSession.cpp:
(WebKit::NetworkSession::NetworkSession):
- NetworkProcess/NetworkSession.h:
(WebKit::NetworkSession::shouldAcceptInsecureCertificatesForWebSockets const):
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):
- NetworkProcess/NetworkSessionCreationParameters.h:
- NetworkProcess/NetworkSocketStream.cpp:
(WebKit::NetworkSocketStream::create):
(WebKit::NetworkSocketStream::NetworkSocketStream):
- NetworkProcess/NetworkSocketStream.h:
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h:
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:
(-[_WKWebsiteDataStoreConfiguration _shouldAcceptInsecureCertificatesForWebSockets]):
(-[_WKWebsiteDataStoreConfiguration _setShouldAcceptInsecureCertificatesForWebSockets:]):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::copy const):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
(WebKit::WebsiteDataStoreConfiguration::shouldAcceptInsecureCertificatesForWebSockets const):
(WebKit::WebsiteDataStoreConfiguration::setShouldAcceptInsecureCertificatesForWebSockets):
- 1:25 PM Changeset in webkit [287780] by
-
- 3 edits in trunk/LayoutTests
Unreviewed, rebaseline imported/w3c/web-platform-tests/html/dom/idlharness.https.html properly on iOS platforms.
- platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- platform/ipad/imported/w3c/web-platform-tests/html/dom/idlharness.https-expected.txt:
- 1:16 PM Changeset in webkit [287779] by
-
- 3 edits2 adds in trunk
Inline blocks that contain text with min-width, box-sizing: border-box incorrectly include the border in width calculation
https://bugs.webkit.org/show_bug.cgi?id=234935
<rdar://problem/87217423>
Reviewed by Antti Koivisto.
Source/WebCore:
The block formatting context root takes care of applying the the min/max-width constraints.
Test: fast/inline/min-max-width-and-preferred-width.html
- layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::computedIntrinsicWidthConstraintsForIntegration): remove redundant min/max-width checking.
LayoutTests:
- fast/inline/min-max-width-and-preferred-width-expected.html: Added.
- fast/inline/min-max-width-and-preferred-width.html: Added.
- 1:09 PM Changeset in webkit [287778] by
-
- 2 edits in trunk/Source/WebCore
WebAccessibilityObjectWrapper accessibilityHitTest should call AXCoreObject::widget() on the main thread.
https://bugs.webkit.org/show_bug.cgi?id=234973
<rdar://problem/87264153>
Reviewed by Chris Fleizach.
In isolated tree mode, the AX object widget() method and any subsequent
access to the returned value must be dispatch to the main thread.
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityHitTest:]):
- 12:28 PM Changeset in webkit [287777] by
-
- 7 edits in trunk
Teach modal container observer to make the body element scrollable if necessary
https://bugs.webkit.org/show_bug.cgi?id=234708
rdar://86960677
Reviewed by Tim Horton.
Source/WebCore:
Add a mechanism to allow ModalContainerObserver to force the body and/or document elements in the main document
to become vertically scrollable, in the case where a modal container has been detected.
In particular, if a modal container has already been detected and hidden away, the frame is non-scrollable, and
the body and/or document element satisfies both conditions:
- Has a height that is taller than the visible height of the top FrameView
- Has
overflow-y: hidden;
...then we'll flag one or both of those elements and force them to be vertically scrollable during style
adjustment (i.e. returntruefromshouldMakeVerticallyScrollable()).
Covered by augmenting an existing API test:
ModalContainerObservation.HideUserInteractionBlockingElementAndMakeDocumentScrollable
- page/ModalContainerObserver.cpp:
(WebCore::ModalContainerObserver::setContainer):
(WebCore::ModalContainerObserver::collectClickableElementsTimerFired):
(WebCore::ModalContainerObserver::makeBodyAndDocumentElementScrollableIfNeeded):
Helper method that contains logic for overriding scrollability on the body or html element, if needed.
(WebCore::ModalContainerObserver::clearScrollabilityOverrides):
(WebCore::ModalContainerObserver::hideUserInteractionBlockingElementIfNeeded):
Drive-by fix:
targetis just a raw pointer here, so just assign it directly tofoundElementinstead of
trying to use move semantics.
(WebCore::ModalContainerObserver::revealModalContainer):
(WebCore::ModalContainerObserver::shouldMakeVerticallyScrollable const):
Add a helper method (similar to
shouldHide()) that can be used to make elements vertically scrollable during
style adjustment time. See above for more details.
(WebCore::ModalContainerObserver::tryToMakeBodyAndDocumentElementScrollableThroughQuirks):
- page/ModalContainerObserver.h:
- style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjust const):
Consult
shouldMakeVerticallyScrollablein addition toshouldHideifModalContainerObserveris present.
Tools:
Adjust an existing API test to exercise the change.
- TestWebKitAPI/Tests/WebKit/modal-container-with-overlay.html:
- TestWebKitAPI/Tests/WebKitCocoa/ModalContainerObservation.mm:
(TestWebKitAPI::TEST):
- 12:20 PM Changeset in webkit [287776] by
-
- 2 edits in trunk/Source/WebInspectorUI
Uncaught Exception: Cannot step over because debugger is not paused
https://bugs.webkit.org/show_bug.cgi?id=234575
Reviewed by Devin Rousso.
Previously keyboard shortcuts for advancing the debugger did not check to make sure that the debugger was
actually paused before attempting to step. This led to an uncaught exception in engineering builds. We now
enable and disable these keyboard shortcuts based on the whether or not the debugger is currently paused.
- UserInterface/Base/Main.js:
- 11:57 AM Changeset in webkit [287775] by
-
- 3 edits in trunk/Source/WebKit
Web process shouldn't crash if ImageBuffer::ensureBackendCreated() fails
https://bugs.webkit.org/show_bug.cgi?id=232520
<rdar://problem/84829717>
Reviewed by Simon Fraser.
Guard against the possibility of it returning null.
No new tests because there shouldn't be any behavior change after https://bugs.webkit.org/show_bug.cgi?id=232470.
It's still good to do this, though, to be defensive.
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::encode const):
- WebProcess/GPU/graphics/RemoteImageBufferProxy.h:
(WebKit::RemoteImageBufferProxy::createImageBufferBackendHandle):
- 11:48 AM Changeset in webkit [287774] by
-
- 3 edits in trunk/Source/WebKit
ImageBuffer with floating point logicalSize() paints into a slightly truncated destination rect
https://bugs.webkit.org/show_bug.cgi?id=225377
Reviewed by Tim Horton.
This is the rest of https://bugs.webkit.org/show_bug.cgi?id=232470.
This is also a follow-up of https://bugs.webkit.org/show_bug.cgi?id=232515.
No new tests; the behavior change is covered by
fast/backgrounds/hidpi-bitmap-background-origin-on-subpixel-position.html
since Tim Horton reverted the workaround for this bug that he landed in r276945.
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::drawInContext):
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::createRemoteImageBuffer):
- 11:46 AM Changeset in webkit [287773] by
-
- 2 edits in trunk/Tools
REGRESSION: TestWebKitAPI.PublicSuffix.IsPublicSuffix is failing on some bots
https://bugs.webkit.org/show_bug.cgi?id=234609
Unreviewed test gardening.
- TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp:
(TestWebKitAPI::TEST_F): Disable failing subtest.
- 11:38 AM Changeset in webkit [287772] by
-
- 7 edits in trunk/Source/WebCore
Make separate invalidation rulesets for negated selectors (inside :not())
https://bugs.webkit.org/show_bug.cgi?id=234959
Reviewed by Darin Adler.
Use this information to reduce traversal on class changes. Other mutations will follow.
- style/ClassChangeInvalidation.cpp:
(WebCore::Style::collectClasses):
(WebCore::Style::computeClassChanges):
(WebCore::Style::ClassChangeInvalidation::computeInvalidation):
Adding a class can only make a regular selector (not inside :not()) start matching.
Adding a class can only make a negated selector (inside :not()) stop matching.
We only need to invalidate for the first case after the mutation has happened and for the second
case before it happens.
These are reversed when removing a class.
(WebCore::Style::ClassChangeInvalidation::invalidateBeforeChange):
(WebCore::Style::ClassChangeInvalidation::invalidateAfterChange):
(WebCore::Style::computeClassChange): Deleted.
(WebCore::Style::ClassChangeInvalidation::invalidateStyleWithRuleSets): Deleted.
- style/ClassChangeInvalidation.h:
(WebCore::Style::ClassChangeInvalidation::ClassChangeInvalidation):
(WebCore::Style::ClassChangeInvalidation::~ClassChangeInvalidation):
- style/RuleFeature.cpp:
(WebCore::Style::RuleFeature::RuleFeature):
(WebCore::Style::RuleFeatureWithInvalidationSelector::RuleFeatureWithInvalidationSelector):
(WebCore::Style::RuleFeatureSet::recursivelyCollectFeaturesFromSelector):
Compute the negation state. :not(foo) is negated, :not(:not(foo)) isn't.
(WebCore::Style::RuleFeatureSet::collectFeatures):
- style/RuleFeature.h:
(WebCore::Style::RuleFeatureWithInvalidationSelector::RuleFeatureWithInvalidationSelector): Deleted.
- style/StyleScopeRuleSets.cpp:
(WebCore::Style::ensureInvalidationRuleSets):
Make separate ruleset.
- style/StyleScopeRuleSets.h:
- 11:34 AM Changeset in webkit [287771] by
-
- 2 edits in trunk/Source/WebCore
nullptr deref in ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded
https://bugs.webkit.org/show_bug.cgi?id=234018
Patch by Gabriel Nava Marino <gnavamarino@apple.com> on 2022-01-07
Reviewed by Darin Adler.
In RenderBlockFlow::subtreeContainsFloat and RenderBlockFlow::subtreeContainsFloats we now will
use a non-recursive iterator and return true when we find something, or then return false at the
end of the function.
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::subtreeContainsFloat const):
(WebCore::RenderBlockFlow::subtreeContainsFloats const):
- 11:24 AM Changeset in webkit [287770] by
-
- 59 edits in trunk
Unreviewed, reverting r287698.
Broke an internal build
Reverted changeset:
"Start using C++20"
https://bugs.webkit.org/show_bug.cgi?id=233963
https://commits.webkit.org/r287698
- 11:22 AM Changeset in webkit [287769] by
-
- 7 edits in trunk
Inserting a new @keyframes rule does not start animations that already used this name
https://bugs.webkit.org/show_bug.cgi?id=234955
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Mark WPT progression.
- web-platform-tests/css/css-animations/Element-getAnimations.tentative-expected.txt:
Source/WebCore:
In bug 234895, we added logic to handle the case where an existing @keyframes rule was manipulated
via the CSSOM API and ensured this would update the keyframes of any existing CSSAnimation currently
referencing this @keyframes rule.
Another WPT tests the case where a @keyframes rule is referenced by an animation prior to existing
in the stylesheet, adding that named @keyframes rule, and then testing a CSSAnimation was created.
To handle this case, we need to track which animation names were ignored during style resolution
due not matching an existing @keyframes rule. We now manage a list of invalid CSS animation names
stored on the KeyframeEffectStack (where we also keep track of the AnimationList last seen during
style resolution) and use that to determine when, even though the previous and current AnimationList
contain the same data, a previously-ignored animation should now be processed due to its referenced
@keyframes rule now existing.
- animation/KeyframeEffectStack.cpp:
(WebCore::KeyframeEffectStack::clearInvalidCSSAnimationNames):
(WebCore::KeyframeEffectStack::hasInvalidCSSAnimationNames const):
(WebCore::KeyframeEffectStack::containsInvalidCSSAnimationName const):
(WebCore::KeyframeEffectStack::addInvalidCSSAnimationName):
- animation/KeyframeEffectStack.h:
- style/Styleable.cpp:
(WebCore::keyframesRuleExistsForAnimation):
(WebCore::Styleable::animationListContainsNewlyValidAnimation const):
(WebCore::Styleable::updateCSSAnimations const):
(WebCore::shouldConsiderAnimation): Deleted.
- style/Styleable.h:
- 11:21 AM Changeset in webkit [287768] by
-
- 4 edits in trunk
Unreviewed, reverting r287718.
Broke an internal build
Reverted changeset:
"[PlayStation] Fix build break after r287698"
https://bugs.webkit.org/show_bug.cgi?id=234931
https://commits.webkit.org/r287718
- 11:04 AM Changeset in webkit [287767] by
-
- 1 copy in tags/Safari-613.1.12.1.4
Tag Safari-613.1.12.1.4.
- 10:59 AM Changeset in webkit [287766] by
-
- 2 edits in branches/safari-613.1.12.1-branch/Source/WebKit
Cherry-pick r287754. rdar://problem/87228791
[MacCatalyst] Add required syscall
https://bugs.webkit.org/show_bug.cgi?id=234962
<rdar://87228791>
Reviewed by Brent Fulgham.
Add required syscall in MacCatalyst sandbox.
- WebProcess/com.apple.WebProcess.sb.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:58 AM Changeset in webkit [287765] by
-
- 9 edits in branches/safari-613.1.12.1-branch/Source
Versioning.
WebKit-7613.1.12.1.4
- 10:56 AM Changeset in webkit [287764] by
-
- 4 edits in trunk
Transitions without an explicit property-name should not be considered
https://bugs.webkit.org/show_bug.cgi?id=234960
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Mark WPT progression.
- web-platform-tests/css/css-transitions/events-004-expected.txt:
Source/WebCore:
When we fill the transition-property to match the number of another
transition-
property, we should not consider running a transition for that property.
- style/Styleable.cpp:
(WebCore::transitionMatchesProperty):
- 10:53 AM Changeset in webkit [287763] by
-
- 16 edits in trunk/Source
Use completion handlers for takeAllMessagesForPort methods
https://bugs.webkit.org/show_bug.cgi?id=234947
Reviewed by Chris Dumez.
Source/WebCore:
Covered by existing tests.
- dom/MessagePort.cpp:
- dom/messageports/MessagePortChannel.cpp:
- dom/messageports/MessagePortChannel.h:
- dom/messageports/MessagePortChannelProvider.h:
- dom/messageports/MessagePortChannelProviderImpl.cpp:
- dom/messageports/MessagePortChannelProviderImpl.h:
- dom/messageports/MessagePortChannelRegistry.cpp:
- dom/messageports/MessagePortChannelRegistry.h:
- dom/messageports/WorkerMessagePortChannelProvider.cpp:
- dom/messageports/WorkerMessagePortChannelProvider.h:
Source/WebKit:
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
- NetworkProcess/NetworkConnectionToWebProcess.h:
- WebProcess/WebCoreSupport/WebMessagePortChannelProvider.cpp:
- WebProcess/WebCoreSupport/WebMessagePortChannelProvider.h:
- 10:48 AM Changeset in webkit [287762] by
-
- 6 edits in trunk/Source/WebCore
Expose iterators on AnimationList
https://bugs.webkit.org/show_bug.cgi?id=234957
Reviewed by Antti Koivisto.
- animation/WebAnimationUtilities.cpp:
(WebCore::compareCSSAnimations):
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueListForAnimationOrTransitionProperty):
(WebCore::animationShorthandValue):
- css/makeprop.pl:
(generateAnimationPropertyInitialValueSetter):
- platform/animation/AnimationList.h:
(WebCore::AnimationList::begin const):
(WebCore::AnimationList::end const):
(WebCore::AnimationList::rbegin const):
(WebCore::AnimationList::rend const):
- style/Styleable.cpp:
(WebCore::Styleable::updateCSSAnimations const):
(WebCore::compileTransitionPropertiesInStyle):
(WebCore::updateCSSTransitionsForStyleableAndProperty):
- 10:46 AM Changeset in webkit [287761] by
-
- 2 edits in trunk/Source/WebCore
Values in WebAnimation::instances should not be null-checked
https://bugs.webkit.org/show_bug.cgi?id=234948
Reviewed by Darin Adler.
The HashSet<WebAnimation*> returned by WebAnimation::instances() cannnot hold nullptr
values so we should not have any check for a null value when iterating over its values.
- dom/Document.cpp:
(WebCore::Document::matchingAnimations):
(WebCore::Document::keyframesRuleDidChange):
- 10:44 AM Changeset in webkit [287760] by
-
- 4 edits in trunk
Allow storing form data responses in Cache Storage
https://bugs.webkit.org/show_bug.cgi?id=234881
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- web-platform-tests/service-workers/cache-storage/window/cache-put.https-expected.txt:
Source/WebCore:
Covered by rebased tests.
- Modules/cache/DOMCache.cpp:
(WebCore::DOMCache::put):
- 10:43 AM Changeset in webkit [287759] by
-
- 4 edits in trunk
Expose rvfc processingDuration for the WebRTC code path
https://bugs.webkit.org/show_bug.cgi?id=234949
Reviewed by Eric Carlson.
Source/WebCore:
This processing duration is the time it took for an assembled frame to be decoded and sent to RealtimIncomingVideoSource.
This duration can be approximately retrieved from WebRTC encoded transform (time for the assembled frame, aka time just before decoding)
and the time at which it is exposed by requestVideoFrameCallback (aka time just after decoding).
The processing duration is rounded in milliseconds.
Covered by updated test.
- platform/mediastream/RealtimeIncomingVideoSource.cpp:
LayoutTests:
- webrtc/peerConnection-rvfc.html:
- 10:36 AM Changeset in webkit [287758] by
-
- 10 edits in trunk/Source/JavaScriptCore
[JSC] Clean up StructureStubInfo
https://bugs.webkit.org/show_bug.cgi?id=234943
Reviewed by Saam Barati.
Use std::unique_ptr<PolymorphicAccess> instead of raw pointer.
- bytecode/CheckPrivateBrandStatus.cpp:
(JSC::CheckPrivateBrandStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/DeleteByStatus.cpp:
(JSC::DeleteByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/GetByStatus.cpp:
(JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InByStatus.cpp:
(JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InstanceOfStatus.cpp:
(JSC::InstanceOfStatus::computeForStubInfo):
- bytecode/PutByStatus.cpp:
(JSC::PutByStatus::computeForStubInfo):
- bytecode/SetPrivateBrandStatus.cpp:
(JSC::SetPrivateBrandStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::aboutToDie):
(JSC::StructureStubInfo::addAccessCase):
(JSC::StructureStubInfo::visitAggregateImpl):
(JSC::StructureStubInfo::visitWeakReferences):
(JSC::StructureStubInfo::propagateTransitions):
(JSC::StructureStubInfo::summary const):
(JSC::StructureStubInfo::containsPC const):
(JSC::StructureStubInfo::~StructureStubInfo): Deleted.
- bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::offsetOfCodePtr):
(JSC::StructureStubInfo::offsetOfDoneLocation):
(JSC::StructureStubInfo::offsetOfSlowPathStartLocation):
(JSC::StructureStubInfo::offsetOfSlowOperation):
(JSC::StructureStubInfo::offsetOfCountdown):
- 10:06 AM Changeset in webkit [287757] by
-
- 8 edits2 adds in trunk
REGRESSION (Safari 14): background-attachment: local does not work
https://bugs.webkit.org/show_bug.cgi?id=219324
Source/WebCore:
<rdar://71808922>
Reviewed by Antti Koivisto.
With async overflow scrolling, we need to trigger a repaint if the scrolling element
has any background layer withbackground-attachment: local.
The background won't always be synchronized with the scrolling, but a little jitter
is better than a broken CSS behavior (and this is what Firefox does).
Test: fast/repaint/background-attachment-local-scroll.html
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::needsRepaintOnCompositedScroll const):
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::hasAnyLocalBackground const):
- rendering/style/RenderStyle.h:
LayoutTests:
Reviewed by Antti Koivisto.
Skip the test on platforms without async overflow scroll.
- TestExpectations:
- fast/repaint/background-attachment-local-scroll-expected.txt: Added.
- fast/repaint/background-attachment-local-scroll.html: Added.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 10:04 AM Changeset in webkit [287756] by
-
- 5 edits2 adds in trunk
Implement CSP strict-dynamic for module scripts
https://bugs.webkit.org/show_bug.cgi?id=234934
<rdar://problem/83728374>
Reviewed by Brent Fulgham.
Source/WebCore:
Test: http/tests/security/contentSecurityPolicy/strict-dynamic-module-script.html
This also adds the contextLine value instead of using the default
OrdinalNumber::beforeFirst() value.
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestClassicScript):
(WebCore::ScriptElement::requestModuleScript):
(WebCore::ScriptElement::executeClassicScript):
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::allowNonParserInsertedScripts const):
- page/csp/ContentSecurityPolicy.h:
LayoutTests:
- http/tests/security/contentSecurityPolicy/strict-dynamic-module-script-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/strict-dynamic-module-script.html: Added.
- 9:44 AM Changeset in webkit [287755] by
-
- 3 edits in trunk/Source/WebKit
Clean up FullscreenClient
https://bugs.webkit.org/show_bug.cgi?id=233076
Reviewed by Jer Noble.
This patch is a follow-up to r285741.
- Get rid of
WKFullscreenClientViewand useWKWebViewinstead.
- UIProcess/Cocoa/FullscreenClient.h:
- UIProcess/Cocoa/FullscreenClient.mm:
(WebKit::FullscreenClient::FullscreenClient):
(WebKit::FullscreenClient::willEnterFullscreen):
(WebKit::FullscreenClient::didEnterFullscreen):
(WebKit::FullscreenClient::willExitFullscreen):
(WebKit::FullscreenClient::didExitFullscreen):
- 9:37 AM Changeset in webkit [287754] by
-
- 2 edits in trunk/Source/WebKit
[MacCatalyst] Add required syscall
https://bugs.webkit.org/show_bug.cgi?id=234962
<rdar://87228791>
Reviewed by Brent Fulgham.
Add required syscall in MacCatalyst sandbox.
- WebProcess/com.apple.WebProcess.sb.in:
- 9:32 AM Changeset in webkit [287753] by
-
- 3 edits2 adds in trunk
Checkboxes on PurpleAir map controls are much smaller in Safari than other browsers
https://bugs.webkit.org/show_bug.cgi?id=234897
rdar://83367191
Reviewed by Darin Adler.
Source/WebCore:
Unlike other browser engines, WebKit adjusts the size of checkboxes and
radio buttons based on the font-size of the element, when the size is
unspecified. The checkboxes on PurpleAir have a font-size of 9px, which
results in WebKit painting a checkbox using NSControlSizeMini (with a
length of 10px). In constrast, Chrome and Firefox simply use their
default sizes (13px and 12.6px respectively).
To fix, remove the font-size adjustments for checkboxes and radio
buttons with an unspecified size, and use the current effective
default of NSControlSizeSmall (with a length of 12px) to paint the
controls.
This ensures our unspecified sizing behavior matches other browsers.
There may be some risk for other WebKit clients that currently rely
on font-size getting them their desired size. However, this risk is
believed to be minimal given the sizes of these controls are already
restricted to a 10 - 16px range.
Test: fast/forms/checkbox-radio-font-size.html
- platform/mac/ThemeMac.mm:
(WebCore::checkboxSize):
(WebCore::radioSize):
(WebCore::ThemeMac::controlSize const):
LayoutTests:
- fast/forms/checkbox-radio-font-size-expected.html: Added.
- fast/forms/checkbox-radio-font-size.html: Added.
- 9:27 AM Changeset in webkit [287752] by
-
- 3 edits in trunk/LayoutTests
[GTK] Regression in inspector/audit/run-resources.html
https://bugs.webkit.org/show_bug.cgi?id=196196
Reviewed by Chris Lord.
Fix JavaScript file MIME type check by comparing to 'text/javascript' or 'application/javascript'.
- inspector/audit/run-resources.html:
- platform/gtk/TestExpectations:
- 9:19 AM Changeset in webkit [287751] by
-
- 4 edits4 adds in branches/safari-612.4.9.3-branch
Cherry-pick r287604. rdar://problem/85966622
Protect frame from destruction in HTMLMediaElement::setupAndCallJS
https://bugs.webkit.org/show_bug.cgi?id=234259
Patch by Frédéric Wang <fwang@igalia.com> on 2022-01-04
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/media/media-element-frame-destroyed-crash.html
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setupAndCallJS): Protect the frame before executing the JS code, so that it is not destroyed before its associated ScriptController.
LayoutTests:
Add non-regression test, embedded in multiple iframes to make regression easily reproducible.
- http/conf/mime.types: Ensure that ts files are served with MIME type video/mp2t as that's required to make the non-regression test work properly.
- http/tests/media/media-element-frame-destroyed-crash-expected.txt: Added.
- http/tests/media/media-element-frame-destroyed-crash.html: Added.
- http/tests/media/resources/empty.ts: Added.
- http/tests/media/resources/media-element-frame-destroyed-crash-subframe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:17 AM Changeset in webkit [287750] by
-
- 8 edits in branches/safari-612.4.9.3-branch/Source
Versioning.
WebKit-7612.4.9.3.1
- 8:55 AM Changeset in webkit [287749] by
-
- 4 edits4 adds in branches/safari-612.4.9.2-branch
Cherry-pick r287604. rdar://problem/85966622
Protect frame from destruction in HTMLMediaElement::setupAndCallJS
https://bugs.webkit.org/show_bug.cgi?id=234259
Patch by Frédéric Wang <fwang@igalia.com> on 2022-01-04
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/media/media-element-frame-destroyed-crash.html
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setupAndCallJS): Protect the frame before executing the JS code, so that it is not destroyed before its associated ScriptController.
LayoutTests:
Add non-regression test, embedded in multiple iframes to make regression easily reproducible.
- http/conf/mime.types: Ensure that ts files are served with MIME type video/mp2t as that's required to make the non-regression test work properly.
- http/tests/media/media-element-frame-destroyed-crash-expected.txt: Added.
- http/tests/media/media-element-frame-destroyed-crash.html: Added.
- http/tests/media/resources/empty.ts: Added.
- http/tests/media/resources/media-element-frame-destroyed-crash-subframe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:54 AM Changeset in webkit [287748] by
-
- 4 edits4 adds in branches/safari-612.4.9.0-branch
Cherry-pick r287604. rdar://problem/85966622
Protect frame from destruction in HTMLMediaElement::setupAndCallJS
https://bugs.webkit.org/show_bug.cgi?id=234259
Patch by Frédéric Wang <fwang@igalia.com> on 2022-01-04
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/media/media-element-frame-destroyed-crash.html
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setupAndCallJS): Protect the frame before executing the JS code, so that it is not destroyed before its associated ScriptController.
LayoutTests:
Add non-regression test, embedded in multiple iframes to make regression easily reproducible.
- http/conf/mime.types: Ensure that ts files are served with MIME type video/mp2t as that's required to make the non-regression test work properly.
- http/tests/media/media-element-frame-destroyed-crash-expected.txt: Added.
- http/tests/media/media-element-frame-destroyed-crash.html: Added.
- http/tests/media/resources/empty.ts: Added.
- http/tests/media/resources/media-element-frame-destroyed-crash-subframe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:52 AM Changeset in webkit [287747] by
-
- 8 edits in branches/safari-612.4.9.2-branch/Source
Versioning.
WebKit-7612.4.9.2.1
- 8:47 AM Changeset in webkit [287746] by
-
- 4 edits4 adds in branches/safari-612.4.9.1-branch
Cherry-pick r287604. rdar://problem/85966622
Protect frame from destruction in HTMLMediaElement::setupAndCallJS
https://bugs.webkit.org/show_bug.cgi?id=234259
Patch by Frédéric Wang <fwang@igalia.com> on 2022-01-04
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/media/media-element-frame-destroyed-crash.html
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setupAndCallJS): Protect the frame before executing the JS code, so that it is not destroyed before its associated ScriptController.
LayoutTests:
Add non-regression test, embedded in multiple iframes to make regression easily reproducible.
- http/conf/mime.types: Ensure that ts files are served with MIME type video/mp2t as that's required to make the non-regression test work properly.
- http/tests/media/media-element-frame-destroyed-crash-expected.txt: Added.
- http/tests/media/media-element-frame-destroyed-crash.html: Added.
- http/tests/media/resources/empty.ts: Added.
- http/tests/media/resources/media-element-frame-destroyed-crash-subframe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@287604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:45 AM Changeset in webkit [287745] by
-
- 8 edits in branches/safari-612.4.9.1-branch/Source
Versioning.
WebKit-7612.4.9.1.2
- 7:08 AM Changeset in webkit [287744] by
-
- 9 edits in trunk/Source/WebCore
[Cleanup] RenderElement::containingBlockFor*(fixed/absolute/inflow)Position is slightly confusing
https://bugs.webkit.org/show_bug.cgi?id=234939
Reviewed by Antti Koivisto.
These 3 helper functions (containingBlockForFixedPosition/containingBlockForAbsolutePosition/containingBlockForObjectInFlow)
are expected to return an ancestor renderer which would act as the containing block if the renderer was
fixed/absolute/inflow positioned (in their current form they should read as containingBlockIfTheRendererWasFixedPositioned..)
These functions were introduced as part of LogicalSelectionOffsetCaches where we cache all 3 types of
containing blocks (fixed/absolute/inflow) to save containingBlock() calls as the cached object gets propagated
to ancestor renderers (so we really have a "what if" type of use case).
After some refactoring (and moving them out of LogicalSelectionOffsetCaches), we started introducing more and more
callsites of these functions where the "what if" question made less sense.
This patch replaces these 3 functions with a static helper:
static RenderBlock* containingBlockForPositionType(PositionType, const RenderObject&);
While it does not make the callsites look much cleaner, it helps to stop the spread of the special containing block handling for top-layer/backdrop boxes.
- dom/Element.cpp:
(WebCore::layoutOverflowRectContainsAllDescendants):
- rendering/LogicalSelectionOffsetCaches.h:
(WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):
- rendering/RenderElement.cpp:
(WebCore::nearestNonAnonymousContainingBlockIncludingSelf): Deleted.
(WebCore::RenderElement::containingBlockForFixedPosition const): Deleted.
(WebCore::RenderElement::containingBlockForAbsolutePosition const): Deleted.
- rendering/RenderElement.h:
- rendering/RenderInline.cpp:
(WebCore::RenderInline::styleWillChange):
- rendering/RenderLineBreak.cpp:
(WebCore::RenderLineBreak::collectSelectionGeometries):
- rendering/RenderObject.cpp:
(WebCore::nearestNonAnonymousContainingBlockIncludingSelf):
(WebCore::RenderObject::containingBlockForPositionType):
(WebCore::RenderObject::containingBlock const):
(WebCore::RenderObject::containingBlockForObjectInFlow const): Deleted.
- rendering/RenderObject.h:
- 5:02 AM Changeset in webkit [287743] by
-
- 4 edits2 moves in trunk/Source/WebCore
[LBSE] Rename RenderSVGRect -> LegacyRenderSVGRect
https://bugs.webkit.org/show_bug.cgi?id=234878
Reviewed by Rob Buis.
Following the established procedure: rename RenderSVGRect -> LegacyRenderSVGRect.
In a follow-up patch RenderSVGRect will be reintroduced for LBSE, inheriting from
RenderSVGShape instead of LegacyRenderSVGShape.
Covered by existing tests, no change in behaviour.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- rendering/svg/LegacyRenderSVGRect.cpp: Renamed from Source/WebCore/rendering/svg/RenderSVGRect.cpp.
(WebCore::LegacyRenderSVGRect::LegacyRenderSVGRect):
(WebCore::LegacyRenderSVGRect::rectElement const):
(WebCore::LegacyRenderSVGRect::updateShapeFromElement):
(WebCore::LegacyRenderSVGRect::fillShape const):
(WebCore::LegacyRenderSVGRect::strokeShape const):
(WebCore::LegacyRenderSVGRect::shapeDependentStrokeContains):
(WebCore::LegacyRenderSVGRect::shapeDependentFillContains const):
(WebCore::LegacyRenderSVGRect::isRenderingDisabled const):
- rendering/svg/LegacyRenderSVGRect.h: Renamed from Source/WebCore/rendering/svg/RenderSVGRect.h.
- svg/SVGRectElement.cpp:
(WebCore::SVGRectElement::createElementRenderer):
- 12:45 AM Changeset in webkit [287742] by
-
- 16 edits in trunk
When transform-style: preserve-3d is used with a grouping property it should still create a containing block
https://bugs.webkit.org/show_bug.cgi?id=234145
<rdar://problem/86630387>
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-transforms/preserve-3d-flat-grouping-properties-containing-block-expected.txt:
Source/WebCore:
No new tests. This is covered by an existing WPT test.
Previously, when a grouping property (and the few extra properties specific to WebKit) forced
transform-style: flat, this change was made in the StyleAdjuster and affected computed style.
The specification says that these properties should actually adjust the used value of
the property.
The specification also says:
The use of this property with any value other than none establishes a
stacking context. It also establishes a containing block for all
descendants, just like the transform property does.
Together, this means that no matter what the used value is of transform-style, it should
establish a containing block and create a stacking context.
This change adds a usedTransformStyle RenderStyle method and a StyleRareNonInheritedData member
to adjust the return value appropriately. RenderStyle::preserves3D reads the used value
and hasTransformRelatedProperty, which is used for establishing containing blocks
and stacking contexts, uses the calculated value.
- rendering/RenderLayer.h:
(WebCore::RenderLayer::preserves3D const): Use usedTransformStyle.
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGeometry): This now calls preserve3D() and usedTransformStyle3D().
- rendering/RenderLayerCompositor.cpp:
(WebCore::recompositeChangeRequiresGeometryUpdate): Ditto.
(WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility const): Ditto.
(WebCore::RenderLayerCompositor::computeIndirectCompositingReason const): Ditto.
(WebCore::RenderLayerCompositor::styleChangeMayAffectIndirectCompositingReasons): Ditto.
(WebCore::RenderLayerCompositor::layerHas3DContent const): Ditto.
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresRecompositeLayer const): Ditto.
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::hasTransformRelatedProperty const): Modified to look at the calculated value explicitly.
(WebCore::RenderStyle::usedTransformStyle3D const): Return 'flat' when the property is forced to flat.
(WebCore::RenderStyle::preserves3D const): Look at the used value.
(WebCore::RenderStyle::setTransformStyleForcedToFlat): Added.
- rendering/style/StyleRareNonInheritedData.cpp: Added a new transformStyleForcedToFlat member.
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Ditto.
(WebCore::StyleRareNonInheritedData::operator== const): Ditto.
- rendering/style/StyleRareNonInheritedData.h:
- style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjust const): Call setTransformStyleForcedToFlat with the
appropriate value when an element has 'preserve-3d' set.
LayoutTests:
- compositing/overflow-trumps-transform-style-expected.txt:
- compositing/overflow-trumps-transform-style.html: Update to test used value and reflect that computed value doesn't change.
- css3/blending/blend-mode-transform-style-expected.txt:
- css3/blending/blend-mode-transform-style.html: Ditto.
- 12:28 AM Changeset in webkit [287741] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, removing duplicated code added in https://commits.webkit.org/245793@trunk.
- css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::didMutateRules):