Timeline
Dec 27, 2021:
- 10:10 PM Changeset in webkit [287463] by
-
- 2 edits in trunk/Source/bmalloc
[libpas] Use thread_switch instead of sched_yield
https://bugs.webkit.org/show_bug.cgi?id=234712
Reviewed by Filip Pizlo.
Previously, we received internal reports that sched_yield waits for a long time, and causing a pause
in the client of JavaScriptCore, and we switched it to thread_switch in bmalloc::Mutex. We should do
the same thing in libpas too.
- libpas/src/libpas/pas_lock.c:
(pas_lock_lock_slow):
- 9:44 PM Changeset in webkit [287462] by
-
- 3 edits1 copy1 add1 delete in trunk/LayoutTests
[GLIB] Update test expectations and baselines. Unreviewed test gardening.
https://bugs.webkit.org/show_bug.cgi?id=234714
Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-12-27
- platform/glib/TestExpectations:
- platform/glib/webgl/1.0.3/conformance/extensions/oes-texture-half-float-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/extensions/oes-texture-half-float-expected.txt.
- platform/glib/webgl/1.0.3/conformance/extensions/webgl-compressed-texture-s3tc-expected.txt: Added.
- platform/wpe/TestExpectations:
- 4:29 PM Changeset in webkit [287461] by
-
- 3 edits in trunk/Source/WebCore
Element::boundingAbsoluteRectWithoutLayout() should be marked
const
https://bugs.webkit.org/show_bug.cgi?id=234703
Reviewed by Darin Adler.
Mark an existing method on Element as
const, so that it can be invoked withconst Element*/const Element&.
No change in behavior.
- dom/Element.cpp:
(WebCore::listBoxElementBoundingBox):
(WebCore::Element::boundingAbsoluteRectWithoutLayout const):
(WebCore::Element::boundingAbsoluteRectWithoutLayout): Deleted.
- dom/Element.h:
- 8:39 AM Changeset in webkit [287460] by
-
- 4 edits2 deletes in trunk/LayoutTests
Consolidate computed-style-*.txt and getComputedStyle-basic-expected.txt test results
Unreviewed test gardening.
The results in the non-platform directory are stale, the platform/mac/ results are the most recent ones.
- fast/css/getComputedStyle/computed-style-expected.txt:
- fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- platform/mac/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
- platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
- platform/mac/svg/css/getComputedStyle-basic-expected.txt: Removed.
- svg/css/getComputedStyle-basic-expected.txt:
- 2:04 AM Changeset in webkit [287459] by
-
- 18 edits2 moves in trunk/Source/JavaScriptCore
Consider merging Wasm::FunctionCodeBlock and Wasm::LLIntCallee
https://bugs.webkit.org/show_bug.cgi?id=203691
Reviewed by Filip Pizlo.
This patch merges Wasm::FunctionCodeBlock into Wasm::LLIntCallee since both
are one-on-one and what they want to represent are the same. We change
Wasm::FunctionCodeBlock to Wasm::FunctionCodeBlockGenerator so that we can
use FixedVector in Wasm::LLIntCallee which makes Wasm::LLIntCallee small,
and this is similar to what JS side is doing (UnlinkedCodeBlockGenerator).
- CMakeLists.txt:
- JavaScriptCore.xcodeproj/project.pbxproj:
- Sources.txt:
- bytecode/BytecodeDumper.cpp:
(JSC::Wasm::BytecodeDumper::dumpBlock):
(JSC::Wasm::BytecodeDumper::dumpConstants):
(JSC::Wasm::BytecodeDumper::constantName const):
- bytecode/BytecodeDumper.h:
- interpreter/Interpreter.cpp:
(JSC::CatchInfo::CatchInfo):
- llint/LLIntOffsetsExtractor.cpp:
- llint/WebAssembly.asm:
- wasm/WasmCallee.cpp:
(JSC::Wasm::LLIntCallee::LLIntCallee):
(JSC::Wasm::LLIntCallee::outOfLineJumpOffset):
(JSC::Wasm::LLIntCallee::outOfLineJumpTarget):
(JSC::Wasm::LLIntCallee::linkExceptionHandlers): Deleted.
- wasm/WasmCallee.h:
(JSC::Wasm::Callee::llintFunctionCodeBlock const): Deleted.
- wasm/WasmFunctionCodeBlockGenerator.cpp: Renamed from Source/JavaScriptCore/wasm/WasmFunctionCodeBlock.cpp.
(JSC::Wasm::FunctionCodeBlockGenerator::setInstructions):
(JSC::Wasm::FunctionCodeBlockGenerator::addOutOfLineJumpTarget):
(JSC::Wasm::FunctionCodeBlockGenerator::outOfLineJumpOffset):
(JSC::Wasm::FunctionCodeBlockGenerator::addSignature):
(JSC::Wasm::FunctionCodeBlockGenerator::addJumpTable):
(JSC::Wasm::FunctionCodeBlockGenerator::numberOfJumpTables const):
- wasm/WasmFunctionCodeBlockGenerator.h: Renamed from Source/JavaScriptCore/wasm/WasmFunctionCodeBlock.h.
(JSC::Wasm::FunctionCodeBlockGenerator::FunctionCodeBlockGenerator):
(JSC::Wasm::FunctionCodeBlockGenerator::tierUpCounter):
- wasm/WasmGeneratorTraits.h:
- wasm/WasmLLIntGenerator.cpp:
(JSC::Wasm::parseAndCompileBytecode):
(JSC::Wasm::LLIntGenerator::LLIntGenerator):
(JSC::Wasm::LLIntGenerator::finalize):
(JSC::Wasm::LLIntGenerator::addLoop):
(JSC::Wasm::LLIntGenerator::addSwitch):
- wasm/WasmLLIntGenerator.h:
- wasm/WasmLLIntPlan.cpp:
(JSC::Wasm::LLIntPlan::compileFunction):
(JSC::Wasm::LLIntPlan::didCompleteCompilation):
- wasm/WasmLLIntPlan.h:
- wasm/WasmLLIntTierUpCounter.h:
(JSC::Wasm::LLIntTierUpCounter::LLIntTierUpCounter):
- wasm/WasmSlowPaths.cpp:
(JSC::LLInt::shouldJIT):
(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::WASM_SLOW_PATH_DECL):
(JSC::LLInt::doWasmCallIndirect):
(JSC::LLInt::doWasmCallRef):
Dec 26, 2021:
- 11:46 PM Changeset in webkit [287458] by
-
- 4 edits in trunk/Source/JavaScriptCore
[JSC] Use SlowPathReturnType instead of EncodedMatchResult
https://bugs.webkit.org/show_bug.cgi?id=234686
Reviewed by Filip Pizlo.
This patch replaces YarrJIT's EncodedMatchResult with SlowPathReturnType so that
CCallHelpers can handle it correctly.
- runtime/MatchResult.h:
(JSC::MatchResult::MatchResult):
(JSC::MatchResult::failed):
- runtime/SlowPathReturnType.h:
(JSC::decodeResult):
- yarr/YarrJIT.h:
- 11:38 PM Changeset in webkit [287457] by
-
- 2 edits in trunk/Source/WebCore
[GTK][a11y] Test accessibility/aria-inherits-presentational.html is failing with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234685
Reviewed by Adrian Perez de Castro.
We are ignoring list items inheriting presentational role, but we need to expose its contents.
- accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::effectiveRole const): Use section as effective role of list items inheriting
presentational role.
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const): Include list items inheriting
presentational role.
- 11:37 PM Changeset in webkit [287456] by
-
- 8 edits in trunk
[GTK][a11y] Stop setting manages-descendants on web process root object with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234663
Reviewed by Adrian Perez de Castro.
Source/WebCore:
Emit parent-changed and children-changed signals instead, like all other objects, to properly update the ATSPI
cache.
- accessibility/atspi/AccessibilityAtspi.cpp:
(WebCore::AccessibilityAtspi::parentChanged): Emit the signal for the root object.
(WebCore::AccessibilityAtspi::childrenChanged): Ditto.
- accessibility/atspi/AccessibilityAtspi.h:
- accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::cacheDestroyed): Notify the root object too.
(WebCore::AccessibilityObjectAtspi::elementDestroyed): Ditto.
(WebCore::AccessibilityObjectAtspi::setParent): Ditto.
(WebCore::AccessibilityObjectAtspi::serialize const): Use AccessibilityRootAtspi::applicationReference().
- accessibility/atspi/AccessibilityRootAtspi.cpp:
(WebCore::AccessibilityRootAtspi::embedded): Call AccessibilityAtspi::parentChanged().
(WebCore::AccessibilityRootAtspi::parentReference const): Added.
(WebCore::AccessibilityRootAtspi::childAdded): Call AccessibilityAtspi::childrenChanged().
(WebCore::AccessibilityRootAtspi::childRemoved): Ditto.
(WebCore::AccessibilityRootAtspi::serialize const): Do not set manages-descendants state.
- accessibility/atspi/AccessibilityRootAtspi.h:
Tools:
Update the unit test to remove the ATSPI ifdef.
- TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testAccessibleBasicHierarchy):
- 11:36 PM Changeset in webkit [287455] by
-
- 3 edits in trunk/Source/WebCore
[GTK][a11y] Test /webkit/WebKitAccessibility/selection/listbox is flaky with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234665
Reviewed by Adrian Perez de Castro.
The problem is that selection-changed can be called multiple times for list boxes. When the notification is
deferred by the AXObject cache, it's ensured to be called only one for every element in the following run loop
iteration, but when not deferred the signal is emitted for every notification.
- accessibility/atspi/AccessibilityObjectAtspi.h:
- accessibility/atspi/AccessibilityObjectSelectionAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::selectionChanged): Ensure we don't emit the selection-changed signal more
than once in the same run loop iteration.
- 11:34 PM Changeset in webkit [287454] by
-
- 2 edits in trunk/Tools
[GTK][a11y] WTR: handle xml-roles attributes to return the right role for landmark with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=234638
Reviewed by Adrian Perez de Castro.
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::xmlRoleValueString):
(WTR::AccessibilityUIElement::role):
- 10:43 PM Changeset in webkit [287453] by
-
- 11 edits in trunk
[LFC][IFC] Do not trim the hanging trailing content
https://bugs.webkit.org/show_bug.cgi?id=234679
Reviewed by Antti Koivisto.
Source/WebCore:
This is the final step of making the hanging content handling inline with the spec.
(https://www.w3.org/TR/css-text-3/#hang)
Since we don't (fake)trim such content when closing the line, the content width matches
the actual content on the line which also helps when it is aligned to support RTL ordering.
- layout/formattingContexts/inline/InlineLine.cpp:
(WebCore::Layout::Line::Run::removeTrailingWhitespace):
(WebCore::Layout::Line::visuallyCollapseHangingOverflowingGlyphs): Deleted.
(WebCore::Layout::Line::Run::visuallyCollapseTrailingWhitespace): Deleted.
- layout/formattingContexts/inline/InlineLine.h:
- layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:
(WebCore::Layout::horizontalAlignmentOffset):
- layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineBuilder::close):
LayoutTests:
- platform/mac/fast/text/whitespace/pre-wrap-overflow-selection-expected.txt: Progression. Matches FF and Chrome selection behavior.
- 4:46 PM Changeset in webkit [287452] by
-
- 12 edits1 delete in trunk
Replace WebKit/CocoaColor.h with WebCore/ColorCocoa.h, not confusing at all
https://bugs.webkit.org/show_bug.cgi?id=234693
Reviewed by Simon Fraser.
Source/WebKit:
We don't need both. The WebCore one can work for both.
- Platform/cocoa/CocoaColor.h: Removed.
- Shared/Cocoa/ArgumentCodersCocoa.mm:
(IPC::typeFromObject):
(IPC::encodeColorInternal):
(IPC::encodeObject):
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView themeColor]):
(-[WKWebView underPageBackgroundColor]):
(-[WKWebView setUnderPageBackgroundColor:]):
(-[WKWebView _themeColor]):
(-[WKWebView _pageExtendedBackgroundColor]):
(-[WKWebView _sampledPageTopColor]):
- UIProcess/API/Cocoa/_WKApplicationManifest.mm:
(-[_WKApplicationManifest initWithCoder:]):
(-[_WKApplicationManifest themeColor]):
- UIProcess/Cocoa/WKSafeBrowsingWarning.h:
- UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
(colorForItem):
(-[WKSafeBrowsingBox setSafeBrowsingBackgroundColor:]):
(-[WKSafeBrowsingWarning showDetailsClicked]):
(-[WKSafeBrowsingTextView initWithAttributedString:forWarning:]):
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::PDFPlugin):
Tools:
Use WebCore/ColorCocoa.h instead.
- TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebViewThemeColor.mm:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebViewUnderPageBackgroundColor.mm:
- 4:03 PM Changeset in webkit [287451] by
-
- 8 edits2 adds in trunk
Make -webkit-text-combine an inherited property
https://bugs.webkit.org/show_bug.cgi?id=234694
Reviewed by Simon Fraser.
Source/WebCore:
-webkit-text-combine is said to be inherited in CSSProperties.json, but it is not actually the case.
It should be inherited per-spec (for text-combine-upright).
https://drafts.csswg.org/css-writing-modes/#text-combine-upright
Test: fast/text/text-combine-inherited.html
- rendering/style/RenderStyle.cpp:
(WebCore::rareNonInheritedDataChangeRequiresLayout):
(WebCore::rareInheritedDataChangeRequiresLayout):
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::textCombine const):
(WebCore::RenderStyle::setTextCombine):
- rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator== const):
- rendering/style/StyleRareInheritedData.h:
- rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator== const):
- rendering/style/StyleRareNonInheritedData.h:
LayoutTests:
There are also WPT that already exist for the standard version (text-combine-upright):
- css/css-writing-modes/text-combine-upright-inherit-all-001.html
- css/css-writing-modes/text-combine-upright-inherit-all-002.html
- fast/text/text-combine-inherited-expected.html: Added.
- fast/text/text-combine-inherited.html: Added.
- 3:11 PM Changeset in webkit [287450] by
-
- 2 edits in trunk/Source/WebKit
RemoteInspectorProtocolHandler::inspect() expects ConnectionID as uint32_t
https://bugs.webkit.org/show_bug.cgi?id=234657
Reviewed by Don Olmstead.
connectionID a parameter of ScriptMessageClient::didPostMessage() is casteed as <int>.
Since ConnectionID is define as uint32_t, it should be casted as <uint32_t>.
- UIProcess/Inspector/socket/RemoteInspectorProtocolHandler.cpp: Fixed cast for connectionID.
- 1:53 PM Changeset in webkit [287449] by
-
- 2 edits in trunk/Source/WebCore
null ptr deref in WebCore::indexForVisiblePosition()
https://bugs.webkit.org/show_bug.cgi?id=234255
Patch by Frédéric Wang <fwang@igalia.com> on 2021-12-26
Reviewed by Darin Adler.
- editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApply): Ensure endOfSelection did not become orphan before
calling indexForVisiblePosition(). This may happen because the VisiblePosition constructor
is called in the while loop, triggering re-layout and post-layout tasks.
- 1:40 PM Changeset in webkit [287448] by
-
- 4 edits in trunk/Source/WebCore
Remove -webkit-{border-fit/margin-collapse} leftovers in StyleRareNonInheritedData
https://bugs.webkit.org/show_bug.cgi?id=234692
Reviewed by Simon Fraser.
r285615 removed -webkit-border-fit.
r287429 removed -webkit-margin-collapse properties.
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::hashForTextAutosizing const):
(WebCore::RenderStyle::equalForTextAutosizing const):
(WebCore::rareNonInheritedDataChangeRequiresLayout):
- rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator== const):
- rendering/style/StyleRareNonInheritedData.h:
- 11:24 AM Changeset in webkit [287447] by
-
- 8 edits in trunk/Source/WebCore
[IFC][Integration] Update text renderer's needsVisualReordering bit
https://bugs.webkit.org/show_bug.cgi?id=234688
Reviewed by Antti Koivisto.
This is similar to legacy line layout where the RenderText's needsVisualReordering is
updated as the (bidi) text box is being placed on the line.
Here we update this bit right after the line layout, when we finished constructing the display boxes.
- layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::InlineItemsBuilder::handleTextContent):
- layout/integration/LayoutIntegrationBoxTree.cpp:
(WebCore::LayoutIntegration::BoxTree::buildTree):
- layout/integration/LayoutIntegrationInlineContentBuilder.cpp:
(WebCore::LayoutIntegration::InlineContentBuilder::InlineContentBuilder):
(WebCore::LayoutIntegration::InlineContentBuilder::build const):
- layout/integration/LayoutIntegrationInlineContentBuilder.h:
- layout/layouttree/LayoutInlineTextBox.cpp:
(WebCore::Layout::InlineTextBox::InlineTextBox):
(WebCore::Layout::m_canUseSimplifiedContentMeasuring):
(WebCore::Layout::m_containsBidiText): Deleted.
- layout/layouttree/LayoutInlineTextBox.h:
(WebCore::Layout::InlineTextBox::canUseSimplifiedContentMeasuring const):
(WebCore::Layout::InlineTextBox::containsBidiText const): Deleted. No need to cache this value on the layout box
InlineTextItems more or less have the same lifecycle as their associated layout boxes.
- layout/layouttree/LayoutTreeBuilder.cpp:
(WebCore::Layout::TreeBuilder::createTextBox):
- 10:47 AM Changeset in webkit [287446] by
-
- 2 edits in trunk/Source/WebCore
Update writing-mode property values in CSSProperties.json
https://bugs.webkit.org/show_bug.cgi?id=234689
Reviewed by Simon Fraser.
horizontal-tb/vertical-lr/vertical-rl have been supported for a while now.
horizontal-bt has too, but it is non-standard.
- css/CSSProperties.json:
- 10:45 AM Changeset in webkit [287445] by
-
- 8 edits in trunk
[:has() pseudo-class] Support :disabled and :enabled pseudo-class invalidation
https://bugs.webkit.org/show_bug.cgi?id=234636
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/selectors/invalidation/has-pseudo-class.html:
Source/WebCore:
Use Style::PseudoClassChangeInvalidation to support invalidation with :has(:disabled).
- html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::setAncestorDisabled):
(WebCore::HTMLFormControlElement::parseAttribute):
(WebCore::HTMLFormControlElement::disabledStateChanged):
- html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::isDisabledFormControl const):
Use a member bit instead of checking the attribute directly. This allows invalidation to be scoped over the state change.
(WebCore::HTMLOptGroupElement::parseAttribute):
Optgroup can flip the disabled status of the associated option elements too so handle that specifically.
- html/HTMLOptGroupElement.h:
- html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::parseAttribute):
- 9:21 AM Changeset in webkit [287444] by
-
- 8 edits in trunk/Source/WebCore
makeTextLogicalOrderCacheIfNeeded is only interested in whether the content needs visual reordering
https://bugs.webkit.org/show_bug.cgi?id=234687
Reviewed by Antti Koivisto.
This renaming patch is in preparation for fixing the caching codepath for LFC bidi.
- layout/formattingContexts/inline/text/TextUtil.cpp:
(WebCore::Layout::TextUtil::containsStrongDirectionalityText):
(WebCore::Layout::TextUtil::containsBidiText): Deleted.
- layout/formattingContexts/inline/text/TextUtil.h:
- layout/integration/InlineIteratorLogicalOrderTraversal.cpp:
(WebCore::InlineIterator::makeTextLogicalOrderCacheIfNeeded):
- layout/integration/LayoutIntegrationBoxTree.cpp:
(WebCore::LayoutIntegration::BoxTree::buildTree):
- layout/layouttree/LayoutTreeBuilder.cpp:
(WebCore::Layout::TreeBuilder::createTextBox):
- rendering/RenderText.cpp:
(WebCore::RenderText::RenderText):
(WebCore::RenderText::positionLineBox):
- rendering/RenderText.h:
(WebCore::RenderText::needsVisualReordering const):
(WebCore::RenderText::setNeedsVisualReordering):
(WebCore::RenderText::containsBidiText const): Deleted.
(WebCore::RenderText::setContainsBidiText): Deleted.
- 7:02 AM Changeset in webkit [287443] by
-
- 4 edits in trunk/Source/WebCore
[LFC][IFC] ContinuousContent should tell InlineContentBreaker if the candidate content is hanging
https://bugs.webkit.org/show_bug.cgi?id=234671
Reviewed by Antti Koivisto.
ContinuousContent now keeps track of whether the candidate run is a hanging content.
It enables InlineContentBreaker to just simply look at the flag to decide if the overflowing
(hanging) content should stay on the line or not.
- layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::InlineContentBreaker::processOverflowingContent const):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::append):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::reset):
- layout/formattingContexts/inline/InlineContentBreaker.h:
(WebCore::Layout::InlineContentBreaker::ContinuousContent::isHangingContent const):
- layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineCandidate::InlineContent::appendInlineItem):