Timeline
Dec 25, 2021:
- 10:16 PM Changeset in webkit [287442] by
-
- 4 edits in trunk/Source/WebCore
[LFC][IFC] Turn InlineContentBreaker::ContinuousContent's leading/trailing member variables to std::optional<InlineLayoutUnit>
https://bugs.webkit.org/show_bug.cgi?id=234676
Reviewed by Antti Koivisto.
While an empty (logical width = 0) ContinuousContent takes up no space, it should not be mistaken for collapsed content
(i.e when m_logicalWidth(0) == m_trailingCollapsibleWidth(0), hasCollapsibleContent() should still return false)
- layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::InlineContentBreaker::processOverflowingContent const):
(WebCore::Layout::InlineContentBreaker::tryBreakingOverflowingRun const):
(WebCore::Layout::InlineContentBreaker::tryBreakingPreviousNonOverflowingRuns const):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::appendToRunList): Add a dedicated function to deal with append and logicalWidth.
(WebCore::Layout::InlineContentBreaker::ContinuousContent::resetTrailingWhitespace): Turn trailing whitespace into leading if applicable.
(WebCore::Layout::InlineContentBreaker::ContinuousContent::append): Add dedicated functions for each inline item types.
- layout/formattingContexts/inline/InlineContentBreaker.h:
(WebCore::Layout::InlineContentBreaker::ContinuousContent::leadingCollapsibleWidth const):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::trailingCollapsibleWidth const):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::hasCollapsibleContent const):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::isFullyCollapsible const):
- layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineCandidate::InlineContent::appendInlineItem):
- 10:10 PM Changeset in webkit [287441] by
-
- 2 edits in trunk/LayoutTests
[iOS] Rebaselining after r287440.
Unreviewed.
- platform/ios/fast/borders/rtl-border-01-expected.txt: Progression. Content does not overflow the line anymore.
- 12:55 PM Changeset in webkit [287440] by
-
- 3 edits in trunk/Source/WebCore
[LFC][IFC] Remove redundant InlineContentBreaker::shouldKeepEndOfLineWhitespace
https://bugs.webkit.org/show_bug.cgi?id=234668
Reviewed by Antti Koivisto.
This is in preparation for moving pre-wrap checking out of InlineContentBreaker.
- layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::InlineContentBreaker::processOverflowingContent const):
(WebCore::Layout::InlineContentBreaker::shouldKeepEndOfLineWhitespace const): Deleted.
- layout/formattingContexts/inline/InlineContentBreaker.h:
- 11:18 AM Changeset in webkit [287439] by
-
- 2 edits in trunk
Add my github username to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=231666
Patch by Sergey Rubanov <Sergey Rubanov> on 2021-12-25
Reviewed by Alexey Proskuryakov.
- metadata/contributors.json:
- 10:34 AM Changeset in webkit [287438] by
-
- 2 edits in trunk/Source/WebCore
[LFC][IFC] Fully collapsible whitespace content should always stay on the current line
https://bugs.webkit.org/show_bug.cgi?id=234667
Reviewed by Antti Koivisto.
Fully collapsible trailing whitespace content (normal/nowrap/preline) gets removed at
the trimming phase so it always "fits" the current line.
This is also in preparation for decoupling removeable and hanging trailing content.
- layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::InlineContentBreaker::processOverflowingContent const):
- 7:36 AM Changeset in webkit [287437] by
-
- 5 edits in trunk/Source/WebCore
[LFC][IFC] InlineContentBreaker should know about the hanging content width
https://bugs.webkit.org/show_bug.cgi?id=234662
Reviewed by Antti Koivisto.
Pass in the trailing hanging content width to InlineContentBreaker as this specific type
of content (e.g. pre-wrap whitespace) should be ignored when checking for content fit.
(Note that we already ignore it through the shouldKeepEndOfLineWhitespace() call in
InlineContentBreaker::processOverflowingContent, but this patch is in preparation for making hanging content logic
more inline with the spec. -and also removing shouldKeepEndOfLineWhitespace needs some more changes.)
- layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::InlineContentBreaker::processOverflowingContent const):
- layout/formattingContexts/inline/InlineContentBreaker.h:
- layout/formattingContexts/inline/InlineLine.h:
(WebCore::Layout::Line::hangingTrailingContentWidth const):
(WebCore::Layout::Line::hangingWhitespaceWidth const): Deleted.
- layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineBuilder::layoutInlineContent):
(WebCore::Layout::LineBuilder::handleInlineContent):
- 2:13 AM Changeset in webkit [287436] by
-
- 3 edits in trunk/Source/WebKit
Unreviewed, reverting r285088.
https://bugs.webkit.org/show_bug.cgi?id=234680
From A/B test, we probably need to revert both, 285087 and
285088
Reverted changeset:
"Web process shouldn't crash if
ImageBuffer::ensureBackendCreated() fails"
https://bugs.webkit.org/show_bug.cgi?id=232520
https://commits.webkit.org/r285088
Dec 24, 2021:
- 6:22 PM Changeset in webkit [287435] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, remove -webkit-svg-shadow from CSSProperties.json
It's been unshipped since 2018, and most removed properties aren't kept in CSSProperties.json
(e.g. -webkit-border-fit, -webkit-background-composite, -webkit-margin-collapse).
There's not much point to keep it in there.
- css/CSSProperties.json:
- 6:03 PM Changeset in webkit [287434] by
-
- 23 edits3 deletes in trunk
Internally unprefix -webkit-font-kerning CSS property
https://bugs.webkit.org/show_bug.cgi?id=234673
Reviewed by Myles C. Maxfield.
Same to what was done in bug 234602 for text-emphasis CSS properties.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
Source/WebCore:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
- css/CSSProperties.json:
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):
- editing/cocoa/HTMLConverter.mm:
(HTMLConverter::computedAttributesForElement):
LayoutTests:
- fast/css/getComputedStyle/computed-style-expected.txt:
- fast/css/getComputedStyle/computed-style-font-family-expected.txt:
- fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- fast/css/getComputedStyle/resources/property-names.js:
- platform/glib/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/glib/fast/css/getComputedStyle/computed-style-font-family-expected.txt: Removed.
- platform/glib/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/glib/svg/css/getComputedStyle-basic-expected.txt:
- platform/ios/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/ios/fast/css/getComputedStyle/computed-style-font-family-expected.txt: Removed.
- platform/ios/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- platform/ios/svg/css/getComputedStyle-basic-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-font-family-expected.txt: Removed.
- platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/mac/svg/css/getComputedStyle-basic-expected.txt:
- svg/css/getComputedStyle-basic-expected.txt:
- 1:59 PM Changeset in webkit [287433] by
-
- 32 edits6 deletes in trunk
Remove non-standard -webkit-background-composite CSS property
https://bugs.webkit.org/show_bug.cgi?id=234661
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
Source/WebCore:
Allows removing the non-standard -webkit-mask-composite CSS values (which do not match the standard
mask-composite ones) more easily later on.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
- css/CSSProperties.json:
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumePrefixedMaskComposite):
(WebCore::consumeMaskComposite):
(WebCore::consumeBackgroundComponent):
(WebCore::CSSPropertyParser::parseSingleValue):
(WebCore::consumePrefixedBackgroundComposite): Deleted.
(WebCore::consumeBackgroundComposite): Deleted.
- rendering/RenderLayerBacking.cpp:
(WebCore::supportsDirectlyCompositedBoxDecorations):
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::backgroundRepeatY const):
(WebCore::RenderStyle::backgroundComposite const): Deleted.
Source/WebInspectorUI:
- UserInterface/Models/CSSKeywordCompletions.js:
LayoutTests:
- compositing/background-color/background-color-composite-expected.html: Removed.
- compositing/background-color/background-color-composite.html: Removed.
- fast/backgrounds/bgCompositeCopy-expected.txt: Removed.
- fast/backgrounds/bgCompositeCopy.html: Removed.
- fast/backgrounds/composite-highlight-is-invalid-expected.txt: Removed.
- fast/backgrounds/composite-highlight-is-invalid.html: Removed.
- fast/backgrounds/multiple-backgrounds-computed-style-expected.txt:
- fast/backgrounds/multiple-backgrounds-computed-style.html:
- fast/css/getComputedStyle/computed-style-expected.txt:
- fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- fast/css/getComputedStyle/resources/property-names.js:
- fast/multicol/body-stuck-with-dirty-bit-with-columns.html:
- platform/glib/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/glib/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/glib/svg/css/getComputedStyle-basic-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- platform/ios/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/ios/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- platform/ios/svg/css/getComputedStyle-basic-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/mac/svg/css/getComputedStyle-basic-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- svg/css/getComputedStyle-basic-expected.txt:
- 1:39 PM Changeset in webkit [287432] by
-
- 2 edits in trunk/Source/WebCore
[Win] MSVC reports "DownloadBundleWin.cpp(87): error C2362: initialization of 'magic' is skipped by 'goto exit'" with /std:c++20
https://bugs.webkit.org/show_bug.cgi?id=234504
<rdar://problem/86755997>
Reviewed by Darin Adler.
- platform/network/win/DownloadBundleWin.cpp:
(WebCore::DownloadBundle::appendResumeData): Use fclose directly.
(WebCore::DownloadBundle::extractResumeData): Ditto.
(WebCore::DownloadBundle::fileCloser): Deleted.
- 1:02 PM Changeset in webkit [287431] by
-
- 28 edits2 deletes in trunk
Apply the scroll delta in the "began" wheel event
https://bugs.webkit.org/show_bug.cgi?id=234645
Reviewed by Wenson Hsieh.
Source/WebCore:
ScrollingEffectsController::handleWheelEvent() previously early returned without applying
the delta in the "Began" event, which means that scrolling started a frame later than it
should have. For snappier scrolling in Safari, we should apply this delta.
- platform/ScrollSnapAnimatorState.cpp:
(WebCore::ScrollSnapAnimatorState::setupAnimationForState):
- platform/mac/ScrollingEffectsController.mm:
(WebCore::ScrollingEffectsController::handleWheelEvent):
Source/WebKit:
- Shared/WebWheelEventCoalescer.cpp:
(WebKit::WebWheelEventCoalescer::nextEventToDispatch): Fix logging typo.
LayoutTests:
Fix various test issues, and rebase tests affected by the change.
- fast/scrolling/iframe-scrollable-after-back.html:
- fast/scrolling/overflow-scrollable-after-back.html: Applying the delta from the "began" event caused
multiple scroll events to fire, triggering multiple navigations (previously, event coalescing would result in a single
scroll for multiple "changed" events).
Fix by using UIHelper.mouseWheelScrollAt() and logging the scroll only once.
- fast/scrolling/latching/iframe-latch-small-deltas-expected.txt: Accumulated offset includes "began" delta.
- fast/scrolling/latching/iframe-latch-small-deltas.html: Ditto
- fast/scrolling/latching/latching-and-wheel-events-expected.txt: Ditto
- fast/scrolling/latching/overflow-in-iframe-latching-expected.txt: Ditto
- fast/scrolling/mac/momentum-animator-in-overflow.html: Remove comment.
- fast/scrolling/mac/momentum-animator-maybegin-stops.html: Ditto
- fast/scrolling/mac/momentum-animator.html: Ditto
- fast/scrolling/mac/momentum-event-sequence-expected.txt: Accumulated offset includes "began" delta.
- fast/scrolling/mac/momentum-event-sequence.html: Accumulated offset includes "began" delta.
- fast/scrolling/mac/rubberband-overflow-in-wheel-region.html: Wheel event coalescing resulted in
unpredictable behavior, so ensure there is one.
- platform/mac-wk1/fast/scrolling/latching/iframe-latch-small-deltas-expected.txt: Removed.
- platform/mac-wk1/fast/scrolling/latching/latching-and-wheel-events-expected.txt: Accumulated offset includes "began" delta.
- platform/mac-wk1/fast/scrolling/latching/overflow-in-iframe-latching-expected.txt: Ditto
- scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow-expected.txt: Ditto
- scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow.html: Ditto
- tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler-expected.txt: Ditto
- tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-expected.txt: Ditto
- tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-with-handler-expected.txt: Ditto
- tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-2d-overflow.html: Test was designed with overlay scrollbars,
allowing for some between-snapoint slow that allowed an x delta to get applied. Fix to make room for scrollbars so that
snapping is always predictable.
- 12:20 PM Changeset in webkit [287430] by
-
- 8 edits in trunk
Unreviewed, r287356 followups and rebaselining for glib
Source/WebCore:
- css/html.css:
(rt): unprefix usage of -webkit-text-emphasis
- style/StyleBuilderCustom.h:
Sort per Darin Adler's comment
LayoutTests:
- platform/glib/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/glib/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/glib/svg/css/getComputedStyle-basic-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- 10:55 AM Changeset in webkit [287429] by
-
- 43 edits13 deletes in trunk
Remove non-standard -webkit-margin-collapse CSS property and longhands
https://bugs.webkit.org/show_bug.cgi?id=190788
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
Source/WebCore:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::operator MarginCollapse const): Deleted.
- css/CSSProperties.json:
- css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue const):
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):
- css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::parseShorthand):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::isSelfCollapsingBlock const):
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::MarginInfo::MarginInfo):
(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::collapseMarginsWithChildInfo):
(WebCore::RenderBlockFlow::clearFloatsIfNeeded):
(WebCore::RenderBlockFlow::marginBeforeEstimateForChild const):
(WebCore::RenderBlockFlow::estimateLogicalTopPosition):
(WebCore::RenderBlockFlow::setCollapsedBottomMargin):
(WebCore::RenderBlockFlow::handleAfterSideOfBlock):
(WebCore::RenderBlockFlow::setMustDiscardMarginBefore): Deleted.
(WebCore::RenderBlockFlow::setMustDiscardMarginAfter): Deleted.
(WebCore::RenderBlockFlow::mustDiscardMarginBefore const): Deleted.
(WebCore::RenderBlockFlow::mustDiscardMarginAfter const): Deleted.
(WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild const): Deleted.
(WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild const): Deleted.
(WebCore::RenderBlockFlow::mustSeparateMarginBeforeForChild const): Deleted.
(WebCore::RenderBlockFlow::mustSeparateMarginAfterForChild const): Deleted.
- rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
(WebCore::RenderBlockFlow::MarginInfo::setPositiveMargin):
(WebCore::RenderBlockFlow::MarginInfo::setNegativeMargin):
(WebCore::RenderBlockFlow::MarginInfo::setPositiveMarginIfLarger):
(WebCore::RenderBlockFlow::MarginInfo::setNegativeMarginIfLarger):
(WebCore::RenderBlockFlow::MarginInfo::setMargin):
(WebCore::RenderBlockFlow::MarginInfo::setCanCollapseMarginAfterWithChildren):
(WebCore::RenderBlockFlow::MarginInfo::negativeMargin const):
(WebCore::RenderBlockFlow::initMaxMarginValues):
(WebCore::RenderBlockFlow::MarginInfo::setDiscardMargin): Deleted.
(WebCore::RenderBlockFlow::MarginInfo::discardMargin const): Deleted.
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::textOverflow const):
(WebCore::RenderStyle::setTextOverflow):
(WebCore::RenderStyle::initialTextOverflow):
(WebCore::RenderStyle::marginBeforeCollapse const): Deleted.
(WebCore::RenderStyle::marginAfterCollapse const): Deleted.
(WebCore::RenderStyle::setMarginBeforeCollapse): Deleted.
(WebCore::RenderStyle::setMarginAfterCollapse): Deleted.
(WebCore::RenderStyle::initialMarginBeforeCollapse): Deleted.
(WebCore::RenderStyle::initialMarginAfterCollapse): Deleted.
- rendering/style/RenderStyleConstants.cpp:
- rendering/style/RenderStyleConstants.h:
- rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
Source/WebInspectorUI:
- UserInterface/Models/CSSKeywordCompletions.js:
LayoutTests:
For fast/multicol/offset-top-left.html, reproduced the same visual result without
-webkit-border-collapse: separate. Unfortunately, offsetTop/offsetLeft aren't correct
in flipped writing mode despite correct visual results.
Filed webkit.org/b/234664 for the issue (which was pre-existing this patch).
- fast/block/margin-collapse/webkit-margin-collapse-container-expected.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-container.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-floats-expected.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-floats.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-separate-position-expected.txt: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-separate-position.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-siblings-bt-expected.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-siblings-bt.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-siblings-expected.html: Removed.
- fast/block/margin-collapse/webkit-margin-collapse-siblings.html: Removed.
- fast/css/getComputedStyle/computed-style-expected.txt:
- fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- fast/css/getComputedStyle/resources/property-names.js:
- fast/css/getPropertyValue-webkit-margin-collapse-expected.txt: Removed.
- fast/css/getPropertyValue-webkit-margin-collapse.html: Removed.
- fast/css/inherit-initial-shorthand-values-expected.txt:
- fast/css/inherit-initial-shorthand-values.html:
- fast/css/remove-shorthand-expected.txt:
- fast/css/remove-shorthand.html:
- fast/multicol/offset-top-left-expected.txt:
- fast/multicol/offset-top-left.html:
- fast/text/text-combine-crash.html:
- platform/glib/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/glib/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/glib/svg/css/getComputedStyle-basic-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt: Removed.
- platform/ios/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/ios/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- platform/ios/svg/css/getComputedStyle-basic-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/mac/svg/css/getComputedStyle-basic-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- 9:06 AM Changeset in webkit [287428] by
-
- 2 edits in trunk/Source/WebCore
Simplify test for startOfLastParagraph in InsertListCommand::doApply
https://bugs.webkit.org/show_bug.cgi?id=234600
Patch by Frederic Wang <fwang@igalia.com> on 2021-12-24
Reviewed by Darin Adler.
Current test is !startOfLastParagraph.deepEquivalent().anchorNode()->isConnected(). It could
be replaced with the less verbose startOfLastParagraph.isOrphan() which is equivalent to
startOfLastParagraph.deepEquivalent().isOrphan() and so to the condition
startOfLastParagraph.deepEquivalent().anchorNode() &&
!startOfLastParagraph.deepEquivalent().anchorNode()->isConnected(). A difference can only
happen for a page where anchorNode() is a null pointer. In such a test case exists, then it
is already crashing with a null ptr deref anyway.
No new tests, behavior essentially unchanged.
- editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApply): Use startOfLastParagraph.isOrphan().
- 8:57 AM Changeset in webkit [287427] by
-
- 2 edits in trunk
Add pycache and DerivedData to the .gitignore file
https://bugs.webkit.org/show_bug.cgi?id=234656
Reviewed by Daniel Bates.
- .gitignore:
- 8:46 AM Changeset in webkit [287426] by
-
- 4 edits2 adds in trunk
On systems without CG support for alpha premultiplied gradients, the CGGradientRef path should still be used for the subset of gradients that can transformed
https://bugs.webkit.org/show_bug.cgi?id=234653
Reviewed by Simon Fraser.
Source/WebCore:
Test: fast/gradients/alpha-premultiplied-representable-by-unpremultiplied.html
Optimize gradient rendering on systems without a version of CoreGraphics that supports
alpha premultiplied gradients by using the CGGradientRef code path for the subset of
alpha premultiplied gradients that can be represented as alpha non-premultiplied gradients.
Two types of optimizations are possible for two classes of this subset:
- Any gradient that uses the same alpha value for all color stops can be used as is with the alpha non-premultiplied CGGradientRef.
- Any gradient that conforms to the rule that "any two consecutive color stops must either have one that is fully transparent or have the same alpha value for both" can be transformed into an identical alpha non-premultiplied gradient by transforming the fully transparent stops into either one or two stops. A comment in the code goes into much more detail about this.
- platform/graphics/cg/GradientRendererCG.cpp:
(WebCore::classifyAlphaType):
(WebCore::analyzeColorStopsForEmulatedAlphaPremuliplicationOppertunity):
(WebCore::alphaTransformStopsToEmulateAlphaPremuliplication):
(WebCore::GradientRendererCG::pickStrategy const):
LayoutTests:
Add tests of gradients that can render identically with both alpha premultiplied and non-premultiplied gradients
either using the same color stop list or a transformed one.
The main test page contains the alpha premultiplied gradients (which is the default now for CSS gradients), while
the -expected.html contains the alpha non-premultiplied gradients and has alpha premultiplied interpolation explicitly
disabled via a CSSGradientPremultipliedAlphaInterpolationEnabled=false comment command.
- fast/gradients/alpha-premultiplied-representable-by-unpremultiplied-expected.html: Added.
- fast/gradients/alpha-premultiplied-representable-by-unpremultiplied.html: Added.
- platform/glib/TestExpectations: Disable on non-CoreGraphics ports.
- 2:50 AM Changeset in webkit [287425] by
-
- 4 edits in trunk
[GTK][a11y] Expose live region attributes with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234637
Reviewed by Adrian Perez de Castro.
Source/WebCore:
- accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::attributes const):
Tools:
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSupported):
- 2:48 AM Changeset in webkit [287424] by
-
- 2 edits in trunk/Source/WebCore
[GTK][a11y] Expose the right roles for math elements with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234634
Reviewed by Adrian Perez de Castro.
This is missing with ATSPI causing all a11y mathml layout tests to fail.
- accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::atspiRole):
(WebCore::AccessibilityObjectAtspi::attributes const):
(WebCore::AccessibilityObjectAtspi::effectiveRole const):
(WebCore::AccessibilityObjectAtspi::effectiveRoleName const):
(WebCore::AccessibilityObjectAtspi::effectiveLocalizedRoleName const):
- 2:47 AM Changeset in webkit [287423] by
-
- 2 edits in trunk/Source/WebCore
[GTK][a11y] Expose list items with pseudo marker as List instead of Group with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234633
Reviewed by Adrian Perez de Castro.
This happens because pseudo markers don't have the ListMarker role, but StaticText that we ignore.
Fixes accessibility/list-detection2.html.
- accessibility/AccessibilityList.cpp:
(WebCore::AccessibilityList::childHasPseudoVisibleListItemMarkers): Add ATSPI ifdef too.