[webkit-changes] [286766] trunk/Source/WebCore
Title: [286766] trunk/Source/WebCore Revision 286766 Author mmaxfi...@apple.com Date 2021-12-08 23:09:19 -0800 (Wed, 08 Dec 2021) Log Message Fix build after r286759 https://bugs.webkit.org/show_bug.cgi?id=234067 Unreviewed. No new tests because there is no behavior change. * platform/audio/ios/AudioSessionIOS.mm: (WebCore::AudioSessionIOS::setPresentingProcesses): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286765 => 286766) --- trunk/Source/WebCore/ChangeLog 2021-12-09 06:39:26 UTC (rev 286765) +++ trunk/Source/WebCore/ChangeLog 2021-12-09 07:09:19 UTC (rev 286766) @@ -1,3 +1,15 @@ +2021-12-08 Myles C. Maxfield + +Fix build after r286759 +https://bugs.webkit.org/show_bug.cgi?id=234067 + +Unreviewed. + +No new tests because there is no behavior change. + +* platform/audio/ios/AudioSessionIOS.mm: +(WebCore::AudioSessionIOS::setPresentingProcesses): + 2021-12-08 Said Abou-Hallawa [GPU Process] [Filters] Make Filter::apply() and FilterEffect:apply() take FilterImageVector for the inputs Modified: trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm (286765 => 286766) --- trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-12-09 06:39:26 UTC (rev 286765) +++ trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-12-09 07:09:19 UTC (rev 286766) @@ -171,7 +171,7 @@ void AudioSessionIOS::setPresentingProcesses(Vector&& auditTokens) { #if HAVE(AUDIOSESSION_PROCESSASSERTION) -AVAudioSession session = [PAL::getAVAudioSessionClass() sharedInstance]; +AVAudioSession *session = [PAL::getAVAudioSessionClass() sharedInstance]; if (![session respondsToSelector:@selector(setAuditTokensForProcessAssertion:error:)]) return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286765] trunk/Source/WebCore
Title: [286765] trunk/Source/WebCore Revision 286765 Author s...@apple.com Date 2021-12-08 22:39:26 -0800 (Wed, 08 Dec 2021) Log Message [GPU Process] [Filters] Make Filter::apply() and FilterEffect:apply() take FilterImageVector for the inputs https://bugs.webkit.org/show_bug.cgi?id=233973 rdar://86248999 Reviewed by Cameron McCormack. This is a step towards removing the dependency on the input effects. This step is required to make encoding/decoding the FilterEffect just be sending or receiving its primitive data. In this patch: -- The sourceImage and sourceImageRect arguments to Filter::apply() are used to create a FilterImage. This will be the input to the SourceGraphic. -- The members m_sourceImage and m_sourceImageRect of Filter are removed. -- CSSFilter::apply() loops through its functions and uses the result of every function as the input to the next one. The initial input is the sourceImage. And the result of the last function is the returned FilterImage. -- SVGFilter::apply() loops through its _expression_. It uses a stack of FilterImageVector to keep track of the inputs while applying each FilterEffect. Every FilterEffect is asked to takeInputs() from this stack. The result of applying the FilterEffect is pushed on this stack. The stack should have a single FilterImage when finishing the loop. This item is the result of applying the Filter. -- FilterEffect::transformInputsColorSpace() was added to transform the input FilterImageVector to the operating color space of FilterEffect. It is overridden by FEDisplacementMap which does not transform the color space of the first input FilterImage. -- FilterEffect::correctPremultipliedInputs() was added to correct the premultiplied pixels of the inputs FilterImageVector. We do not need to do this correction if the FilterEffect we apply is arithmetic composite filter. Otherwise we need to correct the FilterImage of any arithmetic composite filter in the FilterImageVector. -- No need for totalNumberFilterEffects(). This count is the size of the SVGFilter _expression_. * platform/graphics/coreimage/SourceGraphicCoreImageApplier.mm: (WebCore::SourceGraphicCoreImageApplier::apply const): * platform/graphics/filters/FEBlend.h: * platform/graphics/filters/FEComposite.h: * platform/graphics/filters/FEDisplacementMap.cpp: (WebCore::FEDisplacementMap::calculateImageRect const): (WebCore::FEDisplacementMap::transformInputsColorSpace const): (WebCore::FEDisplacementMap::transformResultColorSpace): Deleted. * platform/graphics/filters/FEDisplacementMap.h: * platform/graphics/filters/FEFlood.h: * platform/graphics/filters/FEMerge.h: * platform/graphics/filters/FETurbulence.h: * platform/graphics/filters/Filter.cpp: (WebCore::Filter::apply): * platform/graphics/filters/Filter.h: (WebCore::Filter::sourceImageRect const): Deleted. (WebCore::Filter::setSourceImageRect): Deleted. (WebCore::Filter::sourceImage const): Deleted. (WebCore::Filter::setSourceImage): Deleted. * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::takeImageInputs const): (WebCore::FilterEffect::calculateImageRect const): (WebCore::FilterEffect::transformInputsColorSpace const): (WebCore::FilterEffect::correctPremultipliedInputs const): (WebCore::FilterEffect::apply): (WebCore::FilterEffect::inputEffect const): (WebCore::FilterEffect::inputFilterImages const): Deleted. (WebCore::FilterEffect::correctPremultipliedResultIfNeeded): Deleted. (WebCore::FilterEffect::transformResultColorSpace): Deleted. * platform/graphics/filters/FilterEffect.h: (WebCore::FilterEffect::filterImage const): (WebCore::FilterEffect::numberOfEffectInputs const): (WebCore::FilterEffect::numberOfImageInputs const): (WebCore::FilterEffect::resultIsValidPremultiplied const): (WebCore::FilterEffect::mayProduceInvalidPremultipliedPixels const): Deleted. (WebCore::FilterEffect::correctFilterResultIfNeeded): Deleted. (WebCore::FilterEffect::transformResultColorSpace): Deleted. * platform/graphics/filters/FilterFunction.h: (WebCore::FilterFunction::apply): * platform/graphics/filters/FilterImage.cpp: (WebCore::FilterImage::create): (WebCore::FilterImage::FilterImage): (WebCore::FilterImage::correctPremultipliedPixelBuffer): * platform/graphics/filters/FilterImage.h: * platform/graphics/filters/SourceAlpha.cpp: (WebCore::SourceAlpha::calculateImageRect const): Deleted. * platform/graphics/filters/SourceAlpha.h: * platform/graphics/filters/SourceGraphic.cpp: (WebCore::SourceGraphic::calculateImageRect const): Deleted. * platform/graphics/filters/SourceGraphic.h: * platform/graphics/filters/software/SourceGraphicSoftwareApplier.cpp: (WebCore::SourceGraphicSoftwareApplier::apply const): * rendering/CSSFilter.cpp: (WebCore::CSSFilter::apply): * rendering/CSSFilter.h: * svg/graphics/filters/SVGFEImage.h: * svg/graphics/filters/SVGFilter.cpp: (WebCore::SVGFilter::apply): * svg/graphics/filters/SVGFilter.h: * svg/graphics/filters/SVGFilterBuilder.cpp:
[webkit-changes] [286764] trunk
Title: [286764] trunk Revision 286764 Author beid...@apple.com Date 2021-12-08 22:37:26 -0800 (Wed, 08 Dec 2021) Log Message Add ability to inject messages into webpushd https://bugs.webkit.org/show_bug.cgi?id=233988 Reviewed by Alex Christensen. Source/WebKit: Covered by API tests. This patch: - Adds WKWebsiteDataStore SPI to fetch pending push messages for the embedding application - Gives webpushd code to inject a push message for a given bundle identifier - Gives webpushtool the ability to send one of these fake messages - Gives webpushtool the ability to reconnect to the next daemon instance after the current connection is dropped - Tests the injection and fetching of push messages via TestWebKitAPI * Configurations/webpushtool.xcconfig: * WebKit.xcodeproj/project.pbxproj: * Resources/webpushtool.entitlements: * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::getPendingPushMessages): (WebKit::NetworkProcess::processPushMessage): * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: * NetworkProcess/Notifications/NetworkNotificationManager.cpp: (WebKit::NetworkNotificationManager::getPendingPushMessages): (WebKit::ReplyCaller::callReply): * NetworkProcess/Notifications/NetworkNotificationManager.h: * Shared/Cocoa/WebPushMessageCocoa.mm: Copied from Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h. (WebKit::WebPushMessage::fromDictionary): (WebKit::WebPushMessage::toDictionary const): * Shared/PushMessageForTesting.h: Copied from Source/WebKit/Shared/WebPushDaemonConstants.h. (WebKit::WebPushD::PushMessageForTesting::encode const): (WebKit::WebPushD::PushMessageForTesting::decode): * Shared/WebPushDaemonConstants.h: (WebKit::WebPushD::messageTypeSendsReply): * Shared/WebPushMessage.h: Copied from Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h. (WebKit::WebPushMessage::encode const): (WebKit::WebPushMessage::decode): * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: (-[WKWebsiteDataStore _getPendingPushMessages:]): (-[WKWebsiteDataStore _processPushMessage:completionHandler:]): (-[WKWebsiteDataStore _processPushMessage:registration:completionHandler:]): Deleted. * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h: * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::getPendingPushMessages): (WebKit::NetworkProcessProxy::processPushMessage): * UIProcess/Network/NetworkProcessProxy.h: Tools: * TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements: * TestWebKitAPI/Configurations/TestWebKitAPI-macOS-internal.entitlements: * TestWebKitAPI/Configurations/TestWebKitAPI-macOS.entitlements: * TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm: (messageDictionary): * TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: (TestWebKitAPI::createMessageDictionary): (TestWebKitAPI::sendMessageToDaemon): (TestWebKitAPI::sendMessageToDaemonWaitingForReply): (TestWebKitAPI::sendConfigurationWithAuditToken): (TestWebKitAPI::createAndConfigureConnectionToService): (TestWebKitAPI::encodeString): (TestWebKitAPI::TEST): (TestWebKitAPI::function): * TestWebKitAPI/cocoa/TestWKWebView.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Configurations/webpushtool.xcconfig trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.cpp trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.h trunk/Source/WebKit/Resources/webpushtool.entitlements trunk/Source/WebKit/Shared/WebPushDaemonConstants.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj trunk/Source/WebKit/webpushd/PushClientConnection.h trunk/Source/WebKit/webpushd/PushClientConnection.mm trunk/Source/WebKit/webpushd/WebPushDaemon.h trunk/Source/WebKit/webpushd/WebPushDaemon.mm trunk/Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h trunk/Source/WebKit/webpushd/webpushtool/WebPushToolConnection.mm trunk/Source/WebKit/webpushd/webpushtool/WebPushToolMain.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-macOS-internal.entitlements trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-macOS.entitlements trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm trunk/Tools/TestWebKitAPI/cocoa/TestWKWebView.h Added Paths trunk/Source/WebKit/Shared/Cocoa/WebPushMessageCocoa.mm trunk/Source/WebKit/Shared/PushMessageForTesting.h trunk/Source/WebKit/Shared/WebPushMessage.h Diff Modified: trunk/Source/WebKit/ChangeLog (286763 => 286764)
[webkit-changes] [286763] trunk
Title: [286763] trunk Revision 286763 Author pgrif...@igalia.com Date 2021-12-08 22:34:52 -0800 (Wed, 08 Dec 2021) Log Message CSP: Skip whitespace at beginning of policy header https://bugs.webkit.org/show_bug.cgi?id=233951 Reviewed by Kate Cheney. LayoutTests/imported/w3c: Update expectations as passing. * web-platform-tests/content-security-policy/script-src/script-src-strict_dynamic_double_policy_honor_source_expressions.sub-expected.txt: Source/WebCore: This should have no practical effect but it fixes matching the originalPolicy property in WPT results. * page/csp/ContentSecurityPolicy.cpp: (WebCore::ContentSecurityPolicy::didReceiveHeader): LayoutTests: No longer skip a test and update results to not have leading whitespace. * TestExpectations: * http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/content-security-policy/script-src/script-src-strict_dynamic_double_policy_honor_source_expressions.sub-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/csp/ContentSecurityPolicy.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286762 => 286763) --- trunk/LayoutTests/ChangeLog 2021-12-09 05:27:01 UTC (rev 286762) +++ trunk/LayoutTests/ChangeLog 2021-12-09 06:34:52 UTC (rev 286763) @@ -1,3 +1,15 @@ +2021-12-08 Patrick Griffis + +CSP: Skip whitespace at beginning of policy header +https://bugs.webkit.org/show_bug.cgi?id=233951 + +Reviewed by Kate Cheney. + +No longer skip a test and update results to not have leading whitespace. + +* TestExpectations: +* http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt: + 2021-12-08 Arcady Goldmints-Orlov [WPE] Update test baselines after r284521. Unreviewed test gardening. Modified: trunk/LayoutTests/TestExpectations (286762 => 286763) --- trunk/LayoutTests/TestExpectations 2021-12-09 05:27:01 UTC (rev 286762) +++ trunk/LayoutTests/TestExpectations 2021-12-09 06:34:52 UTC (rev 286763) @@ -980,7 +980,6 @@ imported/w3c/web-platform-tests/content-security-policy/securitypolicyviolation/targeting.html [ Skip ] imported/w3c/web-platform-tests/content-security-policy/frame-src/frame-src-cross-origin-load.sub.html [ Skip ] imported/w3c/web-platform-tests/content-security-policy/generic/304-response-should-update-csp.sub.html [ Skip ] -imported/w3c/web-platform-tests/content-security-policy/script-src/script-src-strict_dynamic_double_policy_honor_source_expressions.sub.html [ Skip ] imported/w3c/web-platform-tests/content-security-policy/unsafe-hashes/_javascript__src_allowed-href_blank.html [ Skip ] # FIXME: Skip Content Security Policy tests whose output is non-deterministic Modified: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt (286762 => 286763) --- trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt 2021-12-09 05:27:01 UTC (rev 286762) +++ trunk/LayoutTests/http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt 2021-12-09 06:34:52 UTC (rev 286763) @@ -37,4 +37,4 @@ REQUEST_METHOD: POST REQUEST_URI: /security/contentSecurityPolicy/resources/save-report.py?test=script-blocked-sends-multiple-reports-enforced-2 === POST DATA ="" -{"csp-report":{"document-uri":"http://127.0.0.1:8000/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports.py","referrer":"","violated-directive":"script-src-elem","effective-directive":"script-src","original-policy":" script-src http://127.0.0.1:8000 https://127.0.0.1:8443 'unsafe-inline'; report-uri ../resources/save-report.py?test=script-blocked-sends-multiple-reports-enforced-2","blocked-uri":"http://localhost:8000/security/contentSecurityPolicy/resources/alert-fail.js","status-code":200}} +{"csp-report":{"document-uri":"http://127.0.0.1:8000/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports.py","referrer":"","violated-directive":"script-src-elem","effective-directive":"script-src","original-policy":"script-src http://127.0.0.1:8000 https://127.0.0.1:8443 'unsafe-inline'; report-uri ../resources/save-report.py?test=script-blocked-sends-multiple-reports-enforced-2","blocked-uri":"http://localhost:8000/security/contentSecurityPolicy/resources/alert-fail.js","status-code":200}} Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286762 => 286763) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-09 05:27:01 UTC (rev 286762) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-09 06:34:52 UTC (rev 286763) @@ -1,3 +1,14 @@ +2021-12-08
[webkit-changes] [286762] trunk/Source
Title: [286762] trunk/Source Revision 286762 Author megan_gard...@apple.com Date 2021-12-08 21:27:01 -0800 (Wed, 08 Dec 2021) Log Message Show correct content menu for images services chevron. https://bugs.webkit.org/show_bug.cgi?id=233970 Reviewed by Tim Horton. Add support for showing the correct context menu for image services. Since this is internal only and can never be affected by web content, we bypass the web content round trip and directly message the UIProcess about showing a context menu for images. And because it would be bizarre if the web content could prevent a menu from popping up on a button they have no control over. Source/WebCore: * dom/mac/ImageControlsMac.cpp: (WebCore::ImageControlsMac::isImageControlsButtonElement): (WebCore::ImageControlsMac::imageFromImageElementNode): (WebCore::ImageControlsMac::handleEvent): (WebCore::ImageControlsMac::imageControlHost): Deleted. * dom/mac/ImageControlsMac.h: * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::defaultEventHandler): * page/ChromeClient.h: (WebCore::ChromeClient::handleImageServiceClick): * page/ContextMenuController.cpp: (WebCore::ContextMenuController::maybeCreateContextMenu): (WebCore::imageFromImageElementNode): Deleted. Source/WebKit: * Shared/ContextMenuContextData.cpp: (WebKit::ContextMenuContextData::ContextMenuContextData): (WebKit::m_selectionIsEditable): (WebKit::ContextMenuContextData::setImage): (WebKit::ContextMenuContextData::controlledDataIsEditable const): * Shared/ContextMenuContextData.h: (WebKit::ContextMenuContextData::webHitTestResultData): (WebKit::ContextMenuContextData::webHitTestResultData const): * UIProcess/WebContextMenuProxy.cpp: (WebKit::WebContextMenuProxy::show): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::contextMenuItemSelected): * UIProcess/mac/WebContextMenuProxyMac.mm: (WebKit::WebContextMenuProxyMac::getShareMenuItem): (WebKit::WebContextMenuProxyMac::getContextMenuFromItems): (WebKit::WebContextMenuProxyMac::useContextMenuItems): * UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::handleContextMenuQuickLookImage): * WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::handleImageServiceClick): * WebProcess/WebCoreSupport/WebChromeClient.h: * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::handleImageServiceClick): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp trunk/Source/WebCore/dom/mac/ImageControlsMac.h trunk/Source/WebCore/html/HTMLButtonElement.cpp trunk/Source/WebCore/page/ChromeClient.h trunk/Source/WebCore/page/ContextMenuController.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/ContextMenuContextData.cpp trunk/Source/WebKit/Shared/ContextMenuContextData.h trunk/Source/WebKit/UIProcess/WebContextMenuProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.mm trunk/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286761 => 286762) --- trunk/Source/WebCore/ChangeLog 2021-12-09 04:21:43 UTC (rev 286761) +++ trunk/Source/WebCore/ChangeLog 2021-12-09 05:27:01 UTC (rev 286762) @@ -1,3 +1,30 @@ +2021-12-08 Megan Gardner + +Show correct content menu for images services chevron. +https://bugs.webkit.org/show_bug.cgi?id=233970 + +Reviewed by Tim Horton. + +Add support for showing the correct context menu for image services. +Since this is internal only and can never be affected by web content, we bypass +the web content round trip and directly message the UIProcess about showing +a context menu for images. And because it would be bizarre if the web content +could prevent a menu from popping up on a button they have no control over. + +* dom/mac/ImageControlsMac.cpp: +(WebCore::ImageControlsMac::isImageControlsButtonElement): +(WebCore::ImageControlsMac::imageFromImageElementNode): +(WebCore::ImageControlsMac::handleEvent): +(WebCore::ImageControlsMac::imageControlHost): Deleted. +* dom/mac/ImageControlsMac.h: +* html/HTMLButtonElement.cpp: +(WebCore::HTMLButtonElement::defaultEventHandler): +* page/ChromeClient.h: +(WebCore::ChromeClient::handleImageServiceClick): +* page/ContextMenuController.cpp: +(WebCore::ContextMenuController::maybeCreateContextMenu): +(WebCore::imageFromImageElementNode): Deleted. + 2021-12-08 Myles C. Maxfield [MacCatalyst] Fix Mac Catalyst build Modified: trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp (286761 => 286762) --- trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp
[webkit-changes] [286761] trunk/PerformanceTests
Title: [286761] trunk/PerformanceTests Revision 286761 Author za...@apple.com Date 2021-12-08 20:21:43 -0800 (Wed, 08 Dec 2021) Log Message Add layout performance test for simple bidi content with inline boxes https://bugs.webkit.org/show_bug.cgi?id=234062 Unreviewed. This is in preparation for enabling IFC bidi handling. * Layout/line-layout-simple-bidi-with-inline-boxes.html: Added. Modified Paths trunk/PerformanceTests/ChangeLog Added Paths trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-inline-boxes.html Diff Modified: trunk/PerformanceTests/ChangeLog (286760 => 286761) --- trunk/PerformanceTests/ChangeLog 2021-12-09 04:17:08 UTC (rev 286760) +++ trunk/PerformanceTests/ChangeLog 2021-12-09 04:21:43 UTC (rev 286761) @@ -1,5 +1,16 @@ 2021-12-08 Alan Bujtas +Add layout performance test for simple bidi content with inline boxes +https://bugs.webkit.org/show_bug.cgi?id=234062 + +Unreviewed. + +This is in preparation for enabling IFC bidi handling. + +* Layout/line-layout-simple-bidi-with-inline-boxes.html: Added. + +2021-12-08 Alan Bujtas + Add layout performance test for bidi content with direction override inside inline boxes https://bugs.webkit.org/show_bug.cgi?id=234064 Added: trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-inline-boxes.html (0 => 286761) --- trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-inline-boxes.html (rev 0) +++ trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-inline-boxes.html 2021-12-09 04:21:43 UTC (rev 286761) @@ -0,0 +1,998 @@ + + + +Line breaking performance test + + + +++ARGUMENTUM
++L. Sergius Catilina, אב homo patricii generis, אב magna vi et animi et +corporis, אב sed ingenio malo pravoque, אב praetorius, אב qui iam a. u. c. 689 +caedem consulum facere eaque facta rerum potiri constituerat, אב casu autem +rem perficere prohibitus erat, אב ascitis ad consilium rei publicae +opprimendae hominibus omnis generis perditissiis atque audacissimis, אב quos +inopia, אב cupiditas, אב scelera stimulabant, אב consulatum in annum 691 p. u. c. +petivit, אב sed cum, אב quae in animo habebat, אב perniciosa rei publicae consilia +parum occultata essent, אב studiis bonorum omnium M. Tullius Cicero una cum +C. Antonio consul factus est. Qua re commotus L. Catilina M. Cicerone +C. Antonio consulibus cupidius etiam sua consilia recepit, אב quibus maxime +Ciceronis consulis diligentia restitit ad quem Catilinae eiusque sociorum +consilia a Fulvia, אב muliere nobili, אב quae rem habebat cum Q. Curio, אב qui +particeps fuit conspirationis illius, אב deferebantur. Cum autem ista mala +consilia contra salutem rei publicae a coniuratis inita apertius iam +agitarentur, אב senatus consultum factum est, אב darent operam consules, אב ne quid +res publica detrimenti caperet, אב effectumque est, אב ut Catilina spe +consulatus, אב quem in proximum annum petebat, אב excideret, אב designarenturque +D. Silanus et L. Murena. Quae cum ita essent, אב L. Catilina, אב qui iam ante +per Italiam ad homines seditiosos, אב maxime veteres L. Sullae milites, אב +concitandos nuntios miserat, אב ad C. Manlium, אב qui Faesulas, אב in urbem +Etruriae munitam, אב manum armatorum coegerat, אב proficisci constituit et +bellum patriae inferre convocatisque nocte, אב quae inter VIII et VII Id. +Novembres erat, אב sociis in domum M. Porci Laecae consilium, אב quod ceperat, אב +aperuit. אבQua in congregatione nocturna +duo equites Romani Ciceronem +consulem illa ipsa nocte ante lucem, אב cum sicut salutaturi eius domum +intrassent, אב interficiendum receperunt. M. Cicero vitatis insidiis proximo +die, אב qui fuit a. d. VI Id. Novembres, אב
[webkit-changes] [286760] trunk/PerformanceTests
Title: [286760] trunk/PerformanceTests Revision 286760 Author za...@apple.com Date 2021-12-08 20:17:08 -0800 (Wed, 08 Dec 2021) Log Message Add layout performance test for bidi content with direction override inside inline boxes https://bugs.webkit.org/show_bug.cgi?id=234064 Unreviewed. This is in preparation for enabling IFC bidi handling. * Layout/line-layout-simple-bidi-with-direction-overrides-in-inline-boxes.html: Added. Modified Paths trunk/PerformanceTests/ChangeLog Added Paths trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-direction-overrides-in-inline-boxes.html Diff Modified: trunk/PerformanceTests/ChangeLog (286759 => 286760) --- trunk/PerformanceTests/ChangeLog 2021-12-09 04:05:19 UTC (rev 286759) +++ trunk/PerformanceTests/ChangeLog 2021-12-09 04:17:08 UTC (rev 286760) @@ -1,3 +1,14 @@ +2021-12-08 Alan Bujtas + +Add layout performance test for bidi content with direction override inside inline boxes +https://bugs.webkit.org/show_bug.cgi?id=234064 + +Unreviewed. + +This is in preparation for enabling IFC bidi handling. + +* Layout/line-layout-simple-bidi-with-direction-overrides-in-inline-boxes.html: Added. + 2021-12-07 Cathie Chen [Performance test][css-contain] Add test large-grid.html Added: trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-direction-overrides-in-inline-boxes.html (0 => 286760) --- trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-direction-overrides-in-inline-boxes.html (rev 0) +++ trunk/PerformanceTests/Layout/line-layout-simple-bidi-with-direction-overrides-in-inline-boxes.html 2021-12-09 04:17:08 UTC (rev 286760) @@ -0,0 +1,998 @@ + + + +Line breaking performance test + + + +++ARGUMENTUM
++L. Sergius Catilina, אב homo patricii generis, אב magna vi et animi et +corporis, אב sed ingenio malo pravoque, אב praetorius, אב qui iam a. u. c. 689 +caedem consulum facere eaque facta rerum potiri constituerat, אב casu autem +rem perficere prohibitus erat, אב ascitis ad consilium rei publicae +opprimendae hominibus omnis generis perditissiis atque audacissimis, אב quos +inopia, אב cupiditas, אב scelera stimulabant, אב consulatum in annum 691 p. u. c. +petivit, אב sed cum, אב quae in animo habebat, אב perniciosa rei publicae consilia +parum occultata essent, אב studiis bonorum omnium M. Tullius Cicero una cum +C. Antonio consul factus est. Qua re commotus L. Catilina M. Cicerone +C. Antonio consulibus cupidius etiam sua consilia recepit, אב quibus maxime +Ciceronis consulis diligentia restitit ad quem Catilinae eiusque sociorum +consilia a Fulvia, אב muliere nobili, אב quae rem habebat cum Q. Curio, אב qui +particeps fuit conspirationis illius, אב deferebantur. Cum autem ista mala +consilia contra salutem rei publicae a coniuratis inita apertius iam +agitarentur, אב senatus consultum factum est, אב darent operam consules, אב ne quid +res publica detrimenti caperet, אב effectumque est, אב ut Catilina spe +consulatus, אב quem in proximum annum petebat, אב excideret, אב designarenturque +D. Silanus et L. Murena. Quae cum ita essent, אב L. Catilina, אב qui iam ante +per Italiam ad homines seditiosos, אב maxime veteres L. Sullae milites, אב +concitandos nuntios miserat, אב ad C. Manlium, אב qui Faesulas, אב in urbem +Etruriae munitam, אב manum armatorum coegerat, אב proficisci constituit et +bellum patriae inferre convocatisque nocte, אב quae inter viII et viI Id. +Novembres erat, אב sociis in domum M. Porci Laecae consilium, אב quod ceperat, אב +aperuit. אבQua in congregatione nocturna +duo equites Romani Ciceronem +consulem illa ipsa nocte ante lucem, אב cum sicut salutaturi eius domum +intrassent, אב
[webkit-changes] [286759] trunk/Source/WebCore
Title: [286759] trunk/Source/WebCore Revision 286759 Author mmaxfi...@apple.com Date 2021-12-08 20:05:19 -0800 (Wed, 08 Dec 2021) Log Message [MacCatalyst] Fix Mac Catalyst build https://bugs.webkit.org/show_bug.cgi?id=234067 Unreviewed. There's a compile error: Source/WebCore/platform/audio/ios/AudioSessionIOS.mm:247:5: error: 'auto' deduced as 'id' in declaration of 'session' [-Werror,-Wauto-var-id] auto *session = [PAL::getAVAudioSessionClass() sharedInstance]; ^ No new tests because there is no behavior change. * platform/audio/ios/AudioSessionIOS.mm: (WebCore::setEligibleForSmartRouting): (WebCore::AudioSessionIOS::setPresentingProcesses): (WebCore::AudioSessionIOS::setCategory): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286758 => 286759) --- trunk/Source/WebCore/ChangeLog 2021-12-09 02:40:33 UTC (rev 286758) +++ trunk/Source/WebCore/ChangeLog 2021-12-09 04:05:19 UTC (rev 286759) @@ -1,3 +1,23 @@ +2021-12-08 Myles C. Maxfield + +[MacCatalyst] Fix Mac Catalyst build +https://bugs.webkit.org/show_bug.cgi?id=234067 + +Unreviewed. + +There's a compile error: + +Source/WebCore/platform/audio/ios/AudioSessionIOS.mm:247:5: error: 'auto' deduced as 'id' in declaration of 'session' [-Werror,-Wauto-var-id] +auto *session = [PAL::getAVAudioSessionClass() sharedInstance]; +^ + +No new tests because there is no behavior change. + +* platform/audio/ios/AudioSessionIOS.mm: +(WebCore::setEligibleForSmartRouting): +(WebCore::AudioSessionIOS::setPresentingProcesses): +(WebCore::AudioSessionIOS::setCategory): + 2021-12-08 Jer Noble Add an experimental trackConfiguration accessor on AudioTrack & VideoTrack. Modified: trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm (286758 => 286759) --- trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-12-09 02:40:33 UTC (rev 286758) +++ trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-12-09 04:05:19 UTC (rev 286759) @@ -116,7 +116,7 @@ if (!AudioSession::shouldManageAudioSessionCategory()) return; -auto *session = [PAL::getAVAudioSessionClass() sharedInstance]; +AVAudioSession *session = [PAL::getAVAudioSessionClass() sharedInstance]; if (![session respondsToSelector:@selector(setEligibleForBTSmartRoutingConsideration:error:)] || ![session respondsToSelector:@selector(eligibleForBTSmartRoutingConsideration)]) return; @@ -171,7 +171,7 @@ void AudioSessionIOS::setPresentingProcesses(Vector&& auditTokens) { #if HAVE(AUDIOSESSION_PROCESSASSERTION) -auto session = [PAL::getAVAudioSessionClass() sharedInstance]; +AVAudioSession session = [PAL::getAVAudioSessionClass() sharedInstance]; if (![session respondsToSelector:@selector(setAuditTokensForProcessAssertion:error:)]) return; @@ -244,7 +244,7 @@ m_lastSetPreferredAudioDeviceUID = emptyString(); #endif -auto *session = [PAL::getAVAudioSessionClass() sharedInstance]; +AVAudioSession *session = [PAL::getAVAudioSessionClass() sharedInstance]; auto *currentCategory = [session category]; auto currentOptions = [session categoryOptions]; auto currentPolicy = [session routeSharingPolicy]; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286757] trunk
Title: [286757] trunk Revision 286757 Author kpidding...@apple.com Date 2021-12-08 18:35:12 -0800 (Wed, 08 Dec 2021) Log Message [MacCatalyst] Update header search paths for ANGLE Catalyst https://bugs.webkit.org/show_bug.cgi?id=233996 For iOSMac builds, search for ANGLE public headers inside System/iOSSupport Reviewed by Dean Jackson. Source/WebKit: * Configurations/BaseTarget.xcconfig: Tools: * TestWebKitAPI/Configurations/Base.xcconfig: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Configurations/BaseTarget.xcconfig trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Configurations/Base.xcconfig Diff Modified: trunk/Source/WebKit/ChangeLog (286756 => 286757) --- trunk/Source/WebKit/ChangeLog 2021-12-09 02:09:47 UTC (rev 286756) +++ trunk/Source/WebKit/ChangeLog 2021-12-09 02:35:12 UTC (rev 286757) @@ -1,3 +1,14 @@ +2021-12-08 Kyle Piddington + +[MacCatalyst] Update header search paths for ANGLE Catalyst +https://bugs.webkit.org/show_bug.cgi?id=233996 + +For iOSMac builds, search for ANGLE public headers inside System/iOSSupport + +Reviewed by Dean Jackson. + +* Configurations/BaseTarget.xcconfig: + 2021-12-08 Jer Noble Add an experimental trackConfiguration accessor on AudioTrack & VideoTrack. Modified: trunk/Source/WebKit/Configurations/BaseTarget.xcconfig (286756 => 286757) --- trunk/Source/WebKit/Configurations/BaseTarget.xcconfig 2021-12-09 02:09:47 UTC (rev 286756) +++ trunk/Source/WebKit/Configurations/BaseTarget.xcconfig 2021-12-09 02:35:12 UTC (rev 286757) @@ -47,8 +47,11 @@ WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions; LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc; -HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit "$(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU" $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS); +ALTERNATE_HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS_$(SDK_VARIANT)); +ALTERNATE_HEADER_SEARCH_PATHS_iosmac = $(BUILT_PRODUCTS_DIR)$(WK_ALTERNATE_FRAMEWORKS_DIR)/usr/local/include +HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS) $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit "$(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU" $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS); + OTHER_CFLAGS = $(inherited) -iframework $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks; OTHER_CPLUSPLUSFLAGS = $(OTHER_CFLAGS) -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders; Modified: trunk/Tools/ChangeLog (286756 => 286757) --- trunk/Tools/ChangeLog 2021-12-09 02:09:47 UTC (rev 286756) +++ trunk/Tools/ChangeLog 2021-12-09 02:35:12 UTC (rev 286757) @@ -1,3 +1,14 @@ +2021-12-08 Kyle Piddington + +[MacCatalyst] Update header search paths for ANGLE Catalyst +https://bugs.webkit.org/show_bug.cgi?id=233996 + +For iOSMac builds, search for ANGLE public headers inside System/iOSSupport + +Reviewed by Dean Jackson. + +* TestWebKitAPI/Configurations/Base.xcconfig: + 2021-12-08 Alex Christensen Add SPI to load a resource in the context of a page Modified: trunk/Tools/TestWebKitAPI/Configurations/Base.xcconfig (286756 => 286757) --- trunk/Tools/TestWebKitAPI/Configurations/Base.xcconfig 2021-12-09 02:09:47 UTC (rev 286756) +++ trunk/Tools/TestWebKitAPI/Configurations/Base.xcconfig 2021-12-09 02:35:12 UTC (rev 286757) @@ -33,8 +33,12 @@ CLANG_CXX_LIBRARY = libc++; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_CXX0X_EXTENSIONS = NO; -HEADER_SEARCH_PATHS = ${BUILT_PRODUCTS_DIR}/usr/local/include $(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders $(BUILT_PRODUCTS_DIR)/WebCoreTestSupport ${SRCROOT} $(SRCROOT)/../../Source/WebKit/Platform/cocoa; +ALTERNATE_HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS_$(SDK_VARIANT)); +ALTERNATE_HEADER_SEARCH_PATHS_iosmac = $(BUILT_PRODUCTS_DIR)$(WK_ALTERNATE_FRAMEWORKS_DIR)/usr/local/include + +HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS) ${BUILT_PRODUCTS_DIR}/usr/local/include $(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders $(BUILT_PRODUCTS_DIR)/WebCoreTestSupport ${SRCROOT} $(SRCROOT)/../../Source/WebKit/Platform/cocoa; + GCC_NO_COMMON_BLOCKS = YES; GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) U_DISABLE_RENAMING=1 U_SHOW_CPLUSPLUS_API=0 $(GCC_PREPROCESSOR_DEFINITIONS_$(PLATFORM_NAME)); DEBUG_INFORMATION_FORMAT = dwarf-with-dsym; ___ webkit-changes mailing list webkit-changes@lists.webkit.org
[webkit-changes] [286756] tags/Safari-612.4.2.1.1/
Title: [286756] tags/Safari-612.4.2.1.1/ Revision 286756 Author alanc...@apple.com Date 2021-12-08 18:09:47 -0800 (Wed, 08 Dec 2021) Log Message Tag Safari-612.4.2.1.1. Added Paths tags/Safari-612.4.2.1.1/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286755] tags/Safari-612.4.2.0.1/
Title: [286755] tags/Safari-612.4.2.0.1/ Revision 286755 Author repst...@apple.com Date 2021-12-08 18:09:24 -0800 (Wed, 08 Dec 2021) Log Message Tag Safari-612.4.2.0.1. Added Paths tags/Safari-612.4.2.0.1/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286753] trunk/Source
Title: [286753] trunk/Source Revision 286753 Author s...@apple.com Date 2021-12-08 16:36:26 -0800 (Wed, 08 Dec 2021) Log Message [GPU Process] [Filters] Add the encoding and decoding for SVGFilter https://bugs.webkit.org/show_bug.cgi?id=234024 Reviewed by Wenson Hsieh. Source/WebCore: Add new methods to help encoding and decoding SVGFilter members. Also add a new constructor for SVGFilter which is going to be called from FilterReference. * Headers.cmake: * WebCore.xcodeproj/project.pbxproj: * platform/graphics/filters/FilterEffectGeometry.h: (WebCore::FilterEffectGeometry::encode const): (WebCore::FilterEffectGeometry::decode): * platform/graphics/filters/SourceAlpha.cpp: (WebCore::SourceAlpha::create): (WebCore::SourceAlpha::SourceAlpha): * platform/graphics/filters/SourceAlpha.h: The plan is to remove the input effects from FilterEffect. Currently it is still used but not through FilterEffect::apply(). So it is okay for now for GPUProcess to create SourceAlpha without input since the input will not used inside GPUProcess. * svg/SVGUnitTypes.h: * svg/graphics/filters/SVGFilter.cpp: (WebCore::SVGFilter::create): (WebCore::SVGFilter::SVGFilter): * svg/graphics/filters/SVGFilter.h: Source/WebKit: When encoding the SVGFilter we need to encode the individual FilterEffects in filter._expression_(). And for every SVGFilterExpressionTerm we need to encode the index of its Ref in the individual FilterEffects. When decoding the SVGFilter we do the opposite. We get the Ref which corresponds to index of ExpressionReferenceTerm. We send the decoded _expression_ to the constructor of SVGFilter. * Platform/IPC/FilterReference.h: (IPC::FilterReference::decodeFilterEffect): (IPC::FilterReference::ExpressionReferenceTerm::encode const): (IPC::FilterReference::ExpressionReferenceTerm::decode): (IPC::FilterReference::encodeSVGFilter): (IPC::FilterReference::decodeSVGFilter): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Headers.cmake trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/platform/graphics/filters/FilterEffectGeometry.h trunk/Source/WebCore/platform/graphics/filters/SourceAlpha.cpp trunk/Source/WebCore/platform/graphics/filters/SourceAlpha.h trunk/Source/WebCore/svg/SVGUnitTypes.h trunk/Source/WebCore/svg/graphics/filters/SVGFilter.cpp trunk/Source/WebCore/svg/graphics/filters/SVGFilter.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/IPC/FilterReference.h Diff Modified: trunk/Source/WebCore/ChangeLog (286752 => 286753) --- trunk/Source/WebCore/ChangeLog 2021-12-09 00:32:05 UTC (rev 286752) +++ trunk/Source/WebCore/ChangeLog 2021-12-09 00:36:26 UTC (rev 286753) @@ -1,3 +1,35 @@ +2021-12-08 Said Abou-Hallawa + +[GPU Process] [Filters] Add the encoding and decoding for SVGFilter +https://bugs.webkit.org/show_bug.cgi?id=234024 + +Reviewed by Wenson Hsieh. + +Add new methods to help encoding and decoding SVGFilter members. Also +add a new constructor for SVGFilter which is going to be called from +FilterReference. + +* Headers.cmake: +* WebCore.xcodeproj/project.pbxproj: +* platform/graphics/filters/FilterEffectGeometry.h: +(WebCore::FilterEffectGeometry::encode const): +(WebCore::FilterEffectGeometry::decode): + +* platform/graphics/filters/SourceAlpha.cpp: +(WebCore::SourceAlpha::create): +(WebCore::SourceAlpha::SourceAlpha): +* platform/graphics/filters/SourceAlpha.h: +The plan is to remove the input effects from FilterEffect. Currently it +is still used but not through FilterEffect::apply(). So it is okay for +now for GPUProcess to create SourceAlpha without input since the input +will not used inside GPUProcess. + +* svg/SVGUnitTypes.h: +* svg/graphics/filters/SVGFilter.cpp: +(WebCore::SVGFilter::create): +(WebCore::SVGFilter::SVGFilter): +* svg/graphics/filters/SVGFilter.h: + 2021-12-08 Don Olmstead [Win] Remove CF when using Windows clipboard Modified: trunk/Source/WebCore/Headers.cmake (286752 => 286753) --- trunk/Source/WebCore/Headers.cmake 2021-12-09 00:32:05 UTC (rev 286752) +++ trunk/Source/WebCore/Headers.cmake 2021-12-09 00:36:26 UTC (rev 286753) @@ -1597,6 +1597,7 @@ platform/graphics/filters/FilterOperation.h platform/graphics/filters/FilterOperations.h platform/graphics/filters/LightSource.h +platform/graphics/filters/SourceAlpha.h platform/graphics/filters/SourceGraphic.h platform/graphics/iso/ISOBox.h Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (286752 => 286753) --- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2021-12-09 00:32:05 UTC (rev 286752) +++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2021-12-09 00:36:26 UTC (rev 286753) @@ -2756,7 +2756,7 @@ 8485227C1190162C006EDC7F /* JSSVGHKernElement.h in Headers */ = {isa =
[webkit-changes] [286752] trunk/Source/WebCore
Title: [286752] trunk/Source/WebCore Revision 286752 Author don.olmst...@sony.com Date 2021-12-08 16:32:05 -0800 (Wed, 08 Dec 2021) Log Message [Win] Remove CF when using Windows clipboard https://bugs.webkit.org/show_bug.cgi?id=194876 Reviewed by Brent Fulgham. Remove any CF code from ClipboardUtilitiesWin and replace it with WTF code. The urlFromPath function is deleted since it is no longer relevant. * platform/win/ClipboardUtilitiesWin.cpp: (WebCore::getURL): (WebCore::urlFromPath): Deleted. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286751 => 286752) --- trunk/Source/WebCore/ChangeLog 2021-12-09 00:19:46 UTC (rev 286751) +++ trunk/Source/WebCore/ChangeLog 2021-12-09 00:32:05 UTC (rev 286752) @@ -1,3 +1,17 @@ +2021-12-08 Don Olmstead + +[Win] Remove CF when using Windows clipboard +https://bugs.webkit.org/show_bug.cgi?id=194876 + +Reviewed by Brent Fulgham. + +Remove any CF code from ClipboardUtilitiesWin and replace it with WTF code. The +urlFromPath function is deleted since it is no longer relevant. + +* platform/win/ClipboardUtilitiesWin.cpp: +(WebCore::getURL): +(WebCore::urlFromPath): Deleted. + 2021-12-08 Jer Noble [VTT] Fix various issues with complicated rendering of VTT cues Modified: trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp (286751 => 286752) --- trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp 2021-12-09 00:19:46 UTC (rev 286751) +++ trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp 2021-12-09 00:32:05 UTC (rev 286752) @@ -39,11 +39,6 @@ #include #include -#if USE(CF) -#include -#include -#endif - namespace WebCore { FORMATETC* cfHDropFormat() @@ -52,27 +47,6 @@ return } -#if USE(CF) - -static bool urlFromPath(CFStringRef path, String& url) -{ -if (!path) -return false; - -RetainPtr cfURL = adoptCF(CFURLCreateWithFileSystemPath(0, path, kCFURLWindowsPathStyle, false)); -if (!cfURL) -return false; - -url = "" - -// Work around , where CFURLCreateWithFileSystemPath makes URLs with "localhost". -if (url.startsWith("file://localhost/")) -url.remove(7, 9); - -return true; -} -#endif - static bool getDataMapItem(const DragDataMap* dataObject, FORMATETC* format, String& item) { DragDataMap::const_iterator found = dataObject->find(format->cfFormat); @@ -486,14 +460,13 @@ GlobalUnlock(store.hGlobal); ReleaseStgMedium(); } -#if USE(CF) else if (filenamePolicy == DragData::ConvertFilenames) { if (SUCCEEDED(dataObject->GetData(filenameWFormat(), ))) { // file using unicode wchar_t* data = "" if (data && data[0] && (PathFileExists(data) || PathIsUNC(data))) { -RetainPtr pathAsCFString = adoptCF(CFStringCreateWithCharacters(kCFAllocatorDefault, (const UniChar*)data, wcslen(data))); -if (urlFromPath(pathAsCFString.get(), url) && title) +url = "" +if (title) *title = url; } GlobalUnlock(store.hGlobal); @@ -502,8 +475,8 @@ // filename using ascii char* data = "" if (data && data[0] && (PathFileExistsA(data) || PathIsUNCA(data))) { -RetainPtr pathAsCFString = adoptCF(CFStringCreateWithCString(kCFAllocatorDefault, data, kCFStringEncodingASCII)); -if (urlFromPath(pathAsCFString.get(), url) && title) +url = "" +if (title) *title = url; } GlobalUnlock(store.hGlobal); @@ -510,7 +483,6 @@ ReleaseStgMedium(); } } -#endif return url; } @@ -524,7 +496,6 @@ return extractURL(url, title); if (getDataMapItem(data, urlFormat(), url)) return extractURL(url, title); -#if USE(CF) if (filenamePolicy != DragData::ConvertFilenames) return url; @@ -535,10 +506,11 @@ auto wcharData = stringData.wideCharacters().data(); if (stringData.isEmpty() || (!PathFileExists(wcharData) && !PathIsUNC(wcharData))) return url; -RetainPtr pathAsCFString = adoptCF(CFStringCreateWithCharacters(kCFAllocatorDefault, (const UniChar *)wcharData, wcslen(wcharData))); -if (urlFromPath(pathAsCFString.get(), url) && title) + +url = "" +if (title) *title = url; -#endif + return url; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286751] trunk
Title: [286751] trunk Revision 286751 Author achristen...@apple.com Date 2021-12-08 16:19:46 -0800 (Wed, 08 Dec 2021) Log Message Add SPI to load a resource in the context of a page https://bugs.webkit.org/show_bug.cgi?id=233908 Reviewed by Tim Horton. Source/WebKit: This is similar to startDownloadUsingRequest but you don't have to get the data from the disk. This is similar to NSURLSession's dataTaskWithRequest:completionHandler: but using the same session as the page. This is needed because LinkPresentation is currently using _getMainResourceDataWithCompletionHandler after loading in a WKWebView made with _relatedWebView to get the content of a resource, and that's awful and limited to certain mime types. * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::requestResource): * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: * NetworkProcess/NetworkSession.h: (WebKit::NetworkSession::requestResource): * NetworkProcess/cocoa/NetworkSessionCocoa.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::requestResource): * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _requestResource:completionHandler:]): * UIProcess/API/Cocoa/WKWebViewPrivate.h: * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::requestResource): * UIProcess/Network/NetworkProcessProxy.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::requestResource): * UIProcess/WebPageProxy.h: Tools: * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm: (TEST): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/NetworkSession.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm trunk/Tools/TestWebKitAPI/cocoa/HTTPServer.h trunk/Tools/TestWebKitAPI/cocoa/HTTPServer.mm Diff Modified: trunk/Source/WebKit/ChangeLog (286750 => 286751) --- trunk/Source/WebKit/ChangeLog 2021-12-09 00:16:51 UTC (rev 286750) +++ trunk/Source/WebKit/ChangeLog 2021-12-09 00:19:46 UTC (rev 286751) @@ -1,3 +1,34 @@ +2021-12-08 Alex Christensen + +Add SPI to load a resource in the context of a page +https://bugs.webkit.org/show_bug.cgi?id=233908 + +Reviewed by Tim Horton. + +This is similar to startDownloadUsingRequest but you don't have to get the data from the disk. +This is similar to NSURLSession's dataTaskWithRequest:completionHandler: but using the same session as the page. +This is needed because LinkPresentation is currently using _getMainResourceDataWithCompletionHandler after loading +in a WKWebView made with _relatedWebView to get the content of a resource, and that's awful and limited to certain mime types. + +* NetworkProcess/NetworkProcess.cpp: +(WebKit::NetworkProcess::requestResource): +* NetworkProcess/NetworkProcess.h: +* NetworkProcess/NetworkProcess.messages.in: +* NetworkProcess/NetworkSession.h: +(WebKit::NetworkSession::requestResource): +* NetworkProcess/cocoa/NetworkSessionCocoa.h: +* NetworkProcess/cocoa/NetworkSessionCocoa.mm: +(WebKit::NetworkSessionCocoa::requestResource): +* UIProcess/API/Cocoa/WKWebView.mm: +(-[WKWebView _requestResource:completionHandler:]): +* UIProcess/API/Cocoa/WKWebViewPrivate.h: +* UIProcess/Network/NetworkProcessProxy.cpp: +(WebKit::NetworkProcessProxy::requestResource): +* UIProcess/Network/NetworkProcessProxy.h: +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::requestResource): +* UIProcess/WebPageProxy.h: + 2021-12-08 BJ Burg Web Inspector: evaluateScriptForExtension() incorrectly unwraps internal errors, causing an ASSERT Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (286750 => 286751) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2021-12-09 00:16:51 UTC (rev 286750) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2021-12-09 00:19:46 UTC (rev 286751) @@ -2169,6 +2169,15 @@ }, destinationID); } +void NetworkProcess::requestResource(WebPageProxyIdentifier pageID, PAL::SessionID sessionID, WebCore::ResourceRequest&& request, IPC::FormDataReference&& httpBody, CompletionHandler&& completionHandler) +{ +request.setHTTPBody(httpBody.takeData()); +if (auto*
[webkit-changes] [286750] branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/ WebPageProxy.h
Title: [286750] branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h Revision 286750 Author alanc...@apple.com Date 2021-12-08 16:16:51 -0800 (Wed, 08 Dec 2021) Log Message Revert "Unreviewed build fix. rdar://problem/85928816" This reverts r286737. Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h (286749 => 286750) --- branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-09 00:11:09 UTC (rev 286749) +++ branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-09 00:16:51 UTC (rev 286750) @@ -2767,7 +2767,6 @@ std::optional m_displayID; #if HAVE(CVDISPLAYLINK) PAL::HysteresisActivity m_wheelEventActivityHysteresis; -bool m_registeredForFullSpeedUpdates { false }; #endif Deque m_mouseEventQueue; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286748] branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h
Title: [286748] branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h Revision 286748 Author alanc...@apple.com Date 2021-12-08 16:07:52 -0800 (Wed, 08 Dec 2021) Log Message Revert "Unreviewed build fix. rdar://problem/85928816" This reverts r286739. Modified Paths branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h Diff Modified: branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h (286747 => 286748) --- branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-09 00:05:55 UTC (rev 286747) +++ branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-09 00:07:52 UTC (rev 286748) @@ -2767,7 +2767,6 @@ std::optional m_displayID; #if HAVE(CVDISPLAYLINK) PAL::HysteresisActivity m_wheelEventActivityHysteresis; -bool m_registeredForFullSpeedUpdates { false }; #endif Deque m_mouseEventQueue; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286747] trunk/Source/WebKit
Title: [286747] trunk/Source/WebKit Revision 286747 Author bb...@apple.com Date 2021-12-08 16:05:55 -0800 (Wed, 08 Dec 2021) Log Message Web Inspector: evaluateScriptForExtension() incorrectly unwraps internal errors, causing an ASSERT https://bugs.webkit.org/show_bug.cgi?id=233961 Reviewed by Patrick Angle. Standardize the unwrapping code based on the evaluateScriptInExtensionTab version, which correctly handles the case where an internal error is returned by the evaluation. This happens, for example, when NotImplemented is returned for unsupported evaluation options. This particular issue was caused by a lack of support for the 'frameURL' option. The fix for that is tracked by https://webkit.org/b/222568/. * WebProcess/Inspector/WebInspectorUIExtensionController.cpp: (WebKit::WebInspectorUIExtensionController::evaluateScriptForExtension): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (286746 => 286747) --- trunk/Source/WebKit/ChangeLog 2021-12-08 23:49:16 UTC (rev 286746) +++ trunk/Source/WebKit/ChangeLog 2021-12-09 00:05:55 UTC (rev 286747) @@ -1,3 +1,22 @@ +2021-12-08 BJ Burg + +Web Inspector: evaluateScriptForExtension() incorrectly unwraps internal errors, causing an ASSERT +https://bugs.webkit.org/show_bug.cgi?id=233961 + + +Reviewed by Patrick Angle. + +Standardize the unwrapping code based on the evaluateScriptInExtensionTab version, which +correctly handles the case where an internal error is returned by the evaluation. +This happens, for example, when NotImplemented is returned for unsupported evaluation +options. + +This particular issue was caused by a lack of support for the 'frameURL' option. +The fix for that is tracked by https://webkit.org/b/222568/. + +* WebProcess/Inspector/WebInspectorUIExtensionController.cpp: +(WebKit::WebInspectorUIExtensionController::evaluateScriptForExtension): + 2021-12-08 J Pascoe [WebAuthn] Consider support for the displayName for FIDO authenticator Modified: trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp (286746 => 286747) --- trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp 2021-12-08 23:49:16 UTC (rev 286746) +++ trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp 2021-12-09 00:05:55 UTC (rev 286747) @@ -250,8 +250,12 @@ JSC::JSLockHolder lock(frontendGlobalObject); if (auto parsedError = weakThis->parseExtensionErrorFromEvaluationResult(result)) { -auto exceptionDetails = result.value().error(); -LOG(Inspector, "Internal error encountered while evaluating upon the frontend: at %s:%d:%d: %s", exceptionDetails.sourceURL.utf8().data(), exceptionDetails.lineNumber, exceptionDetails.columnNumber, exceptionDetails.message.utf8().data()); +if (!result.value().has_value()) { +auto exceptionDetails = result.value().error(); +LOG(Inspector, "Internal error encountered while evaluating upon the frontend at %s:%d:%d: %s", exceptionDetails.sourceURL.utf8().data(), exceptionDetails.lineNumber, exceptionDetails.columnNumber, exceptionDetails.message.utf8().data()); +} else +LOG(Inspector, "Internal error encountered while evaluating upon the frontend: %s", extensionErrorToString(parsedError.value()).utf8().data()); + completionHandler({ }, std::nullopt, parsedError); return; } @@ -259,7 +263,7 @@ // Expected result is either an ErrorString or {result: }. auto objectResult = weakThis->unwrapEvaluationResultAsObject(result); if (!objectResult) { -LOG(Inspector, "Unexpected non-object value returned from InspectorFrontendAPI.createTabForExtension()."); +LOG(Inspector, "Unexpected non-object value returned from InspectorFrontendAPI.evaluateScriptForExtension()."); completionHandler({ }, std::nullopt, Inspector::ExtensionError::InternalError); return; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286746] trunk
Title: [286746] trunk Revision 286746 Author j_pas...@apple.com Date 2021-12-08 15:49:16 -0800 (Wed, 08 Dec 2021) Log Message [WebAuthn] Consider support for the displayName for FIDO authenticator https://bugs.webkit.org/show_bug.cgi?id=233389 rdar://84938707 Reviewed by Brent Fulgham. Source/WebKit: Start storing the displayName field with the platform authenticator and add them to the getAllLocalAuthenticatorCredentials SPI. The displayName is part of the WebAuthn level 2 spec: https://www.w3.org/TR/webauthn-2/#dom-publickeycredentialuserentity-displayname * UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h: * UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm: (getAllLocalAuthenticatorCredentialsImpl): * UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm: (WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification): Tools: Add test for new field stored with platform authenticator: displayName * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm Diff Modified: trunk/Source/WebKit/ChangeLog (286745 => 286746) --- trunk/Source/WebKit/ChangeLog 2021-12-08 23:27:48 UTC (rev 286745) +++ trunk/Source/WebKit/ChangeLog 2021-12-08 23:49:16 UTC (rev 286746) @@ -1,3 +1,23 @@ +2021-12-08 J Pascoe + +[WebAuthn] Consider support for the displayName for FIDO authenticator +https://bugs.webkit.org/show_bug.cgi?id=233389 +rdar://84938707 + +Reviewed by Brent Fulgham. + +Start storing the displayName field with the platform authenticator +and add them to the getAllLocalAuthenticatorCredentials SPI. + +The displayName is part of the WebAuthn level 2 spec: +https://www.w3.org/TR/webauthn-2/#dom-publickeycredentialuserentity-displayname + +* UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h: +* UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm: +(getAllLocalAuthenticatorCredentialsImpl): +* UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm: +(WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification): + 2021-12-08 Truitt Savell Unreviewed, reverting r286596. Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h (286745 => 286746) --- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h 2021-12-08 23:27:48 UTC (rev 286745) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h 2021-12-08 23:49:16 UTC (rev 286746) @@ -87,6 +87,7 @@ } WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA)); WK_EXPORT extern NSString * const _WKLocalAuthenticatorCredentialNameKey; +WK_EXPORT extern NSString * const _WKLocalAuthenticatorCredentialDisplayNameKey; WK_EXPORT extern NSString * const _WKLocalAuthenticatorCredentialIDKey; WK_EXPORT extern NSString * const _WKLocalAuthenticatorCredentialRelyingPartyIDKey; WK_EXPORT extern NSString * const _WKLocalAuthenticatorCredentialLastModificationDateKey; Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm (286745 => 286746) --- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm 2021-12-08 23:27:48 UTC (rev 286745) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm 2021-12-08 23:49:16 UTC (rev 286746) @@ -100,6 +100,7 @@ #endif NSString * const _WKLocalAuthenticatorCredentialNameKey = @"_WKLocalAuthenticatorCredentialNameKey"; +NSString * const _WKLocalAuthenticatorCredentialDisplayNameKey = @"_WKLocalAuthenticatorCredentialDisplayNameKey"; NSString * const _WKLocalAuthenticatorCredentialIDKey = @"_WKLocalAuthenticatorCredentialIDKey"; NSString * const _WKLocalAuthenticatorCredentialRelyingPartyIDKey = @"_WKLocalAuthenticatorCredentialRelyingPartyIDKey"; NSString * const _WKLocalAuthenticatorCredentialLastModificationDateKey = @"_WKLocalAuthenticatorCredentialLastModificationDateKey"; @@ -265,14 +266,20 @@ return nullptr; } auto& username = it->second.getString(); +auto credential = adoptNS([[NSMutableDictionary alloc] initWithObjectsAndKeys: +username, _WKLocalAuthenticatorCredentialNameKey, +attributes[bridge_cast(kSecAttrApplicationLabel)], _WKLocalAuthenticatorCredentialIDKey, +attributes[bridge_cast(kSecAttrLabel)], _WKLocalAuthenticatorCredentialRelyingPartyIDKey, +attributes[bridge_cast(kSecAttrModificationDate)], _WKLocalAuthenticatorCredentialLastModificationDateKey, +attributes[bridge_cast(kSecAttrCreationDate)], _WKLocalAuthenticatorCredentialCreationDateKey, +nil +]); -
[webkit-changes] [286745] tags/Safari-612.3.6.1.8/
Title: [286745] tags/Safari-612.3.6.1.8/ Revision 286745 Author alanc...@apple.com Date 2021-12-08 15:27:48 -0800 (Wed, 08 Dec 2021) Log Message Tag Safari-612.3.6.1.8. Added Paths tags/Safari-612.3.6.1.8/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286744] branches/safari-612.3.6.1-branch/Source
Title: [286744] branches/safari-612.3.6.1-branch/Source Revision 286744 Author alanc...@apple.com Date 2021-12-08 15:15:26 -0800 (Wed, 08 Dec 2021) Log Message Versioning. WebKit-7612.3.6.1.8. Modified Paths branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.3.6.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286743 => 286744) --- branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 22:59:49 UTC (rev 286743) +++ branches/safari-612.3.6.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 23:15:26 UTC (rev 286744) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 7; +NANO_VERSION = 8; 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. Modified: branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286743 => 286744) --- branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 22:59:49 UTC (rev 286743) +++ branches/safari-612.3.6.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 23:15:26 UTC (rev 286744) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 7; +NANO_VERSION = 8; 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. Modified: branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286743 => 286744) --- branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 22:59:49 UTC (rev 286743) +++ branches/safari-612.3.6.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 23:15:26 UTC (rev 286744) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 7; +NANO_VERSION = 8; 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. Modified: branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig (286743 => 286744) --- branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 22:59:49 UTC (rev 286743) +++ branches/safari-612.3.6.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 23:15:26 UTC (rev 286744) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 7; +NANO_VERSION = 8; 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. Modified: branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286743 => 286744) --- branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 22:59:49 UTC (rev 286743) +++ branches/safari-612.3.6.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 23:15:26 UTC (rev 286744) @@ -25,7 +25,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 7; +NANO_VERSION = 8; 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. Modified: branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286743 => 286744) --- branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-08 22:59:49 UTC (rev 286743) +++ branches/safari-612.3.6.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-08 23:15:26 UTC (rev 286744) @@ -2,7 +2,7 @@ MINOR_VERSION = 3; TINY_VERSION = 6; MICRO_VERSION = 1; -NANO_VERSION = 7; +NANO_VERSION = 8; FULL_VERSION =
[webkit-changes] [286743] trunk
Title: [286743] trunk Revision 286743 Author jer.no...@apple.com Date 2021-12-08 14:59:49 -0800 (Wed, 08 Dec 2021) Log Message [VTT] Fix various issues with complicated rendering of VTT cues https://bugs.webkit.org/show_bug.cgi?id=233901 Reviewed by Eric Carlson. Source/WebCore: Tests: media/track/track-webvtt-no-snap-to-lines-overlap.html media/track/track-webvtt-snap-to-lines-inline-style.html media/track/track-webvtt-snap-to-lines-left-right.html When positioning VTT cues, the spec requires UAs to avoid collisions between cues by detecting that two cues overlap each other. However, WebKit's implementation looks for collisions between non-displaying portions of the cues; namely the ::-webkit-media-text-track-display element, which is used to position the displaying portion of the cue. Instead, the UA should look for collisions between the ::-webkit-media-text-track-display-backdrop element, which holds the background of the cue, if present. Add a convenience function to retrieve the backdrop element, and another to retrieve the cue itself. Add cast macros for RenderVTTCue to allow downcast<>ing. Use this macro to retrieve other cues's backdrop elements for collision avoidance. VTTCueBox::applyCSSProperties() had a section for moving cues into place that is entirely unneeded if VTTCue::getCSSPosition() returns the pre-calculated m_displayPosition. RenderVTTCue::initializeLayoutParameters() is a careful implementation of the specification, accurately layout out cues' initial position so that the text run is exactly at the bottom of the content box. However, if the cue has a border, padding, or extra height, this will result in the cue being pushed outside the content box. To account for this, adjust the inital layout parameter by the difference between the cue text size and the backdrop element size. RenderVTTCue::layout() will create a LayoutStateMaintainer, which modifies the behavior of layout machinery during the layout itself. However, certain child renderers get dramatically incorrect results for absoluteBoundingRect() unless the maintainer explicitly sets disableState. * html/track/VTTCue.cpp: (WebCore::VTTCueBox::applyCSSProperties): (WebCore::VTTCue::getCSSPosition const): * html/track/VTTCue.h: * rendering/RenderObject.h: (WebCore::RenderObject::isRenderVTTCue const): * rendering/RenderVTTCue.cpp: (WebCore::RenderVTTCue::layout): (WebCore::RenderVTTCue::initializeLayoutParameters): (WebCore::RenderVTTCue::isOutside const): (WebCore::RenderVTTCue::overlappingObject const): (WebCore::RenderVTTCue::overlappingObjectForRect const): (WebCore::RenderVTTCue::moveIfNecessaryToKeepWithinContainer): (WebCore::RenderVTTCue::findNonOverlappingPosition const): (WebCore::RenderVTTCue::repositionGenericCue): (WebCore::RenderVTTCue::backdropBox const): (WebCore::RenderVTTCue::cueBox const): LayoutTests: * media/track/captions-webvtt/no-snap-to-lines-overlap.vtt: Added. * media/track/captions-webvtt/snap-to-lines-inline-style.vtt: Added. * media/track/captions-webvtt/snap-to-lines-left-and-right.vtt: Added. * media/track/track-webvtt-no-snap-to-lines-overlap-expected.html: Added. * media/track/track-webvtt-no-snap-to-lines-overlap.html: Added. * media/track/track-webvtt-snap-to-lines-inline-style-expected.html: Added. * media/track/track-webvtt-snap-to-lines-inline-style.html: Added. * media/track/track-webvtt-snap-to-lines-left-right-expected.html: Added. * media/track/track-webvtt-snap-to-lines-left-right.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/track/VTTCue.cpp trunk/Source/WebCore/html/track/VTTCue.h trunk/Source/WebCore/page/CaptionUserPreferences.cpp trunk/Source/WebCore/page/CaptionUserPreferences.h trunk/Source/WebCore/rendering/RenderObject.h trunk/Source/WebCore/rendering/RenderVTTCue.cpp trunk/Source/WebCore/rendering/RenderVTTCue.h trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h Added Paths trunk/LayoutTests/media/track/captions-webvtt/no-snap-to-lines-overlap.vtt trunk/LayoutTests/media/track/captions-webvtt/snap-to-lines-inline-style.vtt trunk/LayoutTests/media/track/captions-webvtt/snap-to-lines-left-and-right.vtt trunk/LayoutTests/media/track/track-webvtt-no-snap-to-lines-overlap-expected.html trunk/LayoutTests/media/track/track-webvtt-no-snap-to-lines-overlap.html trunk/LayoutTests/media/track/track-webvtt-snap-to-lines-inline-style-expected.html trunk/LayoutTests/media/track/track-webvtt-snap-to-lines-inline-style.html trunk/LayoutTests/media/track/track-webvtt-snap-to-lines-left-right-expected.html trunk/LayoutTests/media/track/track-webvtt-snap-to-lines-left-right.html Diff Modified: trunk/LayoutTests/ChangeLog (286742 => 286743) --- trunk/LayoutTests/ChangeLog 2021-12-08 22:57:36 UTC (rev 286742) +++ trunk/LayoutTests/ChangeLog 2021-12-08 22:59:49 UTC (rev 286743) @@ -1,3 +1,20 @@ +2021-12-08 Jer Noble + +[VTT] Fix various
[webkit-changes] [286742] trunk/Source/WebCore
Title: [286742] trunk/Source/WebCore Revision 286742 Author jer.no...@apple.com Date 2021-12-08 14:57:36 -0800 (Wed, 08 Dec 2021) Log Message [MSE] Add a Modules/mediasource/README.md file https://bugs.webkit.org/show_bug.cgi?id=234026 Reviewed by Eric Carlson. Follow-up to address review comments. * Modules/mediasource/README.md: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediasource/README.md Diff Modified: trunk/Source/WebCore/ChangeLog (286741 => 286742) --- trunk/Source/WebCore/ChangeLog 2021-12-08 22:10:34 UTC (rev 286741) +++ trunk/Source/WebCore/ChangeLog 2021-12-08 22:57:36 UTC (rev 286742) @@ -2,9 +2,21 @@ [MSE] Add a Modules/mediasource/README.md file https://bugs.webkit.org/show_bug.cgi?id=234026 + Reviewed by Eric Carlson. +Follow-up to address review comments. + +* Modules/mediasource/README.md: + +2021-12-08 Jer Noble + +[MSE] Add a Modules/mediasource/README.md file +https://bugs.webkit.org/show_bug.cgi?id=234026 + +Reviewed by Eric Carlson. + * Modules/mediasource/README.md: Added. 2021-12-08 Truitt Savell Modified: trunk/Source/WebCore/Modules/mediasource/README.md (286741 => 286742) --- trunk/Source/WebCore/Modules/mediasource/README.md 2021-12-08 22:10:34 UTC (rev 286741) +++ trunk/Source/WebCore/Modules/mediasource/README.md 2021-12-08 22:57:36 UTC (rev 286742) @@ -4,7 +4,7 @@ ## Basic Concepts -The Media Source Extensions specification defines a set of classes which allows clients to implement their own loading, buffering, and variant switching behavior, as opposed to allowing the UA to handle same. +The Media Source Extensions specification defines a set of classes which allows clients to implement their own loading, buffering, and variant switching behavior, as opposed to requiring the UA to handle same. Clients `fetch()` media initialization segments and media segments, typically subsets of a single [fragmented MP4 file](https://www.w3.org/TR/mse-byte-stream-format-isobmff/) or [WebM file](https://www.w3.org/TR/mse-byte-stream-format-webm/), and append those segments into a SourceBuffer object, which is associated with a HTMLMediaElement through a [MediaSource](#mediasource) object. @@ -52,11 +52,23 @@ SourceBufferPrivate is a semi-abstract base class which accepts initialization segment and media segment buffers, parse those buffers with platform-specific parsers, and enqueue the resulting samples into platform-specific decoders. SourceBufferPrivate is also responsible for caching parsed samples in a [SampleMap](#samplemap). +### MediaTime ### + +_([.h](../../WTF/wtf/MediaTime.h), [.cpp](../../WTF/wtf/MediaTime.cpp))_ + +MediaTime is a rational-number time class for manipulating time values commonly found in media files. The unit of MediaTime is seconds. + +Media containers such as mp4 and WebM represent time values as a ratio between a "time base" and a "time value". These values cannot necessarily be accurately represented as floating-point values without incurring cumulative rounding errors. For example, a common frame rate in video formats is 29.97fps, however that value is an approximation of 3/1001. So a media file containing a video track with a 29.97fps content will declare a "time base" scalar of 3, and each frame will have a "time value" duration of 1001. + +Media Source Extension algorithms are very sensitive to small gaps between samples, and due to its rational-number behavior, MediaTime guarantees samples are contiguous by avoiding floating-point rounding errors. + +MediaTime offers convenience methods to convert from (`createTimeWithDouble()`) and to (`toDouble()`) floating-point values. + ### MediaSample ### _([.h](../platform/MediaSample.h), [.cpp](../platform/MediaSample.cpp))_ -MediaSample is an abstract base class representing a sample parsed from a media segment. MediaSamples have `presentationTime()`, `decodeTime()`, and `duration()`, which are used to order these samples relative to one another in a [SampleMap](#samplemap). For codecs which support frame reordering, `presentationTime()` and `decodeTime()` for each sample may differ. +MediaSample is an abstract base class representing a sample parsed from a media segment. MediaSamples have `presentationTime()`, `decodeTime()`, and `duration()`, each of which are [MediaTime](#mediatime) values, which are used to order these samples relative to one another in a [SampleMap](#samplemap). For codecs which support frame reordering, `presentationTime()` and `decodeTime()` for each sample may differ. ### SampleMap ### ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286741] branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess
Title: [286741] branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess Revision 286741 Author alanc...@apple.com Date 2021-12-08 14:10:34 -0800 (Wed, 08 Dec 2021) Log Message Apply patch. rdar://problem/85928816 Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (286740 => 286741) --- branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 22:08:04 UTC (rev 286740) +++ branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 22:10:34 UTC (rev 286741) @@ -2899,13 +2899,21 @@ } #if HAVE(CVDISPLAYLINK) -void WebPageProxy::wheelEventHysteresisUpdated(PAL::HysteresisState state) +void WebPageProxy::wheelEventHysteresisUpdated(PAL::HysteresisState) { +updateDisplayLinkFrequency(); +} + +void WebPageProxy::updateDisplayLinkFrequency() +{ if (!m_process->hasConnection() || !m_displayID) return; -bool wantsFullSpeedUpdates = state == PAL::HysteresisState::Started; -process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates); +bool wantsFullSpeedUpdates = m_wheelEventActivityHysteresis.state() == PAL::HysteresisState::Started; +if (wantsFullSpeedUpdates != m_registeredForFullSpeedUpdates) { +process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates); +m_registeredForFullSpeedUpdates = wantsFullSpeedUpdates; +} } #endif @@ -2912,13 +2920,7 @@ void WebPageProxy::updateWheelEventActivityAfterProcessSwap() { #if HAVE(CVDISPLAYLINK) -if (m_wheelEventActivityHysteresis.state() == PAL::HysteresisState::Started) { -if (!m_process->hasConnection() || !m_displayID) -return; - -bool wantsFullSpeedUpdates = true; -process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates); -} +updateDisplayLinkFrequency(); #endif } Modified: branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h (286740 => 286741) --- branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 22:08:04 UTC (rev 286740) +++ branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 22:10:34 UTC (rev 286741) @@ -2383,6 +2383,7 @@ #if HAVE(CVDISPLAYLINK) void wheelEventHysteresisUpdated(PAL::HysteresisState); +void updateDisplayLinkFrequency(); #endif void updateWheelEventActivityAfterProcessSwap(); @@ -2752,6 +2753,8 @@ bool m_hasUpdatedRenderingAfterDidCommitLoad { true }; +bool m_registeredForFullSpeedUpdates { false }; + WebCore::ResourceRequest m_decidePolicyForResponseRequest; bool m_shouldSuppressAppLinksInNextNavigationPolicyDecision { false }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286739] branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h
Title: [286739] branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h Revision 286739 Author alanc...@apple.com Date 2021-12-08 14:08:01 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 Modified Paths branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h Diff Modified: branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h (286738 => 286739) --- branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 21:39:08 UTC (rev 286738) +++ branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 22:08:01 UTC (rev 286739) @@ -2764,6 +2764,7 @@ std::optional m_displayID; #if HAVE(CVDISPLAYLINK) PAL::HysteresisActivity m_wheelEventActivityHysteresis; +bool m_registeredForFullSpeedUpdates { false }; #endif Deque m_mouseEventQueue; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286740] branches/safari-612-branch/Source/WebKit/UIProcess
Title: [286740] branches/safari-612-branch/Source/WebKit/UIProcess Revision 286740 Author alanc...@apple.com Date 2021-12-08 14:08:04 -0800 (Wed, 08 Dec 2021) Log Message Apply patch. rdar://problem/85928816 Modified Paths branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h Diff Modified: branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (286739 => 286740) --- branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 22:08:01 UTC (rev 286739) +++ branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 22:08:04 UTC (rev 286740) @@ -2899,13 +2899,21 @@ } #if HAVE(CVDISPLAYLINK) -void WebPageProxy::wheelEventHysteresisUpdated(PAL::HysteresisState state) +void WebPageProxy::wheelEventHysteresisUpdated(PAL::HysteresisState) { +updateDisplayLinkFrequency(); +} + +void WebPageProxy::updateDisplayLinkFrequency() +{ if (!m_process->hasConnection() || !m_displayID) return; -bool wantsFullSpeedUpdates = state == PAL::HysteresisState::Started; -process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates); +bool wantsFullSpeedUpdates = m_wheelEventActivityHysteresis.state() == PAL::HysteresisState::Started; +if (wantsFullSpeedUpdates != m_registeredForFullSpeedUpdates) { +process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates); +m_registeredForFullSpeedUpdates = wantsFullSpeedUpdates; +} } #endif @@ -2912,13 +2920,7 @@ void WebPageProxy::updateWheelEventActivityAfterProcessSwap() { #if HAVE(CVDISPLAYLINK) -if (m_wheelEventActivityHysteresis.state() == PAL::HysteresisState::Started) { -if (!m_process->hasConnection() || !m_displayID) -return; - -bool wantsFullSpeedUpdates = true; -process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, wantsFullSpeedUpdates); -} +updateDisplayLinkFrequency(); #endif } Modified: branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h (286739 => 286740) --- branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 22:08:01 UTC (rev 286739) +++ branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 22:08:04 UTC (rev 286740) @@ -2383,6 +2383,7 @@ #if HAVE(CVDISPLAYLINK) void wheelEventHysteresisUpdated(PAL::HysteresisState); +void updateDisplayLinkFrequency(); #endif void updateWheelEventActivityAfterProcessSwap(); @@ -2752,6 +2753,8 @@ bool m_hasUpdatedRenderingAfterDidCommitLoad { true }; +bool m_registeredForFullSpeedUpdates { false }; + WebCore::ResourceRequest m_decidePolicyForResponseRequest; bool m_shouldSuppressAppLinksInNextNavigationPolicyDecision { false }; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286738] trunk/Source/WebCore
Title: [286738] trunk/Source/WebCore Revision 286738 Author jer.no...@apple.com Date 2021-12-08 13:39:08 -0800 (Wed, 08 Dec 2021) Log Message [MSE] Add a Modules/mediasource/README.md file https://bugs.webkit.org/show_bug.cgi?id=234026 Reviewed by Eric Carlson. * Modules/mediasource/README.md: Added. Modified Paths trunk/Source/WebCore/ChangeLog Added Paths trunk/Source/WebCore/Modules/mediasource/README.md Diff Modified: trunk/Source/WebCore/ChangeLog (286737 => 286738) --- trunk/Source/WebCore/ChangeLog 2021-12-08 21:29:32 UTC (rev 286737) +++ trunk/Source/WebCore/ChangeLog 2021-12-08 21:39:08 UTC (rev 286738) @@ -1,3 +1,12 @@ +2021-12-08 Jer Noble + +[MSE] Add a Modules/mediasource/README.md file +https://bugs.webkit.org/show_bug.cgi?id=234026 + +Reviewed by Eric Carlson. + +* Modules/mediasource/README.md: Added. + 2021-12-08 Truitt Savell Unreviewed, reverting r286596. Added: trunk/Source/WebCore/Modules/mediasource/README.md (0 => 286738) --- trunk/Source/WebCore/Modules/mediasource/README.md (rev 0) +++ trunk/Source/WebCore/Modules/mediasource/README.md 2021-12-08 21:39:08 UTC (rev 286738) @@ -0,0 +1,67 @@ +# Media Source Extensions + +This directory contains cross-platform implementations of the objects specified by the [Media Source Extensions Specification](https://www.w3.org/TR/media-source/). + +## Basic Concepts + +The Media Source Extensions specification defines a set of classes which allows clients to implement their own loading, buffering, and variant switching behavior, as opposed to allowing the UA to handle same. + +Clients `fetch()` media initialization segments and media segments, typically subsets of a single [fragmented MP4 file](https://www.w3.org/TR/mse-byte-stream-format-isobmff/) or [WebM file](https://www.w3.org/TR/mse-byte-stream-format-webm/), and append those segments into a SourceBuffer object, which is associated with a HTMLMediaElement through a [MediaSource](#mediasource) object. + +## Relevant Classes + +### MediaSource ### + +_([.idl](MediaSource.idl), [.h](MediaSource.h), [.cpp](MediaSource.cpp))_ + +MediaSource serves two purposes: +* Creating SourceBuffer objects. +* Associating those SourceBuffer objects with a HTMLMediaElement. + +Once created, clients can create query for container and codec support via `isTypeSupported(type)`, [SourceBuffer](#sourcebuffer) objects via `addSourceBuffer(type)`, explicitly set the MediaSource's `duration`, and signal an end of the stream via `endOfStream(error)`. + +Before creating any [SourceBuffer](#sourcebuffer) objects, the MediaSource must be associated with a HTMLMediaElement. The MediaSource can be set directly as the HTMLMediaElement's `srcObject`. Alternatively, an [extension](DOMURL+MediaSource.idl) to DOMURL allows an ObjectURL to be created from a MediaSource object, and that ObjectURL can be set as the HTMLMediaElement's `src`. + +A MediaSource object will fire a `"sourceopen"` event when successfully associated with a HTMLMediaElement, and a `"sourceclose"` event when disassociated. The state of the MediaSource object can be queried via its `readyState` property. + +### SourceBuffer ### + +_([.idl](SourceBuffer.idl), [.h](SourceBuffer.h), [.cpp](SourceBuffer.cpp))_ + +SourceBuffer accepts buffers of initialization segments and media segments, which are then parsed into media tracks and media samples. Those samples are cached within the SourceBuffer (inside its [SourceBufferPrivate](../platform/graphics/SourceBufferPrivate.h) object) and enqueued into platform-specific decoders on demand. The primary storage mechanism for these samples is a [SampleMap](#samplemap), which orders those samples both in terms of each sample's DecodeTime and PresentationTime. These two times can differ for codecs that support frame reordering, typically MPEG video codecs such as h.264 and HEVC. + +Clients append these segments via `appendBuffer()`, which sets an internal `updating` flag, fires the `"updatestart"` event, and subsequently fires the `"updateend"` event and clears the `updating` flag once parsing is complete. The results of the append are visible by querying the `buffered` property, or by querying the `audioTracks`, `videoTracks`, and `textTracks` TrackList objects. + +### MediaSourcePrivate ### + +_([.h](../platform/graphics/MediaSourcePrivate.h), [.cpp](../platform/graphics/MediaSourcePrivate.cpp))_ + +MediaSourcePrivate is an abstract base class which allows [MediaSource](#mediasource) to communicate through the platform boundary to a platform-specific implementation of MediaSource. + +When the GPU Process is enabled, the MediaSourcePrivate in the WebContent process is typically a [MediaSourcePrivateRemote](../../WebKit/WebProcess/GPU/media/MediaSourcePrivateRemote.h), which will pass commands and properties across the WebContent/GPU process boundary. + +For Apple ports, the MediaSourcePrivate is typically a
[webkit-changes] [286737] branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/ WebPageProxy.h
Title: [286737] branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h Revision 286737 Author alanc...@apple.com Date 2021-12-08 13:29:32 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h (286736 => 286737) --- branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 21:28:45 UTC (rev 286736) +++ branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-12-08 21:29:32 UTC (rev 286737) @@ -2764,6 +2764,7 @@ std::optional m_displayID; #if HAVE(CVDISPLAYLINK) PAL::HysteresisActivity m_wheelEventActivityHysteresis; +bool m_registeredForFullSpeedUpdates { false }; #endif Deque m_mouseEventQueue; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286734] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286734] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286734 Author alanc...@apple.com Date 2021-12-08 13:26:34 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286671. rdar://problem/85928816 Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps https://bugs.webkit.org/show_bug.cgi?id=233993 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::computeNextDelta): In order to avoid visual stutter due to integral rounding of the deltas we dispatch in the momentum phase, switch to a table of deltas instead of interpolating along the offset curve during the tail end of the animation (when the rounding makes up a large proportion of each delta). (WebKit::MomentumEventDispatcher::equalizeTailGaps): Sort the deltas up until the first zero to ensure a lack of unexpected perceptual acceleration, and then inject skipped frames in order to ensure that frames that have effective scroll movement (non-zero deltas) are always spaced equally-or-further apart than earlier ones, but never closer together (which, again, would be percieved as acceleration). (WebKit::MomentumEventDispatcher::handleWheelEvent): (WebKit::MomentumEventDispatcher::pushLogEntry): (WebKit::MomentumEventDispatcher::flushLog): Lastly, adjust some logging to make it easier to tell which row in the output corresponds to an event delta or generated delta, so it's easier to find skipped frames. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286671 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286733 => 286734) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:29 UTC (rev 286733) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:34 UTC (rev 286734) @@ -1,5 +1,76 @@ 2021-12-08 Alan Coon +Cherry-pick r286671. rdar://problem/85928816 + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +deltas instead of interpolating along the offset curve during the +tail end of the animation (when the rounding makes up a large +proportion of each delta). + +(WebKit::MomentumEventDispatcher::equalizeTailGaps): +Sort the deltas up until the first zero to ensure a lack of unexpected +perceptual acceleration, and then inject skipped frames in order to +ensure that frames that have effective scroll movement (non-zero deltas) +are always spaced equally-or-further apart than earlier ones, but +never closer together (which, again, would be percieved as acceleration). + +(WebKit::MomentumEventDispatcher::handleWheelEvent): +(WebKit::MomentumEventDispatcher::pushLogEntry): +(WebKit::MomentumEventDispatcher::flushLog): +Lastly, adjust some logging to make it easier to tell which row in +the output corresponds to an event delta or generated delta, so it's +easier to find skipped frames. +* WebProcess/WebPage/MomentumEventDispatcher.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286671 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-08 Tim Horton + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +
[webkit-changes] [286732] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286732] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286732 Author alanc...@apple.com Date 2021-12-08 13:26:26 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286566. rdar://problem/85928816 Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled https://bugs.webkit.org/show_bug.cgi?id=233894 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): Only flip the deltas if the trackpad is configured to use "natural" scrolling (in which "directionInvertedFromDevice" is true). (WebKit::MomentumEventDispatcher::computeNextDelta): Fix initial queue state logging to log both axes before setting the "did log" bit. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286566 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286731 => 286732) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:23 UTC (rev 286731) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:26 UTC (rev 286732) @@ -1,5 +1,42 @@ 2021-12-06 Alan Coon +Cherry-pick r286566. rdar://problem/85928816 + +Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled +https://bugs.webkit.org/show_bug.cgi?id=233894 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +Only flip the deltas if the trackpad is configured to use "natural" +scrolling (in which "directionInvertedFromDevice" is true). + +(WebKit::MomentumEventDispatcher::computeNextDelta): +Fix initial queue state logging to log both axes before setting the "did log" bit. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286566 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-06 Tim Horton + +Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled +https://bugs.webkit.org/show_bug.cgi?id=233894 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +Only flip the deltas if the trackpad is configured to use "natural" +scrolling (in which "directionInvertedFromDevice" is true). + +(WebKit::MomentumEventDispatcher::computeNextDelta): +Fix initial queue state logging to log both axes before setting the "did log" bit. + +2021-12-06 Alan Coon + Cherry-pick r286537. rdar://problem/85928816 Add trace points for generated momentum events Modified: branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286731 => 286732) --- branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 21:26:23 UTC (rev 286731) +++ branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 21:26:26 UTC (rev 286732) @@ -306,7 +306,10 @@ m_currentGesture.currentOffset += delta; -return -delta; +if (m_currentGesture.initiatingEvent->directionInvertedFromDevice()) +delta.scale(-1); + +return delta; } void MomentumEventDispatcher::displayWasRefreshed(WebCore::PlatformDisplayID displayID, const WebCore::DisplayUpdate&) @@ -478,10 +481,8 @@ float averageDelta = totalDelta / count; #if ENABLE(MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING) -if (!m_currentGesture.didLogInitialQueueState) { +if (!m_currentGesture.didLogInitialQueueState) RELEASE_LOG(ScrollAnimations, "MomentumEventDispatcher initial historical deltas: average delta %f, average time %fms, event count %d", averageDelta, averageFrameIntervalMS, count); -m_currentGesture.didLogInitialQueueState = true; -} #endif constexpr float velocityGainA = fromFixedPoint(2.f); @@ -502,6 +503,10 @@ accelerateAxis(m_deltaHistoryY, quantizedUnacceleratedDelta.height()) ); +#if ENABLE(MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING) +m_currentGesture.didLogInitialQueueState = true; +#endif + return { unacceleratedDelta, acceleratedDelta }; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286731] branches/safari-612.4.2.1-branch
Title: [286731] branches/safari-612.4.2.1-branch Revision 286731 Author alanc...@apple.com Date 2021-12-08 13:26:23 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286537. rdar://problem/85928816 Add trace points for generated momentum events https://bugs.webkit.org/show_bug.cgi?id=233857 Reviewed by Tim Horton. Source/WebKit: Add start/end points for synthetic momentum, and a trace point for each generated event. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): (WebKit::MomentumEventDispatcher::didStartMomentumPhase): (WebKit::MomentumEventDispatcher::didEndMomentumPhase): Source/WTF: * wtf/SystemTracing.h: Tools: Add start/end points for synthetic momentum, and a trace point for each generated event. * Tracing/SystemTracePoints.plist: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286537 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog branches/safari-612.4.2.1-branch/Source/WTF/wtf/SystemTracing.h branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612.4.2.1-branch/Tools/ChangeLog branches/safari-612.4.2.1-branch/Tools/Tracing/SystemTracePoints.plist Diff Modified: branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog (286730 => 286731) --- branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog 2021-12-08 21:26:20 UTC (rev 286730) +++ branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog 2021-12-08 21:26:23 UTC (rev 286731) @@ -1,3 +1,43 @@ +2021-12-06 Alan Coon + +Cherry-pick r286537. rdar://problem/85928816 + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +Source/WebKit: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): +(WebKit::MomentumEventDispatcher::didStartMomentumPhase): +(WebKit::MomentumEventDispatcher::didEndMomentumPhase): + +Source/WTF: + +* wtf/SystemTracing.h: + +Tools: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* Tracing/SystemTracePoints.plist: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286537 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-05 Simon Fraser + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +* wtf/SystemTracing.h: + 2021-12-03 Alan Coon Cherry-pick r286504. rdar://problem/85928816 Modified: branches/safari-612.4.2.1-branch/Source/WTF/wtf/SystemTracing.h (286730 => 286731) --- branches/safari-612.4.2.1-branch/Source/WTF/wtf/SystemTracing.h 2021-12-08 21:26:20 UTC (rev 286730) +++ branches/safari-612.4.2.1-branch/Source/WTF/wtf/SystemTracing.h 2021-12-08 21:26:23 UTC (rev 286731) @@ -127,6 +127,9 @@ RenderServerSnapshotEnd, TakeSnapshotStart, TakeSnapshotEnd, +SyntheticMomentumStart, +SyntheticMomentumEnd, +SyntheticMomentumEvent, UIProcessRange = 14000, CommitLayerTreeStart, Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286730 => 286731) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:20 UTC (rev 286730) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:23 UTC (rev 286731) @@ -1,3 +1,48 @@ +2021-12-06 Alan Coon + +Cherry-pick r286537. rdar://problem/85928816 + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +Source/WebKit: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): +(WebKit::MomentumEventDispatcher::didStartMomentumPhase): +(WebKit::MomentumEventDispatcher::didEndMomentumPhase): + +Source/WTF: + +* wtf/SystemTracing.h: + +Tools: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* Tracing/SystemTracePoints.plist: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286537 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-05 Simon Fraser + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +Add start/end points for
[webkit-changes] [286735] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286735] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286735 Author alanc...@apple.com Date 2021-12-08 13:26:37 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286574. rdar://problem/86224832 Regression(r286505) imported/w3c/web-platform-tests/html/cross-origin-opener-policy/_javascript_-url.https.html is a flaky crash https://bugs.webkit.org/show_bug.cgi?id=233874 Reviewed by Darin Adler. r286505 fixed ProvisionalPageProxy so that ProvisionalPageProxy::m_provisionalLoadURL gets properly initialized when the ProvisionalPageProxy gets constructed *after* the provisional load has already started (COOP proces-swap case). One side effect of this though is that ProvisionalPageProxy::cancel() no longer returns early and will try to notify the client that the provisional load failed, dereferencing m_mainFrame in doing so. In the event where the main frame has not yet been created in the new provisional process, this would do a null-dereference of m_mainFrame. To address the issue, we now early return in ProvisionalPageProxy::cancel() if m_isProcessSwappingOnNavigationResponse is true (i.e. The ProvisionalPageProxy was created after the provisional load had started). In such situations, we don't want to ProvisionalPageProxy to be the one notifying the client of the provisional load failure anyway. The reason is that there is still a provisional load going on in the committed process/page. No new tests, covered by existing test that is flakily crashing. * UIProcess/ProvisionalPageProxy.cpp: (WebKit::ProvisionalPageProxy::cancel): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286574 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286734 => 286735) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:34 UTC (rev 286734) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:37 UTC (rev 286735) @@ -1,5 +1,56 @@ 2021-12-08 Alan Coon +Cherry-pick r286574. rdar://problem/86224832 + +Regression(r286505) imported/w3c/web-platform-tests/html/cross-origin-opener-policy/_javascript_-url.https.html is a flaky crash +https://bugs.webkit.org/show_bug.cgi?id=233874 + +Reviewed by Darin Adler. + +r286505 fixed ProvisionalPageProxy so that ProvisionalPageProxy::m_provisionalLoadURL gets properly initialized when the +ProvisionalPageProxy gets constructed *after* the provisional load has already started (COOP proces-swap case). One side +effect of this though is that ProvisionalPageProxy::cancel() no longer returns early and will try to notify the client +that the provisional load failed, dereferencing m_mainFrame in doing so. In the event where the main frame has not yet +been created in the new provisional process, this would do a null-dereference of m_mainFrame. + +To address the issue, we now early return in ProvisionalPageProxy::cancel() if m_isProcessSwappingOnNavigationResponse +is true (i.e. The ProvisionalPageProxy was created after the provisional load had started). In such situations, we +don't want to ProvisionalPageProxy to be the one notifying the client of the provisional load failure anyway. The reason +is that there is still a provisional load going on in the committed process/page. + +No new tests, covered by existing test that is flakily crashing. + +* UIProcess/ProvisionalPageProxy.cpp: +(WebKit::ProvisionalPageProxy::cancel): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286574 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-06 Chris Dumez + +Regression(r286505) imported/w3c/web-platform-tests/html/cross-origin-opener-policy/_javascript_-url.https.html is a flaky crash +https://bugs.webkit.org/show_bug.cgi?id=233874 + +Reviewed by Darin Adler. + +r286505 fixed ProvisionalPageProxy so that ProvisionalPageProxy::m_provisionalLoadURL gets properly initialized when the +ProvisionalPageProxy gets constructed *after* the provisional load has already started (COOP proces-swap case). One side +effect of this though is that ProvisionalPageProxy::cancel() no longer returns early and will try to notify the client +that the provisional load failed, dereferencing m_mainFrame in doing so. In the event where the main frame has not yet +been created in the new provisional process, this would do a null-dereference of m_mainFrame. + +To address the issue, we now early return in ProvisionalPageProxy::cancel() if m_isProcessSwappingOnNavigationResponse +is true (i.e. The ProvisionalPageProxy was created
[webkit-changes] [286728] branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/ MediaFormatReader/MediaFormatReader.cpp
Title: [286728] branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Revision 286728 Author alanc...@apple.com Date 2021-12-08 13:26:15 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 error: member access into incomplete type 'Webcore::SharedBuffer' Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp (286727 => 286728) --- branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 21:26:12 UTC (rev 286727) +++ branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 21:26:15 UTC (rev 286728) @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286733] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286733] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286733 Author alanc...@apple.com Date 2021-12-08 13:26:29 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286631. rdar://problem/85928816 [Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays https://bugs.webkit.org/show_bug.cgi?id=233948 rdar://86110813 Reviewed by Tim Horton. This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy needs to unregister for full speed updates using the old displayID, and register using the new one. Longer term, it would be better if "full speed updates" was a per-observer concept, but that would mean registering an observer while wheel events are being received, which needs a bit more thought. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::windowScreenDidChange): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286631 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286732 => 286733) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:26 UTC (rev 286732) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:29 UTC (rev 286733) @@ -1,3 +1,46 @@ +2021-12-08 Alan Coon + +Cherry-pick r286631. rdar://problem/85928816 + +[Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays +https://bugs.webkit.org/show_bug.cgi?id=233948 +rdar://86110813 + +Reviewed by Tim Horton. + +This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy +needs to unregister for full speed updates using the old displayID, and register +using the new one. + +Longer term, it would be better if "full speed updates" was a per-observer concept, +but that would mean registering an observer while wheel events are being received, +which needs a bit more thought. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::windowScreenDidChange): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286631 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-07 Simon Fraser + +[Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays +https://bugs.webkit.org/show_bug.cgi?id=233948 +rdar://86110813 + +Reviewed by Tim Horton. + +This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy +needs to unregister for full speed updates using the old displayID, and register +using the new one. + +Longer term, it would be better if "full speed updates" was a per-observer concept, +but that would mean registering an observer while wheel events are being received, +which needs a bit more thought. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::windowScreenDidChange): + 2021-12-06 Alan Coon Cherry-pick r286566. rdar://problem/85928816 Modified: branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (286732 => 286733) --- branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 21:26:26 UTC (rev 286732) +++ branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 21:26:29 UTC (rev 286733) @@ -4002,6 +4002,13 @@ void WebPageProxy::windowScreenDidChange(PlatformDisplayID displayID, std::optional nominalFramesPerSecond) { +#if HAVE(CVDISPLAYLINK) +if (hasRunningProcess() && m_displayID && m_registeredForFullSpeedUpdates) +process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, false); + +m_registeredForFullSpeedUpdates = false; +#endif + m_displayID = displayID; if (!hasRunningProcess()) @@ -4009,6 +4016,9 @@ send(Messages::EventDispatcher::PageScreenDidChange(m_webPageID, displayID)); send(Messages::WebPage::WindowScreenDidChange(displayID, nominalFramesPerSecond)); +#if HAVE(CVDISPLAYLINK) +updateDisplayLinkFrequency(); +#endif } float WebPageProxy::deviceScaleFactor() const ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286727] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286727] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286727 Author alanc...@apple.com Date 2021-12-08 13:26:12 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286512. rdar://problem/85928816 Add more logging for MomentumEventDispatcher https://bugs.webkit.org/show_bug.cgi?id=233811 Reviewed by Simon Fraser. Add a temporary event log to MomentumEventDispatcher, to debug delta/offset/curve issues. * WebProcess/WebPage/EventDispatcher.h: (WebKit::EventDispatcher::queue): * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::handleWheelEvent): Accumulate event deltas. Also accumulate event deltas for the fingers-down phase in the "generated" offset. Store the phase and momentum phase smooshed into a single field. (WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): Accumulate generated deltas. (WebKit::MomentumEventDispatcher::didEndMomentumPhase): Attempt to dump the log 1 second after each momentum phase. We'll skip it if another scroll has started since. (WebKit::MomentumEventDispatcher::setScrollingAccelerationCurve): (WebKit::MomentumEventDispatcher::startDisplayLink): (WebKit::MomentumEventDispatcher::stopDisplayLink): (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::computeNextDelta): Adopt more MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING. Error logging we leave outside of this, because that we'll keep around. (WebKit::MomentumEventDispatcher::pushLogEntry): (WebKit::MomentumEventDispatcher::flushLog): Dump the event log in an easy-to-copy-into-a-CSV format. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286512 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.h branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286726 => 286727) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:09 UTC (rev 286726) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:12 UTC (rev 286727) @@ -1,5 +1,88 @@ 2021-12-03 Alan Coon +Cherry-pick r286512. rdar://problem/85928816 + +Add more logging for MomentumEventDispatcher +https://bugs.webkit.org/show_bug.cgi?id=233811 + +Reviewed by Simon Fraser. + +Add a temporary event log to MomentumEventDispatcher, to debug delta/offset/curve issues. + +* WebProcess/WebPage/EventDispatcher.h: +(WebKit::EventDispatcher::queue): +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::handleWheelEvent): +Accumulate event deltas. Also accumulate event deltas for the +fingers-down phase in the "generated" offset. Store the phase and +momentum phase smooshed into a single field. + +(WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): +Accumulate generated deltas. + +(WebKit::MomentumEventDispatcher::didEndMomentumPhase): +Attempt to dump the log 1 second after each momentum phase. We'll skip +it if another scroll has started since. + +(WebKit::MomentumEventDispatcher::setScrollingAccelerationCurve): +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::stopDisplayLink): +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +Adopt more MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING. Error logging +we leave outside of this, because that we'll keep around. + +(WebKit::MomentumEventDispatcher::pushLogEntry): +(WebKit::MomentumEventDispatcher::flushLog): +Dump the event log in an easy-to-copy-into-a-CSV format. + +* WebProcess/WebPage/MomentumEventDispatcher.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286512 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-03 Tim Horton + +Add more logging for MomentumEventDispatcher +https://bugs.webkit.org/show_bug.cgi?id=233811 + +Reviewed by Simon Fraser. + +Add a temporary event log to MomentumEventDispatcher, to debug delta/offset/curve issues. + +* WebProcess/WebPage/EventDispatcher.h: +(WebKit::EventDispatcher::queue): +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +
[webkit-changes] [286724] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286724] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286724 Author alanc...@apple.com Date 2021-12-08 13:26:01 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286483. rdar://problem/85928816 MomentumEventDispatcher curve sometimes doesn't match the system curve https://bugs.webkit.org/show_bug.cgi?id=233801 Reviewed by Simon Fraser. Three small changes to get us closer to the system curve: 1) Fetch the momentum event dispatch interval from the system, and use it to scale the momentum start event's delta (which we use as our initial velocity) into the "ideal" curve's frame rate (which is always 60fps regardless). 2) Back-date the animation start time to the fingers-down phase end event, so that the momentum start phase has a delta. This seems to match what the system does. 3) Switch to MonotonicTime for the animation time, since it doesn't need to be in the same timebase as events (which are oddly in WallTime), and certainly should be monotonic. * Shared/ScrollingAccelerationCurve.cpp: (WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): (WebKit::ScrollingAccelerationCurve::interpolate): (WebKit::ScrollingAccelerationCurve::encode const): (WebKit::ScrollingAccelerationCurve::decode): (WebKit::operator<<): * Shared/ScrollingAccelerationCurve.h: (WebKit::ScrollingAccelerationCurve::frameRate): (WebKit::ScrollingAccelerationCurve::operator== const): * Shared/mac/ScrollingAccelerationCurveMac.mm: (WebKit::fromIOHIDCurve): (WebKit::fromIOHIDCurveArrayWithAcceleration): (WebKit::fromIOHIDDevice): Fetch and propagate the dispatch frame rate. This isn't *really* a ScrollingAccelerationCurve property, but neither is `resolution`; this is just currently the only place we look up HID properties and push them to the Web Content process; some re-architecture is warranted here in the future. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::handleWheelEvent): Keep track of the last fingers-down phase ended event timestamp. (WebKit::MomentumEventDispatcher::didStartMomentumPhase): Backdate the start time so that the first event has the appropriate delta. Divide out the dispatch frame rate so that the initial velocity is as if the curve were running at 60fps (since we *will* run it at 60fps and interpolate). (WebKit::MomentumEventDispatcher::didEndMomentumPhase): (WebKit::MomentumEventDispatcher::consumeDeltaForTime): (WebKit::MomentumEventDispatcher::displayWasRefreshed): Factor the consume-a-delta-from-the-ideal-curve code out from displayWasRefreshed so we can use it in the start phase too. (WebKit::MomentumEventDispatcher::offsetAtTime): (WebKit::MomentumEventDispatcher::computeNextDelta): Rename idealCurveFrameRate->idealCurveFrameInterval for accuracy. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286483 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ScrollingAccelerationCurve.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ScrollingAccelerationCurve.h branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/ScrollingAccelerationCurveMac.mm branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286723 => 286724) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:25:57 UTC (rev 286723) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:26:01 UTC (rev 286724) @@ -1,5 +1,136 @@ 2021-12-03 Russell Epstein +Cherry-pick r286483. rdar://problem/85928816 + +MomentumEventDispatcher curve sometimes doesn't match the system curve +https://bugs.webkit.org/show_bug.cgi?id=233801 + + +Reviewed by Simon Fraser. + +Three small changes to get us closer to the system curve: + +1) Fetch the momentum event dispatch interval from the system, and use +it to scale the momentum start event's delta (which we use as our +initial velocity) into the "ideal" curve's frame rate (which is always +60fps regardless). + +2) Back-date the animation start time to the fingers-down phase end event, +so that the momentum start phase has a delta. This seems to match what +the system does. + +3) Switch to MonotonicTime for the animation time, since it doesn't need +to be in the same timebase as events (which are oddly in WallTime), and +certainly should be monotonic. + +* Shared/ScrollingAccelerationCurve.cpp: +
[webkit-changes] [286725] branches/safari-612.4.2.1-branch/Source
Title: [286725] branches/safari-612.4.2.1-branch/Source Revision 286725 Author alanc...@apple.com Date 2021-12-08 13:26:07 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r285526. rdar://problem/85928816 Add runtime flag for momentum scrolling https://bugs.webkit.org/show_bug.cgi?id=232898 Reviewed by Simon Fraser. * Scripts/Preferences/WebPreferencesInternal.yaml: Add the preference. * page/scrolling/AsyncScrollingCoordinator.cpp: (WebCore::AsyncScrollingCoordinator::setFrameScrollingNodeState): * page/scrolling/ScrollingStateFrameScrollingNode.cpp: (WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode): (WebCore::ScrollingStateFrameScrollingNode::applicableProperties const): (WebCore::ScrollingStateFrameScrollingNode::setMomentumScrollingAnimatorEnabled): * page/scrolling/ScrollingStateFrameScrollingNode.h: * page/scrolling/ScrollingStateNode.h: * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::commitTreeState): * page/scrolling/ScrollingTree.h: (WebCore::ScrollingTree::momentumScrollingAnimatorEnabled const): (WebCore::ScrollingTree::setMomentumScrollingAnimatorEnabled): * page/scrolling/ScrollingTreeScrollingNode.cpp: (WebCore::ScrollingTreeScrollingNode::momentumScrollingAnimatorEnabled const): * page/scrolling/ScrollingTreeScrollingNode.h: * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::momentumScrollingAnimatorEnabled const): * platform/ScrollingEffectsController.h: (WebCore::ScrollingEffectsControllerClient::momentumScrollingAnimatorEnabled const): * Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp: (ArgumentCoder::encode): (ArgumentCoder::decode): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285526 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog branches/safari-612.4.2.1-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.h branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingStateNode.h branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.h branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm branches/safari-612.4.2.1-branch/Source/WebCore/platform/ScrollController.h branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog (286724 => 286725) --- branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog 2021-12-08 21:26:01 UTC (rev 286724) +++ branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog 2021-12-08 21:26:07 UTC (rev 286725) @@ -1,3 +1,55 @@ +2021-12-03 Alan Coon + +Cherry-pick r285526. rdar://problem/85928816 + +Add runtime flag for momentum scrolling +https://bugs.webkit.org/show_bug.cgi?id=232898 + + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesInternal.yaml: +Add the preference. + +* page/scrolling/AsyncScrollingCoordinator.cpp: +(WebCore::AsyncScrollingCoordinator::setFrameScrollingNodeState): +* page/scrolling/ScrollingStateFrameScrollingNode.cpp: +(WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode): +(WebCore::ScrollingStateFrameScrollingNode::applicableProperties const): +(WebCore::ScrollingStateFrameScrollingNode::setMomentumScrollingAnimatorEnabled): +* page/scrolling/ScrollingStateFrameScrollingNode.h: +* page/scrolling/ScrollingStateNode.h: +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::commitTreeState): +* page/scrolling/ScrollingTree.h: +(WebCore::ScrollingTree::momentumScrollingAnimatorEnabled const): +(WebCore::ScrollingTree::setMomentumScrollingAnimatorEnabled): +* page/scrolling/ScrollingTreeScrollingNode.cpp: +(WebCore::ScrollingTreeScrollingNode::momentumScrollingAnimatorEnabled const): +*
[webkit-changes] [286729] branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ WebPreferencesDefaultValues.cpp
Title: [286729] branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp Revision 286729 Author alanc...@apple.com Date 2021-12-08 13:26:17 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 error: use of undeclared identifier 'isInWebProcess'; did you mean 'WebCore::isInWebProcess'? Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp (286728 => 286729) --- branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2021-12-08 21:26:15 UTC (rev 286728) +++ branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2021-12-08 21:26:17 UTC (rev 286729) @@ -324,7 +324,7 @@ static dispatch_once_t onceToken; static bool enabled { false }; dispatch_once(, ^{ -if (isInWebProcess()) +if (WebCore::isInWebProcess()) enabled = WebProcess::singleton().parentProcessHasEntitlement("com.apple.developer.group-session.urlactivity"); else enabled = WTF::processHasEntitlement("com.apple.developer.group-session.urlactivity"); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286723] branches/safari-612.4.2.1-branch/Source
Title: [286723] branches/safari-612.4.2.1-branch/Source Revision 286723 Author alanc...@apple.com Date 2021-12-08 13:25:57 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286481. rdar://problem/85928816 A Safari tab can rarely get stuck in a state where rendering updates stop happening https://bugs.webkit.org/show_bug.cgi?id=233784 rdar://85445072 Reviewed by Chris Dumez. Sometimes a Safari tab can get into a state where rendering updates cease to happen, which manifests as partially broken scrolling, blank tiles revealed when scrolling, and somewhat broken page updates. I was able to sometimes reproduce this by clicking on links in eBay emails from Mail on a system with two displays. From the one time I reproduce with logging, the output indicated that DisplayRefreshMonitor::displayLinkFired() would early return because isPreviousFrameDone() was false. The only way for that to occur, barring memory corruption, is if DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() returned early, which it does if the callback comes twice in a single event loop; this may explain the rarity. So fix DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() call setIsPreviousFrameDone(true) so the next callback can make progress Also add some locking annotations and fix one missing lock, and some release logging. Source/WebCore: * platform/graphics/DisplayRefreshMonitor.cpp: (WebCore::DisplayRefreshMonitor::stop): (WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount): (WebCore::DisplayRefreshMonitor::displayLinkFired): * platform/graphics/DisplayRefreshMonitor.h: (WebCore::DisplayRefreshMonitor::WTF_REQUIRES_LOCK): (WebCore::DisplayRefreshMonitor::WTF_GUARDED_BY_LOCK): (WebCore::DisplayRefreshMonitor::setMaxUnscheduledFireCount): Deleted. (WebCore::DisplayRefreshMonitor::isScheduled const): Deleted. (WebCore::DisplayRefreshMonitor::setIsScheduled): Deleted. (WebCore::DisplayRefreshMonitor::isPreviousFrameDone const): Deleted. (WebCore::DisplayRefreshMonitor::setIsPreviousFrameDone): Deleted. Source/WebKit: * WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp: (WebKit::DisplayRefreshMonitorMac::dispatchDisplayDidRefresh): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286481 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitor.cpp branches/safari-612.4.2.1-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitor.h branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286722 => 286723) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:52 UTC (rev 286722) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:57 UTC (rev 286723) @@ -1,3 +1,87 @@ +2021-12-03 Russell Epstein + +Cherry-pick r286481. rdar://problem/85928816 + +A Safari tab can rarely get stuck in a state where rendering updates stop happening +https://bugs.webkit.org/show_bug.cgi?id=233784 +rdar://85445072 + +Reviewed by Chris Dumez. + +Sometimes a Safari tab can get into a state where rendering updates cease to happen, +which manifests as partially broken scrolling, blank tiles revealed when scrolling, +and somewhat broken page updates. I was able to sometimes reproduce this by clicking +on links in eBay emails from Mail on a system with two displays. + +From the one time I reproduce with logging, the output indicated that DisplayRefreshMonitor::displayLinkFired() +would early return because isPreviousFrameDone() was false. The only way for that to occur, +barring memory corruption, is if DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() returned early, +which it does if the callback comes twice in a single event loop; this may explain the rarity. + +So fix DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() call setIsPreviousFrameDone(true) +so the next callback can make progress + +Also add some locking annotations and fix one missing lock, and some release logging. + +Source/WebCore: + +* platform/graphics/DisplayRefreshMonitor.cpp: +(WebCore::DisplayRefreshMonitor::stop): +(WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount): +(WebCore::DisplayRefreshMonitor::displayLinkFired): +* platform/graphics/DisplayRefreshMonitor.h: +(WebCore::DisplayRefreshMonitor::WTF_REQUIRES_LOCK): +
[webkit-changes] [286726] branches/safari-612.4.2.1-branch/Source/WTF
Title: [286726] branches/safari-612.4.2.1-branch/Source/WTF Revision 286726 Author alanc...@apple.com Date 2021-12-08 13:26:09 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286504. rdar://problem/85928816 Enable Momentum Event Generator by default https://bugs.webkit.org/show_bug.cgi?id=233807 Reviewed by Simon Fraser. * Scripts/Preferences/WebPreferencesInternal.yaml: Turn it on for modern WebKit. Adjust the description slightly. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286504 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog branches/safari-612.4.2.1-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml Diff Modified: branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog (286725 => 286726) --- branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog 2021-12-08 21:26:07 UTC (rev 286725) +++ branches/safari-612.4.2.1-branch/Source/WTF/ChangeLog 2021-12-08 21:26:09 UTC (rev 286726) @@ -1,5 +1,31 @@ 2021-12-03 Alan Coon +Cherry-pick r286504. rdar://problem/85928816 + +Enable Momentum Event Generator by default +https://bugs.webkit.org/show_bug.cgi?id=233807 + + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesInternal.yaml: +Turn it on for modern WebKit. Adjust the description slightly. + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286504 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-03 Tim Horton + +Enable Momentum Event Generator by default +https://bugs.webkit.org/show_bug.cgi?id=233807 + + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesInternal.yaml: +Turn it on for modern WebKit. Adjust the description slightly. + +2021-12-03 Alan Coon + Cherry-pick r285526. rdar://problem/85928816 Add runtime flag for momentum scrolling Modified: branches/safari-612.4.2.1-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml (286725 => 286726) --- branches/safari-612.4.2.1-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-12-08 21:26:07 UTC (rev 286725) +++ branches/safari-612.4.2.1-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-12-08 21:26:09 UTC (rev 286726) @@ -539,7 +539,7 @@ MomentumScrollingAnimatorEnabled: type: bool humanReadableName: "Momentum Scrolling Animator" - humanReadableDescription: "Drive momentum scrolling via an internal animator instead of using momentum events" + humanReadableDescription: "Generate momentum events in WebKit instead of using those delivered by the system" defaultValue: WebKitLegacy: "PLATFORM(MAC)": true @@ -546,7 +546,7 @@ default: false WebKit: "PLATFORM(MAC)": true - default: false + default: true WebCore: "PLATFORM(MAC)": true default: false ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286722] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286722] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286722 Author alanc...@apple.com Date 2021-12-08 13:25:52 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286380. rdar://problem/85928816 Unreviewed build fixes after r286346. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::startDisplayLink): (WebKit::MomentumEventDispatcher::displayWasRefreshed): (WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::offsetAtTime): (WebKit::momentumDecayRate): (WebKit::MomentumEventDispatcher::computeNextDelta): * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286380 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286721 => 286722) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:25:49 UTC (rev 286721) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:25:52 UTC (rev 286722) @@ -1,3 +1,35 @@ +2021-12-03 Russell Epstein + +Cherry-pick r286380. rdar://problem/85928816 + +Unreviewed build fixes after r286346. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::displayWasRefreshed): +(WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::offsetAtTime): +(WebKit::momentumDecayRate): +(WebKit::MomentumEventDispatcher::computeNextDelta): +* WebProcess/WebPage/MomentumEventDispatcher.h: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286380 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Chris Dumez + +Unreviewed build fixes after r286346. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::displayWasRefreshed): +(WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::offsetAtTime): +(WebKit::momentumDecayRate): +(WebKit::MomentumEventDispatcher::computeNextDelta): +* WebProcess/WebPage/MomentumEventDispatcher.h: + 2021-12-01 Alan Coon Cherry-pick r286346. rdar://problem/85928816 Modified: branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286721 => 286722) --- branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 21:25:49 UTC (rev 286721) +++ branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 21:25:52 UTC (rev 286722) @@ -30,8 +30,10 @@ #include "EventDispatcher.h" #include "Logging.h" +#include "WebProcess.h" #include "WebProcessProxyMessages.h" #include +#include namespace WebKit { @@ -221,7 +223,7 @@ } // FIXME: Switch down to lower-than-full-speed frame rates for the tail end of the curve. -WebProcess::singleton().parentProcessConnection()->send(Messages::WebProcessProxy::StartDisplayLink(m_observerID, displayID, FullSpeedFramesPerSecond), 0); +WebProcess::singleton().parentProcessConnection()->send(Messages::WebProcessProxy::StartDisplayLink(m_observerID, displayID, WebCore::FullSpeedFramesPerSecond), 0); RELEASE_LOG(ScrollAnimations, "MomentumEventDispatcher starting display link for display %d", displayID); } @@ -262,9 +264,9 @@ #if !USE(MOMENTUM_EVENT_DISPATCHER_PREMATURE_ROUNDING) // Intentional delta rounding (but at the end!). -FloatSize delta = roundedIntSize(desiredOffset - m_currentGesture.currentOffset); +WebCore::FloatSize delta = roundedIntSize(desiredOffset - m_currentGesture.currentOffset); #else -FloatSize delta = desiredOffset - m_currentGesture.currentOffset; +WebCore::FloatSize delta = desiredOffset - m_currentGesture.currentOffset; #endif dispatchSyntheticMomentumEvent(WebWheelEvent::PhaseChanged, -delta); @@ -272,7 +274,7 @@ m_currentGesture.currentOffset += delta; } -void MomentumEventDispatcher::didReceiveScrollEventWithInterval(FloatSize size, Seconds frameInterval) +void MomentumEventDispatcher::didReceiveScrollEventWithInterval(WebCore::FloatSize size, Seconds frameInterval) {
[webkit-changes] [286719] branches/safari-612.4.2.1-branch/Source/WebCore
Title: [286719] branches/safari-612.4.2.1-branch/Source/WebCore Revision 286719 Author alanc...@apple.com Date 2021-12-08 13:25:44 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286411. rdar://problem/85928816 Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events https://bugs.webkit.org/show_bug.cgi?id=233739 rdar://85946176 Reviewed by Tim Horton. While the scrolling thread is chilling in ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a frame to allow the main thread to handle the commit (for scroll synchronization), wheel events may have been dispatched to the scrolling thread. If we blow the timeout and commit anyway, we need to make sure we've handled these wheel events first, so that the current frame can commit some layer movement. We can achieve this by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel event dispatch from EventDispatcher::internalWheelEvent(). * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::applyLayerPositions): * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286411 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286718 => 286719) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:41 UTC (rev 286718) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:44 UTC (rev 286719) @@ -1,3 +1,53 @@ +2021-12-02 Russell Epstein + +Cherry-pick r286411. rdar://problem/85928816 + +Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events +https://bugs.webkit.org/show_bug.cgi?id=233739 +rdar://85946176 + +Reviewed by Tim Horton. + +While the scrolling thread is chilling in +ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a +frame to allow the main thread to handle the commit (for scroll synchronization), wheel +events may have been dispatched to the scrolling thread. + +If we blow the timeout and commit anyway, we need to make sure we've handled these wheel +events first, so that the current frame can commit some layer movement. We can achieve this +by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel +event dispatch from EventDispatcher::internalWheelEvent(). + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::applyLayerPositions): +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286411 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Simon Fraser + +Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events +https://bugs.webkit.org/show_bug.cgi?id=233739 +rdar://85946176 + +Reviewed by Tim Horton. + +While the scrolling thread is chilling in +ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a +frame to allow the main thread to handle the commit (for scroll synchronization), wheel +events may have been dispatched to the scrolling thread. + +If we blow the timeout and commit anyway, we need to make sure we've handled these wheel +events first, so that the current frame can commit some layer movement. We can achieve this +by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel +event dispatch from EventDispatcher::internalWheelEvent(). + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::applyLayerPositions): +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): + 2021-12-01 Alan Coon Cherry-pick r286352. rdar://problem/85928816 Modified: branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp (286718 => 286719) --- branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp 2021-12-08 21:25:41 UTC (rev 286718) +++ branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp 2021-12-08 21:25:44 UTC (rev 286719) @@ -416,7 +416,6 @@ void ScrollingTree::applyLayerPositions()
[webkit-changes] [286714] branches/safari-612.4.2.1-branch/Source/WebKit
Title: [286714] branches/safari-612.4.2.1-branch/Source/WebKit Revision 286714 Author alanc...@apple.com Date 2021-12-08 13:25:21 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286277. rdar://problem/85928816 Fix the build * Shared/ios/WebIOSEventFactory.mm: (WebIOSEventFactory::createWebWheelEvent): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286277 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286713 => 286714) --- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:25:18 UTC (rev 286713) +++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog 2021-12-08 21:25:21 UTC (rev 286714) @@ -1,5 +1,24 @@ 2021-12-01 Alan Coon +Cherry-pick r286277. rdar://problem/85928816 + +Fix the build + +* Shared/ios/WebIOSEventFactory.mm: +(WebIOSEventFactory::createWebWheelEvent): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286277 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-29 Tim Horton + +Fix the build + +* Shared/ios/WebIOSEventFactory.mm: +(WebIOSEventFactory::createWebWheelEvent): + +2021-12-01 Alan Coon + Cherry-pick r286270. rdar://problem/85928816 Plumb raw platform scrolling deltas along in wheel events Modified: branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm (286713 => 286714) --- branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm 2021-12-08 21:25:18 UTC (rev 286713) +++ branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm 2021-12-08 21:25:21 UTC (rev 286714) @@ -177,7 +177,8 @@ delta, { }, timestamp, -timestamp +timestamp, +{ } }; } #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286730] branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/ MediaFormatReader/MediaFormatReader.cpp
Title: [286730] branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Revision 286730 Author alanc...@apple.com Date 2021-12-08 13:26:20 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 Modified Paths branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp (286729 => 286730) --- branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 21:26:17 UTC (rev 286729) +++ branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 21:26:20 UTC (rev 286730) @@ -42,6 +42,7 @@ #include #include +#include #include WTF_DECLARE_CF_TYPE_TRAIT(MTPluginFormatReader); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286718] branches/safari-612.4.2.1-branch/Source/WebCore
Title: [286718] branches/safari-612.4.2.1-branch/Source/WebCore Revision 286718 Author alanc...@apple.com Date 2021-12-08 13:25:41 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286352. rdar://problem/85928816 Custom application of r286352 to introduce frameDuration() for a future patch. Pass the timestamp for scrolling thread animations through all the serviceScrollAnimation() calls https://bugs.webkit.org/show_bug.cgi?id=233678 Reviewed by Tim Horton. Source/WebCore: All scroll animations serviced at the same time should use a common timestamp, and avoid multiple calls to MonotonicTime::now() by passing the time down through from ThreadedScrollingTree::displayDidRefreshOnScrollingThread(). Also minor refactoring in ThreadedScrollingTree to prepare for a future patch. * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::nominalFramesPerSecond): * page/scrolling/ScrollingTreeScrollingNode.h: * page/scrolling/ScrollingTreeScrollingNodeDelegate.h: * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::frameDuration): (WebCore::ThreadedScrollingTree::maxAllowableRenderingUpdateDurationForSynchronization): (WebCore::ThreadedScrollingTree::serviceScrollAnimations): (WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): * page/scrolling/ThreadedScrollingTree.h: * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h: * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: (WebCore::ScrollingTreeFrameScrollingNodeMac::serviceScrollAnimation): * page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.h: * page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.mm: (WebCore::ScrollingTreeOverflowScrollingNodeMac::serviceScrollAnimation): * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp: (WebCore::ScrollingTreeFrameScrollingNodeNicosia::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h: * page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp: (WebCore::ScrollingTreeOverflowScrollingNodeNicosia::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h: * page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.cpp: (WebCore::ScrollingTreeScrollingNodeDelegateNicosia::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.h: Source/WebKit: * UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286352 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286717 => 286718) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:37 UTC (rev 286717) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:41 UTC (rev 286718) @@ -1,5 +1,78 @@ 2021-12-01 Alan Coon +Cherry-pick r286352. rdar://problem/85928816 + +Custom application of r286352 to introduce frameDuration() for a future patch. + +Pass the timestamp for scrolling thread animations through all the serviceScrollAnimation() calls +https://bugs.webkit.org/show_bug.cgi?id=233678 + +Reviewed by Tim Horton. + +Source/WebCore: + +All scroll animations serviced at the same time should use a common timestamp, and +avoid multiple calls to MonotonicTime::now() by passing the time down through from +ThreadedScrollingTree::displayDidRefreshOnScrollingThread(). + +Also minor refactoring in ThreadedScrollingTree to prepare for a future patch. + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::nominalFramesPerSecond): +* page/scrolling/ScrollingTreeScrollingNode.h: +* page/scrolling/ScrollingTreeScrollingNodeDelegate.h: +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::frameDuration): +(WebCore::ThreadedScrollingTree::maxAllowableRenderingUpdateDurationForSynchronization): +(WebCore::ThreadedScrollingTree::serviceScrollAnimations): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: +* page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h: +*
[webkit-changes] [286721] branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ ThreadedScrollingTree.cpp
Title: [286721] branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Revision 286721 Author alanc...@apple.com Date 2021-12-08 13:25:49 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed, speculative build fix for r286410. rdar://problem/85928816 Remove reference to serviceScrollAnimations. Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp (286720 => 286721) --- branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-08 21:25:47 UTC (rev 286720) +++ branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-08 21:25:49 UTC (rev 286721) @@ -390,7 +390,6 @@ auto now = MonotonicTime::now(); m_lastDisplayDidRefreshTime = now; -serviceScrollAnimations(); if (m_state != SynchronizationState::Idle && canUpdateLayersOnScrollingThread()) applyLayerPositionsInternal(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286717] branches/safari-612.4.2.1-branch/Source
Title: [286717] branches/safari-612.4.2.1-branch/Source Revision 286717 Author alanc...@apple.com Date 2021-12-08 13:25:37 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286346. rdar://problem/85928816 Add a momentum event synthesizer https://bugs.webkit.org/show_bug.cgi?id=233653 Reviewed by Simon Fraser. Source/WebCore/PAL: * pal/spi/mac/IOKitSPIMac.h: Add some SPI. Source/WebKit: * Platform/Logging.h: Add ScrollAnimations log channel to WebKit (it already exists in WebCore). * Shared/ScrollingAccelerationCurve.cpp: Added. (WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): (WebKit::ScrollingAccelerationCurve::interpolate): (WebKit::ScrollingAccelerationCurve::computeIntermediateValuesIfNeeded): (WebKit::ScrollingAccelerationCurve::evaluateQuartic): (WebKit::ScrollingAccelerationCurve::accelerationFactor): (WebKit::ScrollingAccelerationCurve::encode const): (WebKit::ScrollingAccelerationCurve::decode): (WebKit::operator<<): (WebKit::ScrollingAccelerationCurve::fromNativeWheelEvent): * Shared/ScrollingAccelerationCurve.h: Added. (WebKit::ScrollingAccelerationCurve::operator== const): (WebKit::ScrollingAccelerationCurve::operator!= const): Add a class that represents a quartic scrolling acceleration curve with a trailing linear tangent region, and allows interpolation between curves and evaluation of the curve at a point. * Shared/mac/ScrollingAccelerationCurveMac.mm: Added. (WebKit::fromFixedPoint): (WebKit::readFixedPointParameter): (WebKit::fromIOHIDCurve): (WebKit::fromIOHIDCurveArrayWithAcceleration): (WebKit::ScrollingAccelerationCurve::fromNativeWheelEvent): Given a NativeWebWheelEvent, extract its underlying platform event and fetch the ScrollingAccelerationCurve for the originating device. * Sources.txt: * SourcesCocoa.txt: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::handleWheelEvent): Fetch the current ScrollingAccelerationCurve on each momentum begin event, if the feature is enabled. (WebKit::WebPageProxy::sendWheelEvent): Send the ScrollingAccelerationCurve to EventDispatcher just before we send the momentum begin event along, if it has changed. (WebKit::WebPageProxy::windowScreenDidChange): Keep EventDispatcher apprised of changes to the current screen of the page. (WebKit::WebPageProxy::resetState): * UIProcess/WebPageProxy.h: * WebKit.xcodeproj/project.pbxproj: * WebProcess/WebPage/EventDispatcher.cpp: (WebKit::EventDispatcher::EventDispatcher): (WebKit::EventDispatcher::internalWheelEvent): Factor most of wheelEvent out into internalWheelEvent, so that MomentumEventDispatcher can call internalWheelEvent(), skipping the code in wheelEvent() that forwards the event... to MomentumEventDispatcher. Also, keep track of where the event came from (UI process or MomentumEventDispatcher) and avoid sending didReceiveEvent replies to the UI process for synthetic events that it doesn't know about. (WebKit::EventDispatcher::wheelEvent): Forward wheel events to MomentumEventDispatcher. (WebKit::EventDispatcher::setScrollingAccelerationCurve): Forward scrolling curve changes to MomentumEventDispatcher. (WebKit::EventDispatcher::displayWasRefreshed): Forward display refresh callbacks to MomentumEventDispatcher. (WebKit::EventDispatcher::windowScreenDidChange): Forward page screen changes to MomentumEventDispatcher. * WebProcess/WebPage/EventDispatcher.h: * WebProcess/WebPage/EventDispatcher.messages.in: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::wheelEvent): (WebKit::WebPage::dispatchWheelEventWithoutScrolling): * WebProcess/WebPage/WebPage.h: Don't send didReceiveEvent for synthetic events from the main thread either. * WebProcess/WebPage/MomentumEventDispatcher.cpp: Added. (WebKit::MomentumEventDispatcher::MomentumEventDispatcher): (WebKit::MomentumEventDispatcher::~MomentumEventDispatcher): (WebKit::MomentumEventDispatcher::eventShouldStartSyntheticMomentumPhase const): If we have everything we need (a scrolling curve - which also implies that the setting is enabled - and raw platform deltas), and the event is a momentum begin event, we can use it to start a synthetic momentum phase. (WebKit::MomentumEventDispatcher::handleWheelEvent): Start or stop the momentum phase as appropriate. Record any incoming fingers-down phase events in a rolling event history structure. Block platform-event-driven events from being further handled by WebKit if we are inside a synthetic momentum phase, since we'll be replacing them. (WebKit::appKitScrollMultiplierForEvent): Determine the AppKit scroll muliplier ("accelerated" vs "unaccelerated" deltas in NSEvent parlance) from the event via division.
[webkit-changes] [286712] branches/safari-612.4.2.1-branch/Source
Title: [286712] branches/safari-612.4.2.1-branch/Source Revision 286712 Author alanc...@apple.com Date 2021-12-08 13:25:12 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r285790. rdar://problem/85928816 Attach IOHIDEvent timestamps to wheel events https://bugs.webkit.org/show_bug.cgi?id=233051 Reviewed by Wenson Hsieh. Source/WebCore: On some macOS devices, there can be significant deltas between NSEvent timestamps, and the timestamps on underlying IOHIDEvents (rdar://85309639). This makes momentum velocity computation unpredictable; we can get better results by using IOHIDEvent timestamps. * platform/PlatformWheelEvent.cpp: (WebCore::PlatformWheelEvent::createFromGesture): * platform/PlatformWheelEvent.h: (WebCore::PlatformWheelEvent::ioHIDEventTimestamp const): * platform/mac/PlatformEventFactoryMac.h: * platform/mac/PlatformEventFactoryMac.mm: (WebCore::eventTimeStampSince1970): (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder): (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder): (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder): Source/WebCore/PAL: Expose a few bits of SPI needed. * pal/spi/cg/CoreGraphicsSPI.h: * pal/spi/cocoa/IOKitSPI.h: Source/WebKit: On some macOS devices, there can be significant deltas between NSEvent timestamps, and the timestamps on underlying IOHIDEvents (rdar://85309639). This makes momentum velocity computation unpredictable; we can get better results by using IOHIDEvent timestamps. * Shared/WebEventConversion.cpp: (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): * Shared/WebWheelEvent.cpp: (WebKit::WebWheelEvent::WebWheelEvent): (WebKit::WebWheelEvent::encode const): (WebKit::WebWheelEvent::decode): * Shared/WebWheelEvent.h: (WebKit::WebWheelEvent::ioHIDEventTimestamp const): * Shared/WebWheelEventCoalescer.cpp: (WebKit::WebWheelEventCoalescer::coalesce): * Shared/ios/WebIOSEventFactory.mm: (WebIOSEventFactory::createWebWheelEvent): * Shared/mac/NativeWebGestureEventMac.mm: * Shared/mac/WebEventFactory.mm: (WebKit::WebEventFactory::createWebMouseEvent): (WebKit::WebEventFactory::createWebWheelEvent): (WebKit::WebEventFactory::createWebKeyboardEvent): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285790 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/PAL/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/cg/CoreGraphicsSPI.h branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h branches/safari-612.4.2.1-branch/Source/WebCore/platform/PlatformWheelEvent.cpp branches/safari-612.4.2.1-branch/Source/WebCore/platform/PlatformWheelEvent.h branches/safari-612.4.2.1-branch/Source/WebCore/platform/mac/PlatformEventFactoryMac.h branches/safari-612.4.2.1-branch/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebEventConversion.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebWheelEvent.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebWheelEvent.h branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebWheelEventCoalescer.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/NativeWebGestureEventMac.mm branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/WebEventFactory.mm Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286711 => 286712) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:05 UTC (rev 286711) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:12 UTC (rev 286712) @@ -1,5 +1,89 @@ 2021-12-01 Alan Coon +Cherry-pick r285790. rdar://problem/85928816 + +Attach IOHIDEvent timestamps to wheel events +https://bugs.webkit.org/show_bug.cgi?id=233051 + +Reviewed by Wenson Hsieh. +Source/WebCore: + +On some macOS devices, there can be significant deltas between NSEvent timestamps, +and the timestamps on underlying IOHIDEvents (rdar://85309639). This makes momentum +velocity computation unpredictable; we can get better results by using IOHIDEvent +timestamps. + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::ioHIDEventTimestamp const): +* platform/mac/PlatformEventFactoryMac.h: +* platform/mac/PlatformEventFactoryMac.mm: +(WebCore::eventTimeStampSince1970): +(WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder): +
[webkit-changes] [286711] branches/safari-612.4.2.1-branch/Source/WebCore
Title: [286711] branches/safari-612.4.2.1-branch/Source/WebCore Revision 286711 Author alanc...@apple.com Date 2021-12-08 13:25:05 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r285786. rdar://problem/85928816 Clean up IOKit SPI headers https://bugs.webkit.org/show_bug.cgi?id=233093 Reviewed by Simon Fraser. Source/WebCore: * platform/gamepad/cocoa/GameControllerGamepadProvider.mm: * platform/gamepad/mac/HIDGamepadProvider.h: * platform/gamepad/mac/HIDGamepadProvider.mm: Source/WebCore/PAL: * PAL.xcodeproj/project.pbxproj: * pal/spi/cg/CoreGraphicsSPI.h: * pal/spi/cocoa/IOKitSPI.h: * pal/spi/ios/IOKitSPIIOS.h: Added. * pal/spi/mac/IOKitSPIMac.h: IOKit vends a much different set of public API on iOS vs. macOS, so we have separate SPI headers to reduce the confusion. Unfortunately, the SPI header for iOS was not explicitly named as such, and started being used in some macOS code. For a while, this didn't lead to any trouble because the aforementioned macOS code didn't ALSO have the public SDK headers included, but a future patch from Simon will use IOKitSPI.h in a place where the macOS IOKit public headers are included, and thus we must make the split more explicit. Rename IOKitSPI.h to IOKitSPIIOS.h; make IOKitSPI choose the right one. Add some SPI defintions to IOKitSPIMac.h that were missing (which the dependent code was getting via the iOS header on macOS). git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285786 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/PAL/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/cocoa/IOKitSPI.h branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h branches/safari-612.4.2.1-branch/Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.mm branches/safari-612.4.2.1-branch/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.h branches/safari-612.4.2.1-branch/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.mm Added Paths branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/ios/IOKitSPIIOS.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286710 => 286711) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:19:38 UTC (rev 286710) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:05 UTC (rev 286711) @@ -1,3 +1,53 @@ +2021-12-01 Alan Coon + +Cherry-pick r285786. rdar://problem/85928816 + +Clean up IOKit SPI headers +https://bugs.webkit.org/show_bug.cgi?id=233093 + +Reviewed by Simon Fraser. + +Source/WebCore: + +* platform/gamepad/cocoa/GameControllerGamepadProvider.mm: +* platform/gamepad/mac/HIDGamepadProvider.h: +* platform/gamepad/mac/HIDGamepadProvider.mm: + +Source/WebCore/PAL: + +* PAL.xcodeproj/project.pbxproj: +* pal/spi/cg/CoreGraphicsSPI.h: +* pal/spi/cocoa/IOKitSPI.h: +* pal/spi/ios/IOKitSPIIOS.h: Added. +* pal/spi/mac/IOKitSPIMac.h: +IOKit vends a much different set of public API on iOS vs. macOS, +so we have separate SPI headers to reduce the confusion. + +Unfortunately, the SPI header for iOS was not explicitly named as such, +and started being used in some macOS code. For a while, this didn't lead +to any trouble because the aforementioned macOS code didn't ALSO have +the public SDK headers included, but a future patch from Simon will +use IOKitSPI.h in a place where the macOS IOKit public headers are included, +and thus we must make the split more explicit. + +Rename IOKitSPI.h to IOKitSPIIOS.h; make IOKitSPI choose the right one. +Add some SPI defintions to IOKitSPIMac.h that were missing (which the +dependent code was getting via the iOS header on macOS). + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285786 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-13 Tim Horton + +Clean up IOKit SPI headers +https://bugs.webkit.org/show_bug.cgi?id=233093 + +Reviewed by Simon Fraser. + +* platform/gamepad/cocoa/GameControllerGamepadProvider.mm: +* platform/gamepad/mac/HIDGamepadProvider.h: +* platform/gamepad/mac/HIDGamepadProvider.mm: + 2021-12-02 Alan Coon Revert r286394. rdar://problem/83070565 Modified: branches/safari-612.4.2.1-branch/Source/WebCore/PAL/ChangeLog (286710 => 286711) --- branches/safari-612.4.2.1-branch/Source/WebCore/PAL/ChangeLog 2021-12-08 21:19:38 UTC (rev 286710) +++ branches/safari-612.4.2.1-branch/Source/WebCore/PAL/ChangeLog 2021-12-08 21:25:05 UTC (rev 286711) @@ -1,3 +1,68 @@ +2021-12-01 Alan Coon + +
[webkit-changes] [286715] branches/safari-612.4.2.1-branch/Tools
Title: [286715] branches/safari-612.4.2.1-branch/Tools Revision 286715 Author alanc...@apple.com Date 2021-12-08 13:25:24 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286368. rdar://problem/85928816 REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails https://bugs.webkit.org/show_bug.cgi?id=233689 Reviewed by Simon Fraser. * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver encodes to a particular size (607 bytes). If you look at the resultant plist before r286346, the encoded frameID and resourceLoadID have the same value, and because of NSKeyedArchiver deduplication, share the same object. If you look at the resultant plist *after* r286346, the encoded frameID is one larger than the resourceLoadID, thus cannot be deduplicated, and end up encoding as separate objects. This results in the encoded size increasing to 612 bytes. The reason that the encoded frameID is now one value larger is that ObjectIdentifier uses a global identifier pool, and r286346 creates one more ObjectIdentifier during EventHandler construction, destroying our entirely coincidental ID overlap, and causing the aforementioned encoded size change. Remove this assertion from the test, since it is very aggressive and seems unnecessary. We could instead just rebaseline the test, but it seems insufficiently important to burden some future developer with a repeat of this evening of exploration and discovery. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286368 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Tools/ChangeLog branches/safari-612.4.2.1-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm Diff Modified: branches/safari-612.4.2.1-branch/Tools/ChangeLog (286714 => 286715) --- branches/safari-612.4.2.1-branch/Tools/ChangeLog 2021-12-08 21:25:21 UTC (rev 286714) +++ branches/safari-612.4.2.1-branch/Tools/ChangeLog 2021-12-08 21:25:24 UTC (rev 286715) @@ -1,3 +1,70 @@ +2021-12-01 Alan Coon + +Cherry-pick r286368. rdar://problem/85928816 + +REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails +https://bugs.webkit.org/show_bug.cgi?id=233689 + +Reviewed by Simon Fraser. + +* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: +This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver +encodes to a particular size (607 bytes). + +If you look at the resultant plist before r286346, the encoded frameID +and resourceLoadID have the same value, and because of NSKeyedArchiver +deduplication, share the same object. + +If you look at the resultant plist *after* r286346, the encoded frameID +is one larger than the resourceLoadID, thus cannot be deduplicated, and +end up encoding as separate objects. This results in the encoded size +increasing to 612 bytes. + +The reason that the encoded frameID is now one value larger is that +ObjectIdentifier uses a global identifier pool, and r286346 creates +one more ObjectIdentifier during EventHandler construction, destroying +our entirely coincidental ID overlap, and causing the aforementioned +encoded size change. + +Remove this assertion from the test, since it is very aggressive and +seems unnecessary. We could instead just rebaseline the test, but it +seems insufficiently important to burden some future developer with +a repeat of this evening of exploration and discovery. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286368 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Tim Horton + +REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails +https://bugs.webkit.org/show_bug.cgi?id=233689 + +Reviewed by Simon Fraser. + +* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: +This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver +encodes to a particular size (607 bytes). + +If you look at the resultant plist before r286346, the encoded frameID +and resourceLoadID have the same value, and because of NSKeyedArchiver +deduplication, share the same object. + +If you look at the resultant plist *after* r286346, the encoded frameID +is one larger than the resourceLoadID, thus cannot be deduplicated, and +end up encoding as separate objects. This results in the encoded size +increasing to 612 bytes. + +The reason that the encoded frameID is now one value larger is that +ObjectIdentifier uses a global identifier pool, and r286346 creates +one more ObjectIdentifier during EventHandler construction, destroying +our entirely
[webkit-changes] [286713] branches/safari-612.4.2.1-branch/Source
Title: [286713] branches/safari-612.4.2.1-branch/Source Revision 286713 Author alanc...@apple.com Date 2021-12-08 13:25:18 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286270. rdar://problem/85928816 Plumb raw platform scrolling deltas along in wheel events https://bugs.webkit.org/show_bug.cgi?id=233583 Reviewed by Simon Fraser. Source/WebCore: * platform/PlatformWheelEvent.cpp: (WebCore::PlatformWheelEvent::createFromGesture): * platform/PlatformWheelEvent.h: (WebCore::PlatformWheelEvent::rawPlatformDelta const): * PAL/pal/spi/mac/IOKitSPIMac.h: Source/WebKit: * Shared/WebEventConversion.cpp: (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): * Shared/WebWheelEvent.cpp: (WebKit::WebWheelEvent::WebWheelEvent): (WebKit::WebWheelEvent::encode const): (WebKit::WebWheelEvent::decode): * Shared/WebWheelEvent.h: (WebKit::WebWheelEvent::rawPlatformDelta const): * Shared/WebWheelEventCoalescer.cpp: (WebKit::WebWheelEventCoalescer::coalesce): * Shared/mac/WebEventFactory.mm: (WebKit::WebEventFactory::createWebWheelEvent): Extract and plumb raw unaccelerated (in the HID sense) deltas in scroll events for use in a future patch. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286270 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h branches/safari-612.4.2.1-branch/Source/WebCore/platform/PlatformWheelEvent.cpp branches/safari-612.4.2.1-branch/Source/WebCore/platform/PlatformWheelEvent.h branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebEventConversion.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebWheelEvent.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebWheelEvent.h branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebWheelEventCoalescer.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/mac/WebEventFactory.mm Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286712 => 286713) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:12 UTC (rev 286712) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:18 UTC (rev 286713) @@ -1,5 +1,55 @@ 2021-12-01 Alan Coon +Cherry-pick r286270. rdar://problem/85928816 + +Plumb raw platform scrolling deltas along in wheel events +https://bugs.webkit.org/show_bug.cgi?id=233583 + +Reviewed by Simon Fraser. + +Source/WebCore: + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::rawPlatformDelta const): +* PAL/pal/spi/mac/IOKitSPIMac.h: + +Source/WebKit: + +* Shared/WebEventConversion.cpp: +(WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): +* Shared/WebWheelEvent.cpp: +(WebKit::WebWheelEvent::WebWheelEvent): +(WebKit::WebWheelEvent::encode const): +(WebKit::WebWheelEvent::decode): +* Shared/WebWheelEvent.h: +(WebKit::WebWheelEvent::rawPlatformDelta const): +* Shared/WebWheelEventCoalescer.cpp: +(WebKit::WebWheelEventCoalescer::coalesce): +* Shared/mac/WebEventFactory.mm: +(WebKit::WebEventFactory::createWebWheelEvent): +Extract and plumb raw unaccelerated (in the HID sense) deltas in scroll +events for use in a future patch. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286270 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-29 Tim Horton + +Plumb raw platform scrolling deltas along in wheel events +https://bugs.webkit.org/show_bug.cgi?id=233583 + +Reviewed by Simon Fraser. + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::rawPlatformDelta const): +* PAL/pal/spi/mac/IOKitSPIMac.h: + +2021-12-01 Alan Coon + Cherry-pick r285790. rdar://problem/85928816 Attach IOHIDEvent timestamps to wheel events Modified: branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h (286712 => 286713) --- branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h 2021-12-08 21:25:12 UTC (rev 286712) +++ branches/safari-612.4.2.1-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h 2021-12-08 21:25:18 UTC (rev 286713) @@ -83,7 +83,22 @@ }; typedef uint32_t IOHIDEventType; +typedef uint32_t IOHIDEventField; + +#ifdef __LP64__ +typedef double IOHIDFloat; +#else +typedef float IOHIDFloat; +#endif + +#define IOHIDEventFieldBase(type) (type << 16) + +#define kIOHIDEventFieldScrollBase
[webkit-changes] [286716] branches/safari-612.4.2.1-branch/Source
Title: [286716] branches/safari-612.4.2.1-branch/Source Revision 286716 Author alanc...@apple.com Date 2021-12-08 13:25:30 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r283353. rdar://problem/85928816 Simplify some scrolling-related code in WebKit with use of RectEdges https://bugs.webkit.org/show_bug.cgi?id=231037 Reviewed by Tim Horton. Source/WebCore: Export edgePinnedState(). * platform/ScrollableArea.h: Source/WebKit: Use RectEdges in code that tracks rubber banding state, and edge pinned state. * Shared/WebCoreArgumentCoders.cpp: (IPC::ArgumentCoder>::encode): (IPC::ArgumentCoder>::decode): * Shared/WebCoreArgumentCoders.h: * UIProcess/API/C/WKPage.cpp: (WKPageIsPinnedToLeftSide): (WKPageIsPinnedToRightSide): (WKPageIsPinnedToTopSide): (WKPageIsPinnedToBottomSide): (WKPageRubberBandsAtLeft): (WKPageRubberBandsAtRight): (WKPageRubberBandsAtTop): (WKPageRubberBandsAtBottom): * UIProcess/Cocoa/WebViewImpl.mm: (WebKit::toWKRectEdge): (WebKit::toRectEdges): (WebKit::WebViewImpl::pinnedState): (WebKit::WebViewImpl::rubberBandingEnabled): (WebKit::WebViewImpl::setRubberBandingEnabled): * UIProcess/ViewGestureController.cpp: (WebKit::ViewGestureController::PendingSwipeTracker::scrollEventCanBecomeSwipe): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::sendWheelEvent): (WebKit::WebPageProxy::setRubberBandsAtLeft): (WebKit::WebPageProxy::setRubberBandsAtRight): (WebKit::WebPageProxy::setRubberBandsAtTop): (WebKit::WebPageProxy::setRubberBandsAtBottom): (WebKit::WebPageProxy::didCommitLoadForFrame): (WebKit::WebPageProxy::resetState): (WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame): (WebKit::WebPageProxy::rubberBandsAtLeft const): Deleted. (WebKit::WebPageProxy::rubberBandsAtRight const): Deleted. (WebKit::WebPageProxy::rubberBandsAtTop const): Deleted. (WebKit::WebPageProxy::rubberBandsAtBottom const): Deleted. * UIProcess/WebPageProxy.h: * UIProcess/WebPageProxy.messages.in: * WebProcess/WebPage/EventDispatcher.cpp: (WebKit::EventDispatcher::wheelEvent): * WebProcess/WebPage/EventDispatcher.h: * WebProcess/WebPage/EventDispatcher.messages.in: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updateMainFrameScrollOffsetPinning): * WebProcess/WebPage/WebPage.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283353 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/platform/ScrollableArea.h branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebCoreArgumentCoders.cpp branches/safari-612.4.2.1-branch/Source/WebKit/Shared/WebCoreArgumentCoders.h branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/API/C/WKPage.cpp branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/ViewGestureController.cpp branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.h branches/safari-612.4.2.1-branch/Source/WebKit/UIProcess/WebPageProxy.messages.in branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.h branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.messages.in branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/WebPage.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286715 => 286716) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:24 UTC (rev 286715) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:30 UTC (rev 286716) @@ -1,5 +1,81 @@ 2021-12-01 Alan Coon +Cherry-pick r283353. rdar://problem/85928816 + +Simplify some scrolling-related code in WebKit with use of RectEdges +https://bugs.webkit.org/show_bug.cgi?id=231037 + +Reviewed by Tim Horton. + +Source/WebCore: + +Export edgePinnedState(). + +* platform/ScrollableArea.h: + +Source/WebKit: + +Use RectEdges in code that tracks rubber banding state, and edge pinned state. + +* Shared/WebCoreArgumentCoders.cpp: +(IPC::ArgumentCoder>::encode): +(IPC::ArgumentCoder>::decode): +* Shared/WebCoreArgumentCoders.h: +* UIProcess/API/C/WKPage.cpp: +(WKPageIsPinnedToLeftSide): +(WKPageIsPinnedToRightSide): +(WKPageIsPinnedToTopSide): +(WKPageIsPinnedToBottomSide): +(WKPageRubberBandsAtLeft): +(WKPageRubberBandsAtRight): +(WKPageRubberBandsAtTop):
[webkit-changes] [286720] branches/safari-612.4.2.1-branch/Source/WebCore
Title: [286720] branches/safari-612.4.2.1-branch/Source/WebCore Revision 286720 Author alanc...@apple.com Date 2021-12-08 13:25:47 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286410. rdar://problem/85928816 Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization https://bugs.webkit.org/show_bug.cgi?id=233738 rdar://85880147 Reviewed by Tim Horton. The scroll synchronization added in r261985 can cause dropped frames while scrolling. This occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is called at the start of a rendering update on the main thread, starts at a time when it will delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the CA commit for that frame on the scrolling thread. The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits on the condition, so that it doesn't exceed the next expected display refresh time. * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): (WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): * page/scrolling/ThreadedScrollingTree.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286410 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.h Diff Modified: branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog (286719 => 286720) --- branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:44 UTC (rev 286719) +++ branches/safari-612.4.2.1-branch/Source/WebCore/ChangeLog 2021-12-08 21:25:47 UTC (rev 286720) @@ -1,5 +1,53 @@ 2021-12-02 Russell Epstein +Cherry-pick r286410. rdar://problem/85928816 + +Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization +https://bugs.webkit.org/show_bug.cgi?id=233738 +rdar://85880147 + +Reviewed by Tim Horton. + +The scroll synchronization added in r261985 can cause dropped frames while scrolling. This +occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is +called at the start of a rendering update on the main thread, starts at a time when it will +delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the +CA commit for that frame on the scrolling thread. + +The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits +on the condition, so that it doesn't exceed the next expected display refresh time. + +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286410 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Simon Fraser + +Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization +https://bugs.webkit.org/show_bug.cgi?id=233738 +rdar://85880147 + +Reviewed by Tim Horton. + +The scroll synchronization added in r261985 can cause dropped frames while scrolling. This +occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is +called at the start of a rendering update on the main thread, starts at a time when it will +delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the +CA commit for that frame on the scrolling thread. + +The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits +on the condition, so that it doesn't exceed the next expected display refresh time. + +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: + +2021-12-02 Russell Epstein + Cherry-pick r286411. rdar://problem/85928816 Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events Modified: branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp (286719 => 286720) --- branches/safari-612.4.2.1-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-08 21:25:44 UTC (rev 286719) +++
[webkit-changes] [286710] branches/safari-613.1.11-branch/Source/WebKit
Title: [286710] branches/safari-613.1.11-branch/Source/WebKit Revision 286710 Author repst...@apple.com Date 2021-12-08 13:19:38 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286671. rdar://problem/86226565 Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps https://bugs.webkit.org/show_bug.cgi?id=233993 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::computeNextDelta): In order to avoid visual stutter due to integral rounding of the deltas we dispatch in the momentum phase, switch to a table of deltas instead of interpolating along the offset curve during the tail end of the animation (when the rounding makes up a large proportion of each delta). (WebKit::MomentumEventDispatcher::equalizeTailGaps): Sort the deltas up until the first zero to ensure a lack of unexpected perceptual acceleration, and then inject skipped frames in order to ensure that frames that have effective scroll movement (non-zero deltas) are always spaced equally-or-further apart than earlier ones, but never closer together (which, again, would be percieved as acceleration). (WebKit::MomentumEventDispatcher::handleWheelEvent): (WebKit::MomentumEventDispatcher::pushLogEntry): (WebKit::MomentumEventDispatcher::flushLog): Lastly, adjust some logging to make it easier to tell which row in the output corresponds to an event delta or generated delta, so it's easier to find skipped frames. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286671 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.11-branch/Source/WebKit/ChangeLog branches/safari-613.1.11-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-613.1.11-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-613.1.11-branch/Source/WebKit/ChangeLog (286709 => 286710) --- branches/safari-613.1.11-branch/Source/WebKit/ChangeLog 2021-12-08 21:06:53 UTC (rev 286709) +++ branches/safari-613.1.11-branch/Source/WebKit/ChangeLog 2021-12-08 21:19:38 UTC (rev 286710) @@ -1,5 +1,76 @@ 2021-12-08 Russell Epstein +Cherry-pick r286671. rdar://problem/86226565 + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +deltas instead of interpolating along the offset curve during the +tail end of the animation (when the rounding makes up a large +proportion of each delta). + +(WebKit::MomentumEventDispatcher::equalizeTailGaps): +Sort the deltas up until the first zero to ensure a lack of unexpected +perceptual acceleration, and then inject skipped frames in order to +ensure that frames that have effective scroll movement (non-zero deltas) +are always spaced equally-or-further apart than earlier ones, but +never closer together (which, again, would be percieved as acceleration). + +(WebKit::MomentumEventDispatcher::handleWheelEvent): +(WebKit::MomentumEventDispatcher::pushLogEntry): +(WebKit::MomentumEventDispatcher::flushLog): +Lastly, adjust some logging to make it easier to tell which row in +the output corresponds to an event delta or generated delta, so it's +easier to find skipped frames. +* WebProcess/WebPage/MomentumEventDispatcher.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286671 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-08 Tim Horton + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +
[webkit-changes] [286708] trunk/Source/WebCore
Title: [286708] trunk/Source/WebCore Revision 286708 Author don.olmst...@sony.com Date 2021-12-08 12:46:39 -0800 (Wed, 08 Dec 2021) Log Message [Win] WebCore::cfHDropFormat implementation is not CF specific https://bugs.webkit.org/show_bug.cgi?id=234021 Reviewed by Alex Christensen. The implementation of cfHDropFormat was guarded by USE(CF) but there is nothing CF specific about the implementation. Drop the guards around it and any of its callers. Renaming CFData functions to HDropData to better represent the underlying Windows type for the clipboard and make sure its not mistaken for CoreFoundation functionality. * platform/win/ClipboardUtilitiesWin.cpp: (WebCore::getWebLocData): (WebCore::getHDropData): (WebCore::setHDropData): (WebCore::getClipboardMap): (WebCore::getCFData): Deleted. (WebCore::setCFData): Deleted. * platform/win/DragDataWin.cpp: (WebCore::DragData::containsFiles const): (WebCore::DragData::numberOfFiles const): (WebCore::DragData::asFilenames const): * platform/win/PasteboardWin.cpp: (WebCore::Pasteboard::read): (WebCore::writeFileToDataObject): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp trunk/Source/WebCore/platform/win/DragDataWin.cpp trunk/Source/WebCore/platform/win/PasteboardWin.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (286707 => 286708) --- trunk/Source/WebCore/ChangeLog 2021-12-08 20:44:38 UTC (rev 286707) +++ trunk/Source/WebCore/ChangeLog 2021-12-08 20:46:39 UTC (rev 286708) @@ -1,3 +1,31 @@ +2021-12-08 Don Olmstead + +[Win] WebCore::cfHDropFormat implementation is not CF specific +https://bugs.webkit.org/show_bug.cgi?id=234021 + +Reviewed by Alex Christensen. + +The implementation of cfHDropFormat was guarded by USE(CF) but there is nothing CF specific +about the implementation. Drop the guards around it and any of its callers. + +Renaming CFData functions to HDropData to better represent the underlying Windows type for +the clipboard and make sure its not mistaken for CoreFoundation functionality. + +* platform/win/ClipboardUtilitiesWin.cpp: +(WebCore::getWebLocData): +(WebCore::getHDropData): +(WebCore::setHDropData): +(WebCore::getClipboardMap): +(WebCore::getCFData): Deleted. +(WebCore::setCFData): Deleted. +* platform/win/DragDataWin.cpp: +(WebCore::DragData::containsFiles const): +(WebCore::DragData::numberOfFiles const): +(WebCore::DragData::asFilenames const): +* platform/win/PasteboardWin.cpp: +(WebCore::Pasteboard::read): +(WebCore::writeFileToDataObject): + 2021-12-08 Truitt Savell Unreviewed, reverting r286632. Modified: trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp (286707 => 286708) --- trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp 2021-12-08 20:44:38 UTC (rev 286707) +++ trunk/Source/WebCore/platform/win/ClipboardUtilitiesWin.cpp 2021-12-08 20:46:39 UTC (rev 286708) @@ -46,7 +46,6 @@ namespace WebCore { -#if USE(CF) FORMATETC* cfHDropFormat() { static FORMATETC urlFormat = {CF_HDROP, 0, DVASPECT_CONTENT, -1, TYMED_HGLOBAL}; @@ -53,6 +52,8 @@ return } +#if USE(CF) + static bool urlFromPath(CFStringRef path, String& url) { if (!path) @@ -84,7 +85,6 @@ static bool getWebLocData(IDataObject* dataObject, String& url, String* title) { bool succeeded = false; -#if USE(CF) WCHAR filename[MAX_PATH]; WCHAR urlBuffer[INTERNET_MAX_URL_LENGTH]; @@ -118,13 +118,11 @@ // Free up memory. DragFinish(hdrop); GlobalUnlock(medium.hGlobal); -#endif return succeeded; } static bool getWebLocData(const DragDataMap* dataObject, String& url, String* title) { -#if USE(CF) WCHAR filename[MAX_PATH]; WCHAR urlBuffer[INTERNET_MAX_URL_LENGTH]; @@ -145,9 +143,6 @@ url = "" return true; -#else -return false; -#endif } static String extractURL(const String , String* title) @@ -739,8 +734,7 @@ ReleaseStgMedium(); } -#if USE(CF) -void getCFData(IDataObject* data, FORMATETC* format, Vector& dataStrings) +void getHDropData(IDataObject* data, FORMATETC* format, Vector& dataStrings) { STGMEDIUM store; if (FAILED(data->GetData(format, ))) @@ -761,7 +755,6 @@ GlobalUnlock(store.hGlobal); ReleaseStgMedium(); } -#endif // Setter functions. @@ -795,8 +788,7 @@ ::GlobalFree(medium.hGlobal); } -#if USE(CF) -void setCFData(IDataObject* data, FORMATETC* format, const Vector& dataStrings) +void setHDropData(IDataObject* data, FORMATETC* format, const Vector& dataStrings) { STGMEDIUM medium { }; medium.tymed = TYMED_HGLOBAL; @@ -815,7 +807,6 @@ data->SetData(format, , FALSE); ::GlobalFree(medium.hGlobal); } -#endif static const ClipboardFormatMap& getClipboardMap() { @@ -825,9 +816,7 @@
[webkit-changes] [286707] branches/safari-612-branch/Source/WebKit
Title: [286707] branches/safari-612-branch/Source/WebKit Revision 286707 Author alanc...@apple.com Date 2021-12-08 12:44:38 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286574. rdar://problem/86224832 Regression(r286505) imported/w3c/web-platform-tests/html/cross-origin-opener-policy/_javascript_-url.https.html is a flaky crash https://bugs.webkit.org/show_bug.cgi?id=233874 Reviewed by Darin Adler. r286505 fixed ProvisionalPageProxy so that ProvisionalPageProxy::m_provisionalLoadURL gets properly initialized when the ProvisionalPageProxy gets constructed *after* the provisional load has already started (COOP proces-swap case). One side effect of this though is that ProvisionalPageProxy::cancel() no longer returns early and will try to notify the client that the provisional load failed, dereferencing m_mainFrame in doing so. In the event where the main frame has not yet been created in the new provisional process, this would do a null-dereference of m_mainFrame. To address the issue, we now early return in ProvisionalPageProxy::cancel() if m_isProcessSwappingOnNavigationResponse is true (i.e. The ProvisionalPageProxy was created after the provisional load had started). In such situations, we don't want to ProvisionalPageProxy to be the one notifying the client of the provisional load failure anyway. The reason is that there is still a provisional load going on in the committed process/page. No new tests, covered by existing test that is flakily crashing. * UIProcess/ProvisionalPageProxy.cpp: (WebKit::ProvisionalPageProxy::cancel): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286574 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286706 => 286707) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:34:10 UTC (rev 286706) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:44:38 UTC (rev 286707) @@ -1,5 +1,56 @@ 2021-12-08 Alan Coon +Cherry-pick r286574. rdar://problem/86224832 + +Regression(r286505) imported/w3c/web-platform-tests/html/cross-origin-opener-policy/_javascript_-url.https.html is a flaky crash +https://bugs.webkit.org/show_bug.cgi?id=233874 + +Reviewed by Darin Adler. + +r286505 fixed ProvisionalPageProxy so that ProvisionalPageProxy::m_provisionalLoadURL gets properly initialized when the +ProvisionalPageProxy gets constructed *after* the provisional load has already started (COOP proces-swap case). One side +effect of this though is that ProvisionalPageProxy::cancel() no longer returns early and will try to notify the client +that the provisional load failed, dereferencing m_mainFrame in doing so. In the event where the main frame has not yet +been created in the new provisional process, this would do a null-dereference of m_mainFrame. + +To address the issue, we now early return in ProvisionalPageProxy::cancel() if m_isProcessSwappingOnNavigationResponse +is true (i.e. The ProvisionalPageProxy was created after the provisional load had started). In such situations, we +don't want to ProvisionalPageProxy to be the one notifying the client of the provisional load failure anyway. The reason +is that there is still a provisional load going on in the committed process/page. + +No new tests, covered by existing test that is flakily crashing. + +* UIProcess/ProvisionalPageProxy.cpp: +(WebKit::ProvisionalPageProxy::cancel): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286574 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-06 Chris Dumez + +Regression(r286505) imported/w3c/web-platform-tests/html/cross-origin-opener-policy/_javascript_-url.https.html is a flaky crash +https://bugs.webkit.org/show_bug.cgi?id=233874 + +Reviewed by Darin Adler. + +r286505 fixed ProvisionalPageProxy so that ProvisionalPageProxy::m_provisionalLoadURL gets properly initialized when the +ProvisionalPageProxy gets constructed *after* the provisional load has already started (COOP proces-swap case). One side +effect of this though is that ProvisionalPageProxy::cancel() no longer returns early and will try to notify the client +that the provisional load failed, dereferencing m_mainFrame in doing so. In the event where the main frame has not yet +been created in the new provisional process, this would do a null-dereference of m_mainFrame. + +To address the issue, we now early return in ProvisionalPageProxy::cancel() if m_isProcessSwappingOnNavigationResponse +is true (i.e. The ProvisionalPageProxy was created after the provisional load had
[webkit-changes] [286705] trunk/Source
Title: [286705] trunk/Source Revision 286705 Author tsav...@apple.com Date 2021-12-08 12:34:03 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed, reverting r286632. Broke 3 tests on iOS Reverted changeset: "Add a `DOMPasteAccessCategory` to control which pasteboard the WebProcess is granted access to when pasting" https://bugs.webkit.org/show_bug.cgi?id=233939 https://commits.webkit.org/r286632 Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DOMPasteAccess.h trunk/Source/WebCore/loader/EmptyClients.cpp trunk/Source/WebCore/page/EditorClient.h trunk/Source/WebCore/page/Frame.cpp trunk/Source/WebCore/page/Frame.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Scripts/webkit/messages.py trunk/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp trunk/Source/WebKit/UIProcess/API/gtk/PageClientImpl.h trunk/Source/WebKit/UIProcess/API/mac/WKView.mm trunk/Source/WebKit/UIProcess/API/mac/WKWebViewMac.mm trunk/Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp trunk/Source/WebKit/UIProcess/API/wpe/PageClientImpl.h trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm trunk/Source/WebKit/UIProcess/PageClient.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in trunk/Source/WebKit/UIProcess/ios/PageClientImplIOS.h trunk/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.h trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.h trunk/Source/WebKit/UIProcess/mac/PageClientImplMac.mm trunk/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm trunk/Source/WebKit/UIProcess/playstation/PageClientImpl.cpp trunk/Source/WebKit/UIProcess/playstation/PageClientImpl.h trunk/Source/WebKit/UIProcess/win/PageClientImpl.cpp trunk/Source/WebKit/UIProcess/win/PageClientImpl.h trunk/Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebEditorClient.h trunk/Source/WebKitLegacy/win/ChangeLog trunk/Source/WebKitLegacy/win/WebCoreSupport/WebEditorClient.h Diff Modified: trunk/Source/WebCore/ChangeLog (286704 => 286705) --- trunk/Source/WebCore/ChangeLog 2021-12-08 20:31:41 UTC (rev 286704) +++ trunk/Source/WebCore/ChangeLog 2021-12-08 20:34:03 UTC (rev 286705) @@ -1,3 +1,16 @@ +2021-12-08 Truitt Savell + +Unreviewed, reverting r286632. + +Broke 3 tests on iOS + +Reverted changeset: + +"Add a `DOMPasteAccessCategory` to control which pasteboard +the WebProcess is granted access to when pasting" +https://bugs.webkit.org/show_bug.cgi?id=233939 +https://commits.webkit.org/r286632 + 2021-12-08 Philippe Normand [GStreamer] Fill in client-name property on audio sinks Modified: trunk/Source/WebCore/dom/DOMPasteAccess.h (286704 => 286705) --- trunk/Source/WebCore/dom/DOMPasteAccess.h 2021-12-08 20:31:41 UTC (rev 286704) +++ trunk/Source/WebCore/dom/DOMPasteAccess.h 2021-12-08 20:34:03 UTC (rev 286705) @@ -29,10 +29,6 @@ namespace WebCore { -enum class DOMPasteAccessCategory : uint8_t { -General, -}; - enum class DOMPasteAccessPolicy : uint8_t { NotRequestedYet, Denied, @@ -49,13 +45,6 @@ namespace WTF { -template<> struct EnumTraits { -using values = EnumValues< -WebCore::DOMPasteAccessCategory, -WebCore::DOMPasteAccessCategory::General ->; -}; - template<> struct EnumTraits { using values = EnumValues< WebCore::DOMPasteAccessResponse, Modified: trunk/Source/WebCore/loader/EmptyClients.cpp (286704 => 286705) --- trunk/Source/WebCore/loader/EmptyClients.cpp 2021-12-08 20:31:41 UTC (rev 286704) +++ trunk/Source/WebCore/loader/EmptyClients.cpp 2021-12-08 20:34:03 UTC (rev 286705) @@ -286,7 +286,7 @@ void registerRedoStep(UndoStep&) final; void clearUndoRedoOperations() final { } -DOMPasteAccessResponse requestDOMPasteAccess(DOMPasteAccessCategory, const String&) final { return DOMPasteAccessResponse::DeniedForGesture; } +DOMPasteAccessResponse requestDOMPasteAccess(const String&) final { return DOMPasteAccessResponse::DeniedForGesture; } bool canCopyCut(Frame*, bool defaultValue) const final { return defaultValue; } bool canPaste(Frame*, bool defaultValue) const final { return defaultValue; } Modified: trunk/Source/WebCore/page/EditorClient.h (286704 => 286705) --- trunk/Source/WebCore/page/EditorClient.h 2021-12-08 20:31:41 UTC (rev 286704) +++ trunk/Source/WebCore/page/EditorClient.h 2021-12-08 20:34:03 UTC (rev 286705) @@ -36,7 +36,6 @@ namespace WebCore { -enum class
[webkit-changes] [286706] branches/safari-612.4.2.3-branch/Source
Title: [286706] branches/safari-612.4.2.3-branch/Source Revision 286706 Author repst...@apple.com Date 2021-12-08 12:34:10 -0800 (Wed, 08 Dec 2021) Log Message Versioning. WebKit-7612.4.2.3.1 Modified Paths branches/safari-612.4.2.3-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.4.2.3-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.4.2.3-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286705 => 286706) --- branches/safari-612.4.2.3-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:34:03 UTC (rev 286705) +++ branches/safari-612.4.2.3-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:34:10 UTC (rev 286706) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 3; +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-612.4.2.3-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286705 => 286706) --- branches/safari-612.4.2.3-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:34:03 UTC (rev 286705) +++ branches/safari-612.4.2.3-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:34:10 UTC (rev 286706) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 3; +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-612.4.2.3-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286705 => 286706) --- branches/safari-612.4.2.3-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:34:03 UTC (rev 286705) +++ branches/safari-612.4.2.3-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:34:10 UTC (rev 286706) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 3; +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-612.4.2.3-branch/Source/WebCore/Configurations/Version.xcconfig (286705 => 286706) --- branches/safari-612.4.2.3-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:34:03 UTC (rev 286705) +++ branches/safari-612.4.2.3-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:34:10 UTC (rev 286706) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 3; +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-612.4.2.3-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286705 => 286706) --- branches/safari-612.4.2.3-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:34:03 UTC (rev 286705) +++ branches/safari-612.4.2.3-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:34:10 UTC (rev 286706) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 3; +NANO_VERSION = 1; +FULL_VERSION =
[webkit-changes] [286704] branches/safari-612.4.2.2-branch/Source
Title: [286704] branches/safari-612.4.2.2-branch/Source Revision 286704 Author repst...@apple.com Date 2021-12-08 12:31:41 -0800 (Wed, 08 Dec 2021) Log Message Versioning. WebKit-7612.4.2.2.1 Modified Paths branches/safari-612.4.2.2-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.4.2.2-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.4.2.2-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286703 => 286704) --- branches/safari-612.4.2.2-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:27:51 UTC (rev 286703) +++ branches/safari-612.4.2.2-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:31:41 UTC (rev 286704) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 2; +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-612.4.2.2-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286703 => 286704) --- branches/safari-612.4.2.2-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:27:51 UTC (rev 286703) +++ branches/safari-612.4.2.2-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:31:41 UTC (rev 286704) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 2; +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-612.4.2.2-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286703 => 286704) --- branches/safari-612.4.2.2-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:27:51 UTC (rev 286703) +++ branches/safari-612.4.2.2-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:31:41 UTC (rev 286704) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 2; +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-612.4.2.2-branch/Source/WebCore/Configurations/Version.xcconfig (286703 => 286704) --- branches/safari-612.4.2.2-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:27:51 UTC (rev 286703) +++ branches/safari-612.4.2.2-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:31:41 UTC (rev 286704) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 2; +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-612.4.2.2-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286703 => 286704) --- branches/safari-612.4.2.2-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:27:51 UTC (rev 286703) +++ branches/safari-612.4.2.2-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:31:41 UTC (rev 286704) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 2; +NANO_VERSION = 1; +FULL_VERSION =
[webkit-changes] [286703] trunk
Title: [286703] trunk Revision 286703 Author commit-qu...@webkit.org Date 2021-12-08 12:27:51 -0800 (Wed, 08 Dec 2021) Log Message Support WebAssembly.Memory imports in Wasm/ESM modules. https://bugs.webkit.org/show_bug.cgi?id=184745 Patch by Asumu Takikawa on 2021-12-08 Reviewed by Yusuke Suzuki. JSTests: * wasm/modules/wasm-imports-js-exports.js: (then): * wasm/modules/wasm-imports-js-exports/memory-fail-1.js: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-1.wasm: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-1.wat: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-2.js: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-2.wasm: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-2.wat: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-3.js: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-3.wasm: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-3.wat: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-4.js: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-4.wasm: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-4.wat: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-5.js: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-5.wasm: Added. * wasm/modules/wasm-imports-js-exports/memory-fail-5.wat: Added. * wasm/modules/wasm-imports-js-exports/memory.js: Added. (export.setMemory): * wasm/modules/wasm-imports-js-exports/memory.wasm: Added. * wasm/modules/wasm-imports-js-exports/memory.wat: Added. * wasm/modules/wasm-imports-js-exports/shared-memory.js: Added. * wasm/modules/wasm-imports-js-exports/shared-memory.wasm: Added. * wasm/modules/wasm-imports-js-exports/shared-memory.wat: Added. * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Source/_javascript_Core: Changes how Wasm code is initialized for modules that are loaded by the module loader and have memory imports. The initial code for the LLInt tier is copied to all memory modes, so that the memory import can be initialized after compilation. When LLInt is turned off, the compilation of B3/Air code is delayed until the memory is initialized. * wasm/WasmCodeBlock.cpp: (JSC::Wasm::CodeBlock::createFromExisting): (JSC::Wasm::CodeBlock::CodeBlock): * wasm/WasmCodeBlock.h: * wasm/WasmInstance.h: (JSC::Wasm::Instance::finalizeCreation): (JSC::Wasm::Instance::module const): (JSC::Wasm::Instance::codeBlock const): (JSC::Wasm::Instance::memory const): (JSC::Wasm::Instance::isImportFunction const): (JSC::Wasm::Instance::module): Deleted. (JSC::Wasm::Instance::codeBlock): Deleted. (JSC::Wasm::Instance::memory): Deleted. * wasm/WasmModule.cpp: (JSC::Wasm::Module::copyInitialCodeBlockToAllMemoryModes): * wasm/WasmModule.h: * wasm/js/JSWebAssembly.cpp: (JSC::instantiate): * wasm/js/JSWebAssemblyInstance.cpp: (JSC::JSWebAssemblyInstance::finalizeCreation): (JSC::JSWebAssemblyInstance::tryCreate): * wasm/js/JSWebAssemblyInstance.h: * wasm/js/WebAssemblyModuleRecord.cpp: (JSC::WebAssemblyModuleRecord::initializeImportsAndExports): Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/wasm/modules/wasm-imports-js-exports.js trunk/JSTests/wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm trunk/JSTests/wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat trunk/JSTests/wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js trunk/JSTests/wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm trunk/JSTests/wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat trunk/JSTests/wasm/modules/wasm-imports-js-re-exports-wasm-exports.js trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmCodeBlock.cpp trunk/Source/_javascript_Core/wasm/WasmCodeBlock.h trunk/Source/_javascript_Core/wasm/WasmInstance.h trunk/Source/_javascript_Core/wasm/WasmModule.cpp trunk/Source/_javascript_Core/wasm/WasmModule.h trunk/Source/_javascript_Core/wasm/js/JSWebAssembly.cpp trunk/Source/_javascript_Core/wasm/js/JSWebAssemblyInstance.cpp trunk/Source/_javascript_Core/wasm/js/JSWebAssemblyInstance.h trunk/Source/_javascript_Core/wasm/js/WebAssemblyModuleRecord.cpp Added Paths trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-1.js trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-1.wasm trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-1.wat trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-2.js trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-2.wasm trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-2.wat trunk/JSTests/wasm/modules/wasm-imports-js-exports/memory-fail-3.js
[webkit-changes] [286702] branches/safari-612.4.2.1-branch/Source
Title: [286702] branches/safari-612.4.2.1-branch/Source Revision 286702 Author repst...@apple.com Date 2021-12-08 12:27:32 -0800 (Wed, 08 Dec 2021) Log Message Versioning. WebKit-7612.4.2.1.1 Modified Paths branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.4.2.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286701 => 286702) --- branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:24:03 UTC (rev 286701) +++ branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:27:32 UTC (rev 286702) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -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-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286701 => 286702) --- branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:24:03 UTC (rev 286701) +++ branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:27:32 UTC (rev 286702) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -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-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286701 => 286702) --- branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:24:03 UTC (rev 286701) +++ branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:27:32 UTC (rev 286702) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -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-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig (286701 => 286702) --- branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:24:03 UTC (rev 286701) +++ branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:27:32 UTC (rev 286702) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -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-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286701 => 286702) --- branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:24:03 UTC (rev 286701) +++ branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:27:32 UTC (rev 286702) @@ -24,9 +24,9 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; TINY_VERSION = 2; -MICRO_VERSION = 0; -NANO_VERSION = 0; -FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); +MICRO_VERSION = 1; +NANO_VERSION = 1; +FULL_VERSION =
[webkit-changes] [286701] branches/safari-612-branch/Source/WebKit
Title: [286701] branches/safari-612-branch/Source/WebKit Revision 286701 Author alanc...@apple.com Date 2021-12-08 12:24:03 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286671. rdar://problem/85928816 Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps https://bugs.webkit.org/show_bug.cgi?id=233993 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::computeNextDelta): In order to avoid visual stutter due to integral rounding of the deltas we dispatch in the momentum phase, switch to a table of deltas instead of interpolating along the offset curve during the tail end of the animation (when the rounding makes up a large proportion of each delta). (WebKit::MomentumEventDispatcher::equalizeTailGaps): Sort the deltas up until the first zero to ensure a lack of unexpected perceptual acceleration, and then inject skipped frames in order to ensure that frames that have effective scroll movement (non-zero deltas) are always spaced equally-or-further apart than earlier ones, but never closer together (which, again, would be percieved as acceleration). (WebKit::MomentumEventDispatcher::handleWheelEvent): (WebKit::MomentumEventDispatcher::pushLogEntry): (WebKit::MomentumEventDispatcher::flushLog): Lastly, adjust some logging to make it easier to tell which row in the output corresponds to an event delta or generated delta, so it's easier to find skipped frames. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286671 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286700 => 286701) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:24:00 UTC (rev 286700) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:24:03 UTC (rev 286701) @@ -1,5 +1,76 @@ 2021-12-08 Alan Coon +Cherry-pick r286671. rdar://problem/85928816 + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +deltas instead of interpolating along the offset curve during the +tail end of the animation (when the rounding makes up a large +proportion of each delta). + +(WebKit::MomentumEventDispatcher::equalizeTailGaps): +Sort the deltas up until the first zero to ensure a lack of unexpected +perceptual acceleration, and then inject skipped frames in order to +ensure that frames that have effective scroll movement (non-zero deltas) +are always spaced equally-or-further apart than earlier ones, but +never closer together (which, again, would be percieved as acceleration). + +(WebKit::MomentumEventDispatcher::handleWheelEvent): +(WebKit::MomentumEventDispatcher::pushLogEntry): +(WebKit::MomentumEventDispatcher::flushLog): +Lastly, adjust some logging to make it easier to tell which row in +the output corresponds to an event delta or generated delta, so it's +easier to find skipped frames. +* WebProcess/WebPage/MomentumEventDispatcher.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286671 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-08 Tim Horton + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +deltas instead of interpolating along the
[webkit-changes] [286698] branches/safari-612-branch
Title: [286698] branches/safari-612-branch Revision 286698 Author alanc...@apple.com Date 2021-12-08 12:23:54 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286537. rdar://problem/85928816 Add trace points for generated momentum events https://bugs.webkit.org/show_bug.cgi?id=233857 Reviewed by Tim Horton. Source/WebKit: Add start/end points for synthetic momentum, and a trace point for each generated event. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): (WebKit::MomentumEventDispatcher::didStartMomentumPhase): (WebKit::MomentumEventDispatcher::didEndMomentumPhase): Source/WTF: * wtf/SystemTracing.h: Tools: Add start/end points for synthetic momentum, and a trace point for each generated event. * Tracing/SystemTracePoints.plist: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286537 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WTF/ChangeLog branches/safari-612-branch/Source/WTF/wtf/SystemTracing.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612-branch/Tools/ChangeLog branches/safari-612-branch/Tools/Tracing/SystemTracePoints.plist Diff Modified: branches/safari-612-branch/Source/WTF/ChangeLog (286697 => 286698) --- branches/safari-612-branch/Source/WTF/ChangeLog 2021-12-08 20:23:51 UTC (rev 286697) +++ branches/safari-612-branch/Source/WTF/ChangeLog 2021-12-08 20:23:54 UTC (rev 286698) @@ -1,3 +1,43 @@ +2021-12-06 Alan Coon + +Cherry-pick r286537. rdar://problem/85928816 + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +Source/WebKit: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): +(WebKit::MomentumEventDispatcher::didStartMomentumPhase): +(WebKit::MomentumEventDispatcher::didEndMomentumPhase): + +Source/WTF: + +* wtf/SystemTracing.h: + +Tools: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* Tracing/SystemTracePoints.plist: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286537 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-05 Simon Fraser + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +* wtf/SystemTracing.h: + 2021-12-03 Alan Coon Cherry-pick r286504. rdar://problem/85928816 Modified: branches/safari-612-branch/Source/WTF/wtf/SystemTracing.h (286697 => 286698) --- branches/safari-612-branch/Source/WTF/wtf/SystemTracing.h 2021-12-08 20:23:51 UTC (rev 286697) +++ branches/safari-612-branch/Source/WTF/wtf/SystemTracing.h 2021-12-08 20:23:54 UTC (rev 286698) @@ -127,6 +127,9 @@ RenderServerSnapshotEnd, TakeSnapshotStart, TakeSnapshotEnd, +SyntheticMomentumStart, +SyntheticMomentumEnd, +SyntheticMomentumEvent, UIProcessRange = 14000, CommitLayerTreeStart, Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286697 => 286698) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:51 UTC (rev 286697) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:54 UTC (rev 286698) @@ -1,3 +1,48 @@ +2021-12-06 Alan Coon + +Cherry-pick r286537. rdar://problem/85928816 + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +Source/WebKit: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): +(WebKit::MomentumEventDispatcher::didStartMomentumPhase): +(WebKit::MomentumEventDispatcher::didEndMomentumPhase): + +Source/WTF: + +* wtf/SystemTracing.h: + +Tools: + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +* Tracing/SystemTracePoints.plist: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286537 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-05 Simon Fraser + +Add trace points for generated momentum events +https://bugs.webkit.org/show_bug.cgi?id=233857 + +Reviewed by Tim Horton. + +Add start/end points for synthetic momentum, and a trace point for each generated event. + +*
[webkit-changes] [286699] branches/safari-612-branch/Source/WebKit
Title: [286699] branches/safari-612-branch/Source/WebKit Revision 286699 Author alanc...@apple.com Date 2021-12-08 12:23:57 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286566. rdar://problem/85928816 Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled https://bugs.webkit.org/show_bug.cgi?id=233894 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): Only flip the deltas if the trackpad is configured to use "natural" scrolling (in which "directionInvertedFromDevice" is true). (WebKit::MomentumEventDispatcher::computeNextDelta): Fix initial queue state logging to log both axes before setting the "did log" bit. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286566 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286698 => 286699) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:54 UTC (rev 286698) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:57 UTC (rev 286699) @@ -1,5 +1,42 @@ 2021-12-06 Alan Coon +Cherry-pick r286566. rdar://problem/85928816 + +Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled +https://bugs.webkit.org/show_bug.cgi?id=233894 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +Only flip the deltas if the trackpad is configured to use "natural" +scrolling (in which "directionInvertedFromDevice" is true). + +(WebKit::MomentumEventDispatcher::computeNextDelta): +Fix initial queue state logging to log both axes before setting the "did log" bit. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286566 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-06 Tim Horton + +Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled +https://bugs.webkit.org/show_bug.cgi?id=233894 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +Only flip the deltas if the trackpad is configured to use "natural" +scrolling (in which "directionInvertedFromDevice" is true). + +(WebKit::MomentumEventDispatcher::computeNextDelta): +Fix initial queue state logging to log both axes before setting the "did log" bit. + +2021-12-06 Alan Coon + Cherry-pick r286537. rdar://problem/85928816 Add trace points for generated momentum events Modified: branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286698 => 286699) --- branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 20:23:54 UTC (rev 286698) +++ branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 20:23:57 UTC (rev 286699) @@ -306,7 +306,10 @@ m_currentGesture.currentOffset += delta; -return -delta; +if (m_currentGesture.initiatingEvent->directionInvertedFromDevice()) +delta.scale(-1); + +return delta; } void MomentumEventDispatcher::displayWasRefreshed(WebCore::PlatformDisplayID displayID, const WebCore::DisplayUpdate&) @@ -478,10 +481,8 @@ float averageDelta = totalDelta / count; #if ENABLE(MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING) -if (!m_currentGesture.didLogInitialQueueState) { +if (!m_currentGesture.didLogInitialQueueState) RELEASE_LOG(ScrollAnimations, "MomentumEventDispatcher initial historical deltas: average delta %f, average time %fms, event count %d", averageDelta, averageFrameIntervalMS, count); -m_currentGesture.didLogInitialQueueState = true; -} #endif constexpr float velocityGainA = fromFixedPoint(2.f); @@ -502,6 +503,10 @@ accelerateAxis(m_deltaHistoryY, quantizedUnacceleratedDelta.height()) ); +#if ENABLE(MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING) +m_currentGesture.didLogInitialQueueState = true; +#endif + return { unacceleratedDelta, acceleratedDelta }; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286697] branches/safari-612-branch/Source/WebKit/Shared/mac/ MediaFormatReader/MediaFormatReader.cpp
Title: [286697] branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Revision 286697 Author alanc...@apple.com Date 2021-12-08 12:23:51 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 Modified Paths branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp (286696 => 286697) --- branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 20:23:48 UTC (rev 286696) +++ branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 20:23:51 UTC (rev 286697) @@ -42,6 +42,7 @@ #include #include +#include #include WTF_DECLARE_CF_TYPE_TRAIT(MTPluginFormatReader); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286696] branches/safari-612-branch/Source/WebKit/Shared/ WebPreferencesDefaultValues.cpp
Title: [286696] branches/safari-612-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp Revision 286696 Author alanc...@apple.com Date 2021-12-08 12:23:48 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 error: use of undeclared identifier 'isInWebProcess'; did you mean 'WebCore::isInWebProcess'? Modified Paths branches/safari-612-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp (286695 => 286696) --- branches/safari-612-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2021-12-08 20:23:46 UTC (rev 286695) +++ branches/safari-612-branch/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2021-12-08 20:23:48 UTC (rev 286696) @@ -324,7 +324,7 @@ static dispatch_once_t onceToken; static bool enabled { false }; dispatch_once(, ^{ -if (isInWebProcess()) +if (WebCore::isInWebProcess()) enabled = WebProcess::singleton().parentProcessHasEntitlement("com.apple.developer.group-session.urlactivity"); else enabled = WTF::processHasEntitlement("com.apple.developer.group-session.urlactivity"); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286695] branches/safari-612-branch/Source/WebKit/Shared/mac/ MediaFormatReader/MediaFormatReader.cpp
Title: [286695] branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Revision 286695 Author alanc...@apple.com Date 2021-12-08 12:23:46 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed build fix. rdar://problem/85928816 error: member access into incomplete type 'Webcore::SharedBuffer' Modified Paths branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp (286694 => 286695) --- branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 20:23:44 UTC (rev 286694) +++ branches/safari-612-branch/Source/WebKit/Shared/mac/MediaFormatReader/MediaFormatReader.cpp 2021-12-08 20:23:46 UTC (rev 286695) @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286693] branches/safari-612-branch/Source/WTF
Title: [286693] branches/safari-612-branch/Source/WTF Revision 286693 Author alanc...@apple.com Date 2021-12-08 12:23:41 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286504. rdar://problem/85928816 Enable Momentum Event Generator by default https://bugs.webkit.org/show_bug.cgi?id=233807 Reviewed by Simon Fraser. * Scripts/Preferences/WebPreferencesInternal.yaml: Turn it on for modern WebKit. Adjust the description slightly. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286504 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WTF/ChangeLog branches/safari-612-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml Diff Modified: branches/safari-612-branch/Source/WTF/ChangeLog (286692 => 286693) --- branches/safari-612-branch/Source/WTF/ChangeLog 2021-12-08 20:23:38 UTC (rev 286692) +++ branches/safari-612-branch/Source/WTF/ChangeLog 2021-12-08 20:23:41 UTC (rev 286693) @@ -1,5 +1,31 @@ 2021-12-03 Alan Coon +Cherry-pick r286504. rdar://problem/85928816 + +Enable Momentum Event Generator by default +https://bugs.webkit.org/show_bug.cgi?id=233807 + + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesInternal.yaml: +Turn it on for modern WebKit. Adjust the description slightly. + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286504 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-03 Tim Horton + +Enable Momentum Event Generator by default +https://bugs.webkit.org/show_bug.cgi?id=233807 + + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesInternal.yaml: +Turn it on for modern WebKit. Adjust the description slightly. + +2021-12-03 Alan Coon + Cherry-pick r285526. rdar://problem/85928816 Add runtime flag for momentum scrolling Modified: branches/safari-612-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml (286692 => 286693) --- branches/safari-612-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-12-08 20:23:38 UTC (rev 286692) +++ branches/safari-612-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml 2021-12-08 20:23:41 UTC (rev 286693) @@ -539,7 +539,7 @@ MomentumScrollingAnimatorEnabled: type: bool humanReadableName: "Momentum Scrolling Animator" - humanReadableDescription: "Drive momentum scrolling via an internal animator instead of using momentum events" + humanReadableDescription: "Generate momentum events in WebKit instead of using those delivered by the system" defaultValue: WebKitLegacy: "PLATFORM(MAC)": true @@ -546,7 +546,7 @@ default: false WebKit: "PLATFORM(MAC)": true - default: false + default: true WebCore: "PLATFORM(MAC)": true default: false ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286691] branches/safari-612-branch/Source/WebKit
Title: [286691] branches/safari-612-branch/Source/WebKit Revision 286691 Author alanc...@apple.com Date 2021-12-08 12:23:32 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286483. rdar://problem/85928816 MomentumEventDispatcher curve sometimes doesn't match the system curve https://bugs.webkit.org/show_bug.cgi?id=233801 Reviewed by Simon Fraser. Three small changes to get us closer to the system curve: 1) Fetch the momentum event dispatch interval from the system, and use it to scale the momentum start event's delta (which we use as our initial velocity) into the "ideal" curve's frame rate (which is always 60fps regardless). 2) Back-date the animation start time to the fingers-down phase end event, so that the momentum start phase has a delta. This seems to match what the system does. 3) Switch to MonotonicTime for the animation time, since it doesn't need to be in the same timebase as events (which are oddly in WallTime), and certainly should be monotonic. * Shared/ScrollingAccelerationCurve.cpp: (WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): (WebKit::ScrollingAccelerationCurve::interpolate): (WebKit::ScrollingAccelerationCurve::encode const): (WebKit::ScrollingAccelerationCurve::decode): (WebKit::operator<<): * Shared/ScrollingAccelerationCurve.h: (WebKit::ScrollingAccelerationCurve::frameRate): (WebKit::ScrollingAccelerationCurve::operator== const): * Shared/mac/ScrollingAccelerationCurveMac.mm: (WebKit::fromIOHIDCurve): (WebKit::fromIOHIDCurveArrayWithAcceleration): (WebKit::fromIOHIDDevice): Fetch and propagate the dispatch frame rate. This isn't *really* a ScrollingAccelerationCurve property, but neither is `resolution`; this is just currently the only place we look up HID properties and push them to the Web Content process; some re-architecture is warranted here in the future. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::handleWheelEvent): Keep track of the last fingers-down phase ended event timestamp. (WebKit::MomentumEventDispatcher::didStartMomentumPhase): Backdate the start time so that the first event has the appropriate delta. Divide out the dispatch frame rate so that the initial velocity is as if the curve were running at 60fps (since we *will* run it at 60fps and interpolate). (WebKit::MomentumEventDispatcher::didEndMomentumPhase): (WebKit::MomentumEventDispatcher::consumeDeltaForTime): (WebKit::MomentumEventDispatcher::displayWasRefreshed): Factor the consume-a-delta-from-the-ideal-curve code out from displayWasRefreshed so we can use it in the start phase too. (WebKit::MomentumEventDispatcher::offsetAtTime): (WebKit::MomentumEventDispatcher::computeNextDelta): Rename idealCurveFrameRate->idealCurveFrameInterval for accuracy. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286483 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/ScrollingAccelerationCurve.cpp branches/safari-612-branch/Source/WebKit/Shared/ScrollingAccelerationCurve.h branches/safari-612-branch/Source/WebKit/Shared/mac/ScrollingAccelerationCurveMac.mm branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286690 => 286691) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:29 UTC (rev 286690) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:32 UTC (rev 286691) @@ -1,5 +1,136 @@ 2021-12-03 Russell Epstein +Cherry-pick r286483. rdar://problem/85928816 + +MomentumEventDispatcher curve sometimes doesn't match the system curve +https://bugs.webkit.org/show_bug.cgi?id=233801 + + +Reviewed by Simon Fraser. + +Three small changes to get us closer to the system curve: + +1) Fetch the momentum event dispatch interval from the system, and use +it to scale the momentum start event's delta (which we use as our +initial velocity) into the "ideal" curve's frame rate (which is always +60fps regardless). + +2) Back-date the animation start time to the fingers-down phase end event, +so that the momentum start phase has a delta. This seems to match what +the system does. + +3) Switch to MonotonicTime for the animation time, since it doesn't need +to be in the same timebase as events (which are oddly in WallTime), and +certainly should be monotonic. + +* Shared/ScrollingAccelerationCurve.cpp: +(WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): +
[webkit-changes] [286694] branches/safari-612-branch/Source/WebKit
Title: [286694] branches/safari-612-branch/Source/WebKit Revision 286694 Author alanc...@apple.com Date 2021-12-08 12:23:44 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286512. rdar://problem/85928816 Add more logging for MomentumEventDispatcher https://bugs.webkit.org/show_bug.cgi?id=233811 Reviewed by Simon Fraser. Add a temporary event log to MomentumEventDispatcher, to debug delta/offset/curve issues. * WebProcess/WebPage/EventDispatcher.h: (WebKit::EventDispatcher::queue): * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::handleWheelEvent): Accumulate event deltas. Also accumulate event deltas for the fingers-down phase in the "generated" offset. Store the phase and momentum phase smooshed into a single field. (WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): Accumulate generated deltas. (WebKit::MomentumEventDispatcher::didEndMomentumPhase): Attempt to dump the log 1 second after each momentum phase. We'll skip it if another scroll has started since. (WebKit::MomentumEventDispatcher::setScrollingAccelerationCurve): (WebKit::MomentumEventDispatcher::startDisplayLink): (WebKit::MomentumEventDispatcher::stopDisplayLink): (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::computeNextDelta): Adopt more MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING. Error logging we leave outside of this, because that we'll keep around. (WebKit::MomentumEventDispatcher::pushLogEntry): (WebKit::MomentumEventDispatcher::flushLog): Dump the event log in an easy-to-copy-into-a-CSV format. * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286512 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.h branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286693 => 286694) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:41 UTC (rev 286693) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:44 UTC (rev 286694) @@ -1,5 +1,88 @@ 2021-12-03 Alan Coon +Cherry-pick r286512. rdar://problem/85928816 + +Add more logging for MomentumEventDispatcher +https://bugs.webkit.org/show_bug.cgi?id=233811 + +Reviewed by Simon Fraser. + +Add a temporary event log to MomentumEventDispatcher, to debug delta/offset/curve issues. + +* WebProcess/WebPage/EventDispatcher.h: +(WebKit::EventDispatcher::queue): +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::handleWheelEvent): +Accumulate event deltas. Also accumulate event deltas for the +fingers-down phase in the "generated" offset. Store the phase and +momentum phase smooshed into a single field. + +(WebKit::MomentumEventDispatcher::dispatchSyntheticMomentumEvent): +Accumulate generated deltas. + +(WebKit::MomentumEventDispatcher::didEndMomentumPhase): +Attempt to dump the log 1 second after each momentum phase. We'll skip +it if another scroll has started since. + +(WebKit::MomentumEventDispatcher::setScrollingAccelerationCurve): +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::stopDisplayLink): +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +Adopt more MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING. Error logging +we leave outside of this, because that we'll keep around. + +(WebKit::MomentumEventDispatcher::pushLogEntry): +(WebKit::MomentumEventDispatcher::flushLog): +Dump the event log in an easy-to-copy-into-a-CSV format. + +* WebProcess/WebPage/MomentumEventDispatcher.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286512 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-03 Tim Horton + +Add more logging for MomentumEventDispatcher +https://bugs.webkit.org/show_bug.cgi?id=233811 + +Reviewed by Simon Fraser. + +Add a temporary event log to MomentumEventDispatcher, to debug delta/offset/curve issues. + +* WebProcess/WebPage/EventDispatcher.h: +(WebKit::EventDispatcher::queue): +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::handleWheelEvent): +
[webkit-changes] [286692] branches/safari-612-branch/Source
Title: [286692] branches/safari-612-branch/Source Revision 286692 Author alanc...@apple.com Date 2021-12-08 12:23:38 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r285526. rdar://problem/85928816 Add runtime flag for momentum scrolling https://bugs.webkit.org/show_bug.cgi?id=232898 Reviewed by Simon Fraser. * Scripts/Preferences/WebPreferencesInternal.yaml: Add the preference. * page/scrolling/AsyncScrollingCoordinator.cpp: (WebCore::AsyncScrollingCoordinator::setFrameScrollingNodeState): * page/scrolling/ScrollingStateFrameScrollingNode.cpp: (WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode): (WebCore::ScrollingStateFrameScrollingNode::applicableProperties const): (WebCore::ScrollingStateFrameScrollingNode::setMomentumScrollingAnimatorEnabled): * page/scrolling/ScrollingStateFrameScrollingNode.h: * page/scrolling/ScrollingStateNode.h: * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::commitTreeState): * page/scrolling/ScrollingTree.h: (WebCore::ScrollingTree::momentumScrollingAnimatorEnabled const): (WebCore::ScrollingTree::setMomentumScrollingAnimatorEnabled): * page/scrolling/ScrollingTreeScrollingNode.cpp: (WebCore::ScrollingTreeScrollingNode::momentumScrollingAnimatorEnabled const): * page/scrolling/ScrollingTreeScrollingNode.h: * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::momentumScrollingAnimatorEnabled const): * platform/ScrollingEffectsController.h: (WebCore::ScrollingEffectsControllerClient::momentumScrollingAnimatorEnabled const): * Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp: (ArgumentCoder::encode): (ArgumentCoder::decode): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285526 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WTF/ChangeLog branches/safari-612-branch/Source/WTF/Scripts/Preferences/WebPreferencesInternal.yaml branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingStateFrameScrollingNode.h branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingStateNode.h branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.h branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm branches/safari-612-branch/Source/WebCore/platform/ScrollController.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp Diff Modified: branches/safari-612-branch/Source/WTF/ChangeLog (286691 => 286692) --- branches/safari-612-branch/Source/WTF/ChangeLog 2021-12-08 20:23:32 UTC (rev 286691) +++ branches/safari-612-branch/Source/WTF/ChangeLog 2021-12-08 20:23:38 UTC (rev 286692) @@ -1,3 +1,55 @@ +2021-12-03 Alan Coon + +Cherry-pick r285526. rdar://problem/85928816 + +Add runtime flag for momentum scrolling +https://bugs.webkit.org/show_bug.cgi?id=232898 + + +Reviewed by Simon Fraser. + +* Scripts/Preferences/WebPreferencesInternal.yaml: +Add the preference. + +* page/scrolling/AsyncScrollingCoordinator.cpp: +(WebCore::AsyncScrollingCoordinator::setFrameScrollingNodeState): +* page/scrolling/ScrollingStateFrameScrollingNode.cpp: +(WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode): +(WebCore::ScrollingStateFrameScrollingNode::applicableProperties const): +(WebCore::ScrollingStateFrameScrollingNode::setMomentumScrollingAnimatorEnabled): +* page/scrolling/ScrollingStateFrameScrollingNode.h: +* page/scrolling/ScrollingStateNode.h: +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::commitTreeState): +* page/scrolling/ScrollingTree.h: +(WebCore::ScrollingTree::momentumScrollingAnimatorEnabled const): +(WebCore::ScrollingTree::setMomentumScrollingAnimatorEnabled): +* page/scrolling/ScrollingTreeScrollingNode.cpp: +(WebCore::ScrollingTreeScrollingNode::momentumScrollingAnimatorEnabled const): +* page/scrolling/ScrollingTreeScrollingNode.h: +* page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: +*
[webkit-changes] [286689] branches/safari-612-branch/Source/WebKit
Title: [286689] branches/safari-612-branch/Source/WebKit Revision 286689 Author alanc...@apple.com Date 2021-12-08 12:23:25 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286380. rdar://problem/85928816 Unreviewed build fixes after r286346. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::startDisplayLink): (WebKit::MomentumEventDispatcher::displayWasRefreshed): (WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::offsetAtTime): (WebKit::momentumDecayRate): (WebKit::MomentumEventDispatcher::computeNextDelta): * WebProcess/WebPage/MomentumEventDispatcher.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286380 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286688 => 286689) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:22 UTC (rev 286688) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:25 UTC (rev 286689) @@ -1,3 +1,35 @@ +2021-12-03 Russell Epstein + +Cherry-pick r286380. rdar://problem/85928816 + +Unreviewed build fixes after r286346. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::displayWasRefreshed): +(WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::offsetAtTime): +(WebKit::momentumDecayRate): +(WebKit::MomentumEventDispatcher::computeNextDelta): +* WebProcess/WebPage/MomentumEventDispatcher.h: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286380 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Chris Dumez + +Unreviewed build fixes after r286346. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::startDisplayLink): +(WebKit::MomentumEventDispatcher::displayWasRefreshed): +(WebKit::MomentumEventDispatcher::didReceiveScrollEventWithInterval): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::offsetAtTime): +(WebKit::momentumDecayRate): +(WebKit::MomentumEventDispatcher::computeNextDelta): +* WebProcess/WebPage/MomentumEventDispatcher.h: + 2021-12-01 Alan Coon Cherry-pick r286346. rdar://problem/85928816 Modified: branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286688 => 286689) --- branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 20:23:22 UTC (rev 286688) +++ branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 20:23:25 UTC (rev 286689) @@ -30,8 +30,10 @@ #include "EventDispatcher.h" #include "Logging.h" +#include "WebProcess.h" #include "WebProcessProxyMessages.h" #include +#include namespace WebKit { @@ -221,7 +223,7 @@ } // FIXME: Switch down to lower-than-full-speed frame rates for the tail end of the curve. -WebProcess::singleton().parentProcessConnection()->send(Messages::WebProcessProxy::StartDisplayLink(m_observerID, displayID, FullSpeedFramesPerSecond), 0); +WebProcess::singleton().parentProcessConnection()->send(Messages::WebProcessProxy::StartDisplayLink(m_observerID, displayID, WebCore::FullSpeedFramesPerSecond), 0); RELEASE_LOG(ScrollAnimations, "MomentumEventDispatcher starting display link for display %d", displayID); } @@ -262,9 +264,9 @@ #if !USE(MOMENTUM_EVENT_DISPATCHER_PREMATURE_ROUNDING) // Intentional delta rounding (but at the end!). -FloatSize delta = roundedIntSize(desiredOffset - m_currentGesture.currentOffset); +WebCore::FloatSize delta = roundedIntSize(desiredOffset - m_currentGesture.currentOffset); #else -FloatSize delta = desiredOffset - m_currentGesture.currentOffset; +WebCore::FloatSize delta = desiredOffset - m_currentGesture.currentOffset; #endif dispatchSyntheticMomentumEvent(WebWheelEvent::PhaseChanged, -delta); @@ -272,7 +274,7 @@ m_currentGesture.currentOffset += delta; } -void MomentumEventDispatcher::didReceiveScrollEventWithInterval(FloatSize size, Seconds frameInterval) +void MomentumEventDispatcher::didReceiveScrollEventWithInterval(WebCore::FloatSize size, Seconds frameInterval) { auto push = [](HistoricalDeltas& deltas, Delta newDelta) {
[webkit-changes] [286688] branches/safari-612-branch/Source/WebCore/page/scrolling/ ThreadedScrollingTree.cpp
Title: [286688] branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Revision 286688 Author alanc...@apple.com Date 2021-12-08 12:23:22 -0800 (Wed, 08 Dec 2021) Log Message Unreviewed, speculative build fix for r286410. rdar://problem/85928816 Remove reference to serviceScrollAnimations. Modified Paths branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Diff Modified: branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp (286687 => 286688) --- branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-08 20:23:20 UTC (rev 286687) +++ branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-08 20:23:22 UTC (rev 286688) @@ -390,7 +390,6 @@ auto now = MonotonicTime::now(); m_lastDisplayDidRefreshTime = now; -serviceScrollAnimations(); if (m_state != SynchronizationState::Idle && canUpdateLayersOnScrollingThread()) applyLayerPositionsInternal(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286700] branches/safari-612-branch/Source/WebKit
Title: [286700] branches/safari-612-branch/Source/WebKit Revision 286700 Author alanc...@apple.com Date 2021-12-08 12:24:00 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286631. rdar://problem/85928816 [Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays https://bugs.webkit.org/show_bug.cgi?id=233948 rdar://86110813 Reviewed by Tim Horton. This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy needs to unregister for full speed updates using the old displayID, and register using the new one. Longer term, it would be better if "full speed updates" was a per-observer concept, but that would mean registering an observer while wheel events are being received, which needs a bit more thought. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::windowScreenDidChange): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286631 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286699 => 286700) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:23:57 UTC (rev 286699) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:24:00 UTC (rev 286700) @@ -1,3 +1,46 @@ +2021-12-08 Alan Coon + +Cherry-pick r286631. rdar://problem/85928816 + +[Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays +https://bugs.webkit.org/show_bug.cgi?id=233948 +rdar://86110813 + +Reviewed by Tim Horton. + +This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy +needs to unregister for full speed updates using the old displayID, and register +using the new one. + +Longer term, it would be better if "full speed updates" was a per-observer concept, +but that would mean registering an observer while wheel events are being received, +which needs a bit more thought. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::windowScreenDidChange): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286631 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-07 Simon Fraser + +[Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays +https://bugs.webkit.org/show_bug.cgi?id=233948 +rdar://86110813 + +Reviewed by Tim Horton. + +This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy +needs to unregister for full speed updates using the old displayID, and register +using the new one. + +Longer term, it would be better if "full speed updates" was a per-observer concept, +but that would mean registering an observer while wheel events are being received, +which needs a bit more thought. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::windowScreenDidChange): + 2021-12-06 Alan Coon Cherry-pick r286566. rdar://problem/85928816 Modified: branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (286699 => 286700) --- branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 20:23:57 UTC (rev 286699) +++ branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 20:24:00 UTC (rev 286700) @@ -4002,6 +4002,13 @@ void WebPageProxy::windowScreenDidChange(PlatformDisplayID displayID, std::optional nominalFramesPerSecond) { +#if HAVE(CVDISPLAYLINK) +if (hasRunningProcess() && m_displayID && m_registeredForFullSpeedUpdates) +process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, false); + +m_registeredForFullSpeedUpdates = false; +#endif + m_displayID = displayID; if (!hasRunningProcess()) @@ -4009,6 +4016,9 @@ send(Messages::EventDispatcher::PageScreenDidChange(m_webPageID, displayID)); send(Messages::WebPage::WindowScreenDidChange(displayID, nominalFramesPerSecond)); +#if HAVE(CVDISPLAYLINK) +updateDisplayLinkFrequency(); +#endif } float WebPageProxy::deviceScaleFactor() const ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286686] branches/safari-612-branch/Source/WebCore
Title: [286686] branches/safari-612-branch/Source/WebCore Revision 286686 Author alanc...@apple.com Date 2021-12-08 12:23:16 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286411. rdar://problem/85928816 Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events https://bugs.webkit.org/show_bug.cgi?id=233739 rdar://85946176 Reviewed by Tim Horton. While the scrolling thread is chilling in ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a frame to allow the main thread to handle the commit (for scroll synchronization), wheel events may have been dispatched to the scrolling thread. If we blow the timeout and commit anyway, we need to make sure we've handled these wheel events first, so that the current frame can commit some layer movement. We can achieve this by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel event dispatch from EventDispatcher::internalWheelEvent(). * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::applyLayerPositions): * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286411 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286685 => 286686) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:16 UTC (rev 286685) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:16 UTC (rev 286686) @@ -1,3 +1,53 @@ +2021-12-02 Russell Epstein + +Cherry-pick r286411. rdar://problem/85928816 + +Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events +https://bugs.webkit.org/show_bug.cgi?id=233739 +rdar://85946176 + +Reviewed by Tim Horton. + +While the scrolling thread is chilling in +ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a +frame to allow the main thread to handle the commit (for scroll synchronization), wheel +events may have been dispatched to the scrolling thread. + +If we blow the timeout and commit anyway, we need to make sure we've handled these wheel +events first, so that the current frame can commit some layer movement. We can achieve this +by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel +event dispatch from EventDispatcher::internalWheelEvent(). + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::applyLayerPositions): +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286411 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Simon Fraser + +Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events +https://bugs.webkit.org/show_bug.cgi?id=233739 +rdar://85946176 + +Reviewed by Tim Horton. + +While the scrolling thread is chilling in +ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), waiting up to half a +frame to allow the main thread to handle the commit (for scroll synchronization), wheel +events may have been dispatched to the scrolling thread. + +If we blow the timeout and commit anyway, we need to make sure we've handled these wheel +events first, so that the current frame can commit some layer movement. We can achieve this +by dispatching the applyLayerPositions(), which will enqueue it behind any waiting wheel +event dispatch from EventDispatcher::internalWheelEvent(). + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::applyLayerPositions): +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): + 2021-12-01 Alan Coon Cherry-pick r286352. rdar://problem/85928816 Modified: branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp (286685 => 286686) --- branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp 2021-12-08 20:23:16 UTC (rev 286685) +++ branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp 2021-12-08 20:23:16 UTC (rev 286686) @@ -416,7 +416,6 @@ void ScrollingTree::applyLayerPositions() { -ASSERT(isMainThread()); Locker locker {
[webkit-changes] [286687] branches/safari-612-branch/Source/WebCore
Title: [286687] branches/safari-612-branch/Source/WebCore Revision 286687 Author alanc...@apple.com Date 2021-12-08 12:23:20 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286410. rdar://problem/85928816 Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization https://bugs.webkit.org/show_bug.cgi?id=233738 rdar://85880147 Reviewed by Tim Horton. The scroll synchronization added in r261985 can cause dropped frames while scrolling. This occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is called at the start of a rendering update on the main thread, starts at a time when it will delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the CA commit for that frame on the scrolling thread. The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits on the condition, so that it doesn't exceed the next expected display refresh time. * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): (WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): * page/scrolling/ThreadedScrollingTree.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286410 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.h Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286686 => 286687) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:16 UTC (rev 286686) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:20 UTC (rev 286687) @@ -1,5 +1,53 @@ 2021-12-02 Russell Epstein +Cherry-pick r286410. rdar://problem/85928816 + +Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization +https://bugs.webkit.org/show_bug.cgi?id=233738 +rdar://85880147 + +Reviewed by Tim Horton. + +The scroll synchronization added in r261985 can cause dropped frames while scrolling. This +occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is +called at the start of a rendering update on the main thread, starts at a time when it will +delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the +CA commit for that frame on the scrolling thread. + +The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits +on the condition, so that it doesn't exceed the next expected display refresh time. + +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286410 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Simon Fraser + +Scrolling complex websites can stutter: scrolling thread commit can get blocked on scroll synchronization +https://bugs.webkit.org/show_bug.cgi?id=233738 +rdar://85880147 + +Reviewed by Tim Horton. + +The scroll synchronization added in r261985 can cause dropped frames while scrolling. This +occurs when ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout(), which is +called at the start of a rendering update on the main thread, starts at a time when it will +delay the handling of displayDidRefreshOnScrollingThread(). This can result in delaying the +CA commit for that frame on the scrolling thread. + +The solution is to clamp the duration that waitForRenderingUpdateCompletionOrTimeout() waits +on the condition, so that it doesn't exceed the next expected display refresh time. + +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: + +2021-12-02 Russell Epstein + Cherry-pick r286411. rdar://problem/85928816 Scrolling complex websites can stutter: scrolling thread frame can fail to process wheel events Modified: branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp (286686 => 286687) --- branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp 2021-12-08 20:23:16 UTC (rev 286686) +++
[webkit-changes] [286683] branches/safari-612-branch/Source
Title: [286683] branches/safari-612-branch/Source Revision 286683 Author alanc...@apple.com Date 2021-12-08 12:23:10 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286346. rdar://problem/85928816 Add a momentum event synthesizer https://bugs.webkit.org/show_bug.cgi?id=233653 Reviewed by Simon Fraser. Source/WebCore/PAL: * pal/spi/mac/IOKitSPIMac.h: Add some SPI. Source/WebKit: * Platform/Logging.h: Add ScrollAnimations log channel to WebKit (it already exists in WebCore). * Shared/ScrollingAccelerationCurve.cpp: Added. (WebKit::ScrollingAccelerationCurve::ScrollingAccelerationCurve): (WebKit::ScrollingAccelerationCurve::interpolate): (WebKit::ScrollingAccelerationCurve::computeIntermediateValuesIfNeeded): (WebKit::ScrollingAccelerationCurve::evaluateQuartic): (WebKit::ScrollingAccelerationCurve::accelerationFactor): (WebKit::ScrollingAccelerationCurve::encode const): (WebKit::ScrollingAccelerationCurve::decode): (WebKit::operator<<): (WebKit::ScrollingAccelerationCurve::fromNativeWheelEvent): * Shared/ScrollingAccelerationCurve.h: Added. (WebKit::ScrollingAccelerationCurve::operator== const): (WebKit::ScrollingAccelerationCurve::operator!= const): Add a class that represents a quartic scrolling acceleration curve with a trailing linear tangent region, and allows interpolation between curves and evaluation of the curve at a point. * Shared/mac/ScrollingAccelerationCurveMac.mm: Added. (WebKit::fromFixedPoint): (WebKit::readFixedPointParameter): (WebKit::fromIOHIDCurve): (WebKit::fromIOHIDCurveArrayWithAcceleration): (WebKit::ScrollingAccelerationCurve::fromNativeWheelEvent): Given a NativeWebWheelEvent, extract its underlying platform event and fetch the ScrollingAccelerationCurve for the originating device. * Sources.txt: * SourcesCocoa.txt: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::handleWheelEvent): Fetch the current ScrollingAccelerationCurve on each momentum begin event, if the feature is enabled. (WebKit::WebPageProxy::sendWheelEvent): Send the ScrollingAccelerationCurve to EventDispatcher just before we send the momentum begin event along, if it has changed. (WebKit::WebPageProxy::windowScreenDidChange): Keep EventDispatcher apprised of changes to the current screen of the page. (WebKit::WebPageProxy::resetState): * UIProcess/WebPageProxy.h: * WebKit.xcodeproj/project.pbxproj: * WebProcess/WebPage/EventDispatcher.cpp: (WebKit::EventDispatcher::EventDispatcher): (WebKit::EventDispatcher::internalWheelEvent): Factor most of wheelEvent out into internalWheelEvent, so that MomentumEventDispatcher can call internalWheelEvent(), skipping the code in wheelEvent() that forwards the event... to MomentumEventDispatcher. Also, keep track of where the event came from (UI process or MomentumEventDispatcher) and avoid sending didReceiveEvent replies to the UI process for synthetic events that it doesn't know about. (WebKit::EventDispatcher::wheelEvent): Forward wheel events to MomentumEventDispatcher. (WebKit::EventDispatcher::setScrollingAccelerationCurve): Forward scrolling curve changes to MomentumEventDispatcher. (WebKit::EventDispatcher::displayWasRefreshed): Forward display refresh callbacks to MomentumEventDispatcher. (WebKit::EventDispatcher::windowScreenDidChange): Forward page screen changes to MomentumEventDispatcher. * WebProcess/WebPage/EventDispatcher.h: * WebProcess/WebPage/EventDispatcher.messages.in: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::wheelEvent): (WebKit::WebPage::dispatchWheelEventWithoutScrolling): * WebProcess/WebPage/WebPage.h: Don't send didReceiveEvent for synthetic events from the main thread either. * WebProcess/WebPage/MomentumEventDispatcher.cpp: Added. (WebKit::MomentumEventDispatcher::MomentumEventDispatcher): (WebKit::MomentumEventDispatcher::~MomentumEventDispatcher): (WebKit::MomentumEventDispatcher::eventShouldStartSyntheticMomentumPhase const): If we have everything we need (a scrolling curve - which also implies that the setting is enabled - and raw platform deltas), and the event is a momentum begin event, we can use it to start a synthetic momentum phase. (WebKit::MomentumEventDispatcher::handleWheelEvent): Start or stop the momentum phase as appropriate. Record any incoming fingers-down phase events in a rolling event history structure. Block platform-event-driven events from being further handled by WebKit if we are inside a synthetic momentum phase, since we'll be replacing them. (WebKit::appKitScrollMultiplierForEvent): Determine the AppKit scroll muliplier ("accelerated" vs "unaccelerated" deltas in NSEvent parlance) from the event via division.
[webkit-changes] [286684] branches/safari-612-branch/Source/WebCore
Title: [286684] branches/safari-612-branch/Source/WebCore Revision 286684 Author alanc...@apple.com Date 2021-12-08 12:23:13 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286352. rdar://problem/85928816 Custom application of r286352 to introduce frameDuration() for a future patch. Pass the timestamp for scrolling thread animations through all the serviceScrollAnimation() calls https://bugs.webkit.org/show_bug.cgi?id=233678 Reviewed by Tim Horton. Source/WebCore: All scroll animations serviced at the same time should use a common timestamp, and avoid multiple calls to MonotonicTime::now() by passing the time down through from ThreadedScrollingTree::displayDidRefreshOnScrollingThread(). Also minor refactoring in ThreadedScrollingTree to prepare for a future patch. * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::nominalFramesPerSecond): * page/scrolling/ScrollingTreeScrollingNode.h: * page/scrolling/ScrollingTreeScrollingNodeDelegate.h: * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::frameDuration): (WebCore::ThreadedScrollingTree::maxAllowableRenderingUpdateDurationForSynchronization): (WebCore::ThreadedScrollingTree::serviceScrollAnimations): (WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): * page/scrolling/ThreadedScrollingTree.h: * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h: * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: (WebCore::ScrollingTreeFrameScrollingNodeMac::serviceScrollAnimation): * page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.h: * page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.mm: (WebCore::ScrollingTreeOverflowScrollingNodeMac::serviceScrollAnimation): * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.cpp: (WebCore::ScrollingTreeFrameScrollingNodeNicosia::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeFrameScrollingNodeNicosia.h: * page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.cpp: (WebCore::ScrollingTreeOverflowScrollingNodeNicosia::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeOverflowScrollingNodeNicosia.h: * page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.cpp: (WebCore::ScrollingTreeScrollingNodeDelegateNicosia::serviceScrollAnimation): * page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.h: Source/WebKit: * UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286352 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp branches/safari-612-branch/Source/WebCore/page/scrolling/ThreadedScrollingTree.h Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286683 => 286684) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:10 UTC (rev 286683) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:13 UTC (rev 286684) @@ -1,5 +1,78 @@ 2021-12-01 Alan Coon +Cherry-pick r286352. rdar://problem/85928816 + +Custom application of r286352 to introduce frameDuration() for a future patch. + +Pass the timestamp for scrolling thread animations through all the serviceScrollAnimation() calls +https://bugs.webkit.org/show_bug.cgi?id=233678 + +Reviewed by Tim Horton. + +Source/WebCore: + +All scroll animations serviced at the same time should use a common timestamp, and +avoid multiple calls to MonotonicTime::now() by passing the time down through from +ThreadedScrollingTree::displayDidRefreshOnScrollingThread(). + +Also minor refactoring in ThreadedScrollingTree to prepare for a future patch. + +* page/scrolling/ScrollingTree.cpp: +(WebCore::ScrollingTree::nominalFramesPerSecond): +* page/scrolling/ScrollingTreeScrollingNode.h: +* page/scrolling/ScrollingTreeScrollingNodeDelegate.h: +* page/scrolling/ThreadedScrollingTree.cpp: +(WebCore::ThreadedScrollingTree::frameDuration): +(WebCore::ThreadedScrollingTree::maxAllowableRenderingUpdateDurationForSynchronization): +(WebCore::ThreadedScrollingTree::serviceScrollAnimations): +(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread): +* page/scrolling/ThreadedScrollingTree.h: +* page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h: +* page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: +
[webkit-changes] [286682] branches/safari-612-branch/Source
Title: [286682] branches/safari-612-branch/Source Revision 286682 Author alanc...@apple.com Date 2021-12-08 12:23:02 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r283353. rdar://problem/85928816 Simplify some scrolling-related code in WebKit with use of RectEdges https://bugs.webkit.org/show_bug.cgi?id=231037 Reviewed by Tim Horton. Source/WebCore: Export edgePinnedState(). * platform/ScrollableArea.h: Source/WebKit: Use RectEdges in code that tracks rubber banding state, and edge pinned state. * Shared/WebCoreArgumentCoders.cpp: (IPC::ArgumentCoder>::encode): (IPC::ArgumentCoder>::decode): * Shared/WebCoreArgumentCoders.h: * UIProcess/API/C/WKPage.cpp: (WKPageIsPinnedToLeftSide): (WKPageIsPinnedToRightSide): (WKPageIsPinnedToTopSide): (WKPageIsPinnedToBottomSide): (WKPageRubberBandsAtLeft): (WKPageRubberBandsAtRight): (WKPageRubberBandsAtTop): (WKPageRubberBandsAtBottom): * UIProcess/Cocoa/WebViewImpl.mm: (WebKit::toWKRectEdge): (WebKit::toRectEdges): (WebKit::WebViewImpl::pinnedState): (WebKit::WebViewImpl::rubberBandingEnabled): (WebKit::WebViewImpl::setRubberBandingEnabled): * UIProcess/ViewGestureController.cpp: (WebKit::ViewGestureController::PendingSwipeTracker::scrollEventCanBecomeSwipe): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::sendWheelEvent): (WebKit::WebPageProxy::setRubberBandsAtLeft): (WebKit::WebPageProxy::setRubberBandsAtRight): (WebKit::WebPageProxy::setRubberBandsAtTop): (WebKit::WebPageProxy::setRubberBandsAtBottom): (WebKit::WebPageProxy::didCommitLoadForFrame): (WebKit::WebPageProxy::resetState): (WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame): (WebKit::WebPageProxy::rubberBandsAtLeft const): Deleted. (WebKit::WebPageProxy::rubberBandsAtRight const): Deleted. (WebKit::WebPageProxy::rubberBandsAtTop const): Deleted. (WebKit::WebPageProxy::rubberBandsAtBottom const): Deleted. * UIProcess/WebPageProxy.h: * UIProcess/WebPageProxy.messages.in: * WebProcess/WebPage/EventDispatcher.cpp: (WebKit::EventDispatcher::wheelEvent): * WebProcess/WebPage/EventDispatcher.h: * WebProcess/WebPage/EventDispatcher.messages.in: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updateMainFrameScrollOffsetPinning): * WebProcess/WebPage/WebPage.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@283353 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/platform/ScrollableArea.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/WebCoreArgumentCoders.cpp branches/safari-612-branch/Source/WebKit/Shared/WebCoreArgumentCoders.h branches/safari-612-branch/Source/WebKit/UIProcess/API/C/WKPage.cpp branches/safari-612-branch/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm branches/safari-612-branch/Source/WebKit/UIProcess/ViewGestureController.cpp branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.cpp branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.h branches/safari-612-branch/Source/WebKit/UIProcess/WebPageProxy.messages.in branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.h branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/EventDispatcher.messages.in branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebPage.h Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286681 => 286682) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:22:57 UTC (rev 286681) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:02 UTC (rev 286682) @@ -1,5 +1,81 @@ 2021-12-01 Alan Coon +Cherry-pick r283353. rdar://problem/85928816 + +Simplify some scrolling-related code in WebKit with use of RectEdges +https://bugs.webkit.org/show_bug.cgi?id=231037 + +Reviewed by Tim Horton. + +Source/WebCore: + +Export edgePinnedState(). + +* platform/ScrollableArea.h: + +Source/WebKit: + +Use RectEdges in code that tracks rubber banding state, and edge pinned state. + +* Shared/WebCoreArgumentCoders.cpp: +(IPC::ArgumentCoder>::encode): +(IPC::ArgumentCoder>::decode): +* Shared/WebCoreArgumentCoders.h: +* UIProcess/API/C/WKPage.cpp: +(WKPageIsPinnedToLeftSide): +(WKPageIsPinnedToRightSide): +(WKPageIsPinnedToTopSide): +(WKPageIsPinnedToBottomSide): +(WKPageRubberBandsAtLeft): +(WKPageRubberBandsAtRight): +(WKPageRubberBandsAtTop): +(WKPageRubberBandsAtBottom): +* UIProcess/Cocoa/WebViewImpl.mm: +(WebKit::toWKRectEdge): +
[webkit-changes] [286685] branches/safari-612.4.2.0-branch/Source
Title: [286685] branches/safari-612.4.2.0-branch/Source Revision 286685 Author repst...@apple.com Date 2021-12-08 12:23:16 -0800 (Wed, 08 Dec 2021) Log Message Versioning. WebKit-7612.4.2.0.1 Modified Paths branches/safari-612.4.2.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612.4.2.0-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612.4.2.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286684 => 286685) --- branches/safari-612.4.2.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:23:13 UTC (rev 286684) +++ branches/safari-612.4.2.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 20:23:16 UTC (rev 286685) @@ -25,8 +25,8 @@ MINOR_VERSION = 4; TINY_VERSION = 2; 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-612.4.2.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286684 => 286685) --- branches/safari-612.4.2.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:23:13 UTC (rev 286684) +++ branches/safari-612.4.2.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 20:23:16 UTC (rev 286685) @@ -25,8 +25,8 @@ MINOR_VERSION = 4; TINY_VERSION = 2; 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-612.4.2.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286684 => 286685) --- branches/safari-612.4.2.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:23:13 UTC (rev 286684) +++ branches/safari-612.4.2.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 20:23:16 UTC (rev 286685) @@ -25,8 +25,8 @@ MINOR_VERSION = 4; TINY_VERSION = 2; 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-612.4.2.0-branch/Source/WebCore/Configurations/Version.xcconfig (286684 => 286685) --- branches/safari-612.4.2.0-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:23:13 UTC (rev 286684) +++ branches/safari-612.4.2.0-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 20:23:16 UTC (rev 286685) @@ -25,8 +25,8 @@ MINOR_VERSION = 4; TINY_VERSION = 2; 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-612.4.2.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286684 => 286685) --- branches/safari-612.4.2.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:23:13 UTC (rev 286684) +++ branches/safari-612.4.2.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 20:23:16 UTC (rev 286685) @@ -25,8 +25,8 @@ MINOR_VERSION = 4; TINY_VERSION = 2; 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 =
[webkit-changes] [286679] branches/safari-612-branch/Source
Title: [286679] branches/safari-612-branch/Source Revision 286679 Author alanc...@apple.com Date 2021-12-08 12:22:51 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286270. rdar://problem/85928816 Plumb raw platform scrolling deltas along in wheel events https://bugs.webkit.org/show_bug.cgi?id=233583 Reviewed by Simon Fraser. Source/WebCore: * platform/PlatformWheelEvent.cpp: (WebCore::PlatformWheelEvent::createFromGesture): * platform/PlatformWheelEvent.h: (WebCore::PlatformWheelEvent::rawPlatformDelta const): * PAL/pal/spi/mac/IOKitSPIMac.h: Source/WebKit: * Shared/WebEventConversion.cpp: (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): * Shared/WebWheelEvent.cpp: (WebKit::WebWheelEvent::WebWheelEvent): (WebKit::WebWheelEvent::encode const): (WebKit::WebWheelEvent::decode): * Shared/WebWheelEvent.h: (WebKit::WebWheelEvent::rawPlatformDelta const): * Shared/WebWheelEventCoalescer.cpp: (WebKit::WebWheelEventCoalescer::coalesce): * Shared/mac/WebEventFactory.mm: (WebKit::WebEventFactory::createWebWheelEvent): Extract and plumb raw unaccelerated (in the HID sense) deltas in scroll events for use in a future patch. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286270 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h branches/safari-612-branch/Source/WebCore/platform/PlatformWheelEvent.cpp branches/safari-612-branch/Source/WebCore/platform/PlatformWheelEvent.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/WebEventConversion.cpp branches/safari-612-branch/Source/WebKit/Shared/WebWheelEvent.cpp branches/safari-612-branch/Source/WebKit/Shared/WebWheelEvent.h branches/safari-612-branch/Source/WebKit/Shared/WebWheelEventCoalescer.cpp branches/safari-612-branch/Source/WebKit/Shared/mac/WebEventFactory.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286678 => 286679) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:22:46 UTC (rev 286678) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:22:51 UTC (rev 286679) @@ -1,5 +1,55 @@ 2021-12-01 Alan Coon +Cherry-pick r286270. rdar://problem/85928816 + +Plumb raw platform scrolling deltas along in wheel events +https://bugs.webkit.org/show_bug.cgi?id=233583 + +Reviewed by Simon Fraser. + +Source/WebCore: + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::rawPlatformDelta const): +* PAL/pal/spi/mac/IOKitSPIMac.h: + +Source/WebKit: + +* Shared/WebEventConversion.cpp: +(WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): +* Shared/WebWheelEvent.cpp: +(WebKit::WebWheelEvent::WebWheelEvent): +(WebKit::WebWheelEvent::encode const): +(WebKit::WebWheelEvent::decode): +* Shared/WebWheelEvent.h: +(WebKit::WebWheelEvent::rawPlatformDelta const): +* Shared/WebWheelEventCoalescer.cpp: +(WebKit::WebWheelEventCoalescer::coalesce): +* Shared/mac/WebEventFactory.mm: +(WebKit::WebEventFactory::createWebWheelEvent): +Extract and plumb raw unaccelerated (in the HID sense) deltas in scroll +events for use in a future patch. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286270 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-29 Tim Horton + +Plumb raw platform scrolling deltas along in wheel events +https://bugs.webkit.org/show_bug.cgi?id=233583 + +Reviewed by Simon Fraser. + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::rawPlatformDelta const): +* PAL/pal/spi/mac/IOKitSPIMac.h: + +2021-12-01 Alan Coon + Cherry-pick r285790. rdar://problem/85928816 Attach IOHIDEvent timestamps to wheel events Modified: branches/safari-612-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h (286678 => 286679) --- branches/safari-612-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h 2021-12-08 20:22:46 UTC (rev 286678) +++ branches/safari-612-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h 2021-12-08 20:22:51 UTC (rev 286679) @@ -83,7 +83,22 @@ }; typedef uint32_t IOHIDEventType; +typedef uint32_t IOHIDEventField; + +#ifdef __LP64__ +typedef double IOHIDFloat; +#else +typedef float IOHIDFloat; +#endif + +#define IOHIDEventFieldBase(type) (type << 16) + +#define kIOHIDEventFieldScrollBase IOHIDEventFieldBase(kIOHIDEventTypeScroll) +static const IOHIDEventField kIOHIDEventFieldScrollX = (kIOHIDEventFieldScrollBase | 0);
[webkit-changes] [286690] branches/safari-612-branch/Source
Title: [286690] branches/safari-612-branch/Source Revision 286690 Author alanc...@apple.com Date 2021-12-08 12:23:29 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286481. rdar://problem/85928816 A Safari tab can rarely get stuck in a state where rendering updates stop happening https://bugs.webkit.org/show_bug.cgi?id=233784 rdar://85445072 Reviewed by Chris Dumez. Sometimes a Safari tab can get into a state where rendering updates cease to happen, which manifests as partially broken scrolling, blank tiles revealed when scrolling, and somewhat broken page updates. I was able to sometimes reproduce this by clicking on links in eBay emails from Mail on a system with two displays. From the one time I reproduce with logging, the output indicated that DisplayRefreshMonitor::displayLinkFired() would early return because isPreviousFrameDone() was false. The only way for that to occur, barring memory corruption, is if DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() returned early, which it does if the callback comes twice in a single event loop; this may explain the rarity. So fix DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() call setIsPreviousFrameDone(true) so the next callback can make progress Also add some locking annotations and fix one missing lock, and some release logging. Source/WebCore: * platform/graphics/DisplayRefreshMonitor.cpp: (WebCore::DisplayRefreshMonitor::stop): (WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount): (WebCore::DisplayRefreshMonitor::displayLinkFired): * platform/graphics/DisplayRefreshMonitor.h: (WebCore::DisplayRefreshMonitor::WTF_REQUIRES_LOCK): (WebCore::DisplayRefreshMonitor::WTF_GUARDED_BY_LOCK): (WebCore::DisplayRefreshMonitor::setMaxUnscheduledFireCount): Deleted. (WebCore::DisplayRefreshMonitor::isScheduled const): Deleted. (WebCore::DisplayRefreshMonitor::setIsScheduled): Deleted. (WebCore::DisplayRefreshMonitor::isPreviousFrameDone const): Deleted. (WebCore::DisplayRefreshMonitor::setIsPreviousFrameDone): Deleted. Source/WebKit: * WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp: (WebKit::DisplayRefreshMonitorMac::dispatchDisplayDidRefresh): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286481 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitor.cpp branches/safari-612-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitor.h branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/mac/DisplayRefreshMonitorMac.cpp Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286689 => 286690) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:25 UTC (rev 286689) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:23:29 UTC (rev 286690) @@ -1,3 +1,87 @@ +2021-12-03 Russell Epstein + +Cherry-pick r286481. rdar://problem/85928816 + +A Safari tab can rarely get stuck in a state where rendering updates stop happening +https://bugs.webkit.org/show_bug.cgi?id=233784 +rdar://85445072 + +Reviewed by Chris Dumez. + +Sometimes a Safari tab can get into a state where rendering updates cease to happen, +which manifests as partially broken scrolling, blank tiles revealed when scrolling, +and somewhat broken page updates. I was able to sometimes reproduce this by clicking +on links in eBay emails from Mail on a system with two displays. + +From the one time I reproduce with logging, the output indicated that DisplayRefreshMonitor::displayLinkFired() +would early return because isPreviousFrameDone() was false. The only way for that to occur, +barring memory corruption, is if DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() returned early, +which it does if the callback comes twice in a single event loop; this may explain the rarity. + +So fix DisplayRefreshMonitorMac::dispatchDisplayDidRefresh() call setIsPreviousFrameDone(true) +so the next callback can make progress + +Also add some locking annotations and fix one missing lock, and some release logging. + +Source/WebCore: + +* platform/graphics/DisplayRefreshMonitor.cpp: +(WebCore::DisplayRefreshMonitor::stop): +(WebCore::DisplayRefreshMonitor::firedAndReachedMaxUnscheduledFireCount): +(WebCore::DisplayRefreshMonitor::displayLinkFired): +* platform/graphics/DisplayRefreshMonitor.h: +(WebCore::DisplayRefreshMonitor::WTF_REQUIRES_LOCK): +(WebCore::DisplayRefreshMonitor::WTF_GUARDED_BY_LOCK): +
[webkit-changes] [286681] branches/safari-612-branch/Tools
Title: [286681] branches/safari-612-branch/Tools Revision 286681 Author alanc...@apple.com Date 2021-12-08 12:22:57 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286368. rdar://problem/85928816 REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails https://bugs.webkit.org/show_bug.cgi?id=233689 Reviewed by Simon Fraser. * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver encodes to a particular size (607 bytes). If you look at the resultant plist before r286346, the encoded frameID and resourceLoadID have the same value, and because of NSKeyedArchiver deduplication, share the same object. If you look at the resultant plist *after* r286346, the encoded frameID is one larger than the resourceLoadID, thus cannot be deduplicated, and end up encoding as separate objects. This results in the encoded size increasing to 612 bytes. The reason that the encoded frameID is now one value larger is that ObjectIdentifier uses a global identifier pool, and r286346 creates one more ObjectIdentifier during EventHandler construction, destroying our entirely coincidental ID overlap, and causing the aforementioned encoded size change. Remove this assertion from the test, since it is very aggressive and seems unnecessary. We could instead just rebaseline the test, but it seems insufficiently important to burden some future developer with a repeat of this evening of exploration and discovery. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286368 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Tools/ChangeLog branches/safari-612-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm Diff Modified: branches/safari-612-branch/Tools/ChangeLog (286680 => 286681) --- branches/safari-612-branch/Tools/ChangeLog 2021-12-08 20:22:54 UTC (rev 286680) +++ branches/safari-612-branch/Tools/ChangeLog 2021-12-08 20:22:57 UTC (rev 286681) @@ -1,3 +1,70 @@ +2021-12-01 Alan Coon + +Cherry-pick r286368. rdar://problem/85928816 + +REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails +https://bugs.webkit.org/show_bug.cgi?id=233689 + +Reviewed by Simon Fraser. + +* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: +This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver +encodes to a particular size (607 bytes). + +If you look at the resultant plist before r286346, the encoded frameID +and resourceLoadID have the same value, and because of NSKeyedArchiver +deduplication, share the same object. + +If you look at the resultant plist *after* r286346, the encoded frameID +is one larger than the resourceLoadID, thus cannot be deduplicated, and +end up encoding as separate objects. This results in the encoded size +increasing to 612 bytes. + +The reason that the encoded frameID is now one value larger is that +ObjectIdentifier uses a global identifier pool, and r286346 creates +one more ObjectIdentifier during EventHandler construction, destroying +our entirely coincidental ID overlap, and causing the aforementioned +encoded size change. + +Remove this assertion from the test, since it is very aggressive and +seems unnecessary. We could instead just rebaseline the test, but it +seems insufficiently important to burden some future developer with +a repeat of this evening of exploration and discovery. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286368 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-01 Tim Horton + +REGRESSION (r286346): ResourceLoadDelegate.LoadInfo fails +https://bugs.webkit.org/show_bug.cgi?id=233689 + +Reviewed by Simon Fraser. + +* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: +This test asserts that archiving a _WKResourceLoadInfo via NSKeyedArchiver +encodes to a particular size (607 bytes). + +If you look at the resultant plist before r286346, the encoded frameID +and resourceLoadID have the same value, and because of NSKeyedArchiver +deduplication, share the same object. + +If you look at the resultant plist *after* r286346, the encoded frameID +is one larger than the resourceLoadID, thus cannot be deduplicated, and +end up encoding as separate objects. This results in the encoded size +increasing to 612 bytes. + +The reason that the encoded frameID is now one value larger is that +ObjectIdentifier uses a global identifier pool, and r286346 creates +one more ObjectIdentifier during EventHandler construction, destroying +our entirely coincidental ID overlap, and causing the
[webkit-changes] [286677] branches/safari-612-branch/Source/WebCore
Title: [286677] branches/safari-612-branch/Source/WebCore Revision 286677 Author alanc...@apple.com Date 2021-12-08 12:22:39 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r285786. rdar://problem/85928816 Clean up IOKit SPI headers https://bugs.webkit.org/show_bug.cgi?id=233093 Reviewed by Simon Fraser. Source/WebCore: * platform/gamepad/cocoa/GameControllerGamepadProvider.mm: * platform/gamepad/mac/HIDGamepadProvider.h: * platform/gamepad/mac/HIDGamepadProvider.mm: Source/WebCore/PAL: * PAL.xcodeproj/project.pbxproj: * pal/spi/cg/CoreGraphicsSPI.h: * pal/spi/cocoa/IOKitSPI.h: * pal/spi/ios/IOKitSPIIOS.h: Added. * pal/spi/mac/IOKitSPIMac.h: IOKit vends a much different set of public API on iOS vs. macOS, so we have separate SPI headers to reduce the confusion. Unfortunately, the SPI header for iOS was not explicitly named as such, and started being used in some macOS code. For a while, this didn't lead to any trouble because the aforementioned macOS code didn't ALSO have the public SDK headers included, but a future patch from Simon will use IOKitSPI.h in a place where the macOS IOKit public headers are included, and thus we must make the split more explicit. Rename IOKitSPI.h to IOKitSPIIOS.h; make IOKitSPI choose the right one. Add some SPI defintions to IOKitSPIMac.h that were missing (which the dependent code was getting via the iOS header on macOS). git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285786 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/PAL/ChangeLog branches/safari-612-branch/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj branches/safari-612-branch/Source/WebCore/PAL/pal/spi/cocoa/IOKitSPI.h branches/safari-612-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h branches/safari-612-branch/Source/WebCore/platform/gamepad/cocoa/GameControllerGamepadProvider.mm branches/safari-612-branch/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.h branches/safari-612-branch/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.mm Added Paths branches/safari-612-branch/Source/WebCore/PAL/pal/spi/ios/IOKitSPIIOS.h Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286676 => 286677) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:20:40 UTC (rev 286676) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:22:39 UTC (rev 286677) @@ -1,3 +1,53 @@ +2021-12-01 Alan Coon + +Cherry-pick r285786. rdar://problem/85928816 + +Clean up IOKit SPI headers +https://bugs.webkit.org/show_bug.cgi?id=233093 + +Reviewed by Simon Fraser. + +Source/WebCore: + +* platform/gamepad/cocoa/GameControllerGamepadProvider.mm: +* platform/gamepad/mac/HIDGamepadProvider.h: +* platform/gamepad/mac/HIDGamepadProvider.mm: + +Source/WebCore/PAL: + +* PAL.xcodeproj/project.pbxproj: +* pal/spi/cg/CoreGraphicsSPI.h: +* pal/spi/cocoa/IOKitSPI.h: +* pal/spi/ios/IOKitSPIIOS.h: Added. +* pal/spi/mac/IOKitSPIMac.h: +IOKit vends a much different set of public API on iOS vs. macOS, +so we have separate SPI headers to reduce the confusion. + +Unfortunately, the SPI header for iOS was not explicitly named as such, +and started being used in some macOS code. For a while, this didn't lead +to any trouble because the aforementioned macOS code didn't ALSO have +the public SDK headers included, but a future patch from Simon will +use IOKitSPI.h in a place where the macOS IOKit public headers are included, +and thus we must make the split more explicit. + +Rename IOKitSPI.h to IOKitSPIIOS.h; make IOKitSPI choose the right one. +Add some SPI defintions to IOKitSPIMac.h that were missing (which the +dependent code was getting via the iOS header on macOS). + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285786 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-13 Tim Horton + +Clean up IOKit SPI headers +https://bugs.webkit.org/show_bug.cgi?id=233093 + +Reviewed by Simon Fraser. + +* platform/gamepad/cocoa/GameControllerGamepadProvider.mm: +* platform/gamepad/mac/HIDGamepadProvider.h: +* platform/gamepad/mac/HIDGamepadProvider.mm: + 2021-12-06 Ryan Haddad Unreviewed, fix the debug build. Modified: branches/safari-612-branch/Source/WebCore/PAL/ChangeLog (286676 => 286677) --- branches/safari-612-branch/Source/WebCore/PAL/ChangeLog 2021-12-08 20:20:40 UTC (rev 286676) +++ branches/safari-612-branch/Source/WebCore/PAL/ChangeLog 2021-12-08 20:22:39 UTC (rev 286677) @@ -1,3 +1,68 @@ +2021-12-01 Alan Coon + +Cherry-pick r285786. rdar://problem/85928816 + +Clean up IOKit SPI headers +
[webkit-changes] [286678] branches/safari-612-branch/Source
Title: [286678] branches/safari-612-branch/Source Revision 286678 Author alanc...@apple.com Date 2021-12-08 12:22:46 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r285790. rdar://problem/85928816 Attach IOHIDEvent timestamps to wheel events https://bugs.webkit.org/show_bug.cgi?id=233051 Reviewed by Wenson Hsieh. Source/WebCore: On some macOS devices, there can be significant deltas between NSEvent timestamps, and the timestamps on underlying IOHIDEvents (rdar://85309639). This makes momentum velocity computation unpredictable; we can get better results by using IOHIDEvent timestamps. * platform/PlatformWheelEvent.cpp: (WebCore::PlatformWheelEvent::createFromGesture): * platform/PlatformWheelEvent.h: (WebCore::PlatformWheelEvent::ioHIDEventTimestamp const): * platform/mac/PlatformEventFactoryMac.h: * platform/mac/PlatformEventFactoryMac.mm: (WebCore::eventTimeStampSince1970): (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder): (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder): (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder): Source/WebCore/PAL: Expose a few bits of SPI needed. * pal/spi/cg/CoreGraphicsSPI.h: * pal/spi/cocoa/IOKitSPI.h: Source/WebKit: On some macOS devices, there can be significant deltas between NSEvent timestamps, and the timestamps on underlying IOHIDEvents (rdar://85309639). This makes momentum velocity computation unpredictable; we can get better results by using IOHIDEvent timestamps. * Shared/WebEventConversion.cpp: (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): * Shared/WebWheelEvent.cpp: (WebKit::WebWheelEvent::WebWheelEvent): (WebKit::WebWheelEvent::encode const): (WebKit::WebWheelEvent::decode): * Shared/WebWheelEvent.h: (WebKit::WebWheelEvent::ioHIDEventTimestamp const): * Shared/WebWheelEventCoalescer.cpp: (WebKit::WebWheelEventCoalescer::coalesce): * Shared/ios/WebIOSEventFactory.mm: (WebIOSEventFactory::createWebWheelEvent): * Shared/mac/NativeWebGestureEventMac.mm: * Shared/mac/WebEventFactory.mm: (WebKit::WebEventFactory::createWebMouseEvent): (WebKit::WebEventFactory::createWebWheelEvent): (WebKit::WebEventFactory::createWebKeyboardEvent): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285790 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebCore/ChangeLog branches/safari-612-branch/Source/WebCore/PAL/ChangeLog branches/safari-612-branch/Source/WebCore/PAL/pal/spi/cg/CoreGraphicsSPI.h branches/safari-612-branch/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h branches/safari-612-branch/Source/WebCore/platform/PlatformWheelEvent.cpp branches/safari-612-branch/Source/WebCore/platform/PlatformWheelEvent.h branches/safari-612-branch/Source/WebCore/platform/mac/PlatformEventFactoryMac.h branches/safari-612-branch/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/WebEventConversion.cpp branches/safari-612-branch/Source/WebKit/Shared/WebWheelEvent.cpp branches/safari-612-branch/Source/WebKit/Shared/WebWheelEvent.h branches/safari-612-branch/Source/WebKit/Shared/WebWheelEventCoalescer.cpp branches/safari-612-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm branches/safari-612-branch/Source/WebKit/Shared/mac/NativeWebGestureEventMac.mm branches/safari-612-branch/Source/WebKit/Shared/mac/WebEventFactory.mm Diff Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286677 => 286678) --- branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:22:39 UTC (rev 286677) +++ branches/safari-612-branch/Source/WebCore/ChangeLog 2021-12-08 20:22:46 UTC (rev 286678) @@ -1,5 +1,89 @@ 2021-12-01 Alan Coon +Cherry-pick r285790. rdar://problem/85928816 + +Attach IOHIDEvent timestamps to wheel events +https://bugs.webkit.org/show_bug.cgi?id=233051 + +Reviewed by Wenson Hsieh. +Source/WebCore: + +On some macOS devices, there can be significant deltas between NSEvent timestamps, +and the timestamps on underlying IOHIDEvents (rdar://85309639). This makes momentum +velocity computation unpredictable; we can get better results by using IOHIDEvent +timestamps. + +* platform/PlatformWheelEvent.cpp: +(WebCore::PlatformWheelEvent::createFromGesture): +* platform/PlatformWheelEvent.h: +(WebCore::PlatformWheelEvent::ioHIDEventTimestamp const): +* platform/mac/PlatformEventFactoryMac.h: +* platform/mac/PlatformEventFactoryMac.mm: +(WebCore::eventTimeStampSince1970): +(WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder): +(WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder): +(WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder): +
[webkit-changes] [286680] branches/safari-612-branch/Source/WebKit
Title: [286680] branches/safari-612-branch/Source/WebKit Revision 286680 Author alanc...@apple.com Date 2021-12-08 12:22:54 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286277. rdar://problem/85928816 Fix the build * Shared/ios/WebIOSEventFactory.mm: (WebIOSEventFactory::createWebWheelEvent): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286277 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-612-branch/Source/WebKit/ChangeLog branches/safari-612-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm Diff Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286679 => 286680) --- branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:22:51 UTC (rev 286679) +++ branches/safari-612-branch/Source/WebKit/ChangeLog 2021-12-08 20:22:54 UTC (rev 286680) @@ -1,5 +1,24 @@ 2021-12-01 Alan Coon +Cherry-pick r286277. rdar://problem/85928816 + +Fix the build + +* Shared/ios/WebIOSEventFactory.mm: +(WebIOSEventFactory::createWebWheelEvent): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286277 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-11-29 Tim Horton + +Fix the build + +* Shared/ios/WebIOSEventFactory.mm: +(WebIOSEventFactory::createWebWheelEvent): + +2021-12-01 Alan Coon + Cherry-pick r286270. rdar://problem/85928816 Plumb raw platform scrolling deltas along in wheel events Modified: branches/safari-612-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm (286679 => 286680) --- branches/safari-612-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm 2021-12-08 20:22:51 UTC (rev 286679) +++ branches/safari-612-branch/Source/WebKit/Shared/ios/WebIOSEventFactory.mm 2021-12-08 20:22:54 UTC (rev 286680) @@ -177,7 +177,8 @@ delta, { }, timestamp, -timestamp +timestamp, +{ } }; } #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286676] trunk/Source/WebCore
Title: [286676] trunk/Source/WebCore Revision 286676 Author commit-qu...@webkit.org Date 2021-12-08 12:20:40 -0800 (Wed, 08 Dec 2021) Log Message [GStreamer] Fill in client-name property on audio sinks https://bugs.webkit.org/show_bug.cgi?id=233826 Patch by Philippe Normand on 2021-12-08 Reviewed by Xabier Rodriguez-Calvar. The audio sink client-name property is now set on sinks that support this property, such as pulsesink and pipewiresink. This is picked-up by GNOME settings and the corresponding audio streams now appear as owned by the WebKit application (MiniBrowser, ephy, etc) instead of "WebKitWebProcess". When the audio mixer is enabled, no media.role property is set, because the mixer can accept music and/or video roles simultaneously, so it doesn't make sense in this context. * platform/audio/gstreamer/AudioDestinationGStreamer.cpp: (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer): Drive-by refactoring, using a lambda instead of a static callback function. (WebCore::autoAudioSinkChildAddedCallback): Deleted. * platform/graphics/gstreamer/GStreamerAudioMixer.cpp: (WebCore::GStreamerAudioMixer::GStreamerAudioMixer): * platform/graphics/gstreamer/GStreamerCommon.cpp: (WebCore::createAutoAudioSink): (WebCore::createPlatformAudioSink): * platform/graphics/gstreamer/GStreamerCommon.h: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): (WebCore::MediaPlayerPrivateGStreamer::createAudioSink): (WebCore::MediaPlayerPrivateGStreamer::setAudioStreamPropertiesCallback): Deleted. (WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties): Deleted. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerAudioMixer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h Diff Modified: trunk/Source/WebCore/ChangeLog (286675 => 286676) --- trunk/Source/WebCore/ChangeLog 2021-12-08 20:17:29 UTC (rev 286675) +++ trunk/Source/WebCore/ChangeLog 2021-12-08 20:20:40 UTC (rev 286676) @@ -1,3 +1,35 @@ +2021-12-08 Philippe Normand + +[GStreamer] Fill in client-name property on audio sinks +https://bugs.webkit.org/show_bug.cgi?id=233826 + +Reviewed by Xabier Rodriguez-Calvar. + +The audio sink client-name property is now set on sinks that support this property, such as +pulsesink and pipewiresink. This is picked-up by GNOME settings and the corresponding audio +streams now appear as owned by the WebKit application (MiniBrowser, ephy, etc) instead of +"WebKitWebProcess". + +When the audio mixer is enabled, no media.role property is set, because the mixer can accept +music and/or video roles simultaneously, so it doesn't make sense in this context. + +* platform/audio/gstreamer/AudioDestinationGStreamer.cpp: +(WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer): Drive-by refactoring, using +a lambda instead of a static callback function. +(WebCore::autoAudioSinkChildAddedCallback): Deleted. +* platform/graphics/gstreamer/GStreamerAudioMixer.cpp: +(WebCore::GStreamerAudioMixer::GStreamerAudioMixer): +* platform/graphics/gstreamer/GStreamerCommon.cpp: +(WebCore::createAutoAudioSink): +(WebCore::createPlatformAudioSink): +* platform/graphics/gstreamer/GStreamerCommon.h: +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: +(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): +(WebCore::MediaPlayerPrivateGStreamer::createAudioSink): +(WebCore::MediaPlayerPrivateGStreamer::setAudioStreamPropertiesCallback): Deleted. +(WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties): Deleted. +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: + 2021-12-08 Rob Buis [css-contain] Prevent various kinds of propagation to RenderView Modified: trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp (286675 => 286676) --- trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp 2021-12-08 20:17:29 UTC (rev 286675) +++ trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp 2021-12-08 20:20:40 UTC (rev 286676) @@ -92,12 +92,6 @@ return destination->handleMessage(message); } -static void autoAudioSinkChildAddedCallback(GstChildProxy*, GObject* object, gchar*, gpointer) -{ -if (GST_IS_AUDIO_BASE_SINK(object)) -g_object_set(GST_AUDIO_BASE_SINK(object),
[webkit-changes] [286675] branches/safari-613.1.11-branch/Source/WebKit
Title: [286675] branches/safari-613.1.11-branch/Source/WebKit Revision 286675 Author repst...@apple.com Date 2021-12-08 12:17:29 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286631. rdar://problem/86223494 [Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays https://bugs.webkit.org/show_bug.cgi?id=233948 rdar://86110813 Reviewed by Tim Horton. This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy needs to unregister for full speed updates using the old displayID, and register using the new one. Longer term, it would be better if "full speed updates" was a per-observer concept, but that would mean registering an observer while wheel events are being received, which needs a bit more thought. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::windowScreenDidChange): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286631 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.11-branch/Source/WebKit/ChangeLog branches/safari-613.1.11-branch/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: branches/safari-613.1.11-branch/Source/WebKit/ChangeLog (286674 => 286675) --- branches/safari-613.1.11-branch/Source/WebKit/ChangeLog 2021-12-08 20:17:26 UTC (rev 286674) +++ branches/safari-613.1.11-branch/Source/WebKit/ChangeLog 2021-12-08 20:17:29 UTC (rev 286675) @@ -1,5 +1,48 @@ 2021-12-08 Russell Epstein +Cherry-pick r286631. rdar://problem/86223494 + +[Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays +https://bugs.webkit.org/show_bug.cgi?id=233948 +rdar://86110813 + +Reviewed by Tim Horton. + +This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy +needs to unregister for full speed updates using the old displayID, and register +using the new one. + +Longer term, it would be better if "full speed updates" was a per-observer concept, +but that would mean registering an observer while wheel events are being received, +which needs a bit more thought. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::windowScreenDidChange): + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286631 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-07 Simon Fraser + +[Scroll Momentum Generator] Pages lose ability to momentum scroll after dragging between displays +https://bugs.webkit.org/show_bug.cgi?id=233948 +rdar://86110813 + +Reviewed by Tim Horton. + +This is a conservative fix for the bug. When a view moves to a new screen, WebPageProxy +needs to unregister for full speed updates using the old displayID, and register +using the new one. + +Longer term, it would be better if "full speed updates" was a per-observer concept, +but that would mean registering an observer while wheel events are being received, +which needs a bit more thought. + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::windowScreenDidChange): + +2021-12-08 Russell Epstein + Cherry-pick r286566. rdar://problem/86223477 Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled Modified: branches/safari-613.1.11-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (286674 => 286675) --- branches/safari-613.1.11-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 20:17:26 UTC (rev 286674) +++ branches/safari-613.1.11-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-12-08 20:17:29 UTC (rev 286675) @@ -3955,6 +3955,13 @@ void WebPageProxy::windowScreenDidChange(PlatformDisplayID displayID, std::optional nominalFramesPerSecond) { +#if HAVE(CVDISPLAYLINK) +if (hasRunningProcess() && m_displayID && m_registeredForFullSpeedUpdates) +process().processPool().setDisplayLinkForDisplayWantsFullSpeedUpdates(*m_process->connection(), *m_displayID, false); + +m_registeredForFullSpeedUpdates = false; +#endif + m_displayID = displayID; if (!hasRunningProcess()) @@ -3962,6 +3969,9 @@ send(Messages::EventDispatcher::PageScreenDidChange(m_webPageID, displayID)); send(Messages::WebPage::WindowScreenDidChange(displayID, nominalFramesPerSecond)); +#if HAVE(CVDISPLAYLINK) +updateDisplayLinkFrequency(); +#endif } float WebPageProxy::deviceScaleFactor() const ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286674] branches/safari-613.1.11-branch/Source/WebKit
Title: [286674] branches/safari-613.1.11-branch/Source/WebKit Revision 286674 Author repst...@apple.com Date 2021-12-08 12:17:26 -0800 (Wed, 08 Dec 2021) Log Message Cherry-pick r286566. rdar://problem/86223477 Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled https://bugs.webkit.org/show_bug.cgi?id=233894 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): Only flip the deltas if the trackpad is configured to use "natural" scrolling (in which "directionInvertedFromDevice" is true). (WebKit::MomentumEventDispatcher::computeNextDelta): Fix initial queue state logging to log both axes before setting the "did log" bit. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286566 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.11-branch/Source/WebKit/ChangeLog branches/safari-613.1.11-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp Diff Modified: branches/safari-613.1.11-branch/Source/WebKit/ChangeLog (286673 => 286674) --- branches/safari-613.1.11-branch/Source/WebKit/ChangeLog 2021-12-08 20:04:20 UTC (rev 286673) +++ branches/safari-613.1.11-branch/Source/WebKit/ChangeLog 2021-12-08 20:17:26 UTC (rev 286674) @@ -1,3 +1,40 @@ +2021-12-08 Russell Epstein + +Cherry-pick r286566. rdar://problem/86223477 + +Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled +https://bugs.webkit.org/show_bug.cgi?id=233894 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +Only flip the deltas if the trackpad is configured to use "natural" +scrolling (in which "directionInvertedFromDevice" is true). + +(WebKit::MomentumEventDispatcher::computeNextDelta): +Fix initial queue state logging to log both axes before setting the "did log" bit. + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286566 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2021-12-06 Tim Horton + +Momentum Event Dispatcher: Momentum phase runs backwards with natural scrolling disabled +https://bugs.webkit.org/show_bug.cgi?id=233894 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +Only flip the deltas if the trackpad is configured to use "natural" +scrolling (in which "directionInvertedFromDevice" is true). + +(WebKit::MomentumEventDispatcher::computeNextDelta): +Fix initial queue state logging to log both axes before setting the "did log" bit. + 2021-12-07 Russell Epstein Cherry-pick r286563. rdar://problem/86175400 Modified: branches/safari-613.1.11-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286673 => 286674) --- branches/safari-613.1.11-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 20:04:20 UTC (rev 286673) +++ branches/safari-613.1.11-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 20:17:26 UTC (rev 286674) @@ -300,7 +300,10 @@ m_currentGesture.currentOffset += delta; -return -delta; +if (m_currentGesture.initiatingEvent->directionInvertedFromDevice()) +delta.scale(-1); + +return delta; } void MomentumEventDispatcher::displayWasRefreshed(WebCore::PlatformDisplayID displayID, const WebCore::DisplayUpdate&) @@ -472,10 +475,8 @@ float averageDelta = totalDelta / count; #if ENABLE(MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING) -if (!m_currentGesture.didLogInitialQueueState) { +if (!m_currentGesture.didLogInitialQueueState) RELEASE_LOG(ScrollAnimations, "MomentumEventDispatcher initial historical deltas: average delta %f, average time %fms, event count %d", averageDelta, averageFrameIntervalMS, count); -m_currentGesture.didLogInitialQueueState = true; -} #endif constexpr float velocityGainA = fromFixedPoint(2.f); @@ -496,6 +497,10 @@ accelerateAxis(m_deltaHistoryY, quantizedUnacceleratedDelta.height()) ); +#if ENABLE(MOMENTUM_EVENT_DISPATCHER_TEMPORARY_LOGGING) +m_currentGesture.didLogInitialQueueState = true; +#endif + return { unacceleratedDelta, acceleratedDelta }; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286673] trunk/Source/WebKit
Title: [286673] trunk/Source/WebKit Revision 286673 Author pvol...@apple.com Date 2021-12-08 12:04:20 -0800 (Wed, 08 Dec 2021) Log Message [iOS][WP] Block unused sys calls https://bugs.webkit.org/show_bug.cgi?id=233999 Reviewed by Brent Fulgham. Block sys calls in the WebContent process on iOS that are unused according to telemetry. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (286672 => 286673) --- trunk/Source/WebKit/ChangeLog 2021-12-08 20:02:41 UTC (rev 286672) +++ trunk/Source/WebKit/ChangeLog 2021-12-08 20:04:20 UTC (rev 286673) @@ -1,3 +1,14 @@ +2021-12-08 Per Arne Vollan + +[iOS][WP] Block unused sys calls +https://bugs.webkit.org/show_bug.cgi?id=233999 + +Reviewed by Brent Fulgham. + +Block sys calls in the WebContent process on iOS that are unused according to telemetry. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: + 2021-12-08 Tim Horton Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (286672 => 286673) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-08 20:02:41 UTC (rev 286672) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2021-12-08 20:04:20 UTC (rev 286673) @@ -1289,72 +1289,36 @@ (define (syscall-unix-rarely-in-use) (syscall-number +SYS_dup SYS_fgetxattr +SYS_fstatat64 +SYS_fsync SYS_getgid SYS_getxattr +SYS_mkdirat SYS_necp_client_action SYS_necp_open +SYS_openat_nocancel +SYS_pread_nocancel +SYS_rmdir SYS_sendto SYS_setrlimit SYS_sigaltstack +SYS_sigprocmask SYS_socket -SYS_thread_selfusage)) +SYS_thread_selfusage +SYS_unlink +SYS_writev)) -(define (syscall-unix-possibly-not-in-use) +(define (syscall-unix-rarely-in-use-need-backtrace) (syscall-number SYS___pthread_kill -SYS___pthread_markcancel SYS___pthread_sigmask SYS___semwait_signal -SYS___semwait_signal_nocancel -SYS_chmod -SYS_connect -SYS_connect_nocancel -SYS_connectx -SYS_csrctl -SYS_dup -SYS_fchmod -SYS_fileport_makeport -SYS_fstatat64 -SYS_fsync SYS_getattrlistbulk ;; xpc_realpath and directory enumeration -SYS_getaudit_addr -SYS_getpeername -SYS_getsockopt ;; used by libwebrtc -SYS_kdebug_trace -SYS_mkdirat -SYS_mlock -SYS_mremap_encrypted -SYS_munlock SYS_open_dprotected_np -SYS_openat_nocancel -SYS_persona -SYS_pipe -SYS_pread_nocancel -SYS_proc_rlimit_control -SYS_process_policy SYS_psynch_rw_wrlock -SYS_pwrite -SYS_recvfrom -SYS_recvfrom_nocancel -SYS_rmdir -SYS_select -SYS_select_nocancel -SYS_sem_post -SYS_sem_wait -SYS_sendmsg_nocancel -SYS_sendto_nocancel -SYS_setpriority -SYS_setsockopt -SYS_shutdown -SYS_sigprocmask -SYS_sigreturn -SYS_socketpair -SYS_umask -SYS_unlink -SYS_work_interval_ctl -SYS_write -SYS_writev)) +SYS_umask)) (when (defined? 'syscall-unix) (deny syscall-unix (with send-signal SIGKILL)) @@ -1378,7 +1342,7 @@ (syscall-unix-rarely-in-use)) (allow syscall-unix (with report) (with telemetry-backtrace) -(syscall-unix-possibly-not-in-use)) +(syscall-unix-rarely-in-use-need-backtrace)) ) (when (defined? 'SYS__map_with_linking_np) @@ -1555,14 +1519,9 @@ MSC_semaphore_wait_trap MSC_syscall_thread_switch MSC_task_name_for_pid -MSC_thread_get_special_reply_port)) - -(define (syscall-mach-possibly-unused) -(machtrap-number -MSC_mach_msg_overwrite_trap -MSC_mk_timer_arm_leeway +MSC_thread_get_special_reply_port MSC_thread_self_trap)) - + (when (defined? 'syscall-mach) (deny syscall-mach (machtrap-number MSC_mach_wait_until)) @@ -1587,9 +1546,6 @@ (with message "Mach syscall used after launch") (syscall-mach-only-in-use-during-launch))) #endif - -(allow syscall-mach (with telemetry-backtrace) -(syscall-mach-possibly-unused)) ) (define (kernel-mig-routine-only-in-use-during-launch) @@ -1632,26 +1588,16 @@ thread_set_exception_ports thread_suspend)) -(define
[webkit-changes] [286672] trunk
Title: [286672] trunk Revision 286672 Author commit-qu...@webkit.org Date 2021-12-08 12:02:41 -0800 (Wed, 08 Dec 2021) Log Message [css-contain] Prevent various kinds of propagation to RenderView https://bugs.webkit.org/show_bug.cgi?id=233535 Patch by Rob Buis on 2021-12-08 Reviewed by Alan Bujtas. Source/WebCore: Prevent direction/background/writing-mode propagation to RenderView in cases where contain is used. The reason is in the github issue and latest draft specification has been updated [1, 2]. [1] https://github.com/w3c/csswg-drafts/issues/5913 [2] https://drafts.csswg.org/css-contain-2/ * rendering/RenderBox.cpp: (WebCore::RenderBox::styleDidChange): (WebCore::RenderBox::updateFromStyle): * rendering/RenderObject.cpp: (WebCore::shouldApplyAnyContainment): * rendering/RenderObject.h: * rendering/RenderView.cpp: (WebCore::RenderView::rendererForRootBackground const): LayoutTests: * TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderBox.cpp trunk/Source/WebCore/rendering/RenderObject.cpp trunk/Source/WebCore/rendering/RenderObject.h trunk/Source/WebCore/rendering/RenderView.cpp Diff Modified: trunk/LayoutTests/ChangeLog (286671 => 286672) --- trunk/LayoutTests/ChangeLog 2021-12-08 19:58:13 UTC (rev 286671) +++ trunk/LayoutTests/ChangeLog 2021-12-08 20:02:41 UTC (rev 286672) @@ -1,3 +1,12 @@ +2021-12-08 Rob Buis + +[css-contain] Prevent various kinds of propagation to RenderView +https://bugs.webkit.org/show_bug.cgi?id=233535 + +Reviewed by Alan Bujtas. + +* TestExpectations: + 2021-12-08 Youenn Fablet Same-site lax cookies not sent by fetch event handler after page reload Modified: trunk/LayoutTests/TestExpectations (286671 => 286672) --- trunk/LayoutTests/TestExpectations 2021-12-08 19:58:13 UTC (rev 286671) +++ trunk/LayoutTests/TestExpectations 2021-12-08 20:02:41 UTC (rev 286672) @@ -4758,37 +4758,13 @@ imported/w3c/web-platform-tests/css/css-contain/quote-scoping-002.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/quote-scoping-003.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/quote-scoping-004.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-bg-001.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-bg-002.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-bg-003.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-bg-004.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-dir-001.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-dir-002.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-dir-003.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-dir-004.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-body-overflow-001.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-body-overflow-002.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-body-overflow-003.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-body-overflow-004.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-w-m-001.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-w-m-002.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-w-m-003.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-body-w-m-004.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-bg-001.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-bg-002.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-bg-003.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-bg-004.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-dir-001.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-dir-002.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-dir-003.html [ ImageOnlyFailure ] -imported/w3c/web-platform-tests/css/css-contain/contain-html-dir-004.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-html-overflow-001.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-html-overflow-003.html [ ImageOnlyFailure ] imported/w3c/web-platform-tests/css/css-contain/contain-html-overflow-004.html [ ImageOnlyFailure ]
[webkit-changes] [286671] trunk/Source/WebKit
Title: [286671] trunk/Source/WebKit Revision 286671 Author timothy_hor...@apple.com Date 2021-12-08 11:58:13 -0800 (Wed, 08 Dec 2021) Log Message Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps https://bugs.webkit.org/show_bug.cgi?id=233993 Reviewed by Simon Fraser. * WebProcess/WebPage/MomentumEventDispatcher.cpp: (WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): (WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): (WebKit::MomentumEventDispatcher::computeNextDelta): In order to avoid visual stutter due to integral rounding of the deltas we dispatch in the momentum phase, switch to a table of deltas instead of interpolating along the offset curve during the tail end of the animation (when the rounding makes up a large proportion of each delta). (WebKit::MomentumEventDispatcher::equalizeTailGaps): Sort the deltas up until the first zero to ensure a lack of unexpected perceptual acceleration, and then inject skipped frames in order to ensure that frames that have effective scroll movement (non-zero deltas) are always spaced equally-or-further apart than earlier ones, but never closer together (which, again, would be percieved as acceleration). (WebKit::MomentumEventDispatcher::handleWheelEvent): (WebKit::MomentumEventDispatcher::pushLogEntry): (WebKit::MomentumEventDispatcher::flushLog): Lastly, adjust some logging to make it easier to tell which row in the output corresponds to an event delta or generated delta, so it's easier to find skipped frames. * WebProcess/WebPage/MomentumEventDispatcher.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.h Diff Modified: trunk/Source/WebKit/ChangeLog (286670 => 286671) --- trunk/Source/WebKit/ChangeLog 2021-12-08 19:46:15 UTC (rev 286670) +++ trunk/Source/WebKit/ChangeLog 2021-12-08 19:58:13 UTC (rev 286671) @@ -1,3 +1,36 @@ +2021-12-08 Tim Horton + +Momentum Event Dispatcher: Momentum tail should have montonically decreasing deltas and tail gaps +https://bugs.webkit.org/show_bug.cgi?id=233993 + + +Reviewed by Simon Fraser. + +* WebProcess/WebPage/MomentumEventDispatcher.cpp: +(WebKit::MomentumEventDispatcher::consumeDeltaForCurrentTime): +(WebKit::MomentumEventDispatcher::buildOffsetTableWithInitialDelta): +(WebKit::MomentumEventDispatcher::computeNextDelta): +In order to avoid visual stutter due to integral rounding of the +deltas we dispatch in the momentum phase, switch to a table of +deltas instead of interpolating along the offset curve during the +tail end of the animation (when the rounding makes up a large +proportion of each delta). + +(WebKit::MomentumEventDispatcher::equalizeTailGaps): +Sort the deltas up until the first zero to ensure a lack of unexpected +perceptual acceleration, and then inject skipped frames in order to +ensure that frames that have effective scroll movement (non-zero deltas) +are always spaced equally-or-further apart than earlier ones, but +never closer together (which, again, would be percieved as acceleration). + +(WebKit::MomentumEventDispatcher::handleWheelEvent): +(WebKit::MomentumEventDispatcher::pushLogEntry): +(WebKit::MomentumEventDispatcher::flushLog): +Lastly, adjust some logging to make it easier to tell which row in +the output corresponds to an event delta or generated delta, so it's +easier to find skipped frames. +* WebProcess/WebPage/MomentumEventDispatcher.h: + 2021-12-08 Chris Dumez Make KVO work for WKWebpagePreferences._captivePortalModeEnabled Modified: trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286670 => 286671) --- trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 19:46:15 UTC (rev 286670) +++ trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp 2021-12-08 19:58:13 UTC (rev 286671) @@ -113,15 +113,15 @@ m_currentGesture.accumulatedEventOffset += event.delta(); auto combinedPhase = (event.phase() << 8) | (event.momentumPhase()); -m_currentLogState.latestEventPhase = combinedPhase; m_currentLogState.totalEventOffset += event.delta().height(); if (!isMomentumEventDuringSyntheticGesture) { // Log events that we don't block to the generated offsets log as well, // even though we didn't technically generate them, just passed them through. -m_currentLogState.latestGeneratedPhase = combinedPhase; m_currentLogState.totalGeneratedOffset += event.delta().height(); -} -pushLogEntry(); +pushLogEntry(combinedPhase, combinedPhase); +} else +pushLogEntry(0, combinedPhase); + #endif // Consume any normal
[webkit-changes] [286670] trunk/Source/bmalloc
Title: [286670] trunk/Source/bmalloc Revision 286670 Author commit-qu...@webkit.org Date 2021-12-08 11:46:15 -0800 (Wed, 08 Dec 2021) Log Message [libpas] Guard Darwin-specific malloc zone usage in mbmalloc sources https://bugs.webkit.org/show_bug.cgi?id=234005 Patch by Zan Dobersek on 2021-12-08 Reviewed by Yusuke Suzuki. Use PAS_OS(DARWIN) build guards for the Darwin-specific malloc header inclusions and malloc_zone_pressure_relief() calls. * libpas/src/mbmalloc/mbmalloc_bmalloc.c: (mbscavenge): * libpas/src/mbmalloc/mbmalloc_hotbit.c: (mbscavenge): * libpas/src/mbmalloc/mbmalloc_iso_common_primitive.c: (mbscavenge): Modified Paths trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_bmalloc.c trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_hotbit.c trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_iso_common_primitive.c Diff Modified: trunk/Source/bmalloc/ChangeLog (286669 => 286670) --- trunk/Source/bmalloc/ChangeLog 2021-12-08 19:33:47 UTC (rev 286669) +++ trunk/Source/bmalloc/ChangeLog 2021-12-08 19:46:15 UTC (rev 286670) @@ -1,5 +1,22 @@ 2021-12-08 Zan Dobersek +[libpas] Guard Darwin-specific malloc zone usage in mbmalloc sources +https://bugs.webkit.org/show_bug.cgi?id=234005 + +Reviewed by Yusuke Suzuki. + +Use PAS_OS(DARWIN) build guards for the Darwin-specific malloc header +inclusions and malloc_zone_pressure_relief() calls. + +* libpas/src/mbmalloc/mbmalloc_bmalloc.c: +(mbscavenge): +* libpas/src/mbmalloc/mbmalloc_hotbit.c: +(mbscavenge): +* libpas/src/mbmalloc/mbmalloc_iso_common_primitive.c: +(mbscavenge): + +2021-12-08 Zan Dobersek + [libpas] Remove the stale SkipListTests.cpp file https://bugs.webkit.org/show_bug.cgi?id=234000 Modified: trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_bmalloc.c (286669 => 286670) --- trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_bmalloc.c 2021-12-08 19:33:47 UTC (rev 286669) +++ trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_bmalloc.c 2021-12-08 19:46:15 UTC (rev 286670) @@ -27,9 +27,12 @@ #if PAS_ENABLE_BMALLOC -#include #include "pas_scavenger.h" +#if PAS_OS(DARWIN) +#include +#endif + void* mbmalloc(size_t size) { return bmalloc_try_allocate(size); @@ -53,7 +56,9 @@ void mbscavenge(void) { pas_scavenger_run_synchronously_now(); +#if PAS_OS(DARWIN) malloc_zone_pressure_relief(NULL, 0); +#endif } #endif /* PAS_ENABLE_BMALLOC */ Modified: trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_hotbit.c (286669 => 286670) --- trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_hotbit.c 2021-12-08 19:33:47 UTC (rev 286669) +++ trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_hotbit.c 2021-12-08 19:46:15 UTC (rev 286670) @@ -27,9 +27,12 @@ #if PAS_ENABLE_HOTBIT -#include #include "pas_scavenger.h" +#if PAS_OS(DARWIN) +#include +#endif + void* mbmalloc(size_t size) { return hotbit_try_allocate(size); @@ -53,7 +56,9 @@ void mbscavenge(void) { pas_scavenger_run_synchronously_now(); +#if PAS_OS(DARWIN) malloc_zone_pressure_relief(NULL, 0); +#endif } #endif /* PAS_ENABLE_HOTBIT */ Modified: trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_iso_common_primitive.c (286669 => 286670) --- trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_iso_common_primitive.c 2021-12-08 19:33:47 UTC (rev 286669) +++ trunk/Source/bmalloc/libpas/src/mbmalloc/mbmalloc_iso_common_primitive.c 2021-12-08 19:46:15 UTC (rev 286670) @@ -30,7 +30,6 @@ #include "Verifier.h" #include "iso_heap_config.h" #include "iso_heap_innards.h" -#include #include "pas_bootstrap_free_heap.h" #include "pas_fd_stream.h" #include "pas_heap.h" @@ -45,6 +44,10 @@ #include #include +#if PAS_OS(DARWIN) +#include +#endif + static const bool verbose = false; #ifdef PAS_VERIFIED static const bool verbose_scavenge = true; @@ -138,7 +141,9 @@ if (really_scavenge_at_end) { pas_scavenger_run_synchronously_now(); +#if PAS_OS(DARWIN) malloc_zone_pressure_relief(NULL, 0); +#endif } if (verbose_scavenge) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286669] trunk/Source/WebCore
Title: [286669] trunk/Source/WebCore Revision 286669 Author eric.carl...@apple.com Date 2021-12-08 11:33:47 -0800 (Wed, 08 Dec 2021) Log Message [iOS] Always set audio session preferred input after changing the category https://bugs.webkit.org/show_bug.cgi?id=232626 rdar://81618758 Reviewed by Youenn Fablet. * platform/audio/PlatformMediaSessionManager.cpp: (WebCore::PlatformMediaSessionManager::sessionCaptureConfigurationChanged): Schedule a session update so the category and/or preferred input is setup. * platform/audio/PlatformMediaSessionManager.h: * platform/audio/ios/AudioSessionIOS.h: * platform/audio/ios/AudioSessionIOS.mm: (WebCore::AudioSessionIOS::setCategory): Don't set the audio session category unless something has changed. Ask the AVAudioSessionCaptureDeviceManager to set the preferred capture device if that has changed. * platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.h: * platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm: (WebCore::AVAudioSessionCaptureDeviceManager::setPreferredAudioSessionDeviceUID): Remember the device UID if the configuration is successful. (WebCore::AVAudioSessionCaptureDeviceManager::configurePreferredAudioCaptureDevice): Reset the preferred device if necessary. (WebCore::AVAudioSessionCaptureDeviceManager::setPreferredAudioSessionDeviceUIDInternal): Refactored from setPreferredAudioSessionDeviceUID. * platform/mediastream/mac/CoreAudioCaptureSource.cpp: (WebCore::CoreAudioSharedUnit::captureDeviceChanged): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.h trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm trunk/Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.h trunk/Source/WebCore/platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm Diff Modified: trunk/Source/WebCore/ChangeLog (286668 => 286669) --- trunk/Source/WebCore/ChangeLog 2021-12-08 19:16:05 UTC (rev 286668) +++ trunk/Source/WebCore/ChangeLog 2021-12-08 19:33:47 UTC (rev 286669) @@ -1,3 +1,34 @@ +2021-12-08 Eric Carlson + +[iOS] Always set audio session preferred input after changing the category +https://bugs.webkit.org/show_bug.cgi?id=232626 +rdar://81618758 + +Reviewed by Youenn Fablet. + +* platform/audio/PlatformMediaSessionManager.cpp: +(WebCore::PlatformMediaSessionManager::sessionCaptureConfigurationChanged): Schedule +a session update so the category and/or preferred input is setup. +* platform/audio/PlatformMediaSessionManager.h: + +* platform/audio/ios/AudioSessionIOS.h: +* platform/audio/ios/AudioSessionIOS.mm: +(WebCore::AudioSessionIOS::setCategory): Don't set the audio session category unless +something has changed. Ask the AVAudioSessionCaptureDeviceManager to set the preferred +capture device if that has changed. + +* platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.h: +* platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm: +(WebCore::AVAudioSessionCaptureDeviceManager::setPreferredAudioSessionDeviceUID): +Remember the device UID if the configuration is successful. +(WebCore::AVAudioSessionCaptureDeviceManager::configurePreferredAudioCaptureDevice): +Reset the preferred device if necessary. +(WebCore::AVAudioSessionCaptureDeviceManager::setPreferredAudioSessionDeviceUIDInternal): +Refactored from setPreferredAudioSessionDeviceUID. + +* platform/mediastream/mac/CoreAudioCaptureSource.cpp: +(WebCore::CoreAudioSharedUnit::captureDeviceChanged): + 2021-12-08 Antti Koivisto [CSS Cascade Layers] CSSImportRule.cssText doesn't include layer parameter Modified: trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.h (286668 => 286669) --- trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.h 2021-12-08 19:16:05 UTC (rev 286668) +++ trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.h 2021-12-08 19:33:47 UTC (rev 286669) @@ -64,6 +64,7 @@ bool isMuted() const final; void handleMutedStateChange() final; +String m_lastSetPreferredAudioDeviceUID; Ref m_workQueue; RetainPtr m_interruptionObserverHelper; }; Modified: trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm (286668 => 286669) --- trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-12-08 19:16:05 UTC (rev 286668) +++ trunk/Source/WebCore/platform/audio/ios/AudioSessionIOS.mm 2021-12-08 19:33:47 UTC (rev 286669) @@ -28,6 +28,7 @@ #if USE(AUDIO_SESSION) && PLATFORM(IOS_FAMILY) +#import "AVAudioSessionCaptureDeviceManager.h" #import "Logging.h" #import #import @@ -233,11 +234,39 @@ break; } -NSError *error = nil; -[[PAL::getAVAudioSessionClass() sharedInstance] setCategory:categoryString mode:categoryMode routeSharingPolicy:static_cast(policy) options:options error:]; +bool
[webkit-changes] [286668] trunk
Title: [286668] trunk Revision 286668 Author an...@apple.com Date 2021-12-08 11:16:05 -0800 (Wed, 08 Dec 2021) Log Message [CSS Cascade Layers] CSSImportRule.cssText doesn't include layer parameter https://bugs.webkit.org/show_bug.cgi?id=234010 Reviewed by Simon Fraser. LayoutTests/imported/w3c: * web-platform-tests/css/css-cascade/parsing/layer-import-parsing-expected.txt: Source/WebCore: Fix serialization of import rules than include layer, like @import url(foo.css) layer(A); Also make the parsing of the layer() argument stricter. * css/CSSImportRule.cpp: (WebCore::CSSImportRule::cssText const): Serialize the layer. * css/CSSLayerBlockRule.cpp: (WebCore::stringFromCascadeLayerName): Serialize layer name segments as identifiers. * css/parser/CSSParserImpl.cpp: (WebCore::CSSParserImpl::consumeImportRule): Fail parsing if there is anything left in the function argument after consuming the layer name. If the parsing fails, revert and try the full string as media query. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/parsing/layer-import-parsing-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/CSSImportRule+Layer.idl trunk/Source/WebCore/css/CSSImportRule.cpp trunk/Source/WebCore/css/CSSLayerBlockRule.cpp trunk/Source/WebCore/css/parser/CSSParserImpl.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286667 => 286668) --- trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-08 19:11:40 UTC (rev 286667) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-12-08 19:16:05 UTC (rev 286668) @@ -1,5 +1,14 @@ 2021-12-08 Antti Koivisto +[CSS Cascade Layers] CSSImportRule.cssText doesn't include layer parameter +https://bugs.webkit.org/show_bug.cgi?id=234010 + +Reviewed by Simon Fraser. + +* web-platform-tests/css/css-cascade/parsing/layer-import-parsing-expected.txt: + +2021-12-08 Antti Koivisto + [CSS Cascade Layers] Update CSSOM to the spec https://bugs.webkit.org/show_bug.cgi?id=231340 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/parsing/layer-import-parsing-expected.txt (286667 => 286668) --- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/parsing/layer-import-parsing-expected.txt 2021-12-08 19:11:40 UTC (rev 286667) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-cascade/parsing/layer-import-parsing-expected.txt 2021-12-08 19:16:05 UTC (rev 286668) @@ -1,15 +1,15 @@ -FAIL @import url("nonexist.css") layer; should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer;" but got "@import url(\"nonexist.css\");" -FAIL @import url("nonexist.css") layer(A); should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer(A);" but got "@import url(\"nonexist.css\");" -FAIL @import url("nonexist.css") layer(A.B); should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer(A.B);" but got "@import url(\"nonexist.css\");" -FAIL @import url(nonexist.css) layer; should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer;" but got "@import url(\"nonexist.css\");" -FAIL @import url(nonexist.css) layer(A); should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer(A);" but got "@import url(\"nonexist.css\");" -FAIL @import url(nonexist.css) layer(A.B); should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer(A.B);" but got "@import url(\"nonexist.css\");" -FAIL @import "nonexist.css" layer; should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer;" but got "@import url(\"nonexist.css\");" -FAIL @import "nonexist.css" layer(A); should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer(A);" but got "@import url(\"nonexist.css\");" -FAIL @import "nonexist.css" layer(A.B); should be a valid layered import rule assert_equals: serialization should be canonical expected "@import url(\"nonexist.css\") layer(A.B);" but got "@import url(\"nonexist.css\");" -FAIL @import url("nonexist.css") layer(); should still be a valid import rule with an invalid layer declaration assert_not_equals: invalid layer declaration should be parsed as media query got disallowed value 0 -FAIL @import url("nonexist.css") layer(A B); should still be a valid import rule with an invalid layer declaration assert_not_equals: invalid layer declaration should be parsed as media query got disallowed value 0 -FAIL @import
[webkit-changes] [286667] trunk/Source/JavaScriptCore
Title: [286667] trunk/Source/_javascript_Core Revision 286667 Author ysuz...@apple.com Date 2021-12-08 11:11:40 -0800 (Wed, 08 Dec 2021) Log Message [JSC] Introduce WriteBarrierStructureID https://bugs.webkit.org/show_bug.cgi?id=233918 Reviewed by Mark Lam. This patch adds WriteBarrierStructureID class, which is similar to WriteBarrier, but internally, it holds StructureID, so sizeof(WriteBarrierStructureID) is 4. This class is useful to use StructureID for memory saving while keeping WriteBarrier's useful features (automatically inserts write-barrier when setting etc.). This also paves the way to introducing DOMStructures array with WriteBarrierStructureID instead of costly HashMap>. * bytecode/AccessCase.cpp: (JSC::AccessCase::AccessCase): (JSC::AccessCase::forEachDependentCell const): (JSC::AccessCase::dump const): (JSC::AccessCase::propagateTransitions const): (JSC::AccessCase::canBeShared): * bytecode/AccessCase.h: (JSC::AccessCase::structure const): (JSC::AccessCase::newStructure const): (JSC::AccessCase::hash const): (JSC::AccessCase::AccessCase): * bytecode/CheckPrivateBrandStatus.cpp: (JSC::CheckPrivateBrandStatus::computeForStubInfoWithoutExitSiteFeedback): * bytecode/DeleteByStatus.cpp: (JSC::DeleteByStatus::computeForStubInfoWithoutExitSiteFeedback): * bytecode/GetByStatus.cpp: (JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback): * bytecode/InByStatus.cpp: (JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback): * bytecode/InlineAccess.cpp: (JSC::InlineAccess::rewireStubAsJumpInAccess): (JSC::InlineAccess::resetStubAsJumpInAccess): * bytecode/InstanceOfStatus.cpp: (JSC::InstanceOfStatus::computeForStubInfo): * bytecode/InternalFunctionAllocationProfile.h: (JSC::InternalFunctionAllocationProfile::offsetOfStructureID): (JSC::InternalFunctionAllocationProfile::structure): (JSC::InternalFunctionAllocationProfile::clear): (JSC::InternalFunctionAllocationProfile::visitAggregate): (JSC::InternalFunctionAllocationProfile::createAllocationStructureFromBase): (JSC::InternalFunctionAllocationProfile::offsetOfStructure): Deleted. * bytecode/PutByStatus.cpp: (JSC::PutByStatus::computeForStubInfo): * bytecode/SetPrivateBrandStatus.cpp: (JSC::SetPrivateBrandStatus::computeForStubInfoWithoutExitSiteFeedback): * bytecode/StructureStubInfo.cpp: (JSC::StructureStubInfo::initGetByIdSelf): (JSC::StructureStubInfo::initPutByIdReplace): (JSC::StructureStubInfo::initInByIdSelf): (JSC::StructureStubInfo::deref): (JSC::StructureStubInfo::aboutToDie): (JSC::StructureStubInfo::addAccessCase): (JSC::StructureStubInfo::reset): (JSC::StructureStubInfo::visitAggregateImpl): (JSC::StructureStubInfo::visitWeakReferences): (JSC::StructureStubInfo::propagateTransitions): (JSC::StructureStubInfo::summary const): (JSC::StructureStubInfo::containsPC const): * bytecode/StructureStubInfo.h: (JSC::StructureStubInfo::inlineAccessBaseStructure): (JSC::StructureStubInfo::offsetOfByIdSelfOffset): (JSC::StructureStubInfo::offsetOfInlineAccessBaseStructureID): (JSC::StructureStubInfo::offsetOfInlineAccessBaseStructure): Deleted. * dfg/DFGSpeculativeJIT.cpp: * ftl/FTLAbstractHeapRepository.h: * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileCreatePromise): (JSC::FTL::DFG::LowerDFGToB3::compileCreateInternalFieldObject): (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): * heap/AbstractSlotVisitor.h: * heap/AbstractSlotVisitorInlines.h: (JSC::AbstractSlotVisitor::append): (JSC::AbstractSlotVisitor::appendHidden): * heap/SlotVisitor.h: * heap/SlotVisitorInlines.h: (JSC::SlotVisitor::append): (JSC::SlotVisitor::appendHidden): * jit/AssemblyHelpers.cpp: (JSC::AssemblyHelpers::emitNonNullDecodeStructureID): (JSC::AssemblyHelpers::emitLoadStructure): * jit/AssemblyHelpers.h: * jit/JITInlineCacheGenerator.cpp: (JSC::generateGetByIdInlineAccess): (JSC::JITPutByIdGenerator::generateBaselineDataICFastPath): (JSC::JITInByIdGenerator::generateBaselineDataICFastPath): * runtime/FunctionExecutable.cpp: (JSC::FunctionExecutable::visitChildrenImpl): * runtime/FunctionExecutable.h: * runtime/FunctionRareData.cpp: (JSC::FunctionRareData::visitChildrenImpl): * runtime/FunctionRareData.h: * runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::visitChildrenImpl): * runtime/JSGlobalObject.h: * runtime/JSPropertyNameEnumerator.cpp: (JSC::JSPropertyNameEnumerator::JSPropertyNameEnumerator): (JSC::JSPropertyNameEnumerator::visitChildrenImpl): * runtime/JSPropertyNameEnumerator.h: * runtime/StructureRareData.cpp: (JSC::StructureRareData::StructureRareData): * runtime/StructureRareData.h: * runtime/WriteBarrier.h: (JSC::WriteBarrierStructureID::WriteBarrierStructureID): (JSC::WriteBarrierStructureID::get const): (JSC::WriteBarrierStructureID::operator* const): (JSC::WriteBarrierStructureID::operator-> const): (JSC::WriteBarrierStructureID::clear): (JSC::WriteBarrierStructureID::operator bool const): (JSC::WriteBarrierStructureID::operator! const): (JSC::WriteBarrierStructureID::setWithoutWriteBarrier):
[webkit-changes] [286666] branches/safari-612.4.2.3-branch/
Title: [28] branches/safari-612.4.2.3-branch/ Revision 28 Author repst...@apple.com Date 2021-12-08 10:49:31 -0800 (Wed, 08 Dec 2021) Log Message New branch. Added Paths branches/safari-612.4.2.3-branch/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286665] branches/safari-612.4.2.2-branch/
Title: [286665] branches/safari-612.4.2.2-branch/ Revision 286665 Author repst...@apple.com Date 2021-12-08 10:49:24 -0800 (Wed, 08 Dec 2021) Log Message New branch. Added Paths branches/safari-612.4.2.2-branch/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286664] branches/safari-612.4.2.1-branch/
Title: [286664] branches/safari-612.4.2.1-branch/ Revision 286664 Author repst...@apple.com Date 2021-12-08 10:49:18 -0800 (Wed, 08 Dec 2021) Log Message New branch. Added Paths branches/safari-612.4.2.1-branch/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286663] branches/safari-612.4.2.0-branch/
Title: [286663] branches/safari-612.4.2.0-branch/ Revision 286663 Author repst...@apple.com Date 2021-12-08 10:49:11 -0800 (Wed, 08 Dec 2021) Log Message New branch. Added Paths branches/safari-612.4.2.0-branch/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [286662] branches/safari-612-branch/Source
Title: [286662] branches/safari-612-branch/Source Revision 286662 Author repst...@apple.com Date 2021-12-08 10:42:14 -0800 (Wed, 08 Dec 2021) Log Message Versioning. WebKit-7612.4.3 Modified Paths branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-612-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -23,7 +23,7 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -23,7 +23,7 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -23,7 +23,7 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/WebCore/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -23,7 +23,7 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -23,7 +23,7 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -1,6 +1,6 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC (rev 286661) +++ branches/safari-612-branch/Source/WebKit/Configurations/Version.xcconfig 2021-12-08 18:42:14 UTC (rev 286662) @@ -23,7 +23,7 @@ MAJOR_VERSION = 612; MINOR_VERSION = 4; -TINY_VERSION = 2; +TINY_VERSION = 3; MICRO_VERSION = 0; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION); Modified: branches/safari-612-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig (286661 => 286662) --- branches/safari-612-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig 2021-12-08 18:04:41 UTC
1 2 >
1 - 100 of 116 matches
Site Navigation
Mail list logo
Footer information