[webkit-changes] [294214] trunk/Source/bmalloc

2022-05-14 Thread justin_michaud
Title: [294214] trunk/Source/bmalloc








Revision 294214
Author justin_mich...@apple.com
Date 2022-05-14 19:08:04 -0700 (Sat, 14 May 2022)


Log Message
[LIBPAS] Add extra assert information to malloc enumeration API
https://bugs.webkit.org/show_bug.cgi?id=240292

Reviewed by Yusuke Suzuki.

In the heap enumerator (which is a slow path), we have asserts that
have the opportunity to include extra information to aid debugging.

We add PAS_ASSERT_WITH_DETAIL, which stuffs extra data into registers before crashing
so that we can see it in crash logs. We also add a debugging option to allow logging
to syslog, for cases when we do not have access to stdout.

* libpas/src/libpas/pas_enumerate_segregated_heaps.c:
(consider_allocator):
* libpas/src/libpas/pas_local_allocator_config_kind.h:
(pas_local_allocator_config_kind_create_normal):
(pas_local_allocator_config_kind_create_primordial_partial):
(pas_local_allocator_config_kind_create_bitfit):
(pas_local_allocator_config_kind_get_segregated_page_config_kind):
(pas_local_allocator_config_kind_get_bitfit_page_config_kind):
(pas_local_allocator_config_kind_get_string):
* libpas/src/libpas/pas_log.c:
(pas_vlog):
* libpas/src/libpas/pas_utils.c:
(pas_crash_with_info_impl):
(pas_panic):
(pas_assertion_failed_no_inline):
(pas_assertion_failed_no_inline_with_extra_detail):
* libpas/src/libpas/pas_utils.h:

Modified Paths

trunk/Source/bmalloc/ChangeLog
trunk/Source/bmalloc/libpas/src/libpas/pas_enumerate_segregated_heaps.c
trunk/Source/bmalloc/libpas/src/libpas/pas_local_allocator_config_kind.h
trunk/Source/bmalloc/libpas/src/libpas/pas_log.c
trunk/Source/bmalloc/libpas/src/libpas/pas_utils.c
trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h




Diff

Modified: trunk/Source/bmalloc/ChangeLog (294213 => 294214)

--- trunk/Source/bmalloc/ChangeLog	2022-05-15 00:47:31 UTC (rev 294213)
+++ trunk/Source/bmalloc/ChangeLog	2022-05-15 02:08:04 UTC (rev 294214)
@@ -1,3 +1,35 @@
+2022-05-14  Justin Michaud  
+
+[LIBPAS] Add extra assert information to malloc enumeration API
+https://bugs.webkit.org/show_bug.cgi?id=240292
+
+Reviewed by Yusuke Suzuki.
+
+In the heap enumerator (which is a slow path), we have asserts that
+have the opportunity to include extra information to aid debugging.
+
+We add PAS_ASSERT_WITH_DETAIL, which stuffs extra data into registers before crashing
+so that we can see it in crash logs. We also add a debugging option to allow logging 
+to syslog, for cases when we do not have access to stdout.
+
+* libpas/src/libpas/pas_enumerate_segregated_heaps.c:
+(consider_allocator):
+* libpas/src/libpas/pas_local_allocator_config_kind.h:
+(pas_local_allocator_config_kind_create_normal):
+(pas_local_allocator_config_kind_create_primordial_partial):
+(pas_local_allocator_config_kind_create_bitfit):
+(pas_local_allocator_config_kind_get_segregated_page_config_kind):
+(pas_local_allocator_config_kind_get_bitfit_page_config_kind):
+(pas_local_allocator_config_kind_get_string):
+* libpas/src/libpas/pas_log.c:
+(pas_vlog):
+* libpas/src/libpas/pas_utils.c:
+(pas_crash_with_info_impl):
+(pas_panic):
+(pas_assertion_failed_no_inline):
+(pas_assertion_failed_no_inline_with_extra_detail):
+* libpas/src/libpas/pas_utils.h:
+
 2022-05-07  Mark Lam  
 
 Force PAS_ASSERT to generate different crash sites for each assertion.


Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_enumerate_segregated_heaps.c (294213 => 294214)

--- trunk/Source/bmalloc/libpas/src/libpas/pas_enumerate_segregated_heaps.c	2022-05-15 00:47:31 UTC (rev 294213)
+++ trunk/Source/bmalloc/libpas/src/libpas/pas_enumerate_segregated_heaps.c	2022-05-15 02:08:04 UTC (rev 294214)
@@ -603,7 +603,7 @@
 if (verbose)
 pas_log("Have allocator %p in page_ish = %p\n", allocator, (void*)allocator->page_ish);
 
-PAS_ASSERT_WITH_DETAIL(!pas_local_allocator_config_kind_is_bitfit(allocator->config_kind));
+PAS_ASSERT_WITH_EXTRA_DETAIL(!pas_local_allocator_config_kind_is_bitfit(allocator->config_kind), allocator->config_kind);
 
 page_config = pas_segregated_page_config_kind_get_config(
 pas_local_allocator_config_kind_get_segregated_page_config_kind(allocator->config_kind));


Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_local_allocator_config_kind.h (294213 => 294214)

--- trunk/Source/bmalloc/libpas/src/libpas/pas_local_allocator_config_kind.h	2022-05-15 00:47:31 UTC (rev 294213)
+++ trunk/Source/bmalloc/libpas/src/libpas/pas_local_allocator_config_kind.h	2022-05-15 02:08:04 UTC (rev 294214)
@@ -86,7 +86,7 @@
 #include "pas_segregated_page_config_kind.def"
 #undef PAS_DEFINE_SEGREGATED_PAGE_CONFIG_KIND
 }
-PAS_ASSERT(!"Should not be reached");
+PAS_ASSERT_WITH_EXTRA_DETAIL(!"Should not be reached", kind);
 return (pas_local_allocator_config_kind)0;
 

[webkit-changes] [294213] trunk/Source

2022-05-14 Thread ysuzuki
Title: [294213] trunk/Source








Revision 294213
Author ysuz...@apple.com
Date 2022-05-14 17:47:31 -0700 (Sat, 14 May 2022)


Log Message
Put ThreadGlobalData in Thread
https://bugs.webkit.org/show_bug.cgi?id=240116

Reviewed by Darin Adler and Mark Lam.

This patch puts ThreadGlobalData into Thread's m_clientData field.
Thread is stored in fast TLS, so accessing to this field is quite fast
compared to the current ThreadSpecific one.

At the same time, this change can remove a hack in ThreadGlobalData.
Previously worker thread needs to tear down ThreadGlobalData explicitly
because Thread::current() can be destroyed earlier than ThreadGlobalData.
In that case, EventNames etc., which accesses to AtomString's destruction
can have problem because of lack of Thread::current() access. But since
we now move it to Thread, we can control how it is destroyed with Thread::current()
precisely, and we can explicitly destroy it before Thread::current() is fully
cleared. So we do not need to call it explicitly anymore.
Currently, we are calling it just to make ThreadGlobalData destroyed for debugging.

* Source/WebCore/PAL/pal/ThreadGlobalData.cpp:
(PAL::ThreadGlobalData::ThreadGlobalData):
(PAL::ThreadGlobalData::destroy): Deleted.
* Source/WebCore/PAL/pal/ThreadGlobalData.h:
(PAL::ThreadGlobalData::ThreadGlobalData::cachedConverterICU): Deleted.
* Source/WTF/wtf/Threading.h:
(WTF::Thread::Thread):
* Source/WTF/wtf/posix/ThreadingPOSIX.cpp:
(WTF::Thread::destructTLS):
* Source/WTF/wtf/win/ThreadingWin.cpp:
(WTF::Thread::ThreadHolder::~ThreadHolder):
* Source/WebCore/platform/ThreadGlobalData.cpp:
(WebCore::ThreadGlobalData::destroy):
(WebCore::ThreadGlobalData::setWebCoreThreadData):
(WebCore::threadGlobalData):

Canonical link: https://commits.webkit.org/250571@main

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/Threading.h
trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp
trunk/Source/WTF/wtf/win/ThreadingWin.cpp
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/PAL/ChangeLog
trunk/Source/WebCore/PAL/pal/ThreadGlobalData.cpp
trunk/Source/WebCore/PAL/pal/ThreadGlobalData.h
trunk/Source/WebCore/platform/ThreadGlobalData.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (294212 => 294213)

--- trunk/Source/WTF/ChangeLog	2022-05-15 00:45:16 UTC (rev 294212)
+++ trunk/Source/WTF/ChangeLog	2022-05-15 00:47:31 UTC (rev 294213)
@@ -1,3 +1,17 @@
+2022-05-08  Yusuke Suzuki  
+
+Put ThreadGlobalData in Thread
+https://bugs.webkit.org/show_bug.cgi?id=240116
+
+Reviewed by Darin Adler and Mark Lam.
+
+* wtf/Threading.h:
+(WTF::Thread::Thread):
+* wtf/posix/ThreadingPOSIX.cpp:
+(WTF::Thread::destructTLS):
+* wtf/win/ThreadingWin.cpp:
+(WTF::Thread::ThreadHolder::~ThreadHolder):
+
 2022-05-14  Tyler Wilcock  
 
 AX: Remove CSSDisplayContentsAXSupportEnabled flag


Modified: trunk/Source/WTF/wtf/Threading.h (294212 => 294213)

--- trunk/Source/WTF/wtf/Threading.h	2022-05-15 00:45:16 UTC (rev 294212)
+++ trunk/Source/WTF/wtf/Threading.h	2022-05-15 00:47:31 UTC (rev 294213)
@@ -109,6 +109,11 @@
 friend class ThreadGroup;
 friend WTF_EXPORT_PRIVATE void initialize();
 
+class ClientData : public ThreadSafeRefCounted {
+public:
+virtual ~ClientData() = default;
+};
+
 WTF_EXPORT_PRIVATE ~Thread();
 
 enum class QOS {
@@ -347,14 +352,13 @@
 static Lock s_allThreadsLock;
 
 JoinableState m_joinableState { Joinable };
-bool m_isShuttingDown : 1;
-bool m_didExit : 1;
-bool m_isDestroyedOnce : 1;
-bool m_isCompilationThread: 1;
-unsigned m_gcThreadType : 2;
+bool m_isShuttingDown : 1 { false };
+bool m_didExit : 1 { false };
+bool m_isDestroyedOnce : 1 { false };
+bool m_isCompilationThread: 1 { false };
+bool m_didUnregisterFromAllThreads : 1 { false };
+unsigned m_gcThreadType : 2 { static_cast(GCThreadType::None) };
 
-bool m_didUnregisterFromAllThreads { false };
-
 // Lock & ParkingLot rely on ThreadSpecific. But Thread object can be destroyed even after ThreadSpecific things are destroyed.
 // Use WordLock since WordLock does not depend on ThreadSpecific and this "Thread".
 WordLock m_mutex;
@@ -388,15 +392,11 @@
 void* m_savedLastStackTop;
 public:
 void* m_apiData { nullptr };
+RefPtr m_clientData { nullptr };
 };
 
 inline Thread::Thread()
-: m_isShuttingDown(false)
-, m_didExit(false)
-, m_isDestroyedOnce(false)
-, m_isCompilationThread(false)
-, m_gcThreadType(static_cast(GCThreadType::None))
-, m_uid(++s_uid)
+: m_uid(++s_uid)
 {
 }
 


Modified: trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp (294212 => 294213)

--- trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp	2022-05-15 00:45:16 UTC (rev 294212)
+++ trunk/Source/WTF/wtf/posix/ThreadingPOSIX.cpp	2022-05-15 00:47:31 UTC (rev 294213)
@@ -556,6 +556,10 @@
 _pthread_setspecific_direct(WTF_THREAD_DATA_KEY, thread);
 

[webkit-changes] [294212] trunk/Tools

2022-05-14 Thread jbedard
Title: [294212] trunk/Tools








Revision 294212
Author jbed...@apple.com
Date 2022-05-14 17:45:16 -0700 (Sat, 14 May 2022)


Log Message
[webkit-patch] Include commit messages in patches (Follow-up #2)
https://bugs.webkit.org/show_bug.cgi?id=240256


Unreviewed follow-up fix.


* Scripts/webkitpy/common/checkout/scm/git.py:
(Git.create_patch): Allow caller to exclude commit message, run `git diff` against HEAD by
default to include both staged and unstaged changes.
* Scripts/webkitpy/common/checkout/scm/scm.py:
(SCM.create_patch): Match function signature for git.
* Scripts/webkitpy/common/checkout/scm/scm_mock.py:
(MockSCM.create_patch): Match function signature for git.
* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.create_patch): Match function signature for git.
* Scripts/webkitpy/w3c/test_exporter.py:
(WebPlatformTestExporter._wpt_patch): Exclude commit message since we won't be able
to classify it's file.
* Scripts/webkitpy/w3c/test_exporter_unittest.py:
(TestExporterTest.MockGit.create_patch): Match function signature for git.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py
trunk/Tools/Scripts/webkitpy/common/checkout/scm/scm.py
trunk/Tools/Scripts/webkitpy/common/checkout/scm/scm_mock.py
trunk/Tools/Scripts/webkitpy/common/checkout/scm/svn.py
trunk/Tools/Scripts/webkitpy/w3c/test_exporter.py
trunk/Tools/Scripts/webkitpy/w3c/test_exporter_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (294211 => 294212)

--- trunk/Tools/ChangeLog	2022-05-14 22:39:40 UTC (rev 294211)
+++ trunk/Tools/ChangeLog	2022-05-15 00:45:16 UTC (rev 294212)
@@ -1,3 +1,26 @@
+2022-05-14  Jonathan Bedard  
+
+[webkit-patch] Include commit messages in patches (Follow-up #2) 
+https://bugs.webkit.org/show_bug.cgi?id=240256
+
+
+Unreviewed follow-up fix.
+
+* Scripts/webkitpy/common/checkout/scm/git.py:
+(Git.create_patch): Allow caller to exclude commit message, run `git diff` against HEAD by
+default to include both staged and unstaged changes.
+* Scripts/webkitpy/common/checkout/scm/scm.py:
+(SCM.create_patch): Match function signature for git.
+* Scripts/webkitpy/common/checkout/scm/scm_mock.py:
+(MockSCM.create_patch): Match function signature for git.
+* Scripts/webkitpy/common/checkout/scm/svn.py:
+(SVN.create_patch): Match function signature for git.
+* Scripts/webkitpy/w3c/test_exporter.py:
+(WebPlatformTestExporter._wpt_patch): Exclude commit message since we won't be able
+to classify it's file.
+* Scripts/webkitpy/w3c/test_exporter_unittest.py:
+(TestExporterTest.MockGit.create_patch): Match function signature for git.
+
 2022-05-14  Tyler Wilcock  
 
 AX: Remove CSSDisplayContentsAXSupportEnabled flag


Modified: trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py (294211 => 294212)

--- trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py	2022-05-14 22:39:40 UTC (rev 294211)
+++ trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py	2022-05-15 00:45:16 UTC (rev 294212)
@@ -350,7 +350,7 @@
 
 return string_utils.encode("Subversion Revision: ") + string_utils.encode(revision) + string_utils.encode('\n') + string_utils.encode(diff)
 
-def create_patch(self, git_commit=None, changed_files=None, git_index=False):
+def create_patch(self, git_commit=None, changed_files=None, git_index=False, commit_message=True):
 """Returns a byte array (str()) representing the patch file.
 Patch files are effectively binary since they may contain files of multiple different encodings.
 If git_index is True, git_commit is ignored because only indexed files are handled.
@@ -358,7 +358,7 @@
 
 head = self.rev_parse('HEAD')
 merge_base = self.merge_base(git_commit)
-if merge_base == head:
+if not commit_message or merge_base == head:
 command = [self.executable_name, 'diff', '--binary', '--no-color', '--no-ext-diff', '--full-index', '--no-renames']
 else:
 command = [self.executable_name, 'format-patch', '--stdout', '--binary']
@@ -376,6 +376,8 @@
 command += [merge_base]
 elif merge_base != head:
 command += ['HEAD...{}'.format(merge_base)]
+else:
+command += ['HEAD']
 
 return self.run(command, decode_output=False, cwd=self.checkout_root)
 


Modified: trunk/Tools/Scripts/webkitpy/common/checkout/scm/scm.py (294211 => 294212)

--- trunk/Tools/Scripts/webkitpy/common/checkout/scm/scm.py	2022-05-14 22:39:40 UTC (rev 294211)
+++ trunk/Tools/Scripts/webkitpy/common/checkout/scm/scm.py	2022-05-15 00:45:16 UTC (rev 294212)
@@ -172,7 +172,7 @@
 def timestamp_of_native_revision(self, path, revision):
 self._subclass_must_implement()
 
-def create_patch(self, git_commit=None, changed_files=None):
+def create_patch(self, git_commit=None, 

[webkit-changes] [294211] trunk

2022-05-14 Thread zalan
Title: [294211] trunk








Revision 294211
Author za...@apple.com
Date 2022-05-14 15:39:40 -0700 (Sat, 14 May 2022)


Log Message
Changing text color and removing line-clamp on hover causes text to disappear permanently
https://bugs.webkit.org/show_bug.cgi?id=240410

Reviewed by Simon Fraser.

Source/WebCore:

Invalidate the flex items' line layout path when line-clamp property value changes.

While the line clamp property is set on the flex box, it is "forced on" the flex items' inline content.
(i.e. the property is not inherited, it is propagated to the flex children)
It means dynamic value change only runs on the flex box renderer.

Test: fast/block/dynamic-line-clamp-empty-content.html

* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::styleWillChange):

LayoutTests:

* fast/block/dynamic-line-clamp-empty-content-expected.html: Added.
* fast/block/dynamic-line-clamp-empty-content.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp


Added Paths

trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content-expected.html
trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content.html




Diff

Modified: trunk/LayoutTests/ChangeLog (294210 => 294211)

--- trunk/LayoutTests/ChangeLog	2022-05-14 21:35:41 UTC (rev 294210)
+++ trunk/LayoutTests/ChangeLog	2022-05-14 22:39:40 UTC (rev 294211)
@@ -1,5 +1,15 @@
 2022-05-14  Alan Bujtas  
 
+Changing text color and removing line-clamp on hover causes text to disappear permanently
+https://bugs.webkit.org/show_bug.cgi?id=240410
+
+Reviewed by Simon Fraser.
+
+* fast/block/dynamic-line-clamp-empty-content-expected.html: Added.
+* fast/block/dynamic-line-clamp-empty-content.html: Added.
+
+2022-05-14  Alan Bujtas  
+
 [Repaint] Border ignores currentColor change when hovering
 https://bugs.webkit.org/show_bug.cgi?id=240401
 


Added: trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content-expected.html (0 => 294211)

--- trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content-expected.html	2022-05-14 22:39:40 UTC (rev 294211)
@@ -0,0 +1,10 @@
+
+#clamp {
+  width: 100px;
+  overflow: hidden;
+  display: -webkit-box;
+  -webkit-box-orient: block-axis;
+  -webkit-line-clamp: 2;
+}
+
+This text should stay visible after setting line clamp on it.


Added: trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content.html (0 => 294211)

--- trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content.html	(rev 0)
+++ trunk/LayoutTests/fast/block/dynamic-line-clamp-empty-content.html	2022-05-14 22:39:40 UTC (rev 294211)
@@ -0,0 +1,13 @@
+
+#clamp {
+  width: 100px;
+  overflow: hidden;
+  display: -webkit-box;
+  -webkit-box-orient: block-axis;
+}
+
+This text should stay visible after setting line clamp on it.
+
+document.body.offsetHeight;
+clamp.style.webkitLineClamp = '2';
+


Modified: trunk/Source/WebCore/ChangeLog (294210 => 294211)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 21:35:41 UTC (rev 294210)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 22:39:40 UTC (rev 294211)
@@ -1,5 +1,23 @@
 2022-05-14  Alan Bujtas  
 
+Changing text color and removing line-clamp on hover causes text to disappear permanently
+https://bugs.webkit.org/show_bug.cgi?id=240410
+
+Reviewed by Simon Fraser.
+
+Invalidate the flex items' line layout path when line-clamp property value changes.
+
+While the line clamp property is set on the flex box, it is "forced on" the flex items' inline content.
+(i.e. the property is not inherited, it is propagated to the flex children)
+It means dynamic value change only runs on the flex box renderer.
+
+Test: fast/block/dynamic-line-clamp-empty-content.html
+
+* rendering/RenderDeprecatedFlexibleBox.cpp:
+(WebCore::RenderDeprecatedFlexibleBox::styleWillChange):
+
+2022-05-14  Alan Bujtas  
+
 Unreviewed win build fix.
 
 * layout/integration/flex/LayoutIntegrationFlexLayout.cpp:


Modified: trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp (294210 => 294211)

--- trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp	2022-05-14 21:35:41 UTC (rev 294210)
+++ trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp	2022-05-14 22:39:40 UTC (rev 294211)
@@ -179,9 +179,17 @@
 void RenderDeprecatedFlexibleBox::styleWillChange(StyleDifference diff, const RenderStyle& newStyle)
 {
 auto* oldStyle = hasInitializedStyle() ? () : nullptr;
-if (oldStyle && !oldStyle->lineClamp().isNone() && newStyle.lineClamp().isNone())
-clearLineClamp();
+if (oldStyle) {
+auto hadLineClamp = !oldStyle->lineClamp().isNone();
+auto hasLineClamp = !newStyle.lineClamp().isNone(); 
+   

[webkit-changes] [294210] trunk/Source/WebCore

2022-05-14 Thread zalan
Title: [294210] trunk/Source/WebCore








Revision 294210
Author za...@apple.com
Date 2022-05-14 14:35:41 -0700 (Sat, 14 May 2022)


Log Message
Unreviewed win build fix.


* layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
(WebCore::LayoutIntegration::flexBoxLogicalBorder):
(WebCore::LayoutIntegration::flexBoxLogicalPadding):
(WebCore::LayoutIntegration::FlexLayout::updateFormattingRootGeometryAndInvalidate):
(WebCore::LayoutIntegration::logicalBorder): Deleted.
(WebCore::LayoutIntegration::logicalPadding): Deleted.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294209 => 294210)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 20:08:58 UTC (rev 294209)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 21:35:41 UTC (rev 294210)
@@ -1,3 +1,14 @@
+2022-05-14  Alan Bujtas  
+
+Unreviewed win build fix.
+
+* layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
+(WebCore::LayoutIntegration::flexBoxLogicalBorder):
+(WebCore::LayoutIntegration::flexBoxLogicalPadding):
+(WebCore::LayoutIntegration::FlexLayout::updateFormattingRootGeometryAndInvalidate):
+(WebCore::LayoutIntegration::logicalBorder): Deleted.
+(WebCore::LayoutIntegration::logicalPadding): Deleted.
+
 2022-05-10  Yusuke Suzuki  
 
 Rename EventTrackingRegions::Event to EventTrackingRegions::EventType


Modified: trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp (294209 => 294210)

--- trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp	2022-05-14 20:08:58 UTC (rev 294209)
+++ trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp	2022-05-14 21:35:41 UTC (rev 294210)
@@ -46,7 +46,7 @@
 }
 
 // FIXME: Merge these with the other integration layout functions.
-static inline Layout::Edges logicalBorder(const RenderBoxModelObject& renderer, bool isLeftToRightInlineDirection, WritingMode writingMode)
+static inline Layout::Edges flexBoxLogicalBorder(const RenderBoxModelObject& renderer, bool isLeftToRightInlineDirection, WritingMode writingMode)
 {
 UNUSED_PARAM(isLeftToRightInlineDirection);
 UNUSED_PARAM(writingMode);
@@ -59,7 +59,7 @@
 return { { borderLeft, borderRight }, { borderTop, borderBottom } };
 }
 
-static inline Layout::Edges logicalPadding(const RenderBoxModelObject& renderer, bool isLeftToRightInlineDirection, WritingMode writingMode)
+static inline Layout::Edges flexBoxLogicalPadding(const RenderBoxModelObject& renderer, bool isLeftToRightInlineDirection, WritingMode writingMode)
 {
 UNUSED_PARAM(isLeftToRightInlineDirection);
 UNUSED_PARAM(writingMode);
@@ -81,8 +81,8 @@
 auto writingMode = flexBoxRenderer.style().writingMode();
 
 root.setContentBoxWidth(writingMode == WritingMode::TopToBottom ? flexBoxRenderer.contentWidth() : flexBoxRenderer.contentHeight());
-root.setPadding(logicalPadding(flexBoxRenderer, isLeftToRightInlineDirection, writingMode));
-root.setBorder(logicalBorder(flexBoxRenderer, isLeftToRightInlineDirection, writingMode));
+root.setPadding(flexBoxLogicalPadding(flexBoxRenderer, isLeftToRightInlineDirection, writingMode));
+root.setBorder(flexBoxLogicalBorder(flexBoxRenderer, isLeftToRightInlineDirection, writingMode));
 root.setHorizontalMargin({ });
 root.setVerticalMargin({ });
 };






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294209] trunk/Source

2022-05-14 Thread ysuzuki
Title: [294209] trunk/Source








Revision 294209
Author ysuz...@apple.com
Date 2022-05-14 13:08:58 -0700 (Sat, 14 May 2022)


Log Message
Rename EventTrackingRegions::Event to EventTrackingRegions::EventType
https://bugs.webkit.org/show_bug.cgi?id=240295

Reviewed by Darin Adler.

This patch is follow-up after r293967 by Darin's comment. EventTrackingRegions::Event is not event actually,
it is just an EventType. This patch renames it with EventType. We also rename variables "event" to "eventType".

* Source/WebKit/Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder::decode):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::eventTrackingTypeForPoint const):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::updateTouchEventTracking):
* Source/WebCore/page/DebugPageOverlays.cpp:
(WebCore::NonFastScrollableRegionOverlay::drawRect):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::touchEventRectsForEventForTesting):
* Source/WebCore/page/Page.h:
* Source/WebCore/page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::absoluteEventTrackingRegionsForFrame const):
* Source/WebCore/page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::computeWheelProcessingSteps):
(WebCore::ScrollingTree::eventTrackingTypeForPoint):
* Source/WebCore/page/scrolling/ScrollingTree.h:
* Source/WebCore/platform/EventTrackingRegions.cpp:
(WebCore::EventTrackingRegions::eventName):
(WebCore::EventTrackingRegions::eventNameAtomString): We add this function to have a way to get AtomString event name. It simplifies Internal code.
(WebCore::EventTrackingRegions::trackingTypeForPoint):
(WebCore::EventTrackingRegions::uniteSynchronousRegion):
* Source/WebCore/platform/EventTrackingRegions.h:
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::touchEventRectsForEvent):

Canonical link: https://commits.webkit.org/250567@main

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/DebugPageOverlays.cpp
trunk/Source/WebCore/page/Page.cpp
trunk/Source/WebCore/page/Page.h
trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTree.h
trunk/Source/WebCore/platform/EventTrackingRegions.cpp
trunk/Source/WebCore/platform/EventTrackingRegions.h
trunk/Source/WebCore/testing/Internals.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp
trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294208 => 294209)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 19:15:53 UTC (rev 294208)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 20:08:58 UTC (rev 294209)
@@ -1,3 +1,34 @@
+2022-05-10  Yusuke Suzuki  
+
+Rename EventTrackingRegions::Event to EventTrackingRegions::EventType
+https://bugs.webkit.org/show_bug.cgi?id=240295
+
+Reviewed by Darin Adler.
+
+This patch is follow-up after r293967 by Darin's comment. EventTrackingRegions::Event is not event actually,
+it is just an EventType. This patch renames it with EventType. We also rename variables "event" to "eventType".
+
+* page/DebugPageOverlays.cpp:
+(WebCore::NonFastScrollableRegionOverlay::drawRect):
+* page/Page.cpp:
+(WebCore::Page::touchEventRectsForEventForTesting):
+* page/Page.h:
+* page/scrolling/ScrollingCoordinator.cpp:
+(WebCore::ScrollingCoordinator::absoluteEventTrackingRegionsForFrame const):
+* page/scrolling/ScrollingTree.cpp:
+(WebCore::ScrollingTree::computeWheelProcessingSteps):
+(WebCore::ScrollingTree::eventTrackingTypeForPoint):
+* page/scrolling/ScrollingTree.h:
+* platform/EventTrackingRegions.cpp:
+(WebCore::EventTrackingRegions::eventName):
+(WebCore::EventTrackingRegions::eventNameAtomString): We add this function to have a way to get AtomString event name.
+It simplifies Internal code.
+(WebCore::EventTrackingRegions::trackingTypeForPoint):
+(WebCore::EventTrackingRegions::uniteSynchronousRegion):
+* platform/EventTrackingRegions.h:
+* testing/Internals.cpp:
+(WebCore::Internals::touchEventRectsForEvent):
+
 2022-05-14  Tyler Wilcock  
 
 AX: Remove CSSDisplayContentsAXSupportEnabled flag


Modified: trunk/Source/WebCore/page/DebugPageOverlays.cpp (294208 => 294209)

--- trunk/Source/WebCore/page/DebugPageOverlays.cpp	2022-05-14 19:15:53 UTC (rev 294208)
+++ trunk/Source/WebCore/page/DebugPageOverlays.cpp	2022-05-14 20:08:58 UTC (rev 294209)
@@ -177,15 +177,15 @@
 
 void NonFastScrollableRegionOverlay::drawRect(PageOverlay& pageOverlay, GraphicsContext& context, const IntRect&)

[webkit-changes] [294208] trunk

2022-05-14 Thread tyler_w
Title: [294208] trunk








Revision 294208
Author tyle...@apple.com
Date 2022-05-14 12:15:53 -0700 (Sat, 14 May 2022)


Log Message
AX: Remove CSSDisplayContentsAXSupportEnabled flag
https://bugs.webkit.org/show_bug.cgi?id=240409

Reviewed by Chris Fleizach.

Source/WebCore:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

* page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setCSSDisplayContentsAXSupportEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::cssDisplayContentsAXSupportEnabled const): Deleted.

Source/WebKitLegacy/mac:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences cssDisplayContentsAXSupportEnabled]): Deleted.
(-[WebPreferences setCSSDisplayContentsAXSupportEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:

Source/WTF:

* Scripts/Preferences/WebPreferencesInternal.yaml:

Tools:

* DumpRenderTree/TestOptions.cpp:
(WTR::TestOptions::defaults):

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/RuntimeEnabledFeatures.h
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/WebView/WebPreferenceKeysPrivate.h
trunk/Source/WebKitLegacy/mac/WebView/WebPreferences.mm
trunk/Source/WebKitLegacy/mac/WebView/WebPreferencesPrivate.h
trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/TestOptions.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (294207 => 294208)

--- trunk/Source/WTF/ChangeLog	2022-05-14 18:04:36 UTC (rev 294207)
+++ trunk/Source/WTF/ChangeLog	2022-05-14 19:15:53 UTC (rev 294208)
@@ -1,3 +1,12 @@
+2022-05-14  Tyler Wilcock  
+
+AX: Remove CSSDisplayContentsAXSupportEnabled flag
+https://bugs.webkit.org/show_bug.cgi?id=240409
+
+Reviewed by Chris Fleizach.
+
+* Scripts/Preferences/WebPreferencesInternal.yaml:
+
 2022-05-13  Tim Horton  
 
 ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml (294207 => 294208)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml	2022-05-14 18:04:36 UTC (rev 294207)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml	2022-05-14 19:15:53 UTC (rev 294208)
@@ -107,17 +107,6 @@
 WebKit:
   default: true
 
-CSSDisplayContentsAXSupportEnabled:
-  type: bool
-  humanReadableName: "Accessibility support for display: contents elements"
-  humanReadableDescription: "Enable work-in-progress accessibility support for display: contents elements"
-  webcoreBinding: RuntimeEnabledFeatures
-  defaultValue:
-WebKitLegacy:
-  default: false
-WebKit:
-  default: false
-
 CSSLogicalEnabled:
   type: bool
   humanReadableName: "CSS Logical Properties and Values"


Modified: trunk/Source/WebCore/ChangeLog (294207 => 294208)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 18:04:36 UTC (rev 294207)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 19:15:53 UTC (rev 294208)
@@ -1,3 +1,17 @@
+2022-05-14  Tyler Wilcock  
+
+AX: Remove CSSDisplayContentsAXSupportEnabled flag
+https://bugs.webkit.org/show_bug.cgi?id=240409
+
+Reviewed by Chris Fleizach.
+
+We added initial support without using this flag and will continue to
+fix bugs as we find them, making this flag unnecessary.
+
+* page/RuntimeEnabledFeatures.h:
+(WebCore::RuntimeEnabledFeatures::setCSSDisplayContentsAXSupportEnabled): Deleted.
+(WebCore::RuntimeEnabledFeatures::cssDisplayContentsAXSupportEnabled const): Deleted.
+
 2022-05-14  Antti Koivisto  
 
 Template TextBoxPainter on line layout path


Modified: trunk/Source/WebCore/page/RuntimeEnabledFeatures.h (294207 => 294208)

--- trunk/Source/WebCore/page/RuntimeEnabledFeatures.h	2022-05-14 18:04:36 UTC (rev 294207)
+++ trunk/Source/WebCore/page/RuntimeEnabledFeatures.h	2022-05-14 19:15:53 UTC (rev 294208)
@@ -159,9 +159,6 @@
 void setReadableByteStreamAPIEnabled(bool isEnabled) { m_isReadableByteStreamAPIEnabled = isEnabled; }
 bool readableByteStreamAPIEnabled() const { return m_isReadableByteStreamAPIEnabled; }
 
-void setCSSDisplayContentsAXSupportEnabled(bool isEnabled) { m_CSSDisplayContentsAXSupportEnabled = isEnabled; }
-bool cssDisplayContentsAXSupportEnabled() const { return m_CSSDisplayContentsAXSupportEnabled; }
-
 void setCSSLogicalEnabled(bool isEnabled) { m_CSSLogicalEnabled = isEnabled; }
 bool cssLogicalEnabled() const { return m_CSSLogicalEnabled; }
 
@@ -329,7 +326,6 @@
 
 bool m_isReadableByteStreamAPIEnabled { false };
 
-bool m_CSSDisplayContentsAXSupportEnabled { false };
 bool m_CSSLogicalEnabled { false };
 
 // False by default until 

[webkit-changes] [294207] tags/WebKit-7614.1.14.1.1/

2022-05-14 Thread repstein
Title: [294207] tags/WebKit-7614.1.14.1.1/








Revision 294207
Author repst...@apple.com
Date 2022-05-14 11:04:36 -0700 (Sat, 14 May 2022)


Log Message
Tag WebKit-7614.1.14.1.1.

Added Paths

tags/WebKit-7614.1.14.1.1/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294206] tags/WebKit-7614.1.14.0.1/

2022-05-14 Thread repstein
Title: [294206] tags/WebKit-7614.1.14.0.1/








Revision 294206
Author repst...@apple.com
Date 2022-05-14 11:02:42 -0700 (Sat, 14 May 2022)


Log Message
Tag WebKit-7614.1.14.0.1.

Added Paths

tags/WebKit-7614.1.14.0.1/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294205] branches/safari-7614.1.14.1-branch/Source

2022-05-14 Thread repstein
Title: [294205] branches/safari-7614.1.14.1-branch/Source








Revision 294205
Author repst...@apple.com
Date 2022-05-14 10:58:17 -0700 (Sat, 14 May 2022)


Log Message
Versioning.

WebKit-7614.1.14.1.1

Modified Paths

branches/safari-7614.1.14.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/WebGPU/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/WebKit/Configurations/Version.xcconfig
branches/safari-7614.1.14.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig




Diff

Modified: branches/safari-7614.1.14.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (294204 => 294205)

--- branches/safari-7614.1.14.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2022-05-14 17:51:12 UTC (rev 294204)
+++ branches/safari-7614.1.14.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2022-05-14 17:58:17 UTC (rev 294205)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 614;
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
-MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (294204 => 294205)

--- branches/safari-7614.1.14.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2022-05-14 17:51:12 UTC (rev 294204)
+++ branches/safari-7614.1.14.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2022-05-14 17:58:17 UTC (rev 294205)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 614;
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
-MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (294204 => 294205)

--- branches/safari-7614.1.14.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2022-05-14 17:51:12 UTC (rev 294204)
+++ branches/safari-7614.1.14.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2022-05-14 17:58:17 UTC (rev 294205)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 614;
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
-MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.1-branch/Source/WebCore/Configurations/Version.xcconfig (294204 => 294205)

--- branches/safari-7614.1.14.1-branch/Source/WebCore/Configurations/Version.xcconfig	2022-05-14 17:51:12 UTC (rev 294204)
+++ branches/safari-7614.1.14.1-branch/Source/WebCore/Configurations/Version.xcconfig	2022-05-14 17:58:17 UTC (rev 294205)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 614;
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
-MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+MICRO_VERSION = 1;
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (294204 => 294205)

--- branches/safari-7614.1.14.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2022-05-14 17:51:12 UTC (rev 294204)
+++ branches/safari-7614.1.14.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2022-05-14 17:58:17 UTC (rev 294205)
@@ -24,9 +24,9 @@
 MAJOR_VERSION = 614;
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
-MICRO_VERSION = 0;
-NANO_VERSION = 

[webkit-changes] [294204] trunk/Source/WebCore

2022-05-14 Thread antti
Title: [294204] trunk/Source/WebCore








Revision 294204
Author an...@apple.com
Date 2022-05-14 10:51:12 -0700 (Sat, 14 May 2022)


Log Message
Template TextBoxPainter on line layout path
https://bugs.webkit.org/show_bug.cgi?id=240416

Reviewed by Alan Bujtas.

Painting currently goes via a line layout path agnostic iterator.
This is inefficient since we always know what sort of layout we are painting.

* layout/integration/inline/InlineIteratorBox.cpp:
(WebCore::InlineIterator::Box::visualRect const):
* layout/integration/inline/InlineIteratorBox.h:
(WebCore::InlineIterator::Box::containingBlock const):
(WebCore::InlineIterator::Box::visualRect const): Deleted.
* layout/integration/inline/InlineIteratorBoxLegacyPath.h:
(WebCore::InlineIterator::BoxLegacyPath::containingBlock const):
(WebCore::InlineIterator::BoxLegacyPath::direction const):
(WebCore::InlineIterator::BoxLegacyPath::isFirstLine const):
* layout/integration/inline/InlineIteratorBoxModernPath.h:
(WebCore::InlineIterator::BoxModernPath::containingBlock const):
(WebCore::InlineIterator::BoxModernPath::direction const):
(WebCore::InlineIterator::BoxModernPath::isFirstLine const):
(WebCore::InlineIterator::BoxModernPath::renderText const):
* layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::paint):
* rendering/InlineBoxPainter.cpp:
(WebCore::InlineBoxPainter::paintMask):
(WebCore::InlineBoxPainter::paintDecorations):
* rendering/LegacyInlineFlowBox.cpp:
(WebCore::LegacyInlineFlowBox::addTextBoxVisualOverflow):
* rendering/LegacyInlineTextBox.cpp:
(WebCore::LegacyInlineTextBox::paint):
* rendering/LegacyInlineTextBox.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
* rendering/TextBoxPainter.cpp:
(WebCore::LegacyTextBoxPainter::LegacyTextBoxPainter):
(WebCore::ModernTextBoxPainter::ModernTextBoxPainter):
(WebCore::TextBoxPainter::TextBoxPainter):
(WebCore::TextBoxPainter::~TextBoxPainter):
(WebCore::TextBoxPainter::makeIterator const):
(WebCore::TextBoxPainter::paint):
(WebCore::TextBoxPainter::createMarkedTextFromSelectionInBox):
(WebCore::TextBoxPainter::paintBackground):
(WebCore::TextBoxPainter::paintForegroundAndDecorations):
(WebCore::TextBoxPainter::paintCompositionBackground):
(WebCore::TextBoxPainter::paintForeground):
(WebCore::TextBoxPainter::createDecorationPainter):
(WebCore::TextBoxPainter::paintBackgroundDecorations):
(WebCore::TextBoxPainter::paintForegroundDecorations):
(WebCore::TextBoxPainter::paintCompositionUnderlines):
(WebCore::TextBoxPainter::textPosition):
(WebCore::TextBoxPainter::paintCompositionUnderline):
(WebCore::TextBoxPainter::paintPlatformDocumentMarkers):
(WebCore::LegacyTextBoxPainter::calculateUnionOfAllDocumentMarkerBounds):
(WebCore::TextBoxPainter::paintPlatformDocumentMarker):
(WebCore::TextBoxPainter::computePaintRect):
(WebCore::calculateDocumentMarkerBounds):
(WebCore::TextBoxPainter::computeHaveSelection const):
(WebCore::TextBoxPainter::fontCascade const):
(WebCore::TextBoxPainter::textOriginFromPaintRect const):
(WebCore::TextBoxPainter::debugTextShadow const):
(WebCore::TextBoxPainter::TextBoxPainter): Deleted.
(WebCore::TextBoxPainter::~TextBoxPainter): Deleted.
(WebCore::TextBoxPainter::paint): Deleted.
(WebCore::TextBoxPainter::createMarkedTextFromSelectionInBox): Deleted.
(WebCore::TextBoxPainter::paintBackground): Deleted.
(WebCore::TextBoxPainter::paintForegroundAndDecorations): Deleted.
(WebCore::TextBoxPainter::paintCompositionBackground): Deleted.
(WebCore::TextBoxPainter::paintForeground): Deleted.
(WebCore::TextBoxPainter::createDecorationPainter): Deleted.
(WebCore::TextBoxPainter::paintBackgroundDecorations): Deleted.
(WebCore::TextBoxPainter::paintForegroundDecorations): Deleted.
(WebCore::TextBoxPainter::paintCompositionUnderlines): Deleted.
(WebCore::textPosition): Deleted.
(WebCore::TextBoxPainter::paintCompositionUnderline): Deleted.
(WebCore::TextBoxPainter::paintPlatformDocumentMarkers): Deleted.
(WebCore::TextBoxPainter::calculateUnionOfAllDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter::paintPlatformDocumentMarker): Deleted.
(WebCore::TextBoxPainter::computePaintRect): Deleted.
(WebCore::TextBoxPainter::calculateDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter::computeHaveSelection const): Deleted.
(WebCore::TextBoxPainter::fontCascade const): Deleted.
(WebCore::TextBoxPainter::textOriginFromPaintRect const): Deleted.
(WebCore::TextBoxPainter::debugTextShadow const): Deleted.
* rendering/TextBoxPainter.h:
(WebCore::TextBoxPainter::textBox const):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/integration/inline/InlineIteratorBox.cpp
trunk/Source/WebCore/layout/integration/inline/InlineIteratorBox.h
trunk/Source/WebCore/layout/integration/inline/InlineIteratorBoxLegacyPath.h
trunk/Source/WebCore/layout/integration/inline/InlineIteratorBoxModernPath.h
trunk/Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp

[webkit-changes] [294203] branches/safari-7614.1.14.0-branch/Source

2022-05-14 Thread repstein
Title: [294203] branches/safari-7614.1.14.0-branch/Source








Revision 294203
Author repst...@apple.com
Date 2022-05-14 10:40:21 -0700 (Sat, 14 May 2022)


Log Message
Versioning.

WebKit-7614.1.14.0.1

Modified Paths

branches/safari-7614.1.14.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/WebGPU/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/WebKit/Configurations/Version.xcconfig
branches/safari-7614.1.14.0-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig




Diff

Modified: branches/safari-7614.1.14.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig (294202 => 294203)

--- branches/safari-7614.1.14.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2022-05-14 17:25:34 UTC (rev 294202)
+++ branches/safari-7614.1.14.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2022-05-14 17:40:21 UTC (rev 294203)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (294202 => 294203)

--- branches/safari-7614.1.14.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2022-05-14 17:25:34 UTC (rev 294202)
+++ branches/safari-7614.1.14.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2022-05-14 17:40:21 UTC (rev 294203)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (294202 => 294203)

--- branches/safari-7614.1.14.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2022-05-14 17:25:34 UTC (rev 294202)
+++ branches/safari-7614.1.14.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2022-05-14 17:40:21 UTC (rev 294203)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.0-branch/Source/WebCore/Configurations/Version.xcconfig (294202 => 294203)

--- branches/safari-7614.1.14.0-branch/Source/WebCore/Configurations/Version.xcconfig	2022-05-14 17:25:34 UTC (rev 294202)
+++ branches/safari-7614.1.14.0-branch/Source/WebCore/Configurations/Version.xcconfig	2022-05-14 17:40:21 UTC (rev 294203)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.
 BUNDLE_VERSION = $(BUNDLE_VERSION_$(CONFIGURATION));


Modified: branches/safari-7614.1.14.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (294202 => 294203)

--- branches/safari-7614.1.14.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2022-05-14 17:25:34 UTC (rev 294202)
+++ branches/safari-7614.1.14.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2022-05-14 17:40:21 UTC (rev 294203)
@@ -25,8 +25,8 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 14;
 MICRO_VERSION = 0;
-NANO_VERSION = 0;
-FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
+NANO_VERSION = 1;
+FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 

[webkit-changes] [294201] branches/safari-7614.1.14.2-branch/

2022-05-14 Thread repstein
Title: [294201] branches/safari-7614.1.14.2-branch/








Revision 294201
Author repst...@apple.com
Date 2022-05-14 10:25:28 -0700 (Sat, 14 May 2022)


Log Message
New branch.

Added Paths

branches/safari-7614.1.14.2-branch/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294202] branches/safari-7614.1.14.3-branch/

2022-05-14 Thread repstein
Title: [294202] branches/safari-7614.1.14.3-branch/








Revision 294202
Author repst...@apple.com
Date 2022-05-14 10:25:34 -0700 (Sat, 14 May 2022)


Log Message
New branch.

Added Paths

branches/safari-7614.1.14.3-branch/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294200] branches/safari-7614.1.14.1-branch/

2022-05-14 Thread repstein
Title: [294200] branches/safari-7614.1.14.1-branch/








Revision 294200
Author repst...@apple.com
Date 2022-05-14 10:25:22 -0700 (Sat, 14 May 2022)


Log Message
New branch.

Added Paths

branches/safari-7614.1.14.1-branch/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294199] branches/safari-7614.1.14.0-branch/

2022-05-14 Thread repstein
Title: [294199] branches/safari-7614.1.14.0-branch/








Revision 294199
Author repst...@apple.com
Date 2022-05-14 10:25:01 -0700 (Sat, 14 May 2022)


Log Message
New branch.

Added Paths

branches/safari-7614.1.14.0-branch/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294198] trunk/Source/WebCore

2022-05-14 Thread zalan
Title: [294198] trunk/Source/WebCore








Revision 294198
Author za...@apple.com
Date 2022-05-14 09:56:07 -0700 (Sat, 14 May 2022)


Log Message
[FFC][Integration] Add "fixed sized/all default value" flex layout
https://bugs.webkit.org/show_bug.cgi?id=240414

Reviewed by Antti Koivisto.

This patch adds support for the simplest possible flex layout (fixed size, no-wrap, no-reversed etc).

* layout/formattingContexts/flex/FlexFormattingContext.cpp:
(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294197 => 294198)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 16:26:54 UTC (rev 294197)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 16:56:07 UTC (rev 294198)
@@ -1,3 +1,15 @@
+2022-05-14  Alan Bujtas  
+
+[FFC][Integration] Add "fixed sized/all default value" flex layout
+https://bugs.webkit.org/show_bug.cgi?id=240414
+
+Reviewed by Antti Koivisto.
+
+This patch adds support for the simplest possible flex layout (fixed size, no-wrap, no-reversed etc).
+
+* layout/formattingContexts/flex/FlexFormattingContext.cpp:
+(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):
+
 2022-05-14  Kimmo Kinnunen  
 
 WebCore::IOSurface refers to unused context size


Modified: trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp (294197 => 294198)

--- trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp	2022-05-14 16:26:54 UTC (rev 294197)
+++ trunk/Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp	2022-05-14 16:56:07 UTC (rev 294198)
@@ -118,8 +118,17 @@
 }
 }
 
-void FlexFormattingContext::layoutInFlowContentForIntegration(const ConstraintsForInFlowContent&)
+void FlexFormattingContext::layoutInFlowContentForIntegration(const ConstraintsForInFlowContent& constraints)
 {
+auto& formattingState = this->formattingState();
+auto mainAxisPosition = constraints.horizontal().logicalLeft;
+auto crossAxisPosition = constraints.logicalTop();
+for (auto& flexItem : childrenOfType(root())) {
+auto& flexItemGeometry = formattingState.boxGeometry(flexItem);
+
+flexItemGeometry.setLogicalTopLeft({ mainAxisPosition, crossAxisPosition });
+mainAxisPosition = BoxGeometry::borderBoxRect(flexItemGeometry).right();
+}
 }
 
 IntrinsicWidthConstraints FlexFormattingContext::computedIntrinsicWidthConstraintsForIntegration()






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294197] trunk/Source

2022-05-14 Thread commit-queue
Title: [294197] trunk/Source








Revision 294197
Author commit-qu...@webkit.org
Date 2022-05-14 09:26:54 -0700 (Sat, 14 May 2022)


Log Message
WebCore::IOSurface refers to unused context size
https://bugs.webkit.org/show_bug.cgi?id=240385

Patch by Kimmo Kinnunen  on 2022-05-14
Reviewed by Simon Fraser.

Source/WebCore:

Remove unused IOSurface::m_contextSize.
Context related code makes IOSurface error-prone wrt
reusing the IOSurface in the pool.

* platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::create):
* platform/graphics/cocoa/IOSurface.h:
* platform/graphics/cocoa/IOSurface.mm:
(WebCore::IOSurface::create):
(WebCore::IOSurface::IOSurface):
(WebCore::IOSurface::ensurePlatformContext):

Source/WebKit:

Adjust after removing the IOSurface context size parameter.
All call sites passed the surface size.

* WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp
trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.h
trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.mm
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294196 => 294197)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 15:59:33 UTC (rev 294196)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 16:26:54 UTC (rev 294197)
@@ -1,3 +1,22 @@
+2022-05-14  Kimmo Kinnunen  
+
+WebCore::IOSurface refers to unused context size
+https://bugs.webkit.org/show_bug.cgi?id=240385
+
+Reviewed by Simon Fraser.
+
+Remove unused IOSurface::m_contextSize.
+Context related code makes IOSurface error-prone wrt
+reusing the IOSurface in the pool.
+
+* platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
+(WebCore::ImageBufferIOSurfaceBackend::create):
+* platform/graphics/cocoa/IOSurface.h:
+* platform/graphics/cocoa/IOSurface.mm:
+(WebCore::IOSurface::create):
+(WebCore::IOSurface::IOSurface):
+(WebCore::IOSurface::ensurePlatformContext):
+
 2022-05-14  Simon Fraser  
 
 Use an OptionSet<> for DisplayList::AsTextFlags


Modified: trunk/Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp (294196 => 294197)

--- trunk/Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp	2022-05-14 15:59:33 UTC (rev 294196)
+++ trunk/Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp	2022-05-14 16:26:54 UTC (rev 294197)
@@ -89,7 +89,7 @@
 if (backendSize.isEmpty())
 return nullptr;
 
-auto surface = IOSurface::create(creationContext.surfacePool, backendSize, backendSize, parameters.colorSpace, IOSurface::formatForPixelFormat(parameters.pixelFormat));
+auto surface = IOSurface::create(creationContext.surfacePool, backendSize, parameters.colorSpace, IOSurface::formatForPixelFormat(parameters.pixelFormat));
 if (!surface)
 return nullptr;
 


Modified: trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.h (294196 => 294197)

--- trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.h	2022-05-14 15:59:33 UTC (rev 294196)
+++ trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.h	2022-05-14 16:26:54 UTC (rev 294197)
@@ -101,8 +101,6 @@
 };
 
 WEBCORE_EXPORT static std::unique_ptr create(IOSurfacePool*, IntSize, const DestinationColorSpace&, Format = Format::BGRA);
-WEBCORE_EXPORT static std::unique_ptr create(IOSurfacePool*, IntSize, IntSize contextSize, const DestinationColorSpace&, Format = Format::BGRA);
-
 WEBCORE_EXPORT static std::unique_ptr createFromImage(IOSurfacePool*, CGImageRef);
 
 WEBCORE_EXPORT static std::unique_ptr createFromSendRight(const WTF::MachSendRight&&, const DestinationColorSpace&);
@@ -167,15 +165,11 @@
 void migrateColorSpaceToProperties();
 
 private:
-IOSurface(IntSize, IntSize contextSize, const DestinationColorSpace&, Format, bool& success);
+IOSurface(IntSize, const DestinationColorSpace&, Format, bool& success);
 IOSurface(IOSurfaceRef, const DestinationColorSpace&);
 
-IntSize contextSize() const { return m_contextSize; }
-void setContextSize(IntSize);
-
 DestinationColorSpace m_colorSpace;
 IntSize m_size;
-IntSize m_contextSize;
 size_t m_totalBytes;
 
 std::unique_ptr m_graphicsContext;


Modified: trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.mm (294196 => 294197)

--- trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.mm	2022-05-14 15:59:33 UTC (rev 294196)
+++ trunk/Source/WebCore/platform/graphics/cocoa/IOSurface.mm	2022-05-14 16:26:54 UTC (rev 294197)
@@ -45,20 +45,16 @@
 
 std::unique_ptr IOSurface::create(IOSurfacePool* pool, IntSize size, const DestinationColorSpace& colorSpace, Format 

[webkit-changes] [294196] trunk/Source/WebCore

2022-05-14 Thread simon . fraser
Title: [294196] trunk/Source/WebCore








Revision 294196
Author simon.fra...@apple.com
Date 2022-05-14 08:59:33 -0700 (Sat, 14 May 2022)


Log Message
Use an OptionSet<> for DisplayList::AsTextFlags
https://bugs.webkit.org/show_bug.cgi?id=240415

Reviewed by Alan Bujtas.

Simple adoption of OptionSet in place of DisplayList::AsTextFlags.

* html/HTMLCanvasElement.h:
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::displayListAsText const):
(WebCore::GraphicsLayer::replayDisplayListAsText const):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::displayListAsText const):
(WebCore::GraphicsLayerCA::replayDisplayListAsText const):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/displaylists/DisplayList.cpp:
(WebCore::DisplayList::DisplayList::shouldDumpForFlags):
(WebCore::DisplayList::DisplayList::asText const):
* platform/graphics/displaylists/DisplayList.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::displayListAsText const):
(WebCore::RenderLayerBacking::replayDisplayListAsText const):
* rendering/RenderLayerBacking.h:
* rendering/TextPainter.cpp:
(WebCore::TextPainter::cachedGlyphDisplayListsForTextNodeAsText):
* rendering/TextPainter.h:
* testing/Internals.cpp:
(WebCore::Internals::displayListForElement):
(WebCore::Internals::replayDisplayListForElement):
(WebCore::Internals::cachedGlyphDisplayListsForTextNode):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLCanvasElement.h
trunk/Source/WebCore/platform/graphics/GraphicsLayer.h
trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp
trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h
trunk/Source/WebCore/platform/graphics/displaylists/DisplayList.cpp
trunk/Source/WebCore/platform/graphics/displaylists/DisplayList.h
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
trunk/Source/WebCore/rendering/RenderLayerBacking.h
trunk/Source/WebCore/rendering/TextPainter.cpp
trunk/Source/WebCore/rendering/TextPainter.h
trunk/Source/WebCore/testing/Internals.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294195 => 294196)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 15:24:29 UTC (rev 294195)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 15:59:33 UTC (rev 294196)
@@ -1,3 +1,36 @@
+2022-05-14  Simon Fraser  
+
+Use an OptionSet<> for DisplayList::AsTextFlags
+https://bugs.webkit.org/show_bug.cgi?id=240415
+
+Reviewed by Alan Bujtas.
+
+Simple adoption of OptionSet in place of DisplayList::AsTextFlags.
+
+* html/HTMLCanvasElement.h:
+* platform/graphics/GraphicsLayer.h:
+(WebCore::GraphicsLayer::displayListAsText const):
+(WebCore::GraphicsLayer::replayDisplayListAsText const):
+* platform/graphics/ca/GraphicsLayerCA.cpp:
+(WebCore::GraphicsLayerCA::displayListAsText const):
+(WebCore::GraphicsLayerCA::replayDisplayListAsText const):
+* platform/graphics/ca/GraphicsLayerCA.h:
+* platform/graphics/displaylists/DisplayList.cpp:
+(WebCore::DisplayList::DisplayList::shouldDumpForFlags):
+(WebCore::DisplayList::DisplayList::asText const):
+* platform/graphics/displaylists/DisplayList.h:
+* rendering/RenderLayerBacking.cpp:
+(WebCore::RenderLayerBacking::displayListAsText const):
+(WebCore::RenderLayerBacking::replayDisplayListAsText const):
+* rendering/RenderLayerBacking.h:
+* rendering/TextPainter.cpp:
+(WebCore::TextPainter::cachedGlyphDisplayListsForTextNodeAsText):
+* rendering/TextPainter.h:
+* testing/Internals.cpp:
+(WebCore::Internals::displayListForElement):
+(WebCore::Internals::replayDisplayListForElement):
+(WebCore::Internals::cachedGlyphDisplayListsForTextNode):
+
 2022-05-14  Alan Bujtas  
 
 [Repaint] Border ignores currentColor change when hovering


Modified: trunk/Source/WebCore/html/HTMLCanvasElement.h (294195 => 294196)

--- trunk/Source/WebCore/html/HTMLCanvasElement.h	2022-05-14 15:24:29 UTC (rev 294195)
+++ trunk/Source/WebCore/html/HTMLCanvasElement.h	2022-05-14 15:59:33 UTC (rev 294196)
@@ -57,10 +57,6 @@
 struct ImageBitmapRenderingContextSettings;
 struct UncachedString;
 
-namespace DisplayList {
-using AsTextFlags = unsigned;
-}
-
 class HTMLCanvasElement final : public HTMLElement, public CanvasBase, public ActiveDOMObject {
 WTF_MAKE_ISO_ALLOCATED(HTMLCanvasElement);
 public:


Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayer.h (294195 => 294196)

--- trunk/Source/WebCore/platform/graphics/GraphicsLayer.h	2022-05-14 15:24:29 UTC (rev 294195)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayer.h	2022-05-14 15:59:33 UTC (rev 294196)
@@ -66,7 +66,7 @@
 class TransformationMatrix;
 
 namespace DisplayList {
-typedef unsigned AsTextFlags;
+enum class AsTextFlag : uint8_t;
 }
 
 // Base class for animation values (also used for transitions). Here to
@@ -615,13 +615,13 @@

[webkit-changes] [294195] trunk

2022-05-14 Thread zalan
Title: [294195] trunk








Revision 294195
Author za...@apple.com
Date 2022-05-14 08:24:29 -0700 (Sat, 14 May 2022)


Log Message
[Repaint] Border ignores currentColor change when hovering
https://bugs.webkit.org/show_bug.cgi?id=240401

Reviewed by Antti Koivisto.

Source/WebCore:

This patch triggers repaint when currentColor is applied on border.

It most likely got broken at r150259 (9 years ago!) when StyleDifferenceRepaintIfText was introduced.
StyleDifferenceRepaintIfText is a "conditional repaint" diff value which only triggers repaint if the renderer has some text content.

Later, r156619 addressed some of the "content with border/outline is not painting" fallout by extending
StyleDifferenceRepaintIfText to RepaintIfTextOrBorderOrOutline.
RepaintIfTextOrBorderOrOutline turns "conditional repaints" to real repaints if, in addition to text, the content has outline/border.
However the fix was neither complete nor proper (it patched the repaint logic by changing hasImmediateNonWhitespaceTextChildOrBorderOrOutline
instead of computing the correct diff value -unconditional Repaint).

Fast-forward to 2020, r267528 ensured that content with outline is no longer a "conditional repaint".
It also made some of the code introduced in r156619 redundant (see hasImmediateNonWhitespaceTextChildOrBorderOrOutline).

This patch expands on r267528 by introducing isEquivalentForPainting for the border data. It ensures that we
compute (unconditional) Repaint diff value, if the border uses currentColor.

Tests: fast/repaint/repaint-current-color-border-on-hover.html
   fast/repaint/repaint-pseudo-border-on-hover.html

* rendering/RenderElement.cpp:
(WebCore::RenderElement::hasImmediateNonWhitespaceTextChildOrBorderOrOutline const):
* rendering/style/BorderData.h:
(WebCore::BorderData::isEquivalentForPainting const):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresRepaint const):

LayoutTests:

* fast/repaint/repaint-current-color-border-on-hover-expected.txt: Added.
* fast/repaint/repaint-current-color-border-on-hover.html: Added.
* fast/repaint/repaint-pseudo-border-on-hover-expected.txt: Added.
* fast/repaint/repaint-pseudo-border-on-hover.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/integration/LayoutIntegrationCoverage.cpp
trunk/Source/WebCore/rendering/RenderElement.cpp
trunk/Source/WebCore/rendering/RenderElement.h
trunk/Source/WebCore/rendering/RenderTextControl.cpp
trunk/Source/WebCore/rendering/style/BorderData.cpp
trunk/Source/WebCore/rendering/style/BorderData.h
trunk/Source/WebCore/rendering/style/RenderStyle.cpp
trunk/Source/WebCore/rendering/style/RenderStyle.h
trunk/Source/WebCore/rendering/style/RenderStyleConstants.cpp
trunk/Source/WebCore/rendering/style/RenderStyleConstants.h
trunk/Source/WebCore/rendering/svg/SVGResourcesCache.cpp


Added Paths

trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover-expected.txt
trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover.html
trunk/LayoutTests/fast/repaint/repaint-pseudo-border-on-hover-expected.txt
trunk/LayoutTests/fast/repaint/repaint-pseudo-border-on-hover.html




Diff

Modified: trunk/LayoutTests/ChangeLog (294194 => 294195)

--- trunk/LayoutTests/ChangeLog	2022-05-14 14:40:27 UTC (rev 294194)
+++ trunk/LayoutTests/ChangeLog	2022-05-14 15:24:29 UTC (rev 294195)
@@ -1,3 +1,15 @@
+2022-05-14  Alan Bujtas  
+
+[Repaint] Border ignores currentColor change when hovering
+https://bugs.webkit.org/show_bug.cgi?id=240401
+
+Reviewed by Antti Koivisto.
+
+* fast/repaint/repaint-current-color-border-on-hover-expected.txt: Added.
+* fast/repaint/repaint-current-color-border-on-hover.html: Added.
+* fast/repaint/repaint-pseudo-border-on-hover-expected.txt: Added.
+* fast/repaint/repaint-pseudo-border-on-hover.html: Added.
+
 2022-05-13  Tim Nguyen  
 
 [css-ui] Unexpose appearance property values already handled by appearance: auto


Added: trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover-expected.txt (0 => 294195)

--- trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover-expected.txt	2022-05-14 15:24:29 UTC (rev 294195)
@@ -0,0 +1,4 @@
+(repaint rects
+(rect 8 8 120 120)
+)
+


Added: trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover.html (0 => 294195)

--- trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover.html	(rev 0)
+++ trunk/LayoutTests/fast/repaint/repaint-current-color-border-on-hover.html	2022-05-14 15:24:29 UTC (rev 294195)
@@ -0,0 +1,31 @@
+
+
+div {
+  width: 100px;
+  height: 100px;
+  background-color: green;
+  border: solid 10px currentColor;
+}
+div:hover {
+  color: green;
+}
+
+
+
+if (window.eventSender) {
+  testRunner.dumpAsText();
+
+  

[webkit-changes] [294194] trunk/Tools

2022-05-14 Thread jbedard
Title: [294194] trunk/Tools








Revision 294194
Author jbed...@apple.com
Date 2022-05-14 07:40:27 -0700 (Sat, 14 May 2022)


Log Message
[webkit-patch] Include commit messages in patches (Follow-up)
https://bugs.webkit.org/show_bug.cgi?id=240256


Unreviewed follow-up fix.

* Tools/Scripts/webkitpy/common/checkout/scm/git.py:
(Git.create_patch): Prefer commit specified by user.

Canonical link: https://commits.webkit.org/250560@main

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py




Diff

Modified: trunk/Tools/ChangeLog (294193 => 294194)

--- trunk/Tools/ChangeLog	2022-05-14 13:59:52 UTC (rev 294193)
+++ trunk/Tools/ChangeLog	2022-05-14 14:40:27 UTC (rev 294194)
@@ -1,3 +1,14 @@
+2022-05-14  Jonathan Bedard  
+
+[webkit-patch] Include commit messages in patches (Follow-up) 
+https://bugs.webkit.org/show_bug.cgi?id=240256
+
+
+Unreviewed follow-up fix.
+
+* Scripts/webkitpy/common/checkout/scm/git.py:
+(Git.create_patch): Prefer commit specified by user.
+
 2022-05-13  Jonathan Bedard  
 
 [webkit-patch] Apply patches commit messages


Modified: trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py (294193 => 294194)

--- trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py	2022-05-14 13:59:52 UTC (rev 294193)
+++ trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py	2022-05-14 14:40:27 UTC (rev 294194)
@@ -372,6 +372,8 @@
 
 if git_index:
 command += ['--cached']
+elif git_commit:
+command += [merge_base]
 elif merge_base != head:
 command += ['HEAD...{}'.format(merge_base)]
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294193] trunk/Source/WebCore

2022-05-14 Thread zalan
Title: [294193] trunk/Source/WebCore








Revision 294193
Author za...@apple.com
Date 2022-05-14 06:59:52 -0700 (Sat, 14 May 2022)


Log Message
[FFC][Integration] Add updateFormattingRootGeometryAndInvalidate/updateRenderers
https://bugs.webkit.org/show_bug.cgi?id=240413

Reviewed by Antti Koivisto.

Make sure that the layout box/renderer geometries are all up-to-date.

* layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
(WebCore::LayoutIntegration::logicalBorder):
(WebCore::LayoutIntegration::logicalPadding):
(WebCore::LayoutIntegration::FlexLayout::updateFormattingRootGeometryAndInvalidate):
(WebCore::LayoutIntegration::FlexLayout::layout):
(WebCore::LayoutIntegration::FlexLayout::updateRenderers const):
* layout/integration/flex/LayoutIntegrationFlexLayout.h:
(WebCore::LayoutIntegration::FlexLayout::flexBoxRenderer const):
(WebCore::LayoutIntegration::FlexLayout::flexBoxRenderer):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutUsingFlexFormattingContext):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp
trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.h
trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294192 => 294193)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 13:30:56 UTC (rev 294192)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 13:59:52 UTC (rev 294193)
@@ -1,5 +1,26 @@
 2022-05-14  Alan Bujtas  
 
+[FFC][Integration] Add updateFormattingRootGeometryAndInvalidate/updateRenderers
+https://bugs.webkit.org/show_bug.cgi?id=240413
+
+Reviewed by Antti Koivisto.
+
+Make sure that the layout box/renderer geometries are all up-to-date.
+
+* layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
+(WebCore::LayoutIntegration::logicalBorder):
+(WebCore::LayoutIntegration::logicalPadding):
+(WebCore::LayoutIntegration::FlexLayout::updateFormattingRootGeometryAndInvalidate):
+(WebCore::LayoutIntegration::FlexLayout::layout):
+(WebCore::LayoutIntegration::FlexLayout::updateRenderers const):
+* layout/integration/flex/LayoutIntegrationFlexLayout.h:
+(WebCore::LayoutIntegration::FlexLayout::flexBoxRenderer const):
+(WebCore::LayoutIntegration::FlexLayout::flexBoxRenderer):
+* rendering/RenderFlexibleBox.cpp:
+(WebCore::RenderFlexibleBox::layoutUsingFlexFormattingContext):
+
+2022-05-14  Alan Bujtas  
+
 [FFC][Integration] Do not reset the effective display value for flex root
 https://bugs.webkit.org/show_bug.cgi?id=240412
 


Modified: trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp (294192 => 294193)

--- trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp	2022-05-14 13:30:56 UTC (rev 294192)
+++ trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp	2022-05-14 13:59:52 UTC (rev 294193)
@@ -45,8 +45,48 @@
 {
 }
 
+// FIXME: Merge these with the other integration layout functions.
+static inline Layout::Edges logicalBorder(const RenderBoxModelObject& renderer, bool isLeftToRightInlineDirection, WritingMode writingMode)
+{
+UNUSED_PARAM(isLeftToRightInlineDirection);
+UNUSED_PARAM(writingMode);
+
+auto borderLeft = renderer.borderLeft();
+auto borderRight = renderer.borderRight();
+auto borderTop = renderer.borderTop();
+auto borderBottom = renderer.borderBottom();
+
+return { { borderLeft, borderRight }, { borderTop, borderBottom } };
+}
+
+static inline Layout::Edges logicalPadding(const RenderBoxModelObject& renderer, bool isLeftToRightInlineDirection, WritingMode writingMode)
+{
+UNUSED_PARAM(isLeftToRightInlineDirection);
+UNUSED_PARAM(writingMode);
+
+auto paddingLeft = renderer.paddingLeft();
+auto paddingRight = renderer.paddingRight();
+auto paddingTop = renderer.paddingTop();
+auto paddingBottom = renderer.paddingBottom();
+
+return { { paddingLeft, paddingRight }, { paddingTop, paddingBottom } };
+}
+
 void FlexLayout::updateFormattingRootGeometryAndInvalidate()
 {
+auto& flexBoxRenderer = this->flexBoxRenderer();
+
+auto updateGeometry = [&](auto& root) {
+auto isLeftToRightInlineDirection = flexBoxRenderer.style().isLeftToRightDirection();
+auto writingMode = flexBoxRenderer.style().writingMode();
+
+root.setContentBoxWidth(writingMode == WritingMode::TopToBottom ? flexBoxRenderer.contentWidth() : flexBoxRenderer.contentHeight());
+root.setPadding(logicalPadding(flexBoxRenderer, isLeftToRightInlineDirection, writingMode));
+root.setBorder(logicalBorder(flexBoxRenderer, isLeftToRightInlineDirection, writingMode));
+root.setHorizontalMargin({ });
+root.setVerticalMargin({ });
+};
+return updateGeometry(m_layoutState.ensureGeometryForBox(rootLayoutBox()));
 }
 
 void 

[webkit-changes] [294192] trunk/Source/WebCore

2022-05-14 Thread zalan
Title: [294192] trunk/Source/WebCore








Revision 294192
Author za...@apple.com
Date 2022-05-14 06:30:56 -0700 (Sat, 14 May 2022)


Log Message
[FFC][Integration] Do not reset the effective display value for flex root
https://bugs.webkit.org/show_bug.cgi?id=240412

Reviewed by Antti Koivisto.

Non-inline formatting roots (e.g. flex) should not need display type adjustment.

* layout/integration/LayoutIntegrationBoxTree.cpp:
(WebCore::LayoutIntegration::rootBoxStyle):
(WebCore::LayoutIntegration::rootBoxFirstLineStyle):
(WebCore::LayoutIntegration::BoxTree::BoxTree):
(WebCore::LayoutIntegration::BoxTree::updateStyle):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294191 => 294192)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 13:19:52 UTC (rev 294191)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 13:30:56 UTC (rev 294192)
@@ -1,5 +1,20 @@
 2022-05-14  Alan Bujtas  
 
+[FFC][Integration] Do not reset the effective display value for flex root
+https://bugs.webkit.org/show_bug.cgi?id=240412
+
+Reviewed by Antti Koivisto.
+
+Non-inline formatting roots (e.g. flex) should not need display type adjustment.
+
+* layout/integration/LayoutIntegrationBoxTree.cpp:
+(WebCore::LayoutIntegration::rootBoxStyle):
+(WebCore::LayoutIntegration::rootBoxFirstLineStyle):
+(WebCore::LayoutIntegration::BoxTree::BoxTree):
+(WebCore::LayoutIntegration::BoxTree::updateStyle):
+
+2022-05-14  Alan Bujtas  
+
 [LFC] LayoutState should track the integration formatting context type
 https://bugs.webkit.org/show_bug.cgi?id=240411
 


Modified: trunk/Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp (294191 => 294192)

--- trunk/Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp	2022-05-14 13:19:52 UTC (rev 294191)
+++ trunk/Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp	2022-05-14 13:30:56 UTC (rev 294192)
@@ -57,10 +57,11 @@
 // FIXME: see webkit.org/b/230964
 #define CAN_USE_FIRST_LINE_STYLE_RESOLVE 1
 
-static RenderStyle rootBoxStyle(const RenderStyle& style)
+static RenderStyle rootBoxStyle(const RenderBlock& rootRenderer)
 {
-auto clonedStyle = RenderStyle::clone(style);
-clonedStyle.setEffectiveDisplay(DisplayType::Block);
+auto clonedStyle = RenderStyle::clone(rootRenderer.style());
+if (is(rootRenderer))
+clonedStyle.setEffectiveDisplay(DisplayType::Block);
 return clonedStyle;
 }
 
@@ -71,7 +72,8 @@
 if (rootRenderer.style() == firstLineStyle)
 return { };
 auto clonedStyle = RenderStyle::clonePtr(firstLineStyle);
-clonedStyle->setEffectiveDisplay(DisplayType::Block);
+if (is(rootRenderer))
+clonedStyle->setEffectiveDisplay(DisplayType::Block);
 return clonedStyle;
 #else
 UNUSED_PARAM(rootRenderer);
@@ -81,7 +83,7 @@
 
 BoxTree::BoxTree(RenderBlock& rootRenderer)
 : m_rootRenderer(rootRenderer)
-, m_root(Layout::Box::ElementAttributes { Layout::Box::ElementType::IntegrationBlockContainer }, rootBoxStyle(rootRenderer.style()), rootBoxFirstLineStyle(rootRenderer))
+, m_root(Layout::Box::ElementAttributes { Layout::Box::ElementType::IntegrationBlockContainer }, rootBoxStyle(rootRenderer), rootBoxFirstLineStyle(rootRenderer))
 {
 if (rootRenderer.isAnonymous())
 m_root.setIsAnonymous();
@@ -217,7 +219,7 @@
 };
 
 if ( == ())
-layoutBox.updateStyle(rootBoxStyle(style), rootBoxFirstLineStyle(downcast(renderer)));
+layoutBox.updateStyle(rootBoxStyle(downcast(renderer)), rootBoxFirstLineStyle(downcast(renderer)));
 else
 layoutBox.updateStyle(style, firstLineStyle());
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294191] trunk/Source/WebCore

2022-05-14 Thread zalan
Title: [294191] trunk/Source/WebCore








Revision 294191
Author za...@apple.com
Date 2022-05-14 06:19:52 -0700 (Sat, 14 May 2022)


Log Message
[LFC] LayoutState should track the integration formatting context type
https://bugs.webkit.org/show_bug.cgi?id=240411

Reviewed by Antti Koivisto.

Let's not use RuntimeEnabledFeatures to check wheter the integration codepath is enabled as
the new FCs (e.g. flex) don't even have such flags.

* layout/LayoutContext.cpp:
* layout/LayoutState.cpp:
(WebCore::Layout::LayoutState::LayoutState):
(WebCore::Layout::LayoutState::formattingStateForFormattingContext const):
(WebCore::Layout::LayoutState::formattingStateForInlineFormattingContext const):
(WebCore::Layout::LayoutState::formattingStateForFlexFormattingContext const):
(WebCore::Layout::LayoutState::ensureInlineFormattingState):
(WebCore::Layout::LayoutState::ensureFlexFormattingState):
(WebCore::Layout::LayoutState::setViewportSize):
(WebCore::Layout::LayoutState::viewportSize const):
(WebCore::Layout::LayoutState::setIsIntegratedRootBoxFirstChild):
(WebCore::Layout::LayoutState::shouldIgnoreTrailingLetterSpacing const):
(WebCore::Layout::LayoutState::shouldNotSynthesizeInlineBlockBaseline const):
* layout/LayoutState.h:
(WebCore::Layout::LayoutState::isInlineFormattingContextIntegration const):
(WebCore::Layout::LayoutState::isFlexFormattingContextIntegration const):
* layout/floats/FloatingState.cpp:
* layout/formattingContexts/inline/InlineFormattingContext.cpp:
* layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineBuilder::close):
* layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::appendTextDisplayBox):
* layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
(WebCore::LayoutIntegration::FlexLayout::FlexLayout):
* layout/integration/inline/LayoutIntegrationInlineContent.cpp:
* layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::LineLayout):
(WebCore::LayoutIntegration::LineLayout::releaseCaches):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/LayoutContext.cpp
trunk/Source/WebCore/layout/LayoutState.cpp
trunk/Source/WebCore/layout/LayoutState.h
trunk/Source/WebCore/layout/floats/FloatingState.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp
trunk/Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp
trunk/Source/WebCore/layout/integration/inline/LayoutIntegrationInlineContent.cpp
trunk/Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (294190 => 294191)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 12:41:00 UTC (rev 294190)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 13:19:52 UTC (rev 294191)
@@ -1,3 +1,42 @@
+2022-05-14  Alan Bujtas  
+
+[LFC] LayoutState should track the integration formatting context type
+https://bugs.webkit.org/show_bug.cgi?id=240411
+
+Reviewed by Antti Koivisto.
+
+Let's not use RuntimeEnabledFeatures to check wheter the integration codepath is enabled as
+the new FCs (e.g. flex) don't even have such flags.
+
+* layout/LayoutContext.cpp:
+* layout/LayoutState.cpp:
+(WebCore::Layout::LayoutState::LayoutState):
+(WebCore::Layout::LayoutState::formattingStateForFormattingContext const):
+(WebCore::Layout::LayoutState::formattingStateForInlineFormattingContext const):
+(WebCore::Layout::LayoutState::formattingStateForFlexFormattingContext const):
+(WebCore::Layout::LayoutState::ensureInlineFormattingState):
+(WebCore::Layout::LayoutState::ensureFlexFormattingState):
+(WebCore::Layout::LayoutState::setViewportSize):
+(WebCore::Layout::LayoutState::viewportSize const):
+(WebCore::Layout::LayoutState::setIsIntegratedRootBoxFirstChild):
+(WebCore::Layout::LayoutState::shouldIgnoreTrailingLetterSpacing const):
+(WebCore::Layout::LayoutState::shouldNotSynthesizeInlineBlockBaseline const):
+* layout/LayoutState.h:
+(WebCore::Layout::LayoutState::isInlineFormattingContextIntegration const):
+(WebCore::Layout::LayoutState::isFlexFormattingContextIntegration const):
+* layout/floats/FloatingState.cpp:
+* layout/formattingContexts/inline/InlineFormattingContext.cpp:
+* layout/formattingContexts/inline/InlineLineBuilder.cpp:
+(WebCore::Layout::LineBuilder::close):
+* layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:
+(WebCore::Layout::InlineDisplayContentBuilder::appendTextDisplayBox):
+* layout/integration/flex/LayoutIntegrationFlexLayout.cpp:
+

[webkit-changes] [294189] trunk/Source/WTF/wtf/text/WTFString.h

2022-05-14 Thread cdumez
Title: [294189] trunk/Source/WTF/wtf/text/WTFString.h








Revision 294189
Author cdu...@apple.com
Date 2022-05-14 00:21:49 -0700 (Sat, 14 May 2022)


Log Message
Drop unused appendNumber(Vector& vector, unsigned char) function
https://bugs.webkit.org/show_bug.cgi?id=240387

Reviewed by Darin Adler.

* Source/WTF/wtf/text/WTFString.h:
(WTF::appendNumber): Deleted.

Canonical link: https://commits.webkit.org/250555@main

Modified Paths

trunk/Source/WTF/wtf/text/WTFString.h




Diff

Modified: trunk/Source/WTF/wtf/text/WTFString.h (294188 => 294189)

--- trunk/Source/WTF/wtf/text/WTFString.h	2022-05-14 06:14:52 UTC (rev 294188)
+++ trunk/Source/WTF/wtf/text/WTFString.h	2022-05-14 07:21:49 UTC (rev 294189)
@@ -377,8 +377,6 @@
 WTF_EXPORT_PRIVATE int codePointCompare(const String&, const String&);
 bool codePointCompareLessThan(const String&, const String&);
 
-template void appendNumber(Vector&, unsigned char number);
-
 // Shared global empty and null string.
 struct StaticString {
 constexpr StaticString(StringImpl::StaticStringImpl* pointer)
@@ -545,29 +543,6 @@
 return codePointCompare(a.impl(), b.impl()) < 0;
 }
 
-template
-inline void appendNumber(Vector& vector, unsigned char number)
-{
-int numberLength = number > 99 ? 3 : (number > 9 ? 2 : 1);
-size_t vectorSize = vector.size();
-vector.grow(vectorSize + numberLength);
-
-switch (numberLength) {
-case 3:
-vector[vectorSize + 2] = number % 10 + '0';
-number /= 10;
-FALLTHROUGH;
-
-case 2:
-vector[vectorSize + 1] = number % 10 + '0';
-number /= 10;
-FALLTHROUGH;
-
-case 1:
-vector[vectorSize] = number % 10 + '0';
-}
-}
-
 inline String String::fromUTF8(const Vector& characters)
 {
 if (characters.isEmpty())
@@ -633,7 +608,6 @@
 using WTF::HashTranslatorASCIILiteral;
 using WTF::KeepTrailingZeros;
 using WTF::String;
-using WTF::appendNumber;
 using WTF::charactersToDouble;
 using WTF::charactersToFloat;
 using WTF::emptyString;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294188] trunk/Source

2022-05-14 Thread timothy_horton
Title: [294188] trunk/Source








Revision 294188
Author timothy_hor...@apple.com
Date 2022-05-13 23:14:52 -0700 (Fri, 13 May 2022)


Log Message
ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS
https://bugs.webkit.org/show_bug.cgi?id=240404


Reviewed by Chris Dumez.

Source/WebCore:

* Modules/applepay/ApplePayLogoSystemImage.mm:
(WebCore::passKitBundle):
Adopt systemDirectoryPath instead of unnecessarily loading PassKit just
to find its bundle path (the previous implementation made use of the fact
that `dlopen` internally adjusts the search path to look in the simulator
root, but also resulted in wasted time loading and initializing PassKit
and its dependencies).

Source/WebKit:

* UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
(WebKit::ProcessLauncher::launchProcess): Adopt the WTF implementation of systemDirectoryPath.
(WebKit::systemDirectoryPath): Moved to WTF.

Source/WTF:

* wtf/FileSystem.h:
* wtf/cocoa/FileSystemCocoa.mm:
(WTF::FileSystemImpl::systemDirectoryPath):
Move the implementation of systemDirectoryPath() from WebKit2.

systemDirectoryPath() provides the correct path to /System
in the simulator, for consumption by APIs (like NSURL) that do not
adjust to the simulator-rooted path themselves.

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/FileSystem.h
trunk/Source/WTF/wtf/cocoa/FileSystemCocoa.mm
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/applepay/ApplePayLogoSystemImage.mm
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm




Diff

Modified: trunk/Source/WTF/ChangeLog (294187 => 294188)

--- trunk/Source/WTF/ChangeLog	2022-05-14 05:29:41 UTC (rev 294187)
+++ trunk/Source/WTF/ChangeLog	2022-05-14 06:14:52 UTC (rev 294188)
@@ -1,5 +1,22 @@
 2022-05-13  Tim Horton  
 
+ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS
+https://bugs.webkit.org/show_bug.cgi?id=240404
+
+
+Reviewed by Chris Dumez.
+
+* wtf/FileSystem.h:
+* wtf/cocoa/FileSystemCocoa.mm:
+(WTF::FileSystemImpl::systemDirectoryPath):
+Move the implementation of systemDirectoryPath() from WebKit2.
+
+systemDirectoryPath() provides the correct path to /System
+in the simulator, for consumption by APIs (like NSURL) that do not
+adjust to the simulator-rooted path themselves.
+
+2022-05-13  Tim Horton  
+
 Add UI-side layers for optionally indicating interaction regions
 https://bugs.webkit.org/show_bug.cgi?id=240372
 


Modified: trunk/Source/WTF/wtf/FileSystem.h (294187 => 294188)

--- trunk/Source/WTF/wtf/FileSystem.h	2022-05-14 05:29:41 UTC (rev 294187)
+++ trunk/Source/WTF/wtf/FileSystem.h	2022-05-14 06:14:52 UTC (rev 294188)
@@ -204,6 +204,7 @@
 
 #if PLATFORM(COCOA)
 WTF_EXPORT_PRIVATE NSString *createTemporaryDirectory(NSString *directoryPrefix);
+WTF_EXPORT_PRIVATE NSString *systemDirectoryPath();
 
 // Allow reading cloud files with no local copy.
 enum class PolicyScope : uint8_t { Process, Thread };


Modified: trunk/Source/WTF/wtf/cocoa/FileSystemCocoa.mm (294187 => 294188)

--- trunk/Source/WTF/wtf/cocoa/FileSystemCocoa.mm	2022-05-14 05:29:41 UTC (rev 294187)
+++ trunk/Source/WTF/wtf/cocoa/FileSystemCocoa.mm	2022-05-14 06:14:52 UTC (rev 294188)
@@ -236,5 +236,19 @@
 return true;
 }
 
+NSString *systemDirectoryPath()
+{
+static NeverDestroyed> path = ^{
+#if PLATFORM(IOS_FAMILY_SIMULATOR)
+char *simulatorRoot = getenv("SIMULATOR_ROOT");
+return simulatorRoot ? [NSString stringWithFormat:@"%s/System/", simulatorRoot] : @"/System/";
+#else
+return @"/System/";
+#endif
+}();
+
+return path.get().get();
+}
+
 } // namespace FileSystemImpl
 } // namespace WTF


Modified: trunk/Source/WebCore/ChangeLog (294187 => 294188)

--- trunk/Source/WebCore/ChangeLog	2022-05-14 05:29:41 UTC (rev 294187)
+++ trunk/Source/WebCore/ChangeLog	2022-05-14 06:14:52 UTC (rev 294188)
@@ -1,3 +1,19 @@
+2022-05-13  Tim Horton  
+
+ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS
+https://bugs.webkit.org/show_bug.cgi?id=240404
+
+
+Reviewed by Chris Dumez.
+
+* Modules/applepay/ApplePayLogoSystemImage.mm:
+(WebCore::passKitBundle):
+Adopt systemDirectoryPath instead of unnecessarily loading PassKit just
+to find its bundle path (the previous implementation made use of the fact
+that `dlopen` internally adjusts the search path to look in the simulator
+root, but also resulted in wasted time loading and initializing PassKit
+and its dependencies).
+
 2022-05-13  Tim Nguyen  
 
 [css-ui] Unexpose appearance property values already handled by appearance: auto


Modified: trunk/Source/WebCore/Modules/applepay/ApplePayLogoSystemImage.mm (294187 => 294188)

--- trunk/Source/WebCore/Modules/applepay/ApplePayLogoSystemImage.mm