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

Timeline



May 24, 2020:

11:28 PM Changeset in webkit [262113] by youenn@apple.com
  • 3 edits in trunk/Source/WebCore

Do not allocate a WebAudioBufferList in the AudioContext rendering thread
https://bugs.webkit.org/show_bug.cgi?id=212132

Reviewed by Eric Carlson.

Instead of allocating the buffer in the rendering thread, we do that in the audio sample producer thread.
Also, we do it only once versus one for each rendering call previously.
Covered by existing tests.

  • platform/mediastream/mac/WebAudioSourceProviderAVFObjC.h:
  • platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm:

(WebCore::WebAudioSourceProviderAVFObjC::provideInput):
(WebCore::WebAudioSourceProviderAVFObjC::prepare):
(WebCore::WebAudioSourceProviderAVFObjC::unprepare):

11:25 PM Changeset in webkit [262112] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebKit

Remove NetworkProcess/FileAPI
https://bugs.webkit.org/show_bug.cgi?id=212335

Patch by Rob Buis <rbuis@igalia.com> on 2020-05-24
Reviewed by Sam Weinig.

Remove NetworkProcess/FileAPI, the only file it contains is unused.
It seems this could have been removed in r248593.

  • NetworkProcess/FileAPI/NetworkBlobRegistry.cpp: Removed.
12:29 PM Changeset in webkit [262111] by Wenson Hsieh
  • 3 edits in trunk/Source/WebCore

Add some missing includes due to unified sources
https://bugs.webkit.org/show_bug.cgi?id=212306

Reviewed by Anders Carlsson.

  • Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp: Include EnterPictureInPictureEvent.h.
  • platform/PictureInPictureObserver.h: Include WeakPtr and forward declare the IntSize class.
12:13 PM Changeset in webkit [262110] by weinig@apple.com
  • 6 edits
    2 adds in trunk/Source/WebCore

Extended Color Cleanup: Move SimpleColor into its own files
https://bugs.webkit.org/show_bug.cgi?id=212309

Reviewed by Simon Fraser.

Move SimpleColor into its own files. It's about time.

  • Headers.cmake:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/Color.cpp:

(WebCore::premultipliedChannel): Deleted.
(WebCore::unpremultipliedChannel): Deleted.
(WebCore::makePremultipliedRGBA): Deleted.
(WebCore::makeUnPremultipliedRGBA): Deleted.
(WebCore::colorFloatToRGBAByte): Deleted.
(WebCore::makeRGBA32FromFloats): Deleted.
(WebCore::makeRGBAFromHSLA): Deleted.
(WebCore::makeRGBAFromCMYKA): Deleted.
(WebCore::SimpleColor::serializationForHTML const): Deleted.
(WebCore::decimalDigit): Deleted.
(WebCore::fractionDigitsForFractionalAlphaValue): Deleted.
(WebCore::SimpleColor::serializationForCSS const): Deleted.
(WebCore::RGBA32::serializationForRenderTreeAsText const): Deleted.

  • platform/graphics/Color.h:

(WebCore::SimpleColor::SimpleColor): Deleted.
(WebCore::SimpleColor::value const): Deleted.
(WebCore::SimpleColor::redComponent const): Deleted.
(WebCore::SimpleColor::greenComponent const): Deleted.
(WebCore::SimpleColor::blueComponent const): Deleted.
(WebCore::SimpleColor::alphaComponent const): Deleted.
(WebCore::SimpleColor::alphaComponentAsFloat const): Deleted.
(WebCore::SimpleColor::isOpaque const): Deleted.
(WebCore::SimpleColor::isVisible const): Deleted.
(WebCore::SimpleColor::colorWithAlpha const): Deleted.
(WebCore::SimpleColor::get const): Deleted.
(WebCore::roundAndClampColorChannel): Deleted.
(WebCore::fastMultiplyBy255): Deleted.
(WebCore::fastDivideBy255): Deleted.
(WebCore::makeRGB): Deleted.
(WebCore::makeRGBA): Deleted.

  • platform/graphics/SimpleColor.cpp: Copied from platform/graphics/Color.cpp.

(WebCore::SimpleColor::serializationForRenderTreeAsText const):
(): Deleted.
(WebCore::colorFloatToRGBAByte): Deleted.
(WebCore::parseHexColorInternal): Deleted.
(WebCore::Color::parseHexColor): Deleted.
(WebCore::differenceSquared): Deleted.
(WebCore::findNamedColor): Deleted.
(WebCore::Color::Color): Deleted.
(WebCore::Color::operator=): Deleted.
(WebCore::Color::serialized const): Deleted.
(WebCore::Color::cssText const): Deleted.
(WebCore::RGBA32::serializationForRenderTreeAsText const): Deleted.
(WebCore::Color::nameForRenderTreeAsText const): Deleted.
(WebCore::Color::light const): Deleted.
(WebCore::Color::dark const): Deleted.
(WebCore::Color::isDark const): Deleted.
(WebCore::Color::lightness const): Deleted.
(WebCore::blendComponent): Deleted.
(WebCore::Color::blend const): Deleted.
(WebCore::Color::blendWithWhite const): Deleted.
(WebCore::Color::colorWithAlphaMultipliedBy const): Deleted.
(WebCore::Color::colorWithAlphaMultipliedByUsingAlternativeRounding const): Deleted.
(WebCore::Color::colorWithAlpha const): Deleted.
(WebCore::Color::colorWithAlphaUsingAlternativeRounding const): Deleted.
(WebCore::Color::colorSpaceAndComponents const): Deleted.
(WebCore::Color::toSRGBASimpleColorLossy const): Deleted.
(WebCore::Color::toSRGBAComponentsLossy const): Deleted.
(WebCore::extendedColorsEqual): Deleted.
(WebCore::blend): Deleted.
(WebCore::blendWithoutPremultiply): Deleted.
(WebCore::Color::tagAsValid): Deleted.
(WebCore::Color::asExtended const): Deleted.
(WebCore::operator<<): Deleted.

  • platform/graphics/SimpleColor.h: Copied from platform/graphics/Color.h.

(WebCore::SimpleColor::alphaComponentAsFloat const):
(WebCore::SimpleColor::colorWithAlpha const):
(WebCore::SimpleColor::get const):
(WebCore::colorFloatToRGBAByte):
(WebCore::Color::Color): Deleted.
(WebCore::Color::isHashTableDeletedValue const): Deleted.
(WebCore::Color::~Color): Deleted.
(WebCore::Color::isValid const): Deleted.
(WebCore::Color::isOpaque const): Deleted.
(WebCore::Color::isVisible const): Deleted.
(WebCore::Color::red const): Deleted.
(WebCore::Color::green const): Deleted.
(WebCore::Color::blue const): Deleted.
(WebCore::Color::alpha const): Deleted.
(WebCore::Color::alphaAsFloat const): Deleted.
(WebCore::Color::opaqueColor const): Deleted.
(WebCore::Color::isSemantic const): Deleted.
(WebCore::Color::isExtended const): Deleted.
(WebCore::Color::setRGB): Deleted.
(WebCore::Color::setIsSemantic): Deleted.
(WebCore::equalIgnoringSemanticColor): Deleted.
(WebCore::Color::hash const): Deleted.
(WebCore::Color::colorWithAlphaMultipliedByUsingAlternativeRounding const): Deleted.
(WebCore::Color::colorWithAlphaUsingAlternativeRounding const): Deleted.
(WebCore::Color::rgb const): Deleted.
(WebCore::Color::isBlackColor): Deleted.
(WebCore::Color::isWhiteColor): Deleted.
(WebCore::Color::encode const): Deleted.
(WebCore::Color::decode): Deleted.

10:25 AM WebKitEmacsTips edited by Philippe Normand
(diff)
10:15 AM Changeset in webkit [262109] by Alan Bujtas
  • 4 edits
    2 adds in trunk

[LFC][TFC] Ignore section borders even when border collapse is off.
https://bugs.webkit.org/show_bug.cgi?id=212336

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-thead-border-ignore.html

  • layout/Verification.cpp:

(WebCore::Layout::outputMismatchingBlockBoxInformationIfNeeded):

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::setUsedGeometryForSections):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-thead-border-ignore-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-thead-border-ignore.html: Added.
8:53 AM Changeset in webkit [262108] by weinig@apple.com
  • 28 edits in trunk

Extended Color Cleanup: Stop allowing direct access to the underlying SimpleColor (it is almost always incorrect with respect to extended colors)
https://bugs.webkit.org/show_bug.cgi?id=212184

Reviewed by Dean Jackson.

Source/WebCore:

  • Makes Color::rgb() private, removing a class of extended color bugs from users of the Color class. To get the equivilent functionality, users of the class must now use toSRGBASimpleColorLossy() which does actually does the conversion to sRGB if necessary and makes it clear to the caller that precision is being lost.
  • Removes Color::red()/green()/blue() entirely. They were just calling down to Color::rgb(), and going forward, it won't make sense to think about rgb components of Colors in general, since some extended color spaces don't deal in them (e.g. Lab) Color::alpha() was kept (and fixed to work even with ExtendedColor) since all ExtendedColors do need to have alpha.
  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::colorValue const):
Use toSRGBASimpleColorLossy() to get access to color components.

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(getAttributeSetForAccessibilityObject):
Use toSRGBASimpleColorLossy() to get access to color components.

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::colorValue const):
Use toSRGBASimpleColorLossy() to get access to color components.

  • css/DeprecatedCSSOMRGBColor.h:

Use toSRGBASimpleColorLossy() to get access to color components.

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::CaptionUserPreferencesMediaAF::captionsWindowCSS const):
(WebCore::CaptionUserPreferencesMediaAF::captionsBackgroundCSS const):
(WebCore::CaptionUserPreferencesMediaAF::captionsTextColor const):
User Color::colorWithAlpha() to avoid the need to muck with components directly.

  • platform/graphics/Color.cpp:

(WebCore::differenceSquared):
Use rgb() directly, which is ok, since this is explicitly checking isExtended().
This code is still wrong (there is a FIXME) as it assumes the two colors are in
the same color space.

(WebCore::Color::Color):
Add constructor which takes an ExtendedColor to allow functions like
Color::invertedColorWithAlpha to delegate their functionality to ExtendedColor.

(WebCore::Color::light const):
Use new SimpleColor::colorWithAlpha() to avoid hardcoding constants here.

(WebCore::Color::blend const):
(WebCore::Color::blendWithWhite const):
Use toSRGBASimpleColorLossy() to get access to color components. These
are still not ideal implementations, as they don't preserve extended colors
as well as they could, but now they don't return bogus values for extended
colors. Minor cleanup bringing constants and lambda inside the function they
are used in.

(WebCore::Color::colorWithAlpha const):
(WebCore::Color::colorWithAlphaUsingAlternativeRounding const):
Minor cleanups to use a more consistent style and make use of the new
SimpleColor::colorWithAlpha.

(WebCore::Color::invertedColorWithAlpha const):
Added. Used to avoid direct component usage in line box code.

(WebCore::Color::semanticColor const):
Added. Hopefully temporary. Used by RenderThemeIOS.mm to convert
a Color from a map into a Color with the semantic bit set. This
should not be necessary as every color in the map should already
have it set, but to avoid uncessary possible behavior changes this
preserves that functionality until it can be researched further.
Fixing coders to preserve the semantic bit may be required to
elliminate the need.

(WebCore::Color::colorSpaceAndComponents const):
Use rgb() rather than the individual components which have been removed.

  • platform/graphics/Color.h:

(WebCore::SimpleColor::alphaComponentAsFloat const):
Added. Needed by DeprecatedCSSOMRGBColor and useful to Color.

(WebCore::SimpleColor::colorWithAlpha const):
Useful to simplify Color::colorWithAlpha implementations and
in Color::dark().

(WebCore::SimpleColor::get const):
Added tuple interface to SimpleColor to support structure bindings.
NOTE: Unlike the storage of SimpleColor (ARGB), this produces the
bindings in the more familiar [r,g,b,a] to match FloatComponents.

(WebCore::Color::alpha const):
Made work with ExtendedColor as well.

(WebCore::Color::red const): Deleted.
(WebCore::Color::green const): Deleted.
(WebCore::Color::blue const): Deleted.
Removed.

(CGColorRef cachedCGColor):
(int differenceSquared):
Made friends so they could use Color::rgb().

(WebCore::Color::rgb const):
Made private.

  • platform/graphics/ExtendedColor.cpp:

(WebCore::ExtendedColor::invertedColorWithAlpha const):

  • platform/graphics/ExtendedColor.h:

Added invertedColorWithAlpha to allow inversion to be encapsulated.
When future color spaces are added, we may need to choose per-colorspace
algorithms for this instead of the trivial one used today.

  • platform/graphics/ca/cocoa/PlatformCAAnimationCocoa.mm:

(WebCore::PlatformCAAnimationCocoa::setFromValue):
(WebCore::PlatformCAAnimationCocoa::setToValue):
(WebCore::PlatformCAAnimationCocoa::setValues):
Use toSRGBASimpleColorLossy() to get access to color components.

  • platform/graphics/ca/win/PlatformCAAnimationWin.cpp:

(PlatformCAAnimationWin::setFromValue):
(PlatformCAAnimationWin::setToValue):
(PlatformCAAnimationWin::setValues):
Use toSRGBASimpleColorLossy() to get access to color components.

  • platform/graphics/cairo/CairoOperations.cpp:

(WebCore::Cairo::drawFocusRing):
Use Color::colorWithAlpha() to avoid needing access to components.

  • platform/graphics/cpu/arm/filters/FELightingNEON.h:

(WebCore::FELighting::platformApplyNeon):
Use toSRGBASimpleColorLossy() to get access to color components.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::clearColor):
Use toSRGBASimpleColorLossy() to get access to color components.

  • platform/graphics/win/Direct2DOperations.cpp:

(WebCore::Direct2D::drawGlyphs):
Use colorWithAlphaMultipliedBy() to avoid needing access to components.

  • platform/graphics/win/FontCGWin.cpp:

(WebCore::FontCascade::drawGlyphs):
Use colorWithAlphaMultipliedBy() to avoid needing access to components.

  • platform/graphics/win/FontCascadeDirect2D.cpp:

(WebCore::FontCascade::drawGlyphs):
Use colorWithAlphaMultipliedBy() to avoid needing access to components.

  • rendering/EllipsisBox.cpp:

(WebCore::EllipsisBox::paintSelection):
Use invertedColorWithAlpha() to avoid needing access to components.

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::resolveStyleForMarkedText):
Use invertedColorWithAlpha() to avoid needing access to components.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintBoxShadow):
Use opaqueColor() to avoid needing access to components.

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::systemColor const):
Use opaqueColor() to avoid needing access to components.

  • svg/properties/SVGAnimationAdditiveValueFunctionImpl.h:

(WebCore::SVGAnimationColorFunction::animate):
Use toSRGBASimpleColorLossy() to get access to color components.

Source/WebKit:

  • WebProcess/WebPage/RemoteLayerTree/PlatformCAAnimationRemote.mm:

(WebKit::animationValueFromKeyframeValue):
Use toSRGBASimpleColorLossy() to get access to color components.

Tools:

  • TestWebKitAPI/Tests/WebCore/ColorTests.cpp:

(TestWebKitAPI::TEST):
Use toSRGBASimpleColorLossy() to get access to color components.

8:34 AM Changeset in webkit [262107] by Alan Bujtas
  • 6 edits
    2 adds in trunk

[LFC][TFC] Take sections into account when computing collapsed border.
https://bugs.webkit.org/show_bug.cgi?id=212311

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-collapsed-tbody-border.html

  • layout/Verification.cpp:

(WebCore::Layout::LayoutContext::verifyAndOutputMismatchingLayoutTree):

  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp:

(WebCore::Layout::TableWrapperBlockFormattingContext::computeBorderAndPaddingForTableBox):

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::setUsedGeometryForSections):

  • layout/tableformatting/TableGrid.cpp:

(WebCore::Layout::TableGrid::Section::Section):
(WebCore::Layout::TableGrid::appendCell):

  • layout/tableformatting/TableGrid.h:

(WebCore::Layout::TableGrid::Section::box const):
(WebCore::Layout::TableGrid::sections const):
(WebCore::Layout::TableGrid::sections):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-collapsed-tbody-border-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-collapsed-tbody-border.html: Added.
8:23 AM Changeset in webkit [262106] by Alan Bujtas
  • 3 edits
    2 adds in trunk

[LFC][TFC] Take collapsed in-between row border into account when computing cell height
https://bugs.webkit.org/show_bug.cgi?id=212307

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-collapsed-row-border2.html

  • layout/tableformatting/TableFormattingContextGeometry.cpp:

(WebCore::Layout::TableFormattingContext::Geometry::computedCellBorder const):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-collapsed-row-border2-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-collapsed-row-border2.html: Added.
8:07 AM Changeset in webkit [262105] by Carlos Garcia Campos
  • 2 edits
    1 delete in trunk/Source/WebKit

Unreviewed. Remove unused file since r261570

I forgot to remove DragAndDropHandler.h.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
  • UIProcess/gtk/DragAndDropHandler.h: Removed.

May 23, 2020:

1:53 PM Changeset in webkit [262104] by Alan Bujtas
  • 3 edits
    2 adds in trunk

[LFC][TFC] Take row border into account when computing collapsed borders.
https://bugs.webkit.org/show_bug.cgi?id=212305

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-collapsed-row-border.html

  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp:

(WebCore::Layout::TableWrapperBlockFormattingContext::computeBorderAndPaddingForTableBox):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-collapsed-row-border-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-collapsed-row-border.html: Added.
1:13 PM Changeset in webkit [262103] by Jack Lee
  • 2 edits in trunk/Source/WebCore
ASSERTION FAILED: (!s_current
&m_view != &s_current->m_view) in RenderTreeBuilder::RenderTreeBuilder

https://bugs.webkit.org/show_bug.cgi?id=212163

Unreviewed. Improve readability. Replace comments with curly brackets for scoping.

  • dom/Document.cpp:

(WebCore::Document::updateRenderTree):

12:47 PM Changeset in webkit [262102] by Alan Bujtas
  • 3 edits
    2 adds in trunk

[LFC][TFC] Maximum constraint of a cell should never be smaller than the minimum width
https://bugs.webkit.org/show_bug.cgi?id=212304

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-fixed-width-with-wide-content.html

  • layout/tableformatting/TableFormattingContextGeometry.cpp:

(WebCore::Layout::TableFormattingContext::Geometry::intrinsicWidthConstraintsForCell):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-fixed-width-with-wide-content-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-fixed-width-with-wide-content.html: Added.
10:10 AM Changeset in webkit [262101] by Alan Bujtas
  • 4 edits
    2 adds in trunk

[LFC][TFC] Used height of a cell is the maximum of the computed and the content height.
https://bugs.webkit.org/show_bug.cgi?id=212302

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-tall-cell-content-with-fixed-height.html

  • layout/FormattingContextGeometry.cpp:

(WebCore::Layout::FormattingContext::Geometry::contentHeightForFormattingContextRoot const):

  • layout/tableformatting/TableFormattingContextGeometry.cpp:

(WebCore::Layout::TableFormattingContext::Geometry::cellHeigh const):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-tall-cell-content-with-fixed-height-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-tall-cell-content-with-fixed-height.html: Added.
9:35 AM Changeset in webkit [262100] by Caio Lima
  • 8 edits in trunk

[bmalloc] Fix OOM errors on MIPS after r261667
https://bugs.webkit.org/show_bug.cgi?id=212016

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/array-buffer-view-watchpoint-can-be-fired-in-really-add-in-dfg.js:
  • stress/big-int-mod-memory-stress.js:
  • stress/incremental-marking-should-not-dead-lock-in-new-property-transition.js:

Source/bmalloc:

The way we were calculating newBegin and newEnd on
ObjectTypeTable::set when index is out of bounds didn't consider
cases where bits->begin() - bits->count() or index - ObjectTypeTable::Bits::bitCountPerWord * 4
can underflow and bits->end() + bits->count() can overflow.
Given that, the value used is going to be index or index + 1.
Since we extend the size of bitvector everytime we have an OOB, this can cause a pathological case
that memory will keep extending quite often until systems reachs OOM.
It is reproducible on ARMv7 and MIPS architectures on
stress/array-buffer-view-watchpoint-can-be-fired-in-really-add-in-dfg.js,
stress/big-int-mod-memory-stress.js and some other tests.
This patch is including a verification if those operations are going
to overflow/underflow, and properly set newBegin to 0 and newEnd
to UINT_MAX when we observe such behavior.

  • bmalloc/ObjectTypeTable.cpp:

(bmalloc::ObjectTypeTable::set):

LayoutTests:

  • js/script-tests/stack-overflow-regexp.js:
9:21 AM Changeset in webkit [262099] by cturner@igalia.com
  • 2 edits in trunk/Source/WebKit

Error sending IPC message: Broken pipe
https://bugs.webkit.org/show_bug.cgi?id=206052

Reviewed by Adrian Perez de Castro.

The Connection implementation on *nix was not handling socket
shutdowns gracefully, this was leading to many IPC error messages
being printed. It looks like the "errors" were actually
application issues, trying to send messages during socket shutdown
sequences, rather than more serious message drop problems.

Unclear how to autotest this, but manual testing opening lots of tabs
definitely hits these codepaths.

  • Platform/IPC/unix/ConnectionUnix.cpp:

(IPC::Connection::readyReadHandler): Handle ECONNRESET by cleanly
closing the connection.
(IPC::Connection::sendOutputMessage): Ditto, also handle the
wrinkle that for "reasons", Linux can return EPIPE when it means
ECONNRESET.

7:57 AM Changeset in webkit [262098] by Paulo Matos
  • 48 edits in trunk/Source/JavaScriptCore

Fix non-unified builds for x86_64
https://bugs.webkit.org/show_bug.cgi?id=212297

Reviewed by Adrian Perez de Castro.

  • b3/B3BasicBlock.cpp:
  • b3/B3CaseCollection.cpp:
  • b3/B3DuplicateTails.cpp:
  • b3/B3EnsureLoopPreHeaders.cpp:
  • b3/B3FenceValue.cpp:
  • b3/B3HoistLoopInvariantValues.cpp:
  • b3/B3LegalizeMemoryOffsets.cpp:
  • b3/B3LowerMacrosAfterOptimizations.cpp:
  • b3/B3LowerToAir.cpp:
  • b3/B3MathExtras.cpp:
  • b3/B3MemoryValue.cpp:
  • b3/B3Procedure.cpp:
  • b3/B3StackmapValue.cpp:
  • b3/B3SwitchValue.cpp:
  • b3/B3UseCounts.cpp:
  • b3/B3Validate.cpp:
  • b3/B3VariableValue.cpp:
  • b3/B3WasmAddressValue.cpp:
  • b3/B3WasmBoundsCheckValue.cpp:
  • ftl/FTLCommonValues.cpp:
  • ftl/FTLCompile.cpp:
  • ftl/FTLOSREntry.cpp:
  • ftl/FTLOSRExitCompiler.cpp:
  • wasm/WasmInstance.cpp:
  • wasm/WasmStreamingParser.cpp:
  • wasm/js/JSToWasm.cpp:
  • wasm/js/JSToWasmICCallee.cpp:
  • wasm/js/JSWebAssembly.cpp:
  • wasm/js/JSWebAssemblyCodeBlock.cpp:
  • wasm/js/WebAssemblyCompileErrorConstructor.cpp:
  • wasm/js/WebAssemblyCompileErrorPrototype.cpp:
  • wasm/js/WebAssemblyFunction.cpp:
  • wasm/js/WebAssemblyFunctionBase.cpp:
  • wasm/js/WebAssemblyGlobalPrototype.cpp:
  • wasm/js/WebAssemblyInstanceConstructor.cpp:
  • wasm/js/WebAssemblyInstancePrototype.cpp:
  • wasm/js/WebAssemblyLinkErrorConstructor.cpp:
  • wasm/js/WebAssemblyLinkErrorPrototype.cpp:
  • wasm/js/WebAssemblyMemoryConstructor.cpp:
  • wasm/js/WebAssemblyMemoryPrototype.cpp:
  • wasm/js/WebAssemblyModuleConstructor.cpp:
  • wasm/js/WebAssemblyModulePrototype.cpp:
  • wasm/js/WebAssemblyModuleRecord.cpp:
  • wasm/js/WebAssemblyRuntimeErrorConstructor.cpp:
  • wasm/js/WebAssemblyRuntimeErrorPrototype.cpp:
  • wasm/js/WebAssemblyTableConstructor.cpp:
  • wasm/js/WebAssemblyTablePrototype.cpp:
6:34 AM Changeset in webkit [262097] by Alan Bujtas
  • 6 edits
    2 adds in trunk

[LFC][TFC] Non-collapsing row border should not make the table wider/taller
https://bugs.webkit.org/show_bug.cgi?id=212263

Reviewed by Antti Koivisto.

Source/WebCore:

Non-collapsing row border eats into the content box but oddly it does not
constraint the cell boxes, so we can end up with smaller row content box than
the cell box it contains.

Test: fast/layoutformattingcontext/table-simple-row-border.html

  • layout/LayoutUnits.h:

(WebCore::Layout::Edges::width const):
(WebCore::Layout::Edges::height const):
(WebCore::Layout::HorizontalEdges::width const): Deleted.
(WebCore::Layout::VerticalEdges::height const): Deleted.

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::setUsedGeometryForRows):

  • layout/tableformatting/TableFormattingContextGeometry.cpp:

(WebCore::Layout::TableFormattingContext::Geometry::intrinsicWidthConstraintsForCell):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-row-border-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-row-border.html: Added.
Note: See TracTimeline for information about the timeline view.