⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Aug 29, 2021:

10:01 PM Changeset in webkit [281752] by Diego Pino Garcia
  • 2 edits
    1 add in trunk/Tools

[GTK][WPE] Add ICU 63.1 to JHBuild minimal dependencies
https://bugs.webkit.org/show_bug.cgi?id=229607

Reviewed by Carlos Alberto Lopez Perez.

  • jhbuild/jhbuild-minimal.modules:
  • jhbuild/patches/icudata-stdlibs.patch: Added.
7:21 PM Changeset in webkit [281751] by Lauro Moura
  • 28 edits
    3 moves
    2 adds
    3 deletes in trunk/LayoutTests

[GLIB] Update fast/border baselines after r281724

Unreviewed test gardening.

  • platform/glib/fast/borders/border-fit-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/border-fit-expected.txt.
  • platform/glib/fast/borders/border-image-01-expected.txt:
  • platform/glib/fast/borders/border-image-longhand-expected.txt:
  • platform/glib/fast/borders/border-image-massive-scale-expected.txt:
  • platform/glib/fast/borders/border-image-omit-right-slice-expected.txt:
  • platform/glib/fast/borders/border-image-outset-expected.txt:
  • platform/glib/fast/borders/border-image-outset-in-shorthand-expected.txt:
  • platform/glib/fast/borders/border-image-outset-split-inline-expected.txt:
  • platform/glib/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt:
  • platform/glib/fast/borders/border-image-repeat-expected.txt:
  • platform/glib/fast/borders/border-image-rotate-transform-expected.txt:
  • platform/glib/fast/borders/border-image-scale-transform-expected.txt:
  • platform/glib/fast/borders/border-image-scaled-expected.txt:
  • platform/glib/fast/borders/border-image-scrambled-expected.txt:
  • platform/glib/fast/borders/border-image-side-reduction-expected.txt:
  • platform/glib/fast/borders/border-image-slice-constrained-expected.txt:
  • platform/glib/fast/borders/border-image-slices-expected.txt:
  • platform/glib/fast/borders/border-image-source-expected.txt:
  • platform/glib/fast/borders/border-image-trumps-radius-expected.txt: Added.
  • platform/glib/fast/borders/fieldsetBorderRadius-expected.txt: Renamed from LayoutTests/platform/gtk/fast/borders/fieldsetBorderRadius-expected.txt.
  • platform/glib/fast/borders/scaled-border-image-expected.txt:
  • platform/glib/fast/gradients/border-image-gradient-expected.txt: Added.
  • platform/glib/fast/hidpi/image-set-border-image-comparison-expected.txt:
  • platform/glib/fast/hidpi/image-set-border-image-dynamic-expected.txt: Renamed from LayoutTests/platform/gtk/fast/hidpi/image-set-border-image-dynamic-expected.txt.
  • platform/glib/fast/hidpi/image-set-border-image-simple-expected.txt:
  • platform/glib/fast/writing-mode/border-image-horizontal-bt-expected.txt:
  • platform/glib/fast/writing-mode/border-image-vertical-lr-expected.txt:
  • platform/glib/fast/writing-mode/border-image-vertical-rl-expected.txt:
  • platform/glib/svg/as-border-image/svg-as-border-image-2-expected.txt:
  • platform/glib/svg/as-border-image/svg-as-border-image-expected.txt:
  • platform/gtk/fast/borders/border-image-border-radius-expected.txt:
  • platform/wpe/fast/borders/border-fit-expected.txt: Removed.
  • platform/wpe/fast/borders/border-image-border-radius-expected.txt:
  • platform/wpe/fast/borders/fieldsetBorderRadius-expected.txt: Removed.
  • platform/wpe/fast/hidpi/image-set-border-image-dynamic-expected.txt: Removed.
7:19 PM Changeset in webkit [281750] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][IFC] Move "line needs integral snapping" computing to IFC from the integration layer
https://bugs.webkit.org/show_bug.cgi?id=229654

Reviewed by Antti Koivisto.

This is in preparation for merging the integration layer runs with IFC's display runs.
This also save a loop over the runs to compute the "line needs integration position" bit.

  • layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:

(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineContent):

  • layout/formattingContexts/inline/InlineLineGeometry.h:

(WebCore::Layout::LineGeometry::needsIntegralPosition const):
(WebCore::Layout::LineGeometry::setNeedsIntegralPosition):

  • layout/integration/LayoutIntegrationInlineContentBuilder.cpp:

(WebCore::LayoutIntegration::InlineContentBuilder::build const):
(WebCore::LayoutIntegration::InlineContentBuilder::createDisplayLineRuns const):
(WebCore::LayoutIntegration::InlineContentBuilder::createDisplayLines const):
(WebCore::LayoutIntegration::InlineContentBuilder::computeLineLevelVisualAdjustmentsForRuns const): Deleted.

  • layout/integration/LayoutIntegrationInlineContentBuilder.h:
5:53 PM Changeset in webkit [281749] by Wenson Hsieh
  • 3 edits
    2 moves in trunk/LayoutTests

Run tests in fast/forms/ios by default in EWS
https://bugs.webkit.org/show_bug.cgi?id=229656

Reviewed by Tim Horton.

Adjust test expectations so that tests added to fast/forms/ios run on (open source) iOS simulator test runners
in EWS.

  • platform/ios-14/TestExpectations:
  • platform/ios-wk2/TestExpectations:

Mark "fast/forms/ios" as PASS by default in the WebKit2 port on iOS, but add a few more expectations for tests
that are currently failing or flaky in non-internal iOS 14 simulator builds.

  • pointerevents/ios/inputmode-change-update-keyboard-after-pointerup-expected.txt: Renamed from LayoutTests/fast/forms/ios/inputmode-change-update-keyboard-after-pointerup-expected.txt.
  • pointerevents/ios/inputmode-change-update-keyboard-after-pointerup.html: Renamed from LayoutTests/fast/forms/ios/inputmode-change-update-keyboard-after-pointerup.html.

Move a layout tests that depends on pointer events ("pointerup" and "pointerdown") into
LayoutTests/pointerevents/ios, so that we don't start attempting to run this in OpenSource.

2:36 PM Changeset in webkit [281748] by ysuzuki@apple.com
  • 901 edits
    632 adds
    1 delete in trunk/JSTests

[JSC] Upgrade test262
https://bugs.webkit.org/show_bug.cgi?id=229645

Reviewed by Keith Miller.

Upgrade test262 to the latest one.

  • test262/expectations.yaml:
  • test262/latest-changes-summary.txt:
  • test262/test262-Revision.txt:
1:04 PM Changeset in webkit [281747] by Fujii Hironori
  • 2 edits in trunk/Source/WebKit

REGRESSION(r281102): ASSERTION FAILED: !isInAcceleratedCompositingMode() in DrawingAreaProxyCoordinatedGraphics::incorporateUpdate
https://bugs.webkit.org/show_bug.cgi?id=229228

Reviewed by Carlos Garcia Campos.

WinCairo WK2 layout tests were observing an assertion failure for
some animations tests since r281102.

DrawingAreaProxyCoordinatedGraphics::incorporateUpdate has an
assertion ensuring a DrawingAreaProxy::Update message isn't sent
during the compositing mode. However,
DrawingAreaCoordinatedGraphics sent a Update message before
sending ExitAcceleratedCompositingMode message in the following
scenario.

  1. DrawingAreaCoordinatedGraphics::exitAcceleratedCompositingMode calls DrawingAreaCoordinatedGraphics::display(WebKit::UpdateInfo&)
  2. It calls WebPage::updateRendering()
  3. It executes JavaScript
  4. It calls notifyDone
  5. It calls WTR::TestRunner::notifyDone which calls WKBundlePageForceRepaint
  6. It calls DrawingAreaCoordinatedGraphics::display() which dispatches the Update message

Send an ExitAcceleratedCompositingMode message instead of an
Update message if ExitAcceleratedCompositingMode isn't sent yet in
display().

  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:

(WebKit::DrawingAreaCoordinatedGraphics::forceRepaint):
(WebKit::DrawingAreaCoordinatedGraphics::display):

11:57 AM Changeset in webkit [281746] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][IFC] Add ink overflow to the line runs
https://bugs.webkit.org/show_bug.cgi?id=229653

Reviewed by Antti Koivisto.

Let's move the ink overflow computation from the integration layer to IFC.
This is in preparation for merging display runs (IFC) and the integration layer runs.

  • layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:

(WebCore::Layout::InlineDisplayContentBuilder::build):
(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineContent):
(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineSpanningInlineBoxes):

  • layout/formattingContexts/inline/InlineLineRun.h:

(WebCore::Layout::LineRun::inkOverflow const):
(WebCore::Layout::LineRun::LineRun):

  • layout/integration/LayoutIntegrationInlineContentBuilder.cpp:

(WebCore::LayoutIntegration::InlineContentBuilder::createDisplayLineRuns const):

10:38 AM Changeset in webkit [281745] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Nullptr crash in ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline
https://bugs.webkit.org/show_bug.cgi?id=229280

Patch by Rob Buis <rbuis@igalia.com> on 2021-08-29
Reviewed by Ryosuke Niwa.

Source/WebCore:

Null check context in removeRedundantStylesAndKeepStyleSpanInline
since the parent node can be null.

Test: editing/selection/replace-selection-crash-02.html

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):

LayoutTests:

  • editing/selection/replace-selection-crash-02-expected.txt: Added.
  • editing/selection/replace-selection-crash-02.html: Added.
9:10 AM Changeset in webkit [281744] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][IFC] Make line runs relative to the formatting root border box.
https://bugs.webkit.org/show_bug.cgi?id=229652

Reviewed by Antti Koivisto.

Let's construct the line runs relative to the border box of the inline formatting context root
(as opposed to relative to the line box), so that the integration runs could just copy their positions.

This is in preparation for merging line runs with the integration runs.

  • display/css/DisplayBoxFactory.cpp:

(WebCore::Display::BoxFactory::displayBoxForTextRun const):

  • layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:

(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineContent):
(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineSpanningInlineBoxes):

  • layout/integration/LayoutIntegrationInlineContentBuilder.cpp:

(WebCore::LayoutIntegration::InlineContentBuilder::createDisplayLineRuns const):

8:14 AM Changeset in webkit [281743] by keith_miller@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Add openFile function to jsc.cpp that links to file backed memory
https://bugs.webkit.org/show_bug.cgi?id=229621

Reviewed by Saam Barati.

This patch uses fopen directly rather than use WTF::MappedFileData so there were less changes to
readline.

  • jsc.cpp:

(computeFilePath):
(JSC_DEFINE_HOST_FUNCTION):
(JSFileDescriptor::subspaceFor):
(JSFileDescriptor::createStructure):
(JSFileDescriptor::create):
(JSFileDescriptor::finishCreation):
(JSFileDescriptor::destroy):
(JSFileDescriptor::descriptor const):
(JSFileDescriptor::JSFileDescriptor):
(JSFileDescriptor::~JSFileDescriptor):

6:52 AM Changeset in webkit [281742] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

[CSS Cascade Layers] Factor RuleSet building into a Builder type
https://bugs.webkit.org/show_bug.cgi?id=229655

Reviewed by Alan Bujtas.

Factor build time state into a stack-allocate type.

  • style/RuleSet.cpp:

(WebCore::Style::RuleSet::addRule):
(WebCore::Style::RuleSet::addRulesFromSheet):
(WebCore::Style::RuleSet::Builder::addChildRules):
(WebCore::Style::RuleSet::Builder::addRulesFromSheet):
(WebCore::Style::RuleSet::Builder::addStyleRule):
(WebCore::Style::RuleSet::Builder::pushCascadeLayer):
(WebCore::Style::RuleSet::Builder::popCascadeLayer):
(WebCore::Style::RuleSet::addChildRules): Deleted.
(WebCore::Style::RuleSet::addStyleRule): Deleted.

  • style/RuleSet.h:
2:50 AM Changeset in webkit [281741] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

[GStreamer] Track handling refactoring
https://bugs.webkit.org/show_bug.cgi?id=229497

Patch by Philippe Normand <pnormand@igalia.com> on 2021-08-29
Reviewed by Xabier Rodriguez-Calvar.

The TrackPrivateBaseGStreamer class now factors most of the common code used by its
sub-classes. The code style was modernised, some MSE-related dead code was removed from the
player. More could be done in the MSE AppendPipeline by making it rely on parsebin, but
that's another quest. The tracks created by the AppendPipeline were triggering track ID
mismatches between the player and those tracks, so a new flag was added in the constructor
of those to prevent stream-start event handling. Ideally that code should rely on GstStream,
that would remove the need of that flag.

No new tests, existing media tests cover this change.

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:

(WebCore::AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer):

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:

(WebCore::InbandTextTrackPrivateGStreamer::create):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfTrack):
(WebCore::MediaPlayerPrivateGStreamer::handleTextSample):
(WebCore::MediaPlayerPrivateGStreamer::updateTracks):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::generateUniquePlaybin2StreamID):
(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):
(WebCore::TrackPrivateBaseGStreamer::setPad):
(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfStreamChanged):
(WebCore::TrackPrivateBaseGStreamer::streamChanged):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:

(WebCore::TrackPrivateBaseGStreamer::setIndex):
(WebCore::TrackPrivateBaseGStreamer::stream):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:

(WebCore::VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/mse/AppendPipeline.cpp:

(WebCore::AppendPipeline::makeWebKitTrack):

2:27 AM Changeset in webkit [281740] by jh718.park@samsung.com
  • 2 edits in trunk/Source/WebKit

Unreviewed. Remove the build warning below since r281096.

No new tests, no new behavioral changes.

  • UIProcess/AuxiliaryProcessProxy.cpp:

(WebKit::AuxiliaryProcessProxy::stateString const):

2:18 AM Changeset in webkit [281739] by jh718.park@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Remove the build warning below since r280958.
warning: control reaches end of non-void function [-Wreturn-type]

No new tests, no new behavioral changes.

  • Modules/mediastream/RTCRtpSFrameTransform.cpp:

(WebCore::errorTypeFromInformation):

2:07 AM Changeset in webkit [281738] by jh718.park@samsung.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Remove the build warning below since r281615.
warning: control reaches end of non-void function [-Wreturn-type]

  • bytecode/PutByStatus.cpp:

(JSC::PutByStatus::makesCalls const):

Aug 28, 2021:

6:48 PM Changeset in webkit [281737] by Cameron McCormack
  • 15 edits in trunk/Source

Miscellaneous typo fixes
https://bugs.webkit.org/show_bug.cgi?id=229642

Reviewed by Fujii Hironori.

Source/JavaScriptCore:

  • API/JSValue.h:
  • runtime/RegExp.cpp:

(JSC::RegExp::matchCompareWithInterpreter):

Source/WebCore:

  • platform/MIMETypeRegistry.cpp:

(WebCore::MIMETypeRegistry::isSupportedImageMIMEType):

  • platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::computeClipPath const):

  • rendering/style/RenderStyle.cpp:

(WebCore::rareNonInheritedDataChangeRequiresLayout):

Source/WebKit:

  • Platform/IPC/HandleMessage.h:

(IPC::callMemberFunction):

  • Shared/Cocoa/ArgumentCodersCocoa.mm:

(IPC::encodeArrayInternal):

  • Shared/cf/ArgumentCodersCF.cpp:

(IPC::ArgumentCoder<CFArrayRef>::encode):

Source/WTF:

  • wtf/CrossThreadTask.h:

(WTF::callMemberFunctionForCrossThreadTask):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::createSubstringSharingImpl):

6:31 PM Changeset in webkit [281736] by Simon Fraser
  • 5 edits
    6 adds in trunk

Zooming browser does not properly scale SVG clip paths
https://bugs.webkit.org/show_bug.cgi?id=224795

Reviewed by Tim Horton.

Source/WebCore:

Clip-path and Command+ zooming were fixed in r268138, but that change didn't address
reference clip paths.

Fix by having effectiveZoom scale the clip in the two codepaths; the "clip via a path"
path, and the "clip by painting a mask" path that we fall into for more complex clips.

We only need to fix the userSpaceOnUse code path, since with objectBoundingBox clips
the input bounds has already been scaled.

Tests use the non-standard "zoom" property, so can't be WPT tests.

Tests: css3/masking/clip-path-reference-painted-mask-zoom.html

css3/masking/clip-path-reference-zoom-objectBoundingBox.html
css3/masking/clip-path-reference-zoom.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyResource):
(WebCore::RenderSVGResourceClipper::pathOnlyClipping):
(WebCore::RenderSVGResourceClipper::applyClippingToContext):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):

  • rendering/svg/RenderSVGResourceClipper.h:

LayoutTests:

Tests for various clipping configurations which use the 'zoom' property which
has the same impact as Command+ zooming.

  • css3/masking/clip-path-reference-painted-mask-zoom-expected.html: Added.
  • css3/masking/clip-path-reference-painted-mask-zoom.html: Added.
  • css3/masking/clip-path-reference-zoom-expected.html: Added.
  • css3/masking/clip-path-reference-zoom-objectBoundingBox-expected.html: Added.
  • css3/masking/clip-path-reference-zoom-objectBoundingBox.html: Added.
  • css3/masking/clip-path-reference-zoom.html: Added.
9:48 AM Changeset in webkit [281735] by ddkilzer@apple.com
  • 3 edits in trunk/Source/WTF

[WTF] Fix static analyzer warnings about nullptr derefs in StringImpl::copyCharacters() and tryMakeStringFromAdapters()
<https://webkit.org/b/229461>
<rdar://problem/82303279>

Reviewed by Darin Adler.

  • wtf/text/StringConcatenate.h:

(WTF::tryMakeStringFromAdapters):

  • Add nullptr checks for buffer since it makes no sense to call stringTypeAdapterAccumulator() with a nullptr argument, and it fixes static analyzer warnings about dereferencing nullptr.
  • wtf/text/StringImpl.h:

(WTF::StringImpl::copyCharacters):

  • Add ASSERT(destination || !numCharacters) statement to describe an invariant when calling this method. This stops the static analyzer from emitting false positive warnings about destination being nullptr.
6:15 AM Changeset in webkit [281734] by Alan Bujtas
  • 14 edits
    1 copy
    1 add in trunk

[LFC][IFC] Move content builder functionality to a dedicated class
https://bugs.webkit.org/show_bug.cgi?id=229631

Reviewed by Antti Koivisto.

Source/WebCore:

Let's use a dedicated class for constructing the final line runs. This is also going to be used
for computing overflow and other "display" type of value once it's merged with LayoutIntegration::InlineContentBuilder.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/LayoutUnits.h:
  • layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: Added.

(WebCore::Layout::InlineDisplayContentBuilder::InlineDisplayContentBuilder):
(WebCore::Layout::InlineDisplayContentBuilder::build):
(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineContent):
(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineSpanningInlineBoxes):

  • layout/formattingContexts/inline/InlineDisplayContentBuilder.h: Copied from Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.h.

(WebCore::Layout::InlineDisplayContentBuilder::root const):
(WebCore::Layout::InlineDisplayContentBuilder::formattingState const):

  • layout/formattingContexts/inline/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::lineLayout):
(WebCore::Layout::InlineFormattingContext::computeGeometryForLineContent):

  • layout/formattingContexts/inline/InlineFormattingContext.h:
  • layout/formattingContexts/inline/InlineLevelBox.h:

(WebCore::Layout::InlineLevelBox::isInlineBox const):
(WebCore::Layout::InlineLevelBox::isLineSpanningInlineBox const):
(WebCore::Layout::InlineLevelBox::createInlineBox):

  • layout/formattingContexts/inline/InlineLine.h:

(WebCore::Layout::Line::Run::type const):

  • layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:

(WebCore::Layout::LineBoxBuilder::constructAndAlignInlineLevelBoxes):

  • layout/formattingContexts/inline/InlineLineBoxBuilder.h:
  • layout/integration/LayoutIntegrationInlineContentBuilder.cpp:

(WebCore::LayoutIntegration::lineOverflowWidth):

  • layout/integration/LayoutIntegrationRun.h:

LayoutTests:

Note: See TracTimeline for information about the timeline view.