[webkit-changes] [260984] trunk/Source
Title: [260984] trunk/Source Revision 260984 Author ross.kirsl...@sony.com Date 2020-04-30 22:38:06 -0700 (Thu, 30 Apr 2020) Log Message TriState should be an enum class and use "Indeterminate" instead of "Mixed" https://bugs.webkit.org/show_bug.cgi?id=211268 Reviewed by Mark Lam. Source/_javascript_Core: * b3/B3Const32Value.cpp: (JSC::B3::Const32Value::equalConstant const): (JSC::B3::Const32Value::notEqualConstant const): (JSC::B3::Const32Value::lessThanConstant const): (JSC::B3::Const32Value::greaterThanConstant const): (JSC::B3::Const32Value::lessEqualConstant const): (JSC::B3::Const32Value::greaterEqualConstant const): (JSC::B3::Const32Value::aboveConstant const): (JSC::B3::Const32Value::belowConstant const): (JSC::B3::Const32Value::aboveEqualConstant const): (JSC::B3::Const32Value::belowEqualConstant const): * b3/B3Const64Value.cpp: (JSC::B3::Const64Value::equalConstant const): (JSC::B3::Const64Value::notEqualConstant const): (JSC::B3::Const64Value::lessThanConstant const): (JSC::B3::Const64Value::greaterThanConstant const): (JSC::B3::Const64Value::lessEqualConstant const): (JSC::B3::Const64Value::greaterEqualConstant const): (JSC::B3::Const64Value::aboveConstant const): (JSC::B3::Const64Value::belowConstant const): (JSC::B3::Const64Value::aboveEqualConstant const): (JSC::B3::Const64Value::belowEqualConstant const): * b3/B3ConstDoubleValue.cpp: (JSC::B3::ConstDoubleValue::equalConstant const): (JSC::B3::ConstDoubleValue::notEqualConstant const): (JSC::B3::ConstDoubleValue::lessThanConstant const): (JSC::B3::ConstDoubleValue::greaterThanConstant const): (JSC::B3::ConstDoubleValue::lessEqualConstant const): (JSC::B3::ConstDoubleValue::greaterEqualConstant const): (JSC::B3::ConstDoubleValue::equalOrUnorderedConstant const): * b3/B3ConstFloatValue.cpp: (JSC::B3::ConstFloatValue::equalConstant const): (JSC::B3::ConstFloatValue::notEqualConstant const): (JSC::B3::ConstFloatValue::lessThanConstant const): (JSC::B3::ConstFloatValue::greaterThanConstant const): (JSC::B3::ConstFloatValue::lessEqualConstant const): (JSC::B3::ConstFloatValue::greaterEqualConstant const): (JSC::B3::ConstFloatValue::equalOrUnorderedConstant const): * b3/B3Procedure.cpp: (JSC::B3::Procedure::addBoolConstant): * b3/B3Procedure.h: * b3/B3ReduceStrength.cpp: * b3/B3Value.cpp: (JSC::B3::Value::equalConstant const): (JSC::B3::Value::notEqualConstant const): (JSC::B3::Value::lessThanConstant const): (JSC::B3::Value::greaterThanConstant const): (JSC::B3::Value::lessEqualConstant const): (JSC::B3::Value::greaterEqualConstant const): (JSC::B3::Value::aboveConstant const): (JSC::B3::Value::belowConstant const): (JSC::B3::Value::aboveEqualConstant const): (JSC::B3::Value::belowEqualConstant const): (JSC::B3::Value::equalOrUnorderedConstant const): (JSC::B3::Value::asTriState const): * b3/B3Value.h: * bytecode/CodeBlock.cpp: (JSC::CodeBlock::~CodeBlock): (JSC::CodeBlock::thresholdForJIT): * bytecode/UnlinkedCodeBlock.cpp: (JSC::UnlinkedCodeBlock::UnlinkedCodeBlock): * bytecode/UnlinkedFunctionExecutable.cpp: (JSC::UnlinkedFunctionExecutable::visitChildren): * bytecompiler/NodesCodegen.cpp: (JSC::ConstantNode::emitBytecodeInConditionContext): (JSC::BinaryOpNode::emitBytecodeInConditionContext): (JSC::BinaryOpNode::tryFoldToBranch): * dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::handleIntrinsicCall): * dfg/DFGCFGSimplificationPhase.cpp: (JSC::DFG::CFGSimplificationPhase::run): * dfg/DFGLazyJSValue.cpp: (JSC::DFG::equalToSingleCharacter): (JSC::DFG::equalToStringImpl): (JSC::DFG::LazyJSValue::strictEqual const): * dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compile): * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileDataViewGet): (JSC::FTL::DFG::LowerDFGToB3::compileDataViewSet): * ftl/FTLOutput.cpp: (JSC::FTL::Output::equal): (JSC::FTL::Output::notEqual): (JSC::FTL::Output::above): (JSC::FTL::Output::aboveOrEqual): (JSC::FTL::Output::below): (JSC::FTL::Output::belowOrEqual): (JSC::FTL::Output::greaterThan): (JSC::FTL::Output::greaterThanOrEqual): (JSC::FTL::Output::lessThan): (JSC::FTL::Output::lessThanOrEqual): * jit/JITOperations.cpp: * runtime/CachedTypes.cpp: (JSC::UnlinkedCodeBlock::UnlinkedCodeBlock): * runtime/DefinePropertyAttributes.h: (JSC::DefinePropertyAttributes::DefinePropertyAttributes): (JSC::DefinePropertyAttributes::hasWritable const): (JSC::DefinePropertyAttributes::writable const): (JSC::DefinePropertyAttributes::hasConfigurable const): (JSC::DefinePropertyAttributes::configurable const): (JSC::DefinePropertyAttributes::hasEnumerable const): (JSC::DefinePropertyAttributes::enumerable const): (JSC::DefinePropertyAttributes::setWritable): (JSC::DefinePropertyAttributes::setConfigurable): (JSC::DefinePropertyAttributes::setEnumerable): * runtime/IntlCollator.cpp: (JSC::IntlCollator::initializeCollator): * runtime/IntlDateTimeFormat.cpp: (JSC::IntlDateTimeFormat::initializeDateTimeFormat): * runtime/IntlNumberFormat.cpp: (JSC::IntlNumberFormat::initializeNumberFormat): *
[webkit-changes] [260983] trunk
Title: [260983] trunk Revision 260983 Author jiewen_...@apple.com Date 2020-04-30 21:43:28 -0700 (Thu, 30 Apr 2020) Log Message [WebAuthn] Require user gestures for LocalAuthenticator https://bugs.webkit.org/show_bug.cgi?id=182893 Reviewed by Brent Fulgham. Source/WebKit: Covered by API tests. * UIProcess/WebAuthentication/AuthenticatorManager.cpp: (WebKit::AuthenticatorManager::filterTransports const): (WebKit::AuthenticatorManager::getTransports const): Checks UserGesture here. Since filterTransports will be overrided in mock testings, all mock tests don't require user gestures. * UIProcess/WebAuthentication/WebAuthenticationRequestData.h: * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp: (WebKit::WebAuthenticatorCoordinatorProxy::makeCredential): (WebKit::WebAuthenticatorCoordinatorProxy::getAssertion): * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h: * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in: * WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp: (WebKit::WebAuthenticatorCoordinator::makeCredential): (WebKit::WebAuthenticatorCoordinator::getAssertion): Adds user gesture corresponding fields. Tools: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: (TestWebKitAPI::TEST): * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-la-no-mock.html: Added. * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-no-mock.html: Added. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.h trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in trunk/Source/WebKit/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm Added Paths trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-la-no-mock.html trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-no-mock.html Diff Modified: trunk/Source/WebKit/ChangeLog (260982 => 260983) --- trunk/Source/WebKit/ChangeLog 2020-05-01 03:57:55 UTC (rev 260982) +++ trunk/Source/WebKit/ChangeLog 2020-05-01 04:43:28 UTC (rev 260983) @@ -1,3 +1,30 @@ +2020-04-30 Jiewen Tan + +[WebAuthn] Require user gestures for LocalAuthenticator +https://bugs.webkit.org/show_bug.cgi?id=182893 + + +Reviewed by Brent Fulgham. + +Covered by API tests. + +* UIProcess/WebAuthentication/AuthenticatorManager.cpp: +(WebKit::AuthenticatorManager::filterTransports const): +(WebKit::AuthenticatorManager::getTransports const): +Checks UserGesture here. Since filterTransports will be overrided in mock testings, +all mock tests don't require user gestures. + +* UIProcess/WebAuthentication/WebAuthenticationRequestData.h: +* UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp: +(WebKit::WebAuthenticatorCoordinatorProxy::makeCredential): +(WebKit::WebAuthenticatorCoordinatorProxy::getAssertion): +* UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h: +* UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in: +* WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp: +(WebKit::WebAuthenticatorCoordinator::makeCredential): +(WebKit::WebAuthenticatorCoordinator::getAssertion): +Adds user gesture corresponding fields. + 2020-04-30 Wenson Hsieh Unreviewed, fix the Mac Catalyst build after r260979 Modified: trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp (260982 => 260983) --- trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp 2020-05-01 03:57:55 UTC (rev 260982) +++ trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp 2020-05-01 04:43:28 UTC (rev 260983) @@ -305,6 +305,12 @@ transports.remove(AuthenticatorTransport::Nfc); if (!LocalService::isAvailable()) transports.remove(AuthenticatorTransport::Internal); + +if (!isFeatureEnabled(m_pendingRequestData.page.get(), WebPreferencesKey::webAuthenticationLocalAuthenticatorEnabledKey())) +transports.remove(AuthenticatorTransport::Internal); +// Local authenticator might invoke system UI which should definitely not be able to trigger by scripts automatically. +if (!m_pendingRequestData.processingUserGesture) +transports.remove(AuthenticatorTransport::Internal); } void
[webkit-changes] [260982] trunk/Source/WebKit
Title: [260982] trunk/Source/WebKit Revision 260982 Author wenson_hs...@apple.com Date 2020-04-30 20:57:55 -0700 (Thu, 30 Apr 2020) Log Message Unreviewed, fix the Mac Catalyst build after r260979 The presence of `_contextMenuInteraction` is conditional not only on `USE(UICONTEXTMENU)`, but also `HAVE(LINK_PREVIEW)`. Guard logic in `-deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:` with the latter as well. * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260981 => 260982) --- trunk/Source/WebKit/ChangeLog 2020-05-01 03:48:29 UTC (rev 260981) +++ trunk/Source/WebKit/ChangeLog 2020-05-01 03:57:55 UTC (rev 260982) @@ -1,3 +1,14 @@ +2020-04-30 Wenson Hsieh + +Unreviewed, fix the Mac Catalyst build after r260979 + +The presence of `_contextMenuInteraction` is conditional not only on `USE(UICONTEXTMENU)`, but also +`HAVE(LINK_PREVIEW)`. Guard logic in `-deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:` with the +latter as well. + +* UIProcess/ios/WKContentViewInteraction.mm: +(-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]): + 2020-04-30 Simon Fraser Clean up some EventHandler coordinate-related naming and fix ScrollableArea::lastKnownMousePosition() conversions Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (260981 => 260982) --- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2020-05-01 03:48:29 UTC (rev 260981) +++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2020-05-01 03:57:55 UTC (rev 260982) @@ -7110,7 +7110,7 @@ return NO; auto mayDelayResetOfContainingSubgraph = [&](UIGestureRecognizer *gesture) -> BOOL { -#if USE(UICONTEXTMENU) +#if USE(UICONTEXTMENU) && HAVE(LINK_PREVIEW) if (gesture == [_contextMenuInteraction gestureRecognizerForFailureRelationships]) return YES; #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260981] trunk/Source
Title: [260981] trunk/Source Revision 260981 Author simon.fra...@apple.com Date 2020-04-30 20:48:29 -0700 (Thu, 30 Apr 2020) Log Message Clean up some EventHandler coordinate-related naming and fix ScrollableArea::lastKnownMousePosition() conversions https://bugs.webkit.org/show_bug.cgi?id=211259 Reviewed by Zalan Bujtas. Source/WebCore: On EventHandler, rename m_lastKnownMousePosition, m_mouseDownPos and m_mouseDown for clarity. Rename ScrollableArea::lastKnownMousePosition() to be lastKnownMousePositionInView(). Previously, lastKnownMousePosition() would fetch it from EventHandler, which simply stashed event.position() (which is in a coordinate system that differs between WK1 and Wk2) which was not relative to the EventHandler's frame. This cause mouseLocationInScrollerForScrollerImp: to give wrong answers. Instead, lastKnownMousePositionInView() now specifically returns coordinates relative to the Frame. This behavior change will be tested in future overlay scrollbar tests. Document::showPlaybackTargetPicker() was using FrameView::lastKnownMousePosition(), so to avoid changing its (probably broken) behavior, have it call frame()->eventHandler().lastKnownMousePosition(). * dom/Document.cpp: (WebCore::Document::showPlaybackTargetPicker): * page/EventHandler.cpp: (WebCore::EventHandler::clear): (WebCore::EventHandler::handleMousePressEvent): (WebCore::EventHandler::handleMouseDraggedEvent): (WebCore::EventHandler::updateDragSourceActionsAllowed const): (WebCore::EventHandler::dispatchDragStartEventOnSourceElement): (WebCore::EventHandler::handleDrag): (WebCore::EventHandler::mouseMovementExceedsThreshold const): * page/EventHandler.h: * page/FrameView.cpp: (WebCore::FrameView::lastKnownMousePositionInView const): (WebCore::FrameView::lastKnownMousePosition const): Deleted. * page/FrameView.h: * platform/PlatformMouseEvent.h: * platform/ScrollableArea.h: (WebCore::ScrollableArea::lastKnownMousePositionInView const): (WebCore::ScrollableArea::lastKnownMousePosition const): Deleted. * platform/mac/ScrollAnimatorMac.mm: (-[WebScrollerImpPairDelegate mouseLocationInContentAreaForScrollerImpPair:]): (-[WebScrollerImpPairDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]): (-[WebScrollerImpDelegate mouseLocationInScrollerForScrollerImp:]): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::lastKnownMousePositionInView const): (WebCore::RenderLayer::lastKnownMousePosition const): Deleted. * rendering/RenderLayer.h: * rendering/RenderListBox.cpp: (WebCore::RenderListBox::lastKnownMousePositionInView const): (WebCore::RenderListBox::lastKnownMousePosition const): Deleted. * rendering/RenderListBox.h: Source/WebKit: * Shared/WebEvent.h: (WebKit::WebMouseEvent::position const): * Shared/WebMouseEvent.cpp: (WebKit::WebMouseEvent::WebMouseEvent): * WebProcess/Plugins/PDF/PDFPlugin.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/page/EventHandler.cpp trunk/Source/WebCore/page/EventHandler.h trunk/Source/WebCore/page/FrameView.cpp trunk/Source/WebCore/page/FrameView.h trunk/Source/WebCore/platform/PlatformMouseEvent.h trunk/Source/WebCore/platform/ScrollableArea.h trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm trunk/Source/WebCore/rendering/RenderLayer.cpp trunk/Source/WebCore/rendering/RenderLayer.h trunk/Source/WebCore/rendering/RenderListBox.cpp trunk/Source/WebCore/rendering/RenderListBox.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebEvent.h trunk/Source/WebKit/Shared/WebMouseEvent.cpp trunk/Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h Diff Modified: trunk/Source/WebCore/ChangeLog (260980 => 260981) --- trunk/Source/WebCore/ChangeLog 2020-05-01 03:26:21 UTC (rev 260980) +++ trunk/Source/WebCore/ChangeLog 2020-05-01 03:48:29 UTC (rev 260981) @@ -1,3 +1,56 @@ +2020-04-30 Simon Fraser + +Clean up some EventHandler coordinate-related naming and fix ScrollableArea::lastKnownMousePosition() conversions +https://bugs.webkit.org/show_bug.cgi?id=211259 + +Reviewed by Zalan Bujtas. + +On EventHandler, rename m_lastKnownMousePosition, m_mouseDownPos and m_mouseDown for clarity. + +Rename ScrollableArea::lastKnownMousePosition() to be lastKnownMousePositionInView(). +Previously, lastKnownMousePosition() would fetch it from EventHandler, which simply stashed +event.position() (which is in a coordinate system that differs between WK1 and Wk2) which +was not relative to the EventHandler's frame. This cause mouseLocationInScrollerForScrollerImp: +to give wrong answers. + +Instead, lastKnownMousePositionInView() now specifically returns coordinates relative to the Frame. +This behavior change will be tested in future overlay scrollbar tests. + +Document::showPlaybackTargetPicker() was using FrameView::lastKnownMousePosition(), so to avoid +changing its (probably broken) behavior, have it call
[webkit-changes] [260980] trunk/Source/WebKit
Title: [260980] trunk/Source/WebKit Revision 260980 Author ddkil...@apple.com Date 2020-04-30 20:26:21 -0700 (Thu, 30 Apr 2020) Log Message [iOS] Fix confusing idiom for releasing _selectionRects in -[WKTextRange dealloc] Reviewed by Wenson Hsieh. * UIProcess/ios/WKContentViewInteraction.mm: (-[WKTextRange dealloc]): - Switch to more common idiom to release an instance variable. This fixes a false positive warning from the clang static analyzer about releasing a variable not owned by the caller. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260979 => 260980) --- trunk/Source/WebKit/ChangeLog 2020-05-01 03:01:09 UTC (rev 260979) +++ trunk/Source/WebKit/ChangeLog 2020-05-01 03:26:21 UTC (rev 260980) @@ -1,3 +1,16 @@ +2020-04-30 David Kilzer + +[iOS] Fix confusing idiom for releasing _selectionRects in -[WKTextRange dealloc] + + +Reviewed by Wenson Hsieh. + +* UIProcess/ios/WKContentViewInteraction.mm: +(-[WKTextRange dealloc]): +- Switch to more common idiom to release an instance variable. + This fixes a false positive warning from the clang static + analyzer about releasing a variable not owned by the caller. + 2020-04-30 Wenson Hsieh REGRESSION: Double tap dispatches one click event on iOS 13.4 when it would dispatch two on iOS 13.3 Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (260979 => 260980) --- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2020-05-01 03:01:09 UTC (rev 260979) +++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2020-05-01 03:26:21 UTC (rev 260980) @@ -9752,7 +9752,7 @@ - (void)dealloc { -[self.selectionRects release]; +[_selectionRects release]; [super dealloc]; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260979] trunk
Title: [260979] trunk Revision 260979 Author wenson_hs...@apple.com Date 2020-04-30 20:01:09 -0700 (Thu, 30 Apr 2020) Log Message REGRESSION: Double tap dispatches one click event on iOS 13.4 when it would dispatch two on iOS 13.3 https://bugs.webkit.org/show_bug.cgi?id=211179 Reviewed by Tim Horton. Source/WebKit: https://trac.webkit.org/r253267 introduced deferring gesture recognizers as a way to handle preventable (non- passive) touchstart events without blocking the UI process. These deferring gesture recognizers work by having other gesture recognizers at or below WKWebView (with few exceptions) require the failure of these deferring gestures. These gestures transition to possible state when beginning a touch inside a non-passive touch event handling region, and transition to either failed or ended state (depending on whether `preventDefault()` was called) after the web content process finished handling the touch event. However, this means that the resulting dependency graph now has an edge between each gesture under WKWebView and one of the deferring gesture recognizers, due to these new failure requirements. Since gestures that have been recognized or have failed don't get reset until all other gestures in the same dependency subgraph have also recognized or failed, some gestures (such as the synthetic single tap gesture recognizer in this bug) might not be resetting as soon after ending as they did before, since they may be connected to other gesture recognizers that are still in possible state by way of the failure requirements added by the new deferring gestures. I was already aware of this problem in r253267, and attempted to solve this by bisecting the gesture dependency graph into two subgraphs: one containing all the one-finger multi-tap gestures that are reset after a lengthy delay, and another containing everything else. To do this, I added two different deferring gesture recognizers: one for immediately resettable gestures (meant for gestures in the latter subgraph), and another for gestures that are reset after a delay (meant for gestures in the former subgraph). Unfortunately, unrelated changes around text interactions in UIKit in iOS 13.4 caused the tap-and-a-half gesture for selecting a range of text to now have a delayed reset; this means that gestures in the "immediately resettable" gesture subgraph are all forced to wait on the tap-and-a-half text interaction gesture before resetting, which causes the bug here, since the synthetic single tap gesture is in this "immediately resettable" gesture subgraph. To mitigate this, this patch pushes the tap-and-a-half text selection gesture, along with the loupe gesture, context menu relationship gesture, and drag lift gestures (i.e. the other gestures that are connected to the tap-and-a-half gesture via failure requirements) out of the "immediately resettable" subgraph, and into the "delayed" subgraph. Test: fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler.html * Platform/spi/ios/UIKitSPI.h: * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]): LayoutTests: Add a new layout test to verify that double tapping a button with fast-clicking enabled (i.e. in a device-width viewport) fires two click events. * fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler-expected.txt: Added. * fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Added Paths trunk/LayoutTests/fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler-expected.txt trunk/LayoutTests/fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler.html Diff Modified: trunk/LayoutTests/ChangeLog (260978 => 260979) --- trunk/LayoutTests/ChangeLog 2020-05-01 02:20:44 UTC (rev 260978) +++ trunk/LayoutTests/ChangeLog 2020-05-01 03:01:09 UTC (rev 260979) @@ -1,3 +1,17 @@ +2020-04-30 Wenson Hsieh + +REGRESSION: Double tap dispatches one click event on iOS 13.4 when it would dispatch two on iOS 13.3 +https://bugs.webkit.org/show_bug.cgi?id=211179 + + +Reviewed by Tim Horton. + +Add a new layout test to verify that double tapping a button with fast-clicking enabled (i.e. in a device-width +viewport) fires two click events. + +* fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler-expected.txt: Added. +* fast/events/touch/ios/two-click-events-after-double-tap-with-touch-handler.html: Added. + 2020-04-30 Truitt Savell [ iOS ] compositing/iframes/border-radius-composited-frame.html is a flaky failure Added:
[webkit-changes] [260978] trunk/Source/WebInspectorUI
Title: [260978] trunk/Source/WebInspectorUI Revision 260978 Author nvasil...@apple.com Date 2020-04-30 19:20:44 -0700 (Thu, 30 Apr 2020) Log Message Web Inspector: Computed: shouldn't display focus outline on click https://bugs.webkit.org/show_bug.cgi?id=28 Reviewed by Devin Rousso. - CSS property view is no longer focusable. - Disclosure triangle is now tabbable. * UserInterface/Views/ComputedStyleSection.css: (.computed-style-section .computed-property-item): (.computed-style-section .computed-property-item.expanded): (.computed-style-section .computed-property-item > .disclosure-button:focus): * UserInterface/Views/ExpandableView.js: (WI.ExpandableView): (WI.ExpandableView.prototype._onDisclosureButtonClick): (WI.ExpandableView.prototype._update): Drive-by: add `ariaExpanded` so VoiceOver reads whether it's expanded or collapsed. * UserInterface/Views/SpreadsheetStyleProperty.js: Remove tabIndex so we don't show any focus outline around the entire CSS property view. Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/ComputedStyleSection.css trunk/Source/WebInspectorUI/UserInterface/Views/ExpandableView.js trunk/Source/WebInspectorUI/UserInterface/Views/SpreadsheetStyleProperty.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (260977 => 260978) --- trunk/Source/WebInspectorUI/ChangeLog 2020-05-01 01:47:47 UTC (rev 260977) +++ trunk/Source/WebInspectorUI/ChangeLog 2020-05-01 02:20:44 UTC (rev 260978) @@ -1,3 +1,27 @@ +2020-04-30 Nikita Vasilyev + +Web Inspector: Computed: shouldn't display focus outline on click +https://bugs.webkit.org/show_bug.cgi?id=28 + + +Reviewed by Devin Rousso. + +- CSS property view is no longer focusable. +- Disclosure triangle is now tabbable. + +* UserInterface/Views/ComputedStyleSection.css: +(.computed-style-section .computed-property-item): +(.computed-style-section .computed-property-item.expanded): +(.computed-style-section .computed-property-item > .disclosure-button:focus): +* UserInterface/Views/ExpandableView.js: +(WI.ExpandableView): +(WI.ExpandableView.prototype._onDisclosureButtonClick): +(WI.ExpandableView.prototype._update): +Drive-by: add `ariaExpanded` so VoiceOver reads whether it's expanded or collapsed. + +* UserInterface/Views/SpreadsheetStyleProperty.js: +Remove tabIndex so we don't show any focus outline around the entire CSS property view. + 2020-04-30 Devin Rousso WebKit.WebContent process crashes when web developer tools are opened in Safari Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ComputedStyleSection.css (260977 => 260978) --- trunk/Source/WebInspectorUI/UserInterface/Views/ComputedStyleSection.css 2020-05-01 01:47:47 UTC (rev 260977) +++ trunk/Source/WebInspectorUI/UserInterface/Views/ComputedStyleSection.css 2020-05-01 02:20:44 UTC (rev 260978) @@ -32,10 +32,9 @@ .computed-style-section .computed-property-item { box-sizing: border-box; max-width: 100%; -min-height: var(--disclosure-button-size); +min-height: calc(var(--disclosure-button-size)); padding-left: calc(var(--disclosure-button-size) + 6px); padding-right: var(--css-declaration-horizontal-padding); -border-top: 0.5px solid transparent; overflow: hidden; text-overflow: ellipsis; } @@ -43,13 +42,20 @@ .computed-style-section .computed-property-item.expanded { padding-bottom: 2px; background-color: hsl(0, 0%, 97%); -border-top-color: var(--text-color-quaternary); +border-top: 0.5px solid var(--text-color-quaternary); +border-bottom: 0.5px solid var(--text-color-quaternary); } -.computed-style-section .computed-property-item.expanded + .computed-property-item { -border-top-color: var(--text-color-quaternary); +.computed-style-section .computed-property-item.expanded + .computed-property-item.expanded { +border-top: none; } +.computed-style-section .computed-property-item > .disclosure-button:focus { +outline: auto -webkit-focus-ring-color; +outline-offset: -3px; /* Make focus outline smaller than usual so it doesn't get clipped here. */ +border-radius: calc((var(--disclosure-button-size) / 2) - 2px); +} + .computed-style-section .computed-property-item .disclosure-button { display: inline-block; width: var(--disclosure-button-size); Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ExpandableView.js (260977 => 260978) --- trunk/Source/WebInspectorUI/UserInterface/Views/ExpandableView.js 2020-05-01 01:47:47 UTC (rev 260977) +++ trunk/Source/WebInspectorUI/UserInterface/Views/ExpandableView.js 2020-05-01 02:20:44 UTC (rev 260978) @@ -30,19 +30,17 @@ this._element = document.createElement("div"); if (childElement) { -let disclosureButton = document.createElement("button"); -
[webkit-changes] [260977] trunk/Source/WebCore
Title: [260977] trunk/Source/WebCore Revision 260977 Author ysuz...@apple.com Date 2020-04-30 18:47:47 -0700 (Thu, 30 Apr 2020) Log Message Some HTML element critical paths include AtomString materialization https://bugs.webkit.org/show_bug.cgi?id=211223 Reviewed by Saam Barati. While measuring Speedometer2, I've noticed that every time we create some type of input element, we call AtomString multiple times while it is not necessary. It turned out that this is because some places are using `AtomString("...", AtomString::ConstructFromLiteral)` instead of `static NeverDestroyed ...("...", AtomString::ConstructFromLiteral)`. Since HTML is in the main thread, we can just use `static NeverDestroyed<>`. This patch fixes `AtomString()` calls by changing them to `NeverDestroyed` if it is under WebCore/html directory. And in this patch, we omit FTPDirectoryDocument, MediaDocument, and PluginDocument's fixes for now since their AtomString content has a bit different nature (some pseudo CSS value ("-webkit-xxx") v.s. some particular CSS property value ("100%"). * html/ColorInputType.cpp: (WebCore::ColorInputType::createShadowSubtree): * html/FileInputType.cpp: (WebCore::UploadButtonElement::UploadButtonElement): * html/HTMLElement.cpp: (WebCore::trueName): (WebCore::falseName): (WebCore::plaintextOnlyName): (WebCore::HTMLElement::setContentEditable): (WebCore::HTMLElement::setDraggable): (WebCore::HTMLElement::setSpellcheck): (WebCore::HTMLElement::setAutocorrect): * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::updateInnerTextElementEditability): * html/RangeInputType.cpp: (WebCore::RangeInputType::createShadowSubtree): * html/SearchInputType.cpp: (WebCore::updateResultButtonPseudoType): * html/TextFieldInputType.cpp: (WebCore::TextFieldInputType::createShadowSubtree): (WebCore::TextFieldInputType::createDataListDropdownIndicator): (WebCore::TextFieldInputType::createContainer): (WebCore::TextFieldInputType::createAutoFillButton): * html/ValidationMessage.cpp: (WebCore::ValidationMessage::buildBubbleTree): * html/shadow/DetailsMarkerControl.cpp: (WebCore::DetailsMarkerControl::DetailsMarkerControl): * html/shadow/MediaControlTextTrackContainerElement.cpp: (WebCore::MediaControlTextTrackContainerElement::MediaControlTextTrackContainerElement): * html/shadow/ProgressShadowElement.cpp: (WebCore::ProgressInnerElement::create): (WebCore::ProgressBarElement::create): (WebCore::ProgressValueElement::create): * html/shadow/ProgressShadowElement.h: (WebCore::ProgressInnerElement::create): Deleted. (WebCore::ProgressBarElement::create): Deleted. (WebCore::ProgressValueElement::create): Deleted. * html/shadow/SpinButtonElement.cpp: (WebCore::SpinButtonElement::SpinButtonElement): * html/shadow/TextControlInnerElements.cpp: (WebCore::TextControlPlaceholderElement::TextControlPlaceholderElement): (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement): * html/shadow/YouTubeEmbedShadowElement.cpp: (WebCore::YouTubeEmbedShadowElement::YouTubeEmbedShadowElement): * html/shadow/mac/ImageControlsButtonElementMac.cpp: (WebCore::ImageControlsButtonElementMac::tryCreate): * html/shadow/mac/ImageControlsRootElementMac.cpp: (WebCore::ImageControlsRootElement::tryCreate): * html/track/TextTrackCue.cpp: (WebCore::TextTrackCue::rebuildDisplayTree): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/ColorInputType.cpp trunk/Source/WebCore/html/FileInputType.cpp trunk/Source/WebCore/html/HTMLElement.cpp trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp trunk/Source/WebCore/html/RangeInputType.cpp trunk/Source/WebCore/html/SearchInputType.cpp trunk/Source/WebCore/html/TextFieldInputType.cpp trunk/Source/WebCore/html/ValidationMessage.cpp trunk/Source/WebCore/html/shadow/DetailsMarkerControl.cpp trunk/Source/WebCore/html/shadow/MediaControlTextTrackContainerElement.cpp trunk/Source/WebCore/html/shadow/ProgressShadowElement.cpp trunk/Source/WebCore/html/shadow/ProgressShadowElement.h trunk/Source/WebCore/html/shadow/SpinButtonElement.cpp trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp trunk/Source/WebCore/html/shadow/YouTubeEmbedShadowElement.cpp trunk/Source/WebCore/html/shadow/mac/ImageControlsButtonElementMac.cpp trunk/Source/WebCore/html/shadow/mac/ImageControlsRootElementMac.cpp trunk/Source/WebCore/html/track/TextTrackCue.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260976 => 260977) --- trunk/Source/WebCore/ChangeLog 2020-05-01 01:13:03 UTC (rev 260976) +++ trunk/Source/WebCore/ChangeLog 2020-05-01 01:47:47 UTC (rev 260977) @@ -1,3 +1,68 @@ +2020-04-30 Yusuke Suzuki + +Some HTML element critical paths include AtomString materialization +https://bugs.webkit.org/show_bug.cgi?id=211223 + +Reviewed by Saam Barati. + +While measuring Speedometer2, I've noticed that every time we create some type of input element, we call AtomString multiple times while it is not necessary. +It turned out
[webkit-changes] [260976] trunk/Source/JavaScriptCore
Title: [260976] trunk/Source/_javascript_Core Revision 260976 Author ross.kirsl...@sony.com Date 2020-04-30 18:13:03 -0700 (Thu, 30 Apr 2020) Log Message [JSC] intlBooleanOption should return TriState instead of taking an out param https://bugs.webkit.org/show_bug.cgi?id=211256 Reviewed by Darin Adler and Mark Lam. Boolean options for Intl constructors can have default values of true, false, or undefined. To handle the undefined case, intlBooleanOption currently has a `bool& usesFallback` param; we should have the return type simply be a TriState instead. * runtime/IntlCollator.cpp: (JSC::IntlCollator::initializeCollator): * runtime/IntlDateTimeFormat.cpp: (JSC::IntlDateTimeFormat::initializeDateTimeFormat): * runtime/IntlNumberFormat.cpp: (JSC::IntlNumberFormat::initializeNumberFormat): * runtime/IntlObject.cpp: (JSC::intlBooleanOption): * runtime/IntlObject.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/IntlCollator.cpp trunk/Source/_javascript_Core/runtime/IntlDateTimeFormat.cpp trunk/Source/_javascript_Core/runtime/IntlNumberFormat.cpp trunk/Source/_javascript_Core/runtime/IntlObject.cpp trunk/Source/_javascript_Core/runtime/IntlObject.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (260975 => 260976) --- trunk/Source/_javascript_Core/ChangeLog 2020-05-01 00:30:57 UTC (rev 260975) +++ trunk/Source/_javascript_Core/ChangeLog 2020-05-01 01:13:03 UTC (rev 260976) @@ -1,3 +1,24 @@ +2020-04-30 Ross Kirsling + +[JSC] intlBooleanOption should return TriState instead of taking an out param +https://bugs.webkit.org/show_bug.cgi?id=211256 + +Reviewed by Darin Adler and Mark Lam. + +Boolean options for Intl constructors can have default values of true, false, or undefined. +To handle the undefined case, intlBooleanOption currently has a `bool& usesFallback` param; +we should have the return type simply be a TriState instead. + +* runtime/IntlCollator.cpp: +(JSC::IntlCollator::initializeCollator): +* runtime/IntlDateTimeFormat.cpp: +(JSC::IntlDateTimeFormat::initializeDateTimeFormat): +* runtime/IntlNumberFormat.cpp: +(JSC::IntlNumberFormat::initializeNumberFormat): +* runtime/IntlObject.cpp: +(JSC::intlBooleanOption): +* runtime/IntlObject.h: + 2020-04-30 Devin Rousso WebKit.WebContent process crashes when web developer tools are opened in Safari Modified: trunk/Source/_javascript_Core/runtime/IntlCollator.cpp (260975 => 260976) --- trunk/Source/_javascript_Core/runtime/IntlCollator.cpp 2020-05-01 00:30:57 UTC (rev 260975) +++ trunk/Source/_javascript_Core/runtime/IntlCollator.cpp 2020-05-01 01:13:03 UTC (rev 260976) @@ -199,23 +199,16 @@ RETURN_IF_EXCEPTION(scope, void()); opt.add("localeMatcher"_s, matcher); -{ -String numericString; -bool usesFallback; -bool numeric = intlBooleanOption(globalObject, options, vm.propertyNames->numeric, usesFallback); -RETURN_IF_EXCEPTION(scope, void()); -if (!usesFallback) -numericString = numeric ? "true"_s : "false"_s; -if (!numericString.isNull()) -opt.add("kn"_s, numericString); -} -{ -String caseFirst = intlStringOption(globalObject, options, vm.propertyNames->caseFirst, { "upper", "lower", "false" }, "caseFirst must be either \"upper\", \"lower\", or \"false\"", nullptr); -RETURN_IF_EXCEPTION(scope, void()); -if (!caseFirst.isNull()) -opt.add("kf"_s, caseFirst); -} +TriState numeric = intlBooleanOption(globalObject, options, vm.propertyNames->numeric); +RETURN_IF_EXCEPTION(scope, void()); +if (numeric != MixedTriState) +opt.add("kn"_s, numeric == TrueTriState ? "true"_s : "false"_s); +String caseFirstOption = intlStringOption(globalObject, options, vm.propertyNames->caseFirst, { "upper", "lower", "false" }, "caseFirst must be either \"upper\", \"lower\", or \"false\"", nullptr); +RETURN_IF_EXCEPTION(scope, void()); +if (!caseFirstOption.isNull()) +opt.add("kf"_s, caseFirstOption); + auto& availableLocales = intlCollatorAvailableLocales(); auto result = resolveLocale(globalObject, availableLocales, requestedLocales, opt, IntlCollatorInternal::relevantExtensionKeys, WTF_ARRAY_LENGTH(IntlCollatorInternal::relevantExtensionKeys), localeData); @@ -248,12 +241,9 @@ else m_sensitivity = Sensitivity::Variant; -bool usesFallback; -bool ignorePunctuation = intlBooleanOption(globalObject, options, vm.propertyNames->ignorePunctuation, usesFallback); +TriState ignorePunctuation = intlBooleanOption(globalObject, options, vm.propertyNames->ignorePunctuation); RETURN_IF_EXCEPTION(scope, void()); -if (usesFallback) -ignorePunctuation = false; -m_ignorePunctuation = ignorePunctuation; +m_ignorePunctuation = (ignorePunctuation ==
[webkit-changes] [260975] tags/Safari-610.1.11.4/
Title: [260975] tags/Safari-610.1.11.4/ Revision 260975 Author alanc...@apple.com Date 2020-04-30 17:30:57 -0700 (Thu, 30 Apr 2020) Log Message Tag Safari-610.1.11.4. Added Paths tags/Safari-610.1.11.4/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260974] trunk/Source/WebKit
Title: [260974] trunk/Source/WebKit Revision 260974 Author bfulg...@apple.com Date 2020-04-30 16:46:39 -0700 (Thu, 30 Apr 2020) Log Message REGRESSION (r260932): ASSERTION FAILED: ok in webkit::SandboxExtension::consumePermanently for 3 tests https://bugs.webkit.org/show_bug.cgi?id=211253 Reviewed by Per Arne Vollan. In r260932 I added an assertion to confirm that a sandbox extension was successfully consumed. This triggered three test failures because those tests attempt to pass a sandbox extension from the WebContent process to the UIProcess. After speaking with the Sandbox team, I learned that an unsandboxed program that attempts to consume a valid sandbox extension will return 0. Sandboxed processes either receive -1 (for error), or a handle representing the newly added extension (so that it can be removed when no longer needed). Since the TestWebKitAPI (and WebKitTestRunner) processes are not sandboxed they receive a zero return value here. We should recognize this as a valid and expected result. We should also consider making some form of sandboxed driver for WebKit. * Shared/Cocoa/SandboxExtensionCocoa.mm: (WebKit::SandboxExtensionImpl::consume): Recognize a 0 handle as valid. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260973 => 260974) --- trunk/Source/WebKit/ChangeLog 2020-04-30 23:20:58 UTC (rev 260973) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 23:46:39 UTC (rev 260974) @@ -1,3 +1,26 @@ +2020-04-30 Brent Fulgham + +REGRESSION (r260932): ASSERTION FAILED: ok in webkit::SandboxExtension::consumePermanently for 3 tests +https://bugs.webkit.org/show_bug.cgi?id=211253 + + +Reviewed by Per Arne Vollan. + +In r260932 I added an assertion to confirm that a sandbox extension was successfully consumed. This triggered three +test failures because those tests attempt to pass a sandbox extension from the WebContent process to the UIProcess. + +After speaking with the Sandbox team, I learned that an unsandboxed program that attempts to consume a valid +sandbox extension will return 0. Sandboxed processes either receive -1 (for error), or a handle representing the +newly added extension (so that it can be removed when no longer needed). + +Since the TestWebKitAPI (and WebKitTestRunner) processes are not sandboxed they receive a zero return value here. + +We should recognize this as a valid and expected result. We should also consider making some form of sandboxed +driver for WebKit. + +* Shared/Cocoa/SandboxExtensionCocoa.mm: +(WebKit::SandboxExtensionImpl::consume): Recognize a 0 handle as valid. + 2020-04-30 Jiewen Tan [WebAuthn] Optimize LocalAuthenticator Modified: trunk/Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm (260973 => 260974) --- trunk/Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm 2020-04-30 23:20:58 UTC (rev 260973) +++ trunk/Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm 2020-04-30 23:46:39 UTC (rev 260974) @@ -68,7 +68,7 @@ LOG_ERROR("Could not create a sandbox extension for '%s', errno = %d", m_token, errno); return false; } -return m_handle; +return true; #endif } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260973] trunk/LayoutTests
Title: [260973] trunk/LayoutTests Revision 260973 Author tsav...@apple.com Date 2020-04-30 16:20:58 -0700 (Thu, 30 Apr 2020) Log Message [ iOS ] compositing/iframes/border-radius-composited-frame.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=211261 unreviewed test gardening. * platform/ios/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (260972 => 260973) --- trunk/LayoutTests/ChangeLog 2020-04-30 23:18:18 UTC (rev 260972) +++ trunk/LayoutTests/ChangeLog 2020-04-30 23:20:58 UTC (rev 260973) @@ -3,6 +3,15 @@ [ iOS ] compositing/iframes/border-radius-composited-frame.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=211261 +unreviewed test gardening. + +* platform/ios/TestExpectations: + +2020-04-30 Truitt Savell + +[ iOS ] compositing/iframes/border-radius-composited-frame.html is a flaky failure +https://bugs.webkit.org/show_bug.cgi?id=211261 + Unreviewed test gardening. * platform/ios/TestExpectations: Modified: trunk/LayoutTests/platform/ios/TestExpectations (260972 => 260973) --- trunk/LayoutTests/platform/ios/TestExpectations 2020-04-30 23:18:18 UTC (rev 260972) +++ trunk/LayoutTests/platform/ios/TestExpectations 2020-04-30 23:20:58 UTC (rev 260973) @@ -3533,4 +3533,4 @@ media/media-document-audio-repaint.html [ Skip ] media/controls-styling.html [ Skip ] -webkit.org/b/211261 compositing/iframes/border-radius-composited-frame.html [ Pass Failure ] \ No newline at end of file +webkit.org/b/211261 compositing/iframes/border-radius-composited-frame.html [ Pass ImageOnlyFailure ] \ No newline at end of file ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260972] trunk/LayoutTests
Title: [260972] trunk/LayoutTests Revision 260972 Author tsav...@apple.com Date 2020-04-30 16:18:18 -0700 (Thu, 30 Apr 2020) Log Message [ iOS ] compositing/iframes/border-radius-composited-frame.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=211261 Unreviewed test gardening. * platform/ios/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (260971 => 260972) --- trunk/LayoutTests/ChangeLog 2020-04-30 22:37:27 UTC (rev 260971) +++ trunk/LayoutTests/ChangeLog 2020-04-30 23:18:18 UTC (rev 260972) @@ -1,3 +1,12 @@ +2020-04-30 Truitt Savell + +[ iOS ] compositing/iframes/border-radius-composited-frame.html is a flaky failure +https://bugs.webkit.org/show_bug.cgi?id=211261 + +Unreviewed test gardening. + +* platform/ios/TestExpectations: + 2020-04-30 Devin Rousso WebKit.WebContent process crashes when web developer tools are opened in Safari Modified: trunk/LayoutTests/platform/ios/TestExpectations (260971 => 260972) --- trunk/LayoutTests/platform/ios/TestExpectations 2020-04-30 22:37:27 UTC (rev 260971) +++ trunk/LayoutTests/platform/ios/TestExpectations 2020-04-30 23:18:18 UTC (rev 260972) @@ -3532,3 +3532,5 @@ # These media controls tests are not relevant on macOS and iOS. media/media-document-audio-repaint.html [ Skip ] media/controls-styling.html [ Skip ] + +webkit.org/b/211261 compositing/iframes/border-radius-composited-frame.html [ Pass Failure ] \ No newline at end of file ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260971] trunk/Tools
Title: [260971] trunk/Tools Revision 260971 Author commit-qu...@webkit.org Date 2020-04-30 15:37:27 -0700 (Thu, 30 Apr 2020) Log Message TestWebKitAPI.WebKit.DefaultDisplayName and TestWebKitAPI.WebKit.CustomDisplayName are flaky failures https://bugs.webkit.org/show_bug.cgi?id=209993 Patch by Alex Christensen on 2020-04-30 Reviewed by Chris Dumez. The display name for the web process is set on a low-priority background queue in WebProcess::updateProcessName() so sometimes in our test it hasn't executed yet. If it hasn't executed yet, it will soon, so try until it succeeds. * TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm: (TestWebKitAPI::checkUntilDisplayNameIs): (TestWebKitAPI::TEST): Modified Paths trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm Diff Modified: trunk/Tools/ChangeLog (260970 => 260971) --- trunk/Tools/ChangeLog 2020-04-30 22:27:02 UTC (rev 260970) +++ trunk/Tools/ChangeLog 2020-04-30 22:37:27 UTC (rev 260971) @@ -1,3 +1,18 @@ +2020-04-30 Alex Christensen + +TestWebKitAPI.WebKit.DefaultDisplayName and TestWebKitAPI.WebKit.CustomDisplayName are flaky failures +https://bugs.webkit.org/show_bug.cgi?id=209993 + + +Reviewed by Chris Dumez. + +The display name for the web process is set on a low-priority background queue in WebProcess::updateProcessName() +so sometimes in our test it hasn't executed yet. If it hasn't executed yet, it will soon, so try until it succeeds. + +* TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm: +(TestWebKitAPI::checkUntilDisplayNameIs): +(TestWebKitAPI::TEST): + 2020-04-30 Jiewen Tan [WebAuthn] Optimize LocalAuthenticator Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm (260970 => 260971) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm 2020-04-30 22:27:02 UTC (rev 260970) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm 2020-04-30 22:37:27 UTC (rev 260971) @@ -41,6 +41,16 @@ namespace TestWebKitAPI { #if PLATFORM(MAC) +static void checkUntilDisplayNameIs(WKWebView *webView, NSString *expectedName, bool* done) +{ +[webView _getProcessDisplayNameWithCompletionHandler:^(NSString *name) { +if ([name isEqualToString:expectedName]) +*done = true; +else +checkUntilDisplayNameIs(webView, expectedName, done); +}]; +} + TEST(WebKit, CustomDisplayName) { WKWebViewConfiguration *configuration = [[WKWebViewConfiguration new] autorelease]; @@ -49,13 +59,8 @@ auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 500) configuration:configuration]); [webView synchronouslyLoadHTMLString:@"start web process"]; -__block bool done = false; - -[webView _getProcessDisplayNameWithCompletionHandler:^(NSString *name) { -EXPECT_WK_STREQ(name, displayNameToSet); -done = true; -}]; - +bool done = false; +checkUntilDisplayNameIs(webView.get(), displayNameToSet, ); Util::run(); } @@ -65,11 +70,7 @@ [webView synchronouslyLoadHTMLString:@"start web process"]; __block bool done = false; -[webView _getProcessDisplayNameWithCompletionHandler:^(NSString *name) { -EXPECT_WK_STREQ(name, @"TestWebKitAPI Web Content"); -done = true; -}]; - +checkUntilDisplayNameIs(webView.get(), @"TestWebKitAPI Web Content", ); Util::run(); } #endif // PLATFORM(MAC) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260970] trunk
Title: [260970] trunk Revision 260970 Author jiewen_...@apple.com Date 2020-04-30 15:27:02 -0700 (Thu, 30 Apr 2020) Log Message [WebAuthn] Optimize LocalAuthenticator https://bugs.webkit.org/show_bug.cgi?id=183534 Reviewed by Brent Fulgham. Source/WebCore: Covered by new API tests. * en.lproj/Localizable.strings: * platform/LocalizedStrings.cpp: (WebCore::getAssertionTouchIDPromptTitle): (WebCore::genericTouchIDPromptTitle): * platform/LocalizedStrings.h: Improving the LocalAuthentication dialog titles for iOS. Source/WebKit: This patch implements the following small optimizations: 1. Replacing local constants with ones from FidoConstants.h; 2. Merging m_assertionResponses and m_existingCredentials by replacing HashSet with Vector in Authenticator::Observer::selectAssertionResponse; 3. Using Base64 encoded strings as the keys of the HashSet in produceHashSet() instead of the old casting hack; 4. Invaliding the LAContext in LocalConnection::~LocalConnection() such that any displaying LocalAuthentication dialogs can be dismissed after the object is destroyed; 5. Sorting existing credentials according to LRU before returning to UI clients; 6. Improving the LocalAuthentication dialog titles for iOS. * UIProcess/WebAuthentication/Authenticator.h: * UIProcess/WebAuthentication/AuthenticatorManager.cpp: (WebKit::AuthenticatorManager::selectAssertionResponse): * UIProcess/WebAuthentication/AuthenticatorManager.h: * UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h: * UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm: (WebKit::LocalAuthenticatorInternal::produceHashSet): (WebKit::LocalAuthenticatorInternal::toNSData): (WebKit::LocalAuthenticatorInternal::getExistingCredentials): (WebKit::LocalAuthenticator::makeCredential): (WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification): (WebKit::LocalAuthenticator::getAssertion): (WebKit::LocalAuthenticator::continueGetAssertionAfterUserVerification): * UIProcess/WebAuthentication/Cocoa/LocalConnection.h: (WebKit::LocalConnection::filterResponses const): * UIProcess/WebAuthentication/Cocoa/LocalConnection.mm: (WebKit::WebCore::bundleName): (WebKit::LocalConnection::~LocalConnection): (WebKit::LocalConnection::verifyUser): (WebKit::LocalConnection::verifyUser const): Deleted. * UIProcess/WebAuthentication/Mock/MockLocalConnection.h: * UIProcess/WebAuthentication/Mock/MockLocalConnection.mm: (WebKit::MockLocalConnection::verifyUser): (WebKit::MockLocalConnection::filterResponses const): (WebKit::MockLocalConnection::verifyUser const): Deleted. * UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp: (WebKit::CtapAuthenticator::continueGetAssertionAfterResponseReceived): (WebKit::CtapAuthenticator::continueGetNextAssertionAfterResponseReceived): * UIProcess/WebAuthentication/fido/CtapAuthenticator.h: Tools: * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: (-[TestWebAuthenticationPanelDelegate panel:selectAssertionResponse:source:completionHandler:]): (TestWebKitAPI::TEST): Adds a new test case for the LRU. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/en.lproj/Localizable.strings trunk/Source/WebCore/platform/LocalizedStrings.cpp trunk/Source/WebCore/platform/LocalizedStrings.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebAuthentication/Authenticator.h trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalConnection.h trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalConnection.mm trunk/Source/WebKit/UIProcess/WebAuthentication/Mock/MockLocalConnection.h trunk/Source/WebKit/UIProcess/WebAuthentication/Mock/MockLocalConnection.mm trunk/Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm Diff Modified: trunk/Source/WebCore/ChangeLog (260969 => 260970) --- trunk/Source/WebCore/ChangeLog 2020-04-30 21:58:08 UTC (rev 260969) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 22:27:02 UTC (rev 260970) @@ -1,3 +1,20 @@ +2020-04-30 Jiewen Tan + +[WebAuthn] Optimize LocalAuthenticator +https://bugs.webkit.org/show_bug.cgi?id=183534 + + +Reviewed by Brent Fulgham. + +Covered by new API tests. + +* en.lproj/Localizable.strings: +* platform/LocalizedStrings.cpp: +(WebCore::getAssertionTouchIDPromptTitle): +(WebCore::genericTouchIDPromptTitle): +* platform/LocalizedStrings.h: +Improving the LocalAuthentication dialog titles for iOS. + 2020-04-30 Kate Cheney
[webkit-changes] [260969] trunk/Source/WebCore
Title: [260969] trunk/Source/WebCore Revision 260969 Author katherine_che...@apple.com Date 2020-04-30 14:58:08 -0700 (Thu, 30 Apr 2020) Log Message clearApplicationBundleIdentifierTestingOverride() should set the bundle identifier to a null string, not an empty string https://bugs.webkit.org/show_bug.cgi?id=211255 Reviewed by John Wilander. No new tests, behavior confirmed by existing tests. Clearing the bundle identifier during tests should reset the override value to be a null string so that the following calls to applicationBundleIdentifier() use the [NSBundle mainBundle] bundleIdentifier] call. * platform/cocoa/RuntimeApplicationChecksCocoa.mm: (WebCore::clearApplicationBundleIdentifierTestingOverride): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (260968 => 260969) --- trunk/Source/WebCore/ChangeLog 2020-04-30 21:39:06 UTC (rev 260968) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 21:58:08 UTC (rev 260969) @@ -1,3 +1,20 @@ +2020-04-30 Kate Cheney + +clearApplicationBundleIdentifierTestingOverride() should set the bundle identifier to a null string, not an empty string +https://bugs.webkit.org/show_bug.cgi?id=211255 + + +Reviewed by John Wilander. + +No new tests, behavior confirmed by existing tests. + +Clearing the bundle identifier during tests should reset the override +value to be a null string so that the following calls to applicationBundleIdentifier() +use the [NSBundle mainBundle] bundleIdentifier] call. + +* platform/cocoa/RuntimeApplicationChecksCocoa.mm: +(WebCore::clearApplicationBundleIdentifierTestingOverride): + 2020-04-30 Devin Rousso WebKit.WebContent process crashes when web developer tools are opened in Safari Modified: trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm (260968 => 260969) --- trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm 2020-04-30 21:39:06 UTC (rev 260968) +++ trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm 2020-04-30 21:58:08 UTC (rev 260969) @@ -69,7 +69,7 @@ void clearApplicationBundleIdentifierTestingOverride() { ASSERT(RunLoop::isMain()); -applicationBundleIdentifierOverride() = emptyString(); +applicationBundleIdentifierOverride() = String(); #if !ASSERT_MSG_DISABLED applicationBundleIdentifierOverrideWasQueried = false; #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260968] trunk
Title: [260968] trunk Revision 260968 Author katherine_che...@apple.com Date 2020-04-30 14:39:06 -0700 (Thu, 30 Apr 2020) Log Message Change default of "inAppBrowserPrivacyQuirks" testing toggle to use it for tests only https://bugs.webkit.org/show_bug.cgi?id=211209 Reviewed by Brent Fulgham. Source/WebKit: No new tests, behavior confirmed by existing tests. * Shared/WebPreferences.yaml: Tools: Manually enable inAppBrowserPrivacyQuirks for certain tests which need script evaluation to test other aspects of In-App Browser Privacy. * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: (TEST): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260967 => 260968) --- trunk/Source/WebKit/ChangeLog 2020-04-30 21:28:08 UTC (rev 260967) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 21:39:06 UTC (rev 260968) @@ -1,3 +1,15 @@ +2020-04-30 Kate Cheney + +Change default of "inAppBrowserPrivacyQuirks" testing toggle to use it for tests only +https://bugs.webkit.org/show_bug.cgi?id=211209 + + +Reviewed by Brent Fulgham. + +No new tests, behavior confirmed by existing tests. + +* Shared/WebPreferences.yaml: + 2020-04-30 Devin Rousso Unreviewed, add missing parenthesis Modified: trunk/Source/WebKit/Shared/WebPreferences.yaml (260967 => 260968) --- trunk/Source/WebKit/Shared/WebPreferences.yaml 2020-04-30 21:28:08 UTC (rev 260967) +++ trunk/Source/WebKit/Shared/WebPreferences.yaml 2020-04-30 21:39:06 UTC (rev 260968) @@ -1275,7 +1275,7 @@ NeedsInAppBrowserPrivacyQuirks: type: bool -defaultValue: true +defaultValue: false humanReadableName: "Needs In-App Browser Privacy Quirks" humanReadableDescription: "Enable quirks needed to support In-App Browser privacy" webcoreBinding: RuntimeEnabledFeatures Modified: trunk/Tools/ChangeLog (260967 => 260968) --- trunk/Tools/ChangeLog 2020-04-30 21:28:08 UTC (rev 260967) +++ trunk/Tools/ChangeLog 2020-04-30 21:39:06 UTC (rev 260968) @@ -1,3 +1,17 @@ +2020-04-30 Kate Cheney + +Change default of "inAppBrowserPrivacyQuirks" testing toggle to use it for tests only +https://bugs.webkit.org/show_bug.cgi?id=211209 + + +Reviewed by Brent Fulgham. + +Manually enable inAppBrowserPrivacyQuirks for certain tests which +need script evaluation to test other aspects of In-App Browser Privacy. + +* TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: +(TEST): + 2020-04-30 Jonathan Bedard results.webkit.org: Sort out certificates on Catalina Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm (260967 => 260968) --- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm 2020-04-30 21:28:08 UTC (rev 260967) +++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm 2020-04-30 21:39:06 UTC (rev 260968) @@ -330,6 +330,7 @@ auto schemeHandler = adoptNS([[InAppBrowserSchemeHandler alloc] init]); [configuration setURLSchemeHandler:schemeHandler.get() forURLScheme:@"in-app-browser"]; [[configuration preferences] _setInAppBrowserPrivacyEnabled:YES]; +[[configuration preferences] _setNeedsInAppBrowserPrivacyQuirks:YES]; auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectZero configuration:configuration.get()]); NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"in-app-browser:///in-app-browser-privacy-test-user-style-sheets"]]; @@ -353,6 +354,7 @@ auto schemeHandler = adoptNS([[InAppBrowserSchemeHandler alloc] init]); [configuration setURLSchemeHandler:schemeHandler.get() forURLScheme:@"in-app-browser"]; [[configuration preferences] _setInAppBrowserPrivacyEnabled:YES]; +[[configuration preferences] _setNeedsInAppBrowserPrivacyQuirks:YES]; auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectZero configuration:configuration.get()]); NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"in-app-browser:///in-app-browser-privacy-test-user-style-sheets"]]; @@ -375,6 +377,7 @@ auto schemeHandler = adoptNS([[InAppBrowserSchemeHandler alloc] init]); [configuration setURLSchemeHandler:schemeHandler.get() forURLScheme:@"in-app-browser"]; [[configuration preferences] _setInAppBrowserPrivacyEnabled:YES]; +[[configuration preferences] _setNeedsInAppBrowserPrivacyQuirks:YES]; auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectZero configuration:configuration.get()]); NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"in-app-browser:///in-app-browser-privacy-test-user-style-sheets-iframe"]]; @@ -402,6 +405,7 @@ auto schemeHandler = adoptNS([[InAppBrowserSchemeHandler alloc] init]);
[webkit-changes] [260967] trunk/Source/WebKit
Title: [260967] trunk/Source/WebKit Revision 260967 Author drou...@apple.com Date 2020-04-30 14:28:08 -0700 (Thu, 30 Apr 2020) Log Message Unreviewed, add missing parenthesis * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::handleMediaEvent): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (260966 => 260967) --- trunk/Source/WebKit/ChangeLog 2020-04-30 21:19:15 UTC (rev 260966) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 21:28:08 UTC (rev 260967) @@ -1,3 +1,10 @@ +2020-04-30 Devin Rousso + +Unreviewed, add missing parenthesis + +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::handleMediaEvent): + 2020-04-30 Chris Dumez [iOS][WK2] Add timeout for "Client navigation" foreground assertion Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (260966 => 260967) --- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-04-30 21:19:15 UTC (rev 260966) +++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp 2020-04-30 21:28:08 UTC (rev 260967) @@ -6023,7 +6023,7 @@ if (!hasRunningProcess()) return; -send(Messages::WebPage::HandleMediaEvent(eventType); +send(Messages::WebPage::HandleMediaEvent(eventType)); } void WebPageProxy::setVolumeOfMediaElement(double volume, uint64_t elementID) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260966] trunk/Source/WebKit
Title: [260966] trunk/Source/WebKit Revision 260966 Author cdu...@apple.com Date 2020-04-30 14:19:15 -0700 (Thu, 30 Apr 2020) Log Message [iOS][WK2] Add timeout for "Client navigation" foreground assertion https://bugs.webkit.org/show_bug.cgi?id=211202 Reviewed by Alex Christensen. Add a 30s timeout for "Client navigation" foreground assertion. Foreground assertions do not timeout at RunningBoard level and we thus need to make sure we release them to avoid power leaks. * UIProcess/API/APINavigation.cpp: (API::Navigation::Navigation): * UIProcess/API/APINavigation.h: (API::Navigation::setClientNavigationActivity): (API::Navigation::setForegroundActivity): Deleted. * UIProcess/ProcessThrottler.cpp: (WebKit::ProcessThrottler::TimedActivity::TimedActivity): (WebKit::ProcessThrottler::TimedActivity::operator=): (WebKit::ProcessThrottler::TimedActivity::activityTimedOut): (WebKit::ProcessThrottler::TimedActivity::updateTimer): * UIProcess/ProcessThrottler.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::loadRequest): (WebKit::WebPageProxy::loadFile): (WebKit::WebPageProxy::loadData): (WebKit::WebPageProxy::didFailProvisionalLoadForFrameShared): (WebKit::WebPageProxy::didFinishLoadForFrame): (WebKit::WebPageProxy::didFailLoadForFrame): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/APINavigation.cpp trunk/Source/WebKit/UIProcess/API/APINavigation.h trunk/Source/WebKit/UIProcess/ProcessThrottler.cpp trunk/Source/WebKit/UIProcess/ProcessThrottler.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (260965 => 260966) --- trunk/Source/WebKit/ChangeLog 2020-04-30 21:15:19 UTC (rev 260965) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 21:19:15 UTC (rev 260966) @@ -1,3 +1,32 @@ +2020-04-30 Chris Dumez + +[iOS][WK2] Add timeout for "Client navigation" foreground assertion +https://bugs.webkit.org/show_bug.cgi?id=211202 + +Reviewed by Alex Christensen. + +Add a 30s timeout for "Client navigation" foreground assertion. Foreground assertions do not timeout +at RunningBoard level and we thus need to make sure we release them to avoid power leaks. + +* UIProcess/API/APINavigation.cpp: +(API::Navigation::Navigation): +* UIProcess/API/APINavigation.h: +(API::Navigation::setClientNavigationActivity): +(API::Navigation::setForegroundActivity): Deleted. +* UIProcess/ProcessThrottler.cpp: +(WebKit::ProcessThrottler::TimedActivity::TimedActivity): +(WebKit::ProcessThrottler::TimedActivity::operator=): +(WebKit::ProcessThrottler::TimedActivity::activityTimedOut): +(WebKit::ProcessThrottler::TimedActivity::updateTimer): +* UIProcess/ProcessThrottler.h: +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::loadRequest): +(WebKit::WebPageProxy::loadFile): +(WebKit::WebPageProxy::loadData): +(WebKit::WebPageProxy::didFailProvisionalLoadForFrameShared): +(WebKit::WebPageProxy::didFinishLoadForFrame): +(WebKit::WebPageProxy::didFailLoadForFrame): + 2020-04-30 Alex Christensen Add SPI to change a WKWebView's CORS disabling pattern after initialization Modified: trunk/Source/WebKit/UIProcess/API/APINavigation.cpp (260965 => 260966) --- trunk/Source/WebKit/UIProcess/API/APINavigation.cpp 2020-04-30 21:15:19 UTC (rev 260965) +++ trunk/Source/WebKit/UIProcess/API/APINavigation.cpp 2020-04-30 21:19:15 UTC (rev 260966) @@ -35,8 +35,11 @@ using namespace WebCore; using namespace WebKit; +static constexpr Seconds navigationActivityTimeout { 30_s }; + Navigation::Navigation(WebNavigationState& state) : m_navigationID(state.generateNavigationID()) +, m_clientNavigationActivity(navigationActivityTimeout) { } @@ -43,6 +46,7 @@ Navigation::Navigation(WebNavigationState& state, WebBackForwardListItem* currentAndTargetItem) : m_navigationID(state.generateNavigationID()) , m_reloadItem(currentAndTargetItem) +, m_clientNavigationActivity(navigationActivityTimeout) { } @@ -51,6 +55,7 @@ , m_originalRequest(WTFMove(request)) , m_currentRequest(m_originalRequest) , m_fromItem(fromItem) +, m_clientNavigationActivity(navigationActivityTimeout) { m_redirectChain.append(m_originalRequest.url()); } @@ -62,6 +67,7 @@ , m_targetItem() , m_fromItem(fromItem) , m_backForwardFrameLoadType(backForwardFrameLoadType) +, m_clientNavigationActivity(navigationActivityTimeout) { } Modified: trunk/Source/WebKit/UIProcess/API/APINavigation.h (260965 => 260966) --- trunk/Source/WebKit/UIProcess/API/APINavigation.h 2020-04-30 21:15:19 UTC (rev 260965) +++ trunk/Source/WebKit/UIProcess/API/APINavigation.h 2020-04-30 21:19:15 UTC (rev 260966) @@ -155,7 +155,7 @@ const Optional& adClickAttribution() const { return m_lastNavigationAction.adClickAttribution; } -void
[webkit-changes] [260965] trunk/Tools
Title: [260965] trunk/Tools Revision 260965 Author jbed...@apple.com Date 2020-04-30 14:15:19 -0700 (Thu, 30 Apr 2020) Log Message results.webkit.org: Sort out certificates on Catalina https://bugs.webkit.org/show_bug.cgi?id=202837 Reviewed by Alex Christensen. * Scripts/run-_javascript_core-tests: (uploadResults): Do not allow insecure requests. * Scripts/webkitpy/results/upload.py: (Upload.upload): Verify ssl certificates. (Upload.upload_archive): Ditto. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/run-_javascript_core-tests trunk/Tools/Scripts/webkitpy/results/upload.py Diff Modified: trunk/Tools/ChangeLog (260964 => 260965) --- trunk/Tools/ChangeLog 2020-04-30 20:50:33 UTC (rev 260964) +++ trunk/Tools/ChangeLog 2020-04-30 21:15:19 UTC (rev 260965) @@ -1,3 +1,17 @@ +2020-04-30 Jonathan Bedard + +results.webkit.org: Sort out certificates on Catalina +https://bugs.webkit.org/show_bug.cgi?id=202837 + + +Reviewed by Alex Christensen. + +* Scripts/run-_javascript_core-tests: +(uploadResults): Do not allow insecure requests. +* Scripts/webkitpy/results/upload.py: +(Upload.upload): Verify ssl certificates. +(Upload.upload_archive): Ditto. + 2020-04-30 Alex Christensen Add SPI to change a WKWebView's CORS disabling pattern after initialization Modified: trunk/Tools/Scripts/run-_javascript_core-tests (260964 => 260965) --- trunk/Tools/Scripts/run-_javascript_core-tests 2020-04-30 20:50:33 UTC (rev 260964) +++ trunk/Tools/Scripts/run-_javascript_core-tests 2020-04-30 21:15:19 UTC (rev 260965) @@ -938,13 +938,8 @@ } print "Uploading results to $report\n"; +open(HANDLE, "|-", "curl -X POST $report/api/upload -H 'Content-Type: application/json' -f -d '\@-'") or die "Failed to open curl"; -my $sslOptions = ''; -if (!isAppleMacWebKit()) { -$sslOptions = '--insecure'; -} -open(HANDLE, "|-", "curl -X POST $report/api/upload -H 'Content-Type: application/json' $sslOptions -f -d '\@-'") or die "Failed to open curl"; - # Json conforming to https://results.webkit.org/documentation#API-Uploads. my $encodedUpload = encode_json(\%upload); print HANDLE "$encodedUpload\n\0"; Modified: trunk/Tools/Scripts/webkitpy/results/upload.py (260964 => 260965) --- trunk/Tools/Scripts/webkitpy/results/upload.py 2020-04-30 20:50:33 UTC (rev 260964) +++ trunk/Tools/Scripts/webkitpy/results/upload.py 2020-04-30 21:15:19 UTC (rev 260965) @@ -184,7 +184,6 @@ '{}{}'.format(hostname, self.UPLOAD_ENDPOINT), headers={'Content-type': 'application/json'}, data="" -verify=False, ) except requests.exceptions.ConnectionError: log_line_func(' ' * 4 + 'Failed to upload to {}, results server not online'.format(hostname)) @@ -222,7 +221,6 @@ '{}{}'.format(hostname, self.ARCHIVE_UPLOAD_ENDPOINT), data="" files=dict(file=archive), -verify=False, ) except requests.exceptions.ConnectionError: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260964] tags/Safari-609.2.9.0.4/
Title: [260964] tags/Safari-609.2.9.0.4/ Revision 260964 Author repst...@apple.com Date 2020-04-30 13:50:33 -0700 (Thu, 30 Apr 2020) Log Message Tag Safari-609.2.9.0.4. Added Paths tags/Safari-609.2.9.0.4/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260963] trunk
Title: [260963] trunk Revision 260963 Author drou...@apple.com Date 2020-04-30 13:46:06 -0700 (Thu, 30 Apr 2020) Log Message WebKit.WebContent process crashes when web developer tools are opened in Safari https://bugs.webkit.org/show_bug.cgi?id=210794 Reviewed by Brian Burg. Source/_javascript_Core: * inspector/InjectedScriptManager.cpp: (Inspector::InjectedScriptManager::injectedScriptFor): Don't crash if a `TerminatedExecutionError` is thrown. * inspector/InjectedScriptBase.cpp: (Inspector::InjectedScriptBase::makeCall): Report the actual error message. Check that the result has a value before attempting to make a `JSON::Value` out of it. Source/WebCore: Test: inspector/worker/dom-debugger-event-after-terminate-crash.html * inspector/agents/InspectorDOMDebuggerAgent.cpp: (WebCore::InspectorDOMDebuggerAgent::willHandleEvent): Don't `ASSERT(injectedScript.hasNoValue())` as it's possible for the event to be fired after `Worker.prototype.terminate`, in which case `InjectedScriptManager::injectedScriptFor` will now return an `InjectedScript` that would fail that `ASSERT`. Source/WebInspectorUI: * UserInterface/Views/QuickConsole.js: (WI.QuickConsole.prototype._handleFrameExecutionContextsCleared): (WI.QuickConsole.prototype._handleTargetRemoved): If a `Worker` is removed and is not the active execution context, still check to see if the execution context picker should be hidden, such as if there is only one other execution context (e.g. the main page execution context). Previously, the execution context picker would only be hidden in this case if the `Worker` was the active execution context. LayoutTests: * inspector/worker/resources/worker-echo.js: Added. * inspector/worker/dom-debugger-event-after-terminate-crash.html: Added. * inspector/worker/dom-debugger-event-after-terminate-crash-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/inspector/InjectedScriptBase.cpp trunk/Source/_javascript_Core/inspector/InjectedScriptManager.cpp trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/inspector/agents/InspectorDOMDebuggerAgent.cpp trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/QuickConsole.js Added Paths trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash-expected.txt trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash.html trunk/LayoutTests/inspector/worker/resources/worker-echo.js Diff Modified: trunk/LayoutTests/ChangeLog (260962 => 260963) --- trunk/LayoutTests/ChangeLog 2020-04-30 20:03:26 UTC (rev 260962) +++ trunk/LayoutTests/ChangeLog 2020-04-30 20:46:06 UTC (rev 260963) @@ -1,3 +1,15 @@ +2020-04-30 Devin Rousso + +WebKit.WebContent process crashes when web developer tools are opened in Safari +https://bugs.webkit.org/show_bug.cgi?id=210794 + + +Reviewed by Brian Burg. + +* inspector/worker/resources/worker-echo.js: Added. +* inspector/worker/dom-debugger-event-after-terminate-crash.html: Added. +* inspector/worker/dom-debugger-event-after-terminate-crash-expected.txt: Added. + 2020-04-30 Simon Fraser border-radius fails to clip iframe contents Added: trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash-expected.txt (0 => 260963) --- trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash-expected.txt (rev 0) +++ trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash-expected.txt 2020-04-30 20:46:06 UTC (rev 260963) @@ -0,0 +1,8 @@ +Test to ensure that any queued messages are not dispatched after terminate is called, which would cause a crash due to the InjectedScript throwing a TerminatedExecutionError when it's evaluated. + +Creating worker... +Terminating worker... +Creating worker... +Terminating worker... +PASS: Should not crash. + Added: trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash.html (0 => 260963) --- trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash.html (rev 0) +++ trunk/LayoutTests/inspector/worker/dom-debugger-event-after-terminate-crash.html 2020-04-30 20:46:06 UTC (rev 260963) @@ -0,0 +1,65 @@ + + + + +let testWorker = null; + +function createWorker() { +testWorker = new Worker("resources/worker-echo.js"); +testWorker.addEventListener("message", (event) => { +let {echo, data} = event.data; +console.assert(echo, data); +TestPage.dispatchEventToFrontend(data); +}); +testWorker.postMessage("WorkerCreated"); +} + +function terminateWorker() { +testWorker.postMessage("WorkerTerminated"); +testWorker.terminate(); +testWorker = null; +} + +function test() +{ +InspectorTest.addEventListener("WorkerTerminated", (event) => { +InspectorTest.fail("Should not dispatch any events after a
[webkit-changes] [260962] trunk
Title: [260962] trunk Revision 260962 Author commit-qu...@webkit.org Date 2020-04-30 13:03:26 -0700 (Thu, 30 Apr 2020) Log Message Add SPI to change a WKWebView's CORS disabling pattern after initialization https://bugs.webkit.org/show_bug.cgi?id=211211 Patch by Alex Christensen on 2020-04-30 Reviewed by Chris Dumez. Source/WebCore: * page/Page.h: (WebCore::Page::setCORSDisablingPatterns): Source/WebKit: * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _corsDisablingPatterns]): (-[WKWebView _setCORSDisablingPatterns:]): * UIProcess/API/Cocoa/WKWebViewPrivate.h: * UIProcess/WebPageProxy.cpp: * UIProcess/WebPageProxy.h: (WebKit::WebPageProxy::corsDisablingPatterns const): * WebProcess/WebPage/WebPage.cpp: (WebKit::parseAndAllowAccessToCORSDisablingPatterns): (WebKit::m_isNavigatingToAppBoundDomain): (WebKit::WebPage::updateCORSDisablingPatterns): * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/WebPage.messages.in: Tools: * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Page.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm Diff Modified: trunk/Source/WebCore/ChangeLog (260961 => 260962) --- trunk/Source/WebCore/ChangeLog 2020-04-30 19:50:36 UTC (rev 260961) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 20:03:26 UTC (rev 260962) @@ -1,3 +1,14 @@ +2020-04-30 Alex Christensen + +Add SPI to change a WKWebView's CORS disabling pattern after initialization +https://bugs.webkit.org/show_bug.cgi?id=211211 + + +Reviewed by Chris Dumez. + +* page/Page.h: +(WebCore::Page::setCORSDisablingPatterns): + 2020-04-30 Chris Dumez WebCore::systemHasBattery() is unnecessarily expensive on iOS Modified: trunk/Source/WebCore/page/Page.h (260961 => 260962) --- trunk/Source/WebCore/page/Page.h 2020-04-30 19:50:36 UTC (rev 260961) +++ trunk/Source/WebCore/page/Page.h 2020-04-30 20:03:26 UTC (rev 260962) @@ -521,6 +521,8 @@ bool hasCustomHTMLTokenizerTimeDelay() const; double customHTMLTokenizerTimeDelay() const; +void setCORSDisablingPatterns(Vector&& patterns) { m_corsDisablingPatterns = WTFMove(patterns); } + WEBCORE_EXPORT void setMemoryCacheClientCallsEnabled(bool); bool areMemoryCacheClientCallsEnabled() const { return m_areMemoryCacheClientCallsEnabled; } Modified: trunk/Source/WebKit/ChangeLog (260961 => 260962) --- trunk/Source/WebKit/ChangeLog 2020-04-30 19:50:36 UTC (rev 260961) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 20:03:26 UTC (rev 260962) @@ -1,3 +1,25 @@ +2020-04-30 Alex Christensen + +Add SPI to change a WKWebView's CORS disabling pattern after initialization +https://bugs.webkit.org/show_bug.cgi?id=211211 + + +Reviewed by Chris Dumez. + +* UIProcess/API/Cocoa/WKWebView.mm: +(-[WKWebView _corsDisablingPatterns]): +(-[WKWebView _setCORSDisablingPatterns:]): +* UIProcess/API/Cocoa/WKWebViewPrivate.h: +* UIProcess/WebPageProxy.cpp: +* UIProcess/WebPageProxy.h: +(WebKit::WebPageProxy::corsDisablingPatterns const): +* WebProcess/WebPage/WebPage.cpp: +(WebKit::parseAndAllowAccessToCORSDisablingPatterns): +(WebKit::m_isNavigatingToAppBoundDomain): +(WebKit::WebPage::updateCORSDisablingPatterns): +* WebProcess/WebPage/WebPage.h: +* WebProcess/WebPage/WebPage.messages.in: + 2020-04-30 Daniel Bates [iOS] Implement -markedTextRange Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (260961 => 260962) --- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2020-04-30 19:50:36 UTC (rev 260961) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2020-04-30 20:03:26 UTC (rev 260962) @@ -2812,6 +2812,16 @@ #endif } +- (NSArray *)_corsDisablingPatterns +{ +return createNSArray(_page->corsDisablingPatterns()).autorelease(); +} + +- (void)_setCORSDisablingPatterns:(NSArray *)patterns +{ +_page->setCORSDisablingPatterns(makeVector(patterns)); +} + - (void)_getProcessDisplayNameWithCompletionHandler:(void (^)(NSString *))completionHandler { _page->getProcessDisplayName([handler = makeBlockPtr(completionHandler)](auto&& name) { Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h (260961 => 260962) --- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h 2020-04-30 19:50:36 UTC (rev 260961) +++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h 2020-04-30 20:03:26 UTC (rev
[webkit-changes] [260961] trunk/Tools
Title: [260961] trunk/Tools Revision 260961 Author commit-qu...@webkit.org Date 2020-04-30 12:50:36 -0700 (Thu, 30 Apr 2020) Log Message REGRESSION: [ iOS ] http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion tests are flaky crashing, failing an timing out. https://bugs.webkit.org/show_bug.cgi?id=211190 Patch by Alex Christensen on 2020-04-30 Reviewed by Chris Dumez. * WebKitTestRunner/TestController.cpp: (WTR::TestController::configureWebsiteDataStoreTemporaryDirectories): In tests that swap out the WebsiteDataStore, don't use the same paths as the other WebsiteDataStore. Modified Paths trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/TestController.cpp Diff Modified: trunk/Tools/ChangeLog (260960 => 260961) --- trunk/Tools/ChangeLog 2020-04-30 19:43:13 UTC (rev 260960) +++ trunk/Tools/ChangeLog 2020-04-30 19:50:36 UTC (rev 260961) @@ -1,3 +1,14 @@ +2020-04-30 Alex Christensen + +REGRESSION: [ iOS ] http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion tests are flaky crashing, failing an timing out. +https://bugs.webkit.org/show_bug.cgi?id=211190 + +Reviewed by Chris Dumez. + +* WebKitTestRunner/TestController.cpp: +(WTR::TestController::configureWebsiteDataStoreTemporaryDirectories): +In tests that swap out the WebsiteDataStore, don't use the same paths as the other WebsiteDataStore. + 2020-04-30 David Kilzer REGRESSION (r176862, r210483): Leaks of BrowserWindowController in MiniBrowser/mac/AppDelegate.m Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (260960 => 260961) --- trunk/Tools/WebKitTestRunner/TestController.cpp 2020-04-30 19:43:13 UTC (rev 260960) +++ trunk/Tools/WebKitTestRunner/TestController.cpp 2020-04-30 19:50:36 UTC (rev 260961) @@ -525,16 +525,17 @@ { if (const char* dumpRenderTreeTemp = libraryPathForTesting()) { String temporaryFolder = String::fromUTF8(dumpRenderTreeTemp); +auto randomNumber = cryptographicallyRandomNumber(); -WKWebsiteDataStoreConfigurationSetApplicationCacheDirectory(configuration, toWK(temporaryFolder + pathSeparator + "ApplicationCache").get()); -WKWebsiteDataStoreConfigurationSetNetworkCacheDirectory(configuration, toWK(temporaryFolder + pathSeparator + "Cache").get()); -WKWebsiteDataStoreConfigurationSetCacheStorageDirectory(configuration, toWK(temporaryFolder + pathSeparator + "CacheStorage").get()); -WKWebsiteDataStoreConfigurationSetIndexedDBDatabaseDirectory(configuration, toWK(temporaryFolder + pathSeparator + "Databases" + pathSeparator + "IndexedDB").get()); -WKWebsiteDataStoreConfigurationSetLocalStorageDirectory(configuration, toWK(temporaryFolder + pathSeparator + "LocalStorage").get()); -WKWebsiteDataStoreConfigurationSetWebSQLDatabaseDirectory(configuration, toWK(temporaryFolder + pathSeparator + "Databases" + pathSeparator + "WebSQL").get()); -WKWebsiteDataStoreConfigurationSetMediaKeysStorageDirectory(configuration, toWK(temporaryFolder + pathSeparator + "MediaKeys").get()); -WKWebsiteDataStoreConfigurationSetResourceLoadStatisticsDirectory(configuration, toWK(temporaryFolder + pathSeparator + "ResourceLoadStatistics").get()); -WKWebsiteDataStoreConfigurationSetServiceWorkerRegistrationDirectory(configuration, toWK(temporaryFolder + pathSeparator + "ServiceWorkers").get()); +WKWebsiteDataStoreConfigurationSetApplicationCacheDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "ApplicationCache", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetNetworkCacheDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "Cache", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetCacheStorageDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "CacheStorage", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetIndexedDBDatabaseDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "Databases", pathSeparator, "IndexedDB", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetLocalStorageDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "LocalStorage", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetWebSQLDatabaseDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "Databases", pathSeparator, "WebSQL", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetMediaKeysStorageDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "MediaKeys", pathSeparator, randomNumber)).get()); +WKWebsiteDataStoreConfigurationSetResourceLoadStatisticsDirectory(configuration, toWK(makeString(temporaryFolder, pathSeparator, "ResourceLoadStatistics", pathSeparator,
[webkit-changes] [260960] trunk/Source/WebCore
Title: [260960] trunk/Source/WebCore Revision 260960 Author cdu...@apple.com Date 2020-04-30 12:43:13 -0700 (Thu, 30 Apr 2020) Log Message WebCore::systemHasBattery() is unnecessarily expensive on iOS https://bugs.webkit.org/show_bug.cgi?id=211240 Reviewed by Geoffrey Garen. Update WebCore::systemHasBattery() to return true unconditionally on PLATFORM(IOS) and PLATFORM(WATCHOS) since iOS devices always have a battery. Also return false unconditionally for PLATFORM(APPLETV). * platform/cocoa/SystemBattery.mm: (WebCore::systemHasBattery): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/cocoa/SystemBattery.mm Diff Modified: trunk/Source/WebCore/ChangeLog (260959 => 260960) --- trunk/Source/WebCore/ChangeLog 2020-04-30 19:19:44 UTC (rev 260959) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 19:43:13 UTC (rev 260960) @@ -1,3 +1,18 @@ +2020-04-30 Chris Dumez + +WebCore::systemHasBattery() is unnecessarily expensive on iOS +https://bugs.webkit.org/show_bug.cgi?id=211240 + + +Reviewed by Geoffrey Garen. + +Update WebCore::systemHasBattery() to return true unconditionally on +PLATFORM(IOS) and PLATFORM(WATCHOS) since iOS devices always have a +battery. Also return false unconditionally for PLATFORM(APPLETV). + +* platform/cocoa/SystemBattery.mm: +(WebCore::systemHasBattery): + 2020-04-30 Andres Gonzalez Fix for crash in AXLogger. Modified: trunk/Source/WebCore/platform/cocoa/SystemBattery.mm (260959 => 260960) --- trunk/Source/WebCore/platform/cocoa/SystemBattery.mm 2020-04-30 19:19:44 UTC (rev 260959) +++ trunk/Source/WebCore/platform/cocoa/SystemBattery.mm 2020-04-30 19:43:13 UTC (rev 260960) @@ -41,6 +41,12 @@ { if (!hasBattery.hasValue()) { hasBattery = [] { +#if PLATFORM(IOS) || PLATFORM(WATCHOS) +// Devices running iOS / WatchOS always have a battery. +return true; +#elif PLATFORM(APPLETV) +return false; +#else RetainPtr powerSourcesInfo = adoptCF(IOPSCopyPowerSourcesInfo()); if (!powerSourcesInfo) return false; @@ -54,6 +60,7 @@ return true; } return false; +#endif }(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260959] trunk/Tools
Title: [260959] trunk/Tools Revision 260959 Author ddkil...@apple.com Date 2020-04-30 12:19:44 -0700 (Thu, 30 Apr 2020) Log Message REGRESSION (r176862, r210483): Leaks of BrowserWindowController in MiniBrowser/mac/AppDelegate.m Reviewed by Tim Horton. * MiniBrowser/mac/AppDelegate.m: (-[BrowserAppDelegate createBrowserWindowController:]): - Autorelease return value to fix leak. (-[BrowserAppDelegate newPrivateWindow:]): - Release controller to fix leak. Modified Paths trunk/Tools/ChangeLog trunk/Tools/MiniBrowser/mac/AppDelegate.m Diff Modified: trunk/Tools/ChangeLog (260958 => 260959) --- trunk/Tools/ChangeLog 2020-04-30 19:01:30 UTC (rev 260958) +++ trunk/Tools/ChangeLog 2020-04-30 19:19:44 UTC (rev 260959) @@ -1,5 +1,18 @@ 2020-04-30 David Kilzer +REGRESSION (r176862, r210483): Leaks of BrowserWindowController in MiniBrowser/mac/AppDelegate.m + + +Reviewed by Tim Horton. + +* MiniBrowser/mac/AppDelegate.m: +(-[BrowserAppDelegate createBrowserWindowController:]): +- Autorelease return value to fix leak. +(-[BrowserAppDelegate newPrivateWindow:]): +- Release controller to fix leak. + +2020-04-30 David Kilzer + REGRESSION (r247490): Leak of MiniBrowserNSTextFinder._hideInterfaceCallback Modified: trunk/Tools/MiniBrowser/mac/AppDelegate.m (260958 => 260959) --- trunk/Tools/MiniBrowser/mac/AppDelegate.m 2020-04-30 19:01:30 UTC (rev 260958) +++ trunk/Tools/MiniBrowser/mac/AppDelegate.m 2020-04-30 19:19:44 UTC (rev 260959) @@ -183,7 +183,7 @@ [_browserWindowControllers addObject:controller]; -return controller; +return [controller autorelease]; } - (IBAction)newWindow:(id)sender @@ -208,6 +208,7 @@ [_browserWindowControllers addObject:controller]; [controller loadURLString:_settingsController.defaultURL]; +[controller release]; } - (IBAction)newEditorWindow:(id)sender ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260958] trunk/Tools
Title: [260958] trunk/Tools Revision 260958 Author ddkil...@apple.com Date 2020-04-30 12:01:30 -0700 (Thu, 30 Apr 2020) Log Message REGRESSION (r247490): Leak of MiniBrowserNSTextFinder._hideInterfaceCallback Reviewed by Tim Horton. * MiniBrowser/mac/WK2BrowserWindowController.m: (-[MiniBrowserNSTextFinder dealloc]): Add. - Release _hideInterfaceCallback to fix the leak. Modified Paths trunk/Tools/ChangeLog trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m Diff Modified: trunk/Tools/ChangeLog (260957 => 260958) --- trunk/Tools/ChangeLog 2020-04-30 18:41:03 UTC (rev 260957) +++ trunk/Tools/ChangeLog 2020-04-30 19:01:30 UTC (rev 260958) @@ -1,3 +1,14 @@ +2020-04-30 David Kilzer + +REGRESSION (r247490): Leak of MiniBrowserNSTextFinder._hideInterfaceCallback + + +Reviewed by Tim Horton. + +* MiniBrowser/mac/WK2BrowserWindowController.m: +(-[MiniBrowserNSTextFinder dealloc]): Add. +- Release _hideInterfaceCallback to fix the leak. + 2020-04-30 Daniel Bates [iOS] Implement -markedTextRange Modified: trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m (260957 => 260958) --- trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m 2020-04-30 18:41:03 UTC (rev 260957) +++ trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m 2020-04-30 19:01:30 UTC (rev 260958) @@ -55,6 +55,12 @@ @implementation MiniBrowserNSTextFinder +- (void)dealloc +{ +[_hideInterfaceCallback release]; +[super dealloc]; +} + - (void)performAction:(NSTextFinderAction)op { [super performAction:op]; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260957] trunk/JSTests
Title: [260957] trunk/JSTests Revision 260957 Author ticaiol...@gmail.com Date 2020-04-30 11:41:03 -0700 (Thu, 30 Apr 2020) Log Message Investigate stress/v8-bitint32-inc.js failure on mips https://bugs.webkit.org/show_bug.cgi?id=210907 Unreviewed test gardening. * stress/v8-bigint32-inc.js: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/stress/v8-bigint32-inc.js Diff Modified: trunk/JSTests/ChangeLog (260956 => 260957) --- trunk/JSTests/ChangeLog 2020-04-30 18:36:38 UTC (rev 260956) +++ trunk/JSTests/ChangeLog 2020-04-30 18:41:03 UTC (rev 260957) @@ -1,3 +1,12 @@ +2020-04-30 Caio Lima + +Investigate stress/v8-bitint32-inc.js failure on mips +https://bugs.webkit.org/show_bug.cgi?id=210907 + +Unreviewed test gardening. + +* stress/v8-bigint32-inc.js: + 2020-04-29 Alexey Shvayka AsyncFromSyncIterator methods should not pass absent values Modified: trunk/JSTests/stress/v8-bigint32-inc.js (260956 => 260957) --- trunk/JSTests/stress/v8-bigint32-inc.js 2020-04-30 18:36:38 UTC (rev 260956) +++ trunk/JSTests/stress/v8-bigint32-inc.js 2020-04-30 18:41:03 UTC (rev 260957) @@ -1,4 +1,3 @@ -//@ skip if ["mips"].include?($architecture) // Copyright 2017, the V8 project authors. All rights reserved. // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260956] trunk/Source/ThirdParty/libwebrtc
Title: [260956] trunk/Source/ThirdParty/libwebrtc Revision 260956 Author you...@apple.com Date 2020-04-30 11:36:38 -0700 (Thu, 30 Apr 2020) Log Message Disable low latency encoder on iOS https://bugs.webkit.org/show_bug.cgi?id=211229 Reviewed by Eric Carlson. * Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h: This is not yet fully ready. Modified Paths trunk/Source/ThirdParty/libwebrtc/ChangeLog trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h Diff Modified: trunk/Source/ThirdParty/libwebrtc/ChangeLog (260955 => 260956) --- trunk/Source/ThirdParty/libwebrtc/ChangeLog 2020-04-30 17:56:42 UTC (rev 260955) +++ trunk/Source/ThirdParty/libwebrtc/ChangeLog 2020-04-30 18:36:38 UTC (rev 260956) @@ -1,3 +1,13 @@ +2020-04-30 Youenn Fablet + +Disable low latency encoder on iOS +https://bugs.webkit.org/show_bug.cgi?id=211229 + +Reviewed by Eric Carlson. + +* Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h: +This is not yet fully ready. + 2020-04-15 Jer Noble isNullFunctionPointer() can fail for symbols not explicitly marked as weakly linked. Modified: trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h (260955 => 260956) --- trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h 2020-04-30 17:56:42 UTC (rev 260955) +++ trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h 2020-04-30 18:36:38 UTC (rev 260956) @@ -39,7 +39,6 @@ #elif (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) #define ENABLE_VCP_ENCODER __IPHONE_OS_VERSION_MIN_REQUIRED < 14 #define ENABLE_VCP_VTB_ENCODER __IPHONE_OS_VERSION_MIN_REQUIRED >= 13 && __IPHONE_OS_VERSION_MIN_REQUIRED < 14 -#define HAVE_VTB_REQUIREDLOWLATENCY __IPHONE_OS_VERSION_MIN_REQUIRED >= 14 #elif (defined(TARGET_OS_MAC) && TARGET_OS_MAC) #define ENABLE_VCP_ENCODER __MAC_OS_X_VERSION_MIN_REQUIRED < 101600 #define ENABLE_VCP_VTB_ENCODER __MAC_OS_X_VERSION_MIN_REQUIRED >= 101500 && __MAC_OS_X_VERSION_MIN_REQUIRED < 101600 ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260955] branches/safari-609.2.9.0-branch/Source/WebKit
Title: [260955] branches/safari-609.2.9.0-branch/Source/WebKit Revision 260955 Author repst...@apple.com Date 2020-04-30 10:56:42 -0700 (Thu, 30 Apr 2020) Log Message Apply patch. rdar://problem/62623152 Modified Paths branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/NetworkProcess.cpp branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/NetworkSession.cpp branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/NetworkSession.h branches/safari-609.2.9.0-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp branches/safari-609.2.9.0-branch/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h Diff Modified: branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog (260954 => 260955) --- branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog 2020-04-30 17:52:08 UTC (rev 260954) +++ branches/safari-609.2.9.0-branch/Source/WebKit/ChangeLog 2020-04-30 17:56:42 UTC (rev 260955) @@ -1,3 +1,43 @@ +2020-04-30 Russell Epstein + +Apply patch. rdar://problem/62623152 + +2020-04-30 Alex Christensen + +Revert most of r260370 and all of r260795 + + +r260370 not only fixed client certificate authentication when using non-persistent WKWebsiteDataStores, +but it also removed a strong reference to the WebsiteDataStores, which changed their lifetime and caused their destructor +to be called more often in SafariViewController, which caused hangs because of a deadlock in the destruction code I tried to +fix in r260795, which introduced suspension hangs. This keeps only the part of r260370 that is necessary to fix client certificate authentication +(as verified by the Challenge.ClientCertificateNonPersistentDataStore unit test from r260370 that continues to pass) but reverts the part of that +change that changed the lifetime of the WebsiteDataStore, restoring behavior to how the safari-609-branch was without hangs in SafariViewController +or in suspension, but with client certificate authentication working in non-persistent WKWebsiteDataStores. + +This patch applies to the safari-609.2.9.0-branch. + +* NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: +(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore): +(WebKit::WebResourceLoadStatisticsStore::didDestroyNetworkSession): +(WebKit::WebResourceLoadStatisticsStore::flushAndDestroyPersistentStore): +(WebKit::WebResourceLoadStatisticsStore::applicationWillTerminate): +(WebKit::sharedStatisticsQueue): Deleted. +* NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h: +* NetworkProcess/NetworkProcess.cpp: +(WebKit::NetworkProcess::didClose): +* NetworkProcess/NetworkSession.cpp: +(WebKit::NetworkSession::~NetworkSession): +(WebKit::NetworkSession::destroyResourceLoadStatistics): +(WebKit::NetworkSession::setResourceLoadStatisticsEnabled): +(WebKit::NetworkSession::recreateResourceLoadStatisticStore): +* NetworkProcess/NetworkSession.h: +* UIProcess/Network/NetworkProcessProxy.cpp: +(WebKit::NetworkProcessProxy::NetworkProcessProxy): +(WebKit::NetworkProcessProxy::addSession): +(WebKit::NetworkProcessProxy::removeSession): +* UIProcess/Network/NetworkProcessProxy.h: + 2020-04-27 Russell Epstein Apply patch. rdar://problem/62377357 Modified: branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp (260954 => 260955) --- branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp 2020-04-30 17:52:08 UTC (rev 260954) +++ branches/safari-609.2.9.0-branch/Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp 2020-04-30 17:56:42 UTC (rev 260955) @@ -150,15 +150,9 @@ completionHandler(); } -static Ref sharedStatisticsQueue() -{ -static NeverDestroyed> queue(WorkQueue::create("WebResourceLoadStatisticsStore Process Data Queue", WorkQueue::Type::Serial, WorkQueue::QOS::Utility)); -return queue.get().copyRef(); -} - WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore(NetworkSession& networkSession, const String& resourceLoadStatisticsDirectory, ShouldIncludeLocalhost shouldIncludeLocalhost) : m_networkSession(makeWeakPtr(networkSession)) -, m_statisticsQueue(sharedStatisticsQueue()) +, m_statisticsQueue(WorkQueue::create("WebResourceLoadStatisticsStore Process Data Queue",
[webkit-changes] [260954] branches/safari-609.2.9.0-branch/Source
Title: [260954] branches/safari-609.2.9.0-branch/Source Revision 260954 Author repst...@apple.com Date 2020-04-30 10:52:08 -0700 (Thu, 30 Apr 2020) Log Message Versioning. Modified Paths branches/safari-609.2.9.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-609.2.9.0-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-609.2.9.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig (260953 => 260954) --- branches/safari-609.2.9.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2020-04-30 16:48:20 UTC (rev 260953) +++ branches/safari-609.2.9.0-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2020-04-30 17:52:08 UTC (rev 260954) @@ -25,7 +25,7 @@ MINOR_VERSION = 2; TINY_VERSION = 9; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; 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-609.2.9.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (260953 => 260954) --- branches/safari-609.2.9.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2020-04-30 16:48:20 UTC (rev 260953) +++ branches/safari-609.2.9.0-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2020-04-30 17:52:08 UTC (rev 260954) @@ -25,7 +25,7 @@ MINOR_VERSION = 2; TINY_VERSION = 9; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; 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-609.2.9.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (260953 => 260954) --- branches/safari-609.2.9.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2020-04-30 16:48:20 UTC (rev 260953) +++ branches/safari-609.2.9.0-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2020-04-30 17:52:08 UTC (rev 260954) @@ -25,7 +25,7 @@ MINOR_VERSION = 2; TINY_VERSION = 9; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; 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-609.2.9.0-branch/Source/WebCore/Configurations/Version.xcconfig (260953 => 260954) --- branches/safari-609.2.9.0-branch/Source/WebCore/Configurations/Version.xcconfig 2020-04-30 16:48:20 UTC (rev 260953) +++ branches/safari-609.2.9.0-branch/Source/WebCore/Configurations/Version.xcconfig 2020-04-30 17:52:08 UTC (rev 260954) @@ -25,7 +25,7 @@ MINOR_VERSION = 2; TINY_VERSION = 9; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; 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-609.2.9.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (260953 => 260954) --- branches/safari-609.2.9.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2020-04-30 16:48:20 UTC (rev 260953) +++ branches/safari-609.2.9.0-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2020-04-30 17:52:08 UTC (rev 260954) @@ -25,7 +25,7 @@ MINOR_VERSION = 2; TINY_VERSION = 9; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; 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-609.2.9.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (260953 => 260954) --- branches/safari-609.2.9.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2020-04-30 16:48:20 UTC (rev 260953) +++ branches/safari-609.2.9.0-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2020-04-30 17:52:08 UTC (rev 260954) @@ -2,7 +2,7 @@ MINOR_VERSION = 2; TINY_VERSION = 9; MICRO_VERSION = 0; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); //
[webkit-changes] [260953] trunk/Source/WebCore
Title: [260953] trunk/Source/WebCore Revision 260953 Author andresg...@apple.com Date 2020-04-30 09:48:20 -0700 (Thu, 30 Apr 2020) Log Message Fix for crash in AXLogger. https://bugs.webkit.org/show_bug.cgi?id=211236 Reviewed by Chris Fleizach. Covered by existing tests. Notifications may have a null AXCoreObject target, so must check for nullity before streaming the object. * accessibility/AXLogger.cpp: (WebCore::AXLogger::log): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/AXLogger.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260952 => 260953) --- trunk/Source/WebCore/ChangeLog 2020-04-30 16:01:11 UTC (rev 260952) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 16:48:20 UTC (rev 260953) @@ -1,3 +1,18 @@ +2020-04-30 Andres Gonzalez + +Fix for crash in AXLogger. +https://bugs.webkit.org/show_bug.cgi?id=211236 + +Reviewed by Chris Fleizach. + +Covered by existing tests. + +Notifications may have a null AXCoreObject target, so must check for +nullity before streaming the object. + +* accessibility/AXLogger.cpp: +(WebCore::AXLogger::log): + 2020-04-30 Charlie Turner [clang 11] fix build errors due to -WWc++11-narrowing Modified: trunk/Source/WebCore/accessibility/AXLogger.cpp (260952 => 260953) --- trunk/Source/WebCore/accessibility/AXLogger.cpp 2020-04-30 16:01:11 UTC (rev 260952) +++ trunk/Source/WebCore/accessibility/AXLogger.cpp 2020-04-30 16:48:20 UTC (rev 260953) @@ -84,7 +84,11 @@ void AXLogger::log(const std::pair, AXObjectCache::AXNotification>& notification) { TextStream stream(TextStream::LineMode::MultipleLine); -stream << "Notification " << notification.second << " for object " << *notification.first; +stream << "Notification " << notification.second << " for object "; +if (notification.first) +stream << *notification.first; +else +stream << "null"; LOG(Accessibility, "%s", stream.release().utf8().data()); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260952] trunk
Title: [260952] trunk Revision 260952 Author dba...@webkit.org Date 2020-04-30 09:01:11 -0700 (Thu, 30 Apr 2020) Log Message [iOS] Implement -markedTextRange https://bugs.webkit.org/show_bug.cgi?id=211148 Reviewed by Wenson Hsieh. Source/WebKit: Return the UITextRange-like object for the marked text range. Clients can use this range to access the selection rects or query for the caret rect at the start or end of the range, if desired. * Shared/EditorState.cpp: (WebKit::EditorState::PostLayoutData::encode const): (WebKit::EditorState::PostLayoutData::decode): Encode and decode the marked text selection rects and caret rects at the state and end of the marked text range. This is the same information that we compute in order to implement -selectedTextRange. I thought about collecting these details into class and having editor state hold two instances of it: one for selected text and one for marked text. However I decided against it because this class is unlikely to find use outside of what is needed to implement -selectedTextRange and -markedTextRange. This is because only those functions require such details so as to return an opaque UITextRange-derived object that can be passed to- or its sub-objects can be passed to WKContentView's -caretRectForPosition and -selectionRectsForRange. Literally, WKContentView does not support other UITextInput functions that operate on UITextRange or UITextPosition. I didn't pursue fixing this in general because 1) I don't need it to solve my problem and 2) UIWKDocumentContext SPI seems to be the new general-purpose solution. (WebKit::operator<<): Pretty print all the new marked text details we collect. While I am here, use Vector::isEmpty() instead of Vector::size() to check if there are selection rects. * Shared/EditorState.h: * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView textFirstRect]): (-[WKContentView textLastRect]): Update code now that the marked text rects are in the post layout data sub-object. (-[WKContentView _scaledCaretRectForSelectionStart:]): Extracted from -selectedTextRange. (-[WKContentView _scaledCaretRectForSelectionEnd:]): Ditto. (-[WKContentView selectedTextRange]): Write in terms of -_scaledCaretRectForSelectionStart and -_scaledCaretRectForSelectionEnd. Also modernize the code while I am here. (-[WKContentView markedTextRange]): Added. * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::getPlatformEditorState const): Collect the marked text rects and the caret rects at the start and end of the range. Tools: Add some tests. * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm: (TestWebKitAPI::applyAhemStyle): Added. (TestWebKitAPI::TEST): * TestWebKitAPI/cocoa/TestWKWebView.h: * TestWebKitAPI/cocoa/TestWKWebView.mm: (-[TestWKWebView synchronouslyLoadHTMLStringAndWaitUntilAllImmediateChildFramesPaint:]): Added. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/EditorState.cpp trunk/Source/WebKit/Shared/EditorState.h trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm trunk/Tools/TestWebKitAPI/cocoa/TestWKWebView.h trunk/Tools/TestWebKitAPI/cocoa/TestWKWebView.mm Diff Modified: trunk/Source/WebKit/ChangeLog (260951 => 260952) --- trunk/Source/WebKit/ChangeLog 2020-04-30 15:12:36 UTC (rev 260951) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 16:01:11 UTC (rev 260952) @@ -1,3 +1,48 @@ +2020-04-30 Daniel Bates + +[iOS] Implement -markedTextRange +https://bugs.webkit.org/show_bug.cgi?id=211148 + + +Reviewed by Wenson Hsieh. + +Return the UITextRange-like object for the marked text range. Clients can use this range to +access the selection rects or query for the caret rect at the start or end of the range, +if desired. + +* Shared/EditorState.cpp: +(WebKit::EditorState::PostLayoutData::encode const): +(WebKit::EditorState::PostLayoutData::decode): +Encode and decode the marked text selection rects and caret rects at the state and end +of the marked text range. This is the same information that we compute in order to +implement -selectedTextRange. I thought about collecting these details into class and +having editor state hold two instances of it: one for selected text and one for marked text. +However I decided against it because this class is unlikely to find use outside of what is +needed to implement -selectedTextRange and -markedTextRange. This is because only those +functions require such details so as to return an opaque UITextRange-derived object that +can be passed to- or its sub-objects can be passed to WKContentView's -caretRectForPosition +and -selectionRectsForRange. Literally, WKContentView does not support other UITextInput +functions that operate on UITextRange
[webkit-changes] [260951] trunk/Source/WebCore
Title: [260951] trunk/Source/WebCore Revision 260951 Author ctur...@igalia.com Date 2020-04-30 08:12:36 -0700 (Thu, 30 Apr 2020) Log Message [clang 11] fix build errors due to -WWc++11-narrowing https://bugs.webkit.org/show_bug.cgi?id=211193 Reviewed by Adrian Perez de Castro. Fixes the following errors, Source/WebCore/html/MediaElementSession.cpp:1059:9: error: type 'WebCore::RenderMedia *' cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing] m_element.renderer(), ^~~~ Source/WebCore/style/StyleResolver.cpp:106:55: error: type 'const char [4]' cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing] m_mediaQueryEvaluator = MediaQueryEvaluator { "all" }; ^ Source/WebCore/style/StyleResolver.cpp:106:55: note: insert an explicit cast to silence this issue m_mediaQueryEvaluator = MediaQueryEvaluator { "all" }; ^ static_cast( ) * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::hasRenderer const): MediaElementSession was implicitly casting a pointer to a bool, which is not allowed with modern Clang checks. Add a helper method to encapsulate the now required static_cast. * html/MediaElementSession.cpp: Use the new helper method to see if the HTMLMediaElement has an associated renderer. (WebCore::MediaElementSession::updateMediaUsageIfChanged): * style/StyleResolver.cpp: This was calling MediaQueryEvaluator { "all" }; and seemingly expecting to cast a const char[] to a bool, or maybe String? It's confusing because of the MediaQueryEvaluator API. If it was implicitly converting to bool then that could be unintentional. Such casts are not allowed either now. The MediaQueryEvaluator's default constructor says it returns true for "all", which appears to be the original intent of this call, so I replaced it with that. (WebCore::Style::Resolver::Resolver): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLMediaElement.h trunk/Source/WebCore/html/MediaElementSession.cpp trunk/Source/WebCore/style/StyleResolver.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260950 => 260951) --- trunk/Source/WebCore/ChangeLog 2020-04-30 14:39:02 UTC (rev 260950) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 15:12:36 UTC (rev 260951) @@ -1,3 +1,42 @@ +2020-04-30 Charlie Turner + +[clang 11] fix build errors due to -WWc++11-narrowing +https://bugs.webkit.org/show_bug.cgi?id=211193 + +Reviewed by Adrian Perez de Castro. + +Fixes the following errors, + +Source/WebCore/html/MediaElementSession.cpp:1059:9: error: type 'WebCore::RenderMedia *' cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing] +m_element.renderer(), +^~~~ + +Source/WebCore/style/StyleResolver.cpp:106:55: error: type 'const char [4]' cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing] +m_mediaQueryEvaluator = MediaQueryEvaluator { "all" }; + ^ +Source/WebCore/style/StyleResolver.cpp:106:55: note: insert an explicit cast to silence this issue +m_mediaQueryEvaluator = MediaQueryEvaluator { "all" }; + ^ + static_cast( ) + +* html/HTMLMediaElement.h: +(WebCore::HTMLMediaElement::hasRenderer const): +MediaElementSession was implicitly casting a pointer to a bool, +which is not allowed with modern Clang checks. Add a helper method +to encapsulate the now required static_cast. +* html/MediaElementSession.cpp: Use the new helper method to see +if the HTMLMediaElement has an associated renderer. +(WebCore::MediaElementSession::updateMediaUsageIfChanged): +* style/StyleResolver.cpp: This was calling MediaQueryEvaluator { +"all" }; and seemingly expecting to cast a const char[] to a bool, +or maybe String? It's confusing because of the MediaQueryEvaluator +API. If it was implicitly converting to bool then that could be +unintentional. Such casts are not allowed either now. The +MediaQueryEvaluator's default constructor says it returns true for +"all", which appears to be the original intent of this call, so I +replaced it with that. +(WebCore::Style::Resolver::Resolver): + 2020-04-30 Simon Fraser border-radius fails to clip iframe contents Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (260950 => 260951) --- trunk/Source/WebCore/html/HTMLMediaElement.h 2020-04-30 14:39:02 UTC (rev 260950) +++ trunk/Source/WebCore/html/HTMLMediaElement.h 2020-04-30 15:12:36 UTC (rev 260951) @@ -155,6 +155,7 @@ virtual bool isVideo() const { return false; } bool hasVideo() const override {
[webkit-changes] [260950] trunk
Title: [260950] trunk Revision 260950 Author simon.fra...@apple.com Date 2020-04-30 07:39:02 -0700 (Thu, 30 Apr 2020) Log Message border-radius fails to clip iframe contents https://bugs.webkit.org/show_bug.cgi?id=211199 Source/WebCore: Reviewed by Zalan Bujtas. iframes need to use the same composited clipping strategy that we use for other replaced elements with composited contents, like video and WebGL. To achieve this, change GraphicsLayer to allow child GraphicsLayers to be parented in the contents clipping layer, just like content layers are. (We don't want to do this unconditionally, because it will change behavior for video with controls.) Add GraphicsLayer::contentsRectClipsDescendants(), and used it to run code that creates the contents clipping (and optional shape) layers even when no contents layer is present. Fix up the sublayer list building to parent layers from children in the contents clipping layer. Tests: compositing/iframes/border-radius-composited-frame.html compositing/iframes/border-uneven-radius-composited-frame.html * platform/graphics/GraphicsLayer.cpp: (WebCore::GraphicsLayer::GraphicsLayer): * platform/graphics/GraphicsLayer.h: (WebCore::GraphicsLayer::contentsRectClipsDescendants const): (WebCore::GraphicsLayer::setContentsRectClipsDescendants): * platform/graphics/ca/GraphicsLayerCA.cpp: (WebCore::GraphicsLayerCA::setContentsRectClipsDescendants): (WebCore::GraphicsLayerCA::updateSublayerList): (WebCore::GraphicsLayerCA::updateContentsRects): (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): * platform/graphics/ca/GraphicsLayerCA.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateConfiguration): * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::isCompositedSubframeRenderer): * rendering/RenderLayerCompositor.h: LayoutTests: Reviewed by Zalan Bujtas. * compositing/iframes/border-radius-composited-frame-expected.html: Added. * compositing/iframes/border-radius-composited-frame.html: Added. * compositing/iframes/border-uneven-radius-composited-frame-expected.html: Added. * compositing/iframes/border-uneven-radius-composited-frame.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac-wk1/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp trunk/Source/WebCore/platform/graphics/GraphicsLayer.h trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h trunk/Source/WebCore/rendering/RenderLayerBacking.cpp trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp trunk/Source/WebCore/rendering/RenderLayerCompositor.h Added Paths trunk/LayoutTests/compositing/iframes/border-radius-composited-frame-expected.html trunk/LayoutTests/compositing/iframes/border-radius-composited-frame.html trunk/LayoutTests/compositing/iframes/border-uneven-radius-composited-frame-expected.html trunk/LayoutTests/compositing/iframes/border-uneven-radius-composited-frame.html Diff Modified: trunk/LayoutTests/ChangeLog (260949 => 260950) --- trunk/LayoutTests/ChangeLog 2020-04-30 14:04:51 UTC (rev 260949) +++ trunk/LayoutTests/ChangeLog 2020-04-30 14:39:02 UTC (rev 260950) @@ -1,3 +1,15 @@ +2020-04-30 Simon Fraser + +border-radius fails to clip iframe contents +https://bugs.webkit.org/show_bug.cgi?id=211199 + +Reviewed by Zalan Bujtas. + +* compositing/iframes/border-radius-composited-frame-expected.html: Added. +* compositing/iframes/border-radius-composited-frame.html: Added. +* compositing/iframes/border-uneven-radius-composited-frame-expected.html: Added. +* compositing/iframes/border-uneven-radius-composited-frame.html: Added. + 2020-04-30 Philippe Normand [SOUP] http/tests/media/video-accept-encoding.html fails Added: trunk/LayoutTests/compositing/iframes/border-radius-composited-frame-expected.html (0 => 260950) --- trunk/LayoutTests/compositing/iframes/border-radius-composited-frame-expected.html (rev 0) +++ trunk/LayoutTests/compositing/iframes/border-radius-composited-frame-expected.html 2020-04-30 14:39:02 UTC (rev 260950) @@ -0,0 +1,32 @@ + + + + +.wrapper { +height: 400px; +width: 400px; +border: 10px solid black; +box-sizing: border-box; +border-radius: 50%; +overflow: hidden; +transform: translateZ(0); +} + +.composited { +transform: translateZ(0); +} + +.box { +width: 100%; +height: 100%; +background-color: silver; +} + + + + +asd + + + + Added: trunk/LayoutTests/compositing/iframes/border-radius-composited-frame.html (0 => 260950) --- trunk/LayoutTests/compositing/iframes/border-radius-composited-frame.html
[webkit-changes] [260949] trunk/Tools
Title: [260949] trunk/Tools Revision 260949 Author csaave...@igalia.com Date 2020-04-30 07:04:51 -0700 (Thu, 30 Apr 2020) Log Message [GTK4] Add navigation and reload buttons to MiniBrowser https://bugs.webkit.org/show_bug.cgi?id=211231 Reviewed by Adrian Perez de Castro. * MiniBrowser/gtk/BrowserWindow.c: (browserWindowUpdateNavigationMenu): (webViewIsLoadingChanged): (browserWindowSetupToolbarItem): (browser_window_init): Modified Paths trunk/Tools/ChangeLog trunk/Tools/MiniBrowser/gtk/BrowserWindow.c Diff Modified: trunk/Tools/ChangeLog (260948 => 260949) --- trunk/Tools/ChangeLog 2020-04-30 13:55:35 UTC (rev 260948) +++ trunk/Tools/ChangeLog 2020-04-30 14:04:51 UTC (rev 260949) @@ -1,3 +1,16 @@ +2020-04-30 Claudio Saavedra + +[GTK4] Add navigation and reload buttons to MiniBrowser +https://bugs.webkit.org/show_bug.cgi?id=211231 + +Reviewed by Adrian Perez de Castro. + +* MiniBrowser/gtk/BrowserWindow.c: +(browserWindowUpdateNavigationMenu): +(webViewIsLoadingChanged): +(browserWindowSetupToolbarItem): +(browser_window_init): + 2020-04-30 Philippe Normand [SOUP] http/tests/media/video-accept-encoding.html fails Modified: trunk/Tools/MiniBrowser/gtk/BrowserWindow.c (260948 => 260949) --- trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2020-04-30 13:55:35 UTC (rev 260948) +++ trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2020-04-30 14:04:51 UTC (rev 260949) @@ -118,7 +118,6 @@ ); } -#if !GTK_CHECK_VERSION(3, 98, 0) static void reloadOrStopCallback(BrowserWindow *window) { WebKitWebView *webView = browser_tab_get_web_view(window->activeTab); @@ -140,6 +139,7 @@ webkit_web_view_go_forward(webView); } +#if !GTK_CHECK_VERSION(3, 98, 0) static void settingsCallback(BrowserWindow *window) { if (window->settingsDialog) { @@ -263,11 +263,11 @@ static void browserWindowUpdateNavigationMenu(BrowserWindow *window, WebKitBackForwardList *backForwardlist) { -#if !GTK_CHECK_VERSION(3, 98, 0) WebKitWebView *webView = browser_tab_get_web_view(window->activeTab); gtk_widget_set_sensitive(window->backItem, webkit_web_view_can_go_back(webView)); gtk_widget_set_sensitive(window->forwardItem, webkit_web_view_can_go_forward(webView)); +#if !GTK_CHECK_VERSION(3, 98, 0) GList *list = g_list_reverse(webkit_back_forward_list_get_back_list_with_limit(backForwardlist, 10)); gtk_menu_tool_button_set_menu(GTK_MENU_TOOL_BUTTON(window->backItem), browserWindowCreateBackForwardMenu(window, list)); @@ -537,11 +537,8 @@ static void webViewIsLoadingChanged(WebKitWebView *webView, GParamSpec *paramSpec, BrowserWindow *window) { -#if !GTK_CHECK_VERSION(3, 98, 0) gboolean isLoading = webkit_web_view_is_loading(webView); -gtk_tool_button_set_label(GTK_TOOL_BUTTON(window->reloadOrStopButton), isLoading ? "Stop" : "Reload"); -gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(window->reloadOrStopButton), isLoading ? "process-stop" : "view-refresh"); -#endif +g_object_set(G_OBJECT(window->reloadOrStopButton), "label", isLoading ? "Stop" : "Reload", "icon-name", isLoading ? "process-stop" : "view-refresh", NULL); } #if !GTK_CHECK_VERSION(3, 98, 0) @@ -946,7 +943,17 @@ gtk_notebook_set_show_tabs(GTK_NOTEBOOK(window->notebook), gtk_notebook_get_n_pages(notebook) > 1); } -#if !GTK_CHECK_VERSION(3, 98, 0) +#if GTK_CHECK_VERSION(3, 98, 0) +static GtkWidget* browserWindowSetupToolbarItem(BrowserWindow* window, GtkContainer* container, const char* namedIcon, GCallback callback) +{ +GtkWidget *button = gtk_button_new_from_icon_name(namedIcon); +gtk_button_set_has_frame(GTK_BUTTON(button), FALSE); +gtk_container_add(container, button); +g_signal_connect_swapped(button, "clicked", callback, (gpointer)window); + +return button; +} +#else static GtkWidget* browserWindowSetupToolbarItem(BrowserWindow* window, GtkWidget* toolbar, GType type, const char* label, const char* namedIcon, GCallback callback) { GtkWidget *item = g_object_new(type, "icon-name", namedIcon, NULL); @@ -1050,6 +1057,12 @@ window->toolbar = toolbar; gtk_widget_set_hexpand(window->uriEntry, TRUE); gtk_center_box_set_center_widget(GTK_CENTER_BOX(toolbar), window->uriEntry); + +GtkWidget *box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); +window->backItem = browserWindowSetupToolbarItem(window, GTK_CONTAINER(box), "go-previous", G_CALLBACK(goBackCallback)); +window->forwardItem = browserWindowSetupToolbarItem(window, GTK_CONTAINER(box), "go-next", G_CALLBACK(goForwardCallback)); +window->reloadOrStopButton = browserWindowSetupToolbarItem(window, GTK_CONTAINER(box), "view-refresh", G_CALLBACK(reloadOrStopCallback)); +gtk_center_box_set_start_widget(GTK_CENTER_BOX(toolbar), box); #else GtkWidget *toolbar = gtk_toolbar_new(); window->toolbar = toolbar; ___ webkit-changes mailing
[webkit-changes] [260948] trunk/Source/WebCore
Title: [260948] trunk/Source/WebCore Revision 260948 Author za...@apple.com Date 2020-04-30 06:55:35 -0700 (Thu, 30 Apr 2020) Log Message [LFC][TFC] Adjust the available vertical space with the row span for cell layout https://bugs.webkit.org/show_bug.cgi?id=211218 Reviewed by Antti Koivisto. The vertical available space for a cell should include all row heights it spans. (can't include test, current table layout logic is incompatible with LFC -and FF/Chrome.) * layout/tableformatting/TableFormattingContext.cpp: (WebCore::Layout::TableFormattingContext::setUsedGeometryForCells): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260947 => 260948) --- trunk/Source/WebCore/ChangeLog 2020-04-30 13:38:40 UTC (rev 260947) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 13:55:35 UTC (rev 260948) @@ -1,3 +1,16 @@ +2020-04-30 Zalan Bujtas + +[LFC][TFC] Adjust the available vertical space with the row span for cell layout +https://bugs.webkit.org/show_bug.cgi?id=211218 + +Reviewed by Antti Koivisto. + +The vertical available space for a cell should include all row heights it spans. +(can't include test, current table layout logic is incompatible with LFC -and FF/Chrome.) + +* layout/tableformatting/TableFormattingContext.cpp: +(WebCore::Layout::TableFormattingContext::setUsedGeometryForCells): + 2020-04-30 Philippe Normand [SOUP] http/tests/media/video-accept-encoding.html fails Modified: trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp (260947 => 260948) --- trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp 2020-04-30 13:38:40 UTC (rev 260947) +++ trunk/Source/WebCore/layout/tableformatting/TableFormattingContext.cpp 2020-04-30 13:55:35 UTC (rev 260948) @@ -74,8 +74,10 @@ auto& cellDisplayBox = formattingState().displayBox(cellBox); cellDisplayBox.setTop(rowList[cell->startRow()].logicalTop()); cellDisplayBox.setLeft(columnList[cell->startColumn()].logicalLeft()); -auto rowHeight = rowList[cell->startRow()].logicalHeight(); -layoutCell(*cell, availableHorizontalSpace, rowHeight); +auto availableVerticalSpace = rowList[cell->startRow()].logicalHeight(); +for (size_t rowIndex = cell->startRow() + 1; rowIndex < cell->endRow(); ++rowIndex) +availableVerticalSpace += rowList[rowIndex].logicalHeight(); +layoutCell(*cell, availableHorizontalSpace, availableVerticalSpace); // FIXME: Find out if it is ok to use the regular padding here to align the content box inside a tall cell or we need to // use some kind of intrinsic padding similar to RenderTableCell. @@ -86,7 +88,7 @@ switch (cellBox.style().verticalAlign()) { case VerticalAlign::Middle: { -auto intrinsicVerticalPadding = std::max(0_lu, rowHeight - cellDisplayBox.verticalMarginBorderAndPadding() - cellDisplayBox.contentBoxHeight()); +auto intrinsicVerticalPadding = std::max(0_lu, availableVerticalSpace - cellDisplayBox.verticalMarginBorderAndPadding() - cellDisplayBox.contentBoxHeight()); intrinsicPaddingTop = intrinsicVerticalPadding / 2; intrinsicPaddingBottom = intrinsicVerticalPadding / 2; break; @@ -95,7 +97,7 @@ auto rowBaselineOffset = LayoutUnit { rowList[cell->startRow()].baselineOffset() }; auto cellBaselineOffset = LayoutUnit { cell->baselineOffset() }; intrinsicPaddingTop = std::max(0_lu, rowBaselineOffset - cellBaselineOffset - cellDisplayBox.borderTop()); -intrinsicPaddingBottom = std::max(0_lu, rowHeight - cellDisplayBox.verticalMarginBorderAndPadding() - intrinsicPaddingTop - cellDisplayBox.contentBoxHeight()); +intrinsicPaddingBottom = std::max(0_lu, availableVerticalSpace - cellDisplayBox.verticalMarginBorderAndPadding() - intrinsicPaddingTop - cellDisplayBox.contentBoxHeight()); break; } default: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260947] trunk
Title: [260947] trunk Revision 260947 Author ph...@webkit.org Date 2020-04-30 06:38:40 -0700 (Thu, 30 Apr 2020) Log Message [SOUP] http/tests/media/video-accept-encoding.html fails https://bugs.webkit.org/show_bug.cgi?id=211228 Reviewed by Carlos Garcia Campos. Source/WebCore: The resource requests received by the network process always had the accept-encoding setting enabled due to lack of IPC (de)serialization for this boolean. The patch also enables soup release logging, set WEBKIT_DEBUG=Network=debug. * platform/network/soup/ResourceRequest.h: (WebCore::ResourceRequest::encodeWithPlatformData const): (WebCore::ResourceRequest::decodeWithPlatformData): * platform/network/soup/SoupNetworkSession.cpp: (WebCore::soupLogPrinter): (WebCore::SoupNetworkSession::setupLogger): Tools: * Scripts/webkitpy/port/gtk.py: (GtkPort.setup_environ_for_server): * Scripts/webkitpy/port/wpe.py: (WPEPort.setup_environ_for_server): LayoutTests: * platform/gtk/TestExpectations: Unflag passing tests. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/soup/ResourceRequest.h trunk/Source/WebCore/platform/network/soup/SoupNetworkSession.cpp trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/port/gtk.py trunk/Tools/Scripts/webkitpy/port/wpe.py Diff Modified: trunk/LayoutTests/ChangeLog (260946 => 260947) --- trunk/LayoutTests/ChangeLog 2020-04-30 12:58:53 UTC (rev 260946) +++ trunk/LayoutTests/ChangeLog 2020-04-30 13:38:40 UTC (rev 260947) @@ -1,5 +1,14 @@ 2020-04-30 Philippe Normand +[SOUP] http/tests/media/video-accept-encoding.html fails +https://bugs.webkit.org/show_bug.cgi?id=211228 + +Reviewed by Carlos Garcia Campos. + +* platform/gtk/TestExpectations: Unflag passing tests. + +2020-04-30 Philippe Normand + REGRESSION(r260822): Apparently broke media/track/track-cue-missing.html on Mac https://bugs.webkit.org/show_bug.cgi?id=211194 Modified: trunk/LayoutTests/platform/gtk/TestExpectations (260946 => 260947) --- trunk/LayoutTests/platform/gtk/TestExpectations 2020-04-30 12:58:53 UTC (rev 260946) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2020-04-30 13:38:40 UTC (rev 260947) @@ -3569,10 +3569,6 @@ Bug(GTK) fast/css/sticky/sticky-top-zoomed.html [ ImageOnlyFailure ] -# Shared workers disabled with the Network Process -webkit.org/b/139357 fast/workers/worker-crash-with-invalid-location.html [ Skip ] -webkit.org/b/139357 http/tests/media/video-accept-encoding.html [ Failure ] - # There is no network load scheduling or prioritization with NetworkProcess. webkit.org/b/123431 http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html [ Failure Pass ] webkit.org/b/123431 http/tests/local/link-stylesheet-load-order-preload.html [ Pass Failure ] Modified: trunk/Source/WebCore/ChangeLog (260946 => 260947) --- trunk/Source/WebCore/ChangeLog 2020-04-30 12:58:53 UTC (rev 260946) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 13:38:40 UTC (rev 260947) @@ -1,3 +1,23 @@ +2020-04-30 Philippe Normand + +[SOUP] http/tests/media/video-accept-encoding.html fails +https://bugs.webkit.org/show_bug.cgi?id=211228 + +Reviewed by Carlos Garcia Campos. + +The resource requests received by the network process always had +the accept-encoding setting enabled due to lack of IPC +(de)serialization for this boolean. + +The patch also enables soup release logging, set WEBKIT_DEBUG=Network=debug. + +* platform/network/soup/ResourceRequest.h: +(WebCore::ResourceRequest::encodeWithPlatformData const): +(WebCore::ResourceRequest::decodeWithPlatformData): +* platform/network/soup/SoupNetworkSession.cpp: +(WebCore::soupLogPrinter): +(WebCore::SoupNetworkSession::setupLogger): + 2020-04-30 Carlos Garcia Campos [GTK4][X11] Add support for rendering web view contents Modified: trunk/Source/WebCore/platform/network/soup/ResourceRequest.h (260946 => 260947) --- trunk/Source/WebCore/platform/network/soup/ResourceRequest.h 2020-04-30 12:58:53 UTC (rev 260946) +++ trunk/Source/WebCore/platform/network/soup/ResourceRequest.h 2020-04-30 13:38:40 UTC (rev 260947) @@ -137,6 +137,7 @@ encoder << static_cast(m_soupFlags); encoder << m_initiatingPageID; +encoder << static_cast(m_acceptEncoding); } template @@ -166,6 +167,11 @@ return false; m_initiatingPageID = *initiatingPageID; +bool acceptEncoding; +if (!decoder.decode(acceptEncoding)) +return false; +m_acceptEncoding = acceptEncoding; + return true; } Modified: trunk/Source/WebCore/platform/network/soup/SoupNetworkSession.cpp (260946 => 260947) --- trunk/Source/WebCore/platform/network/soup/SoupNetworkSession.cpp 2020-04-30 12:58:53 UTC (rev 260946) +++
[webkit-changes] [260946] trunk/Source
Title: [260946] trunk/Source Revision 260946 Author carlo...@webkit.org Date 2020-04-30 05:58:53 -0700 (Thu, 30 Apr 2020) Log Message [GTK4][X11] Add support for rendering web view contents https://bugs.webkit.org/show_bug.cgi?id=211189 Reviewed by Adrian Perez de Castro. Source/WebCore: Add PlatformDisplayX11::visual() to get the X visual used for rendering. * platform/graphics/x11/PlatformDisplayX11.cpp: (WebCore::PlatformDisplayX11::visual const): * platform/graphics/x11/PlatformDisplayX11.h: Source/WebKit: Use GdkDisplayX11::xevent signal instead of filtering events that is no longer available in GTK4. GdkVisual no longer exists either, so we get the X visual from the PlatformDisplay. * UIProcess/gtk/AcceleratedBackingStoreX11.cpp: (WebKit::XDamageNotifier::add): (WebKit::XDamageNotifier::remove): (WebKit::XDamageNotifier::filterXDamageEvent): (WebKit::AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11): (WebKit::AcceleratedBackingStoreX11::update): (WebKit::AcceleratedBackingStoreX11::snapshot): * WebProcess/WebPage/gtk/AcceleratedSurfaceX11.cpp: (WebKit::AcceleratedSurfaceX11::AcceleratedSurfaceX11): (WebKit::AcceleratedSurfaceX11::createPixmap): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreX11.cpp trunk/Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceX11.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260945 => 260946) --- trunk/Source/WebCore/ChangeLog 2020-04-30 12:57:00 UTC (rev 260945) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 12:58:53 UTC (rev 260946) @@ -1,3 +1,16 @@ +2020-04-30 Carlos Garcia Campos + +[GTK4][X11] Add support for rendering web view contents +https://bugs.webkit.org/show_bug.cgi?id=211189 + +Reviewed by Adrian Perez de Castro. + +Add PlatformDisplayX11::visual() to get the X visual used for rendering. + +* platform/graphics/x11/PlatformDisplayX11.cpp: +(WebCore::PlatformDisplayX11::visual const): +* platform/graphics/x11/PlatformDisplayX11.h: + 2020-04-30 Andres Gonzalez Add logging of AXIsolatedTree and AXNotifications. Modified: trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp (260945 => 260946) --- trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp 2020-04-30 12:57:00 UTC (rev 260945) +++ trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp 2020-04-30 12:58:53 UTC (rev 260946) @@ -124,6 +124,31 @@ return m_supportsXDamage.value(); } +void* PlatformDisplayX11::visual() const +{ +if (m_visual) +return m_visual; + +XVisualInfo visualTemplate; +visualTemplate.screen = DefaultScreen(m_display); + +int visualCount = 0; +XVisualInfo* visualInfo = XGetVisualInfo(m_display, VisualScreenMask, , ); +for (int i = 0; i < visualCount; ++i) { +auto& info = visualInfo[i]; +if (info.depth == 32 && info.red_mask == 0xff && info.green_mask == 0x00ff00 && info.blue_mask == 0xff) { +m_visual = info.visual; +break; +} +} +XFree(visualInfo); + +if (!m_visual) +m_visual = DefaultVisual(m_display, DefaultScreen(m_display)); + +return m_visual; +} + } // namespace WebCore #endif // PLATFORM(X11) Modified: trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.h (260945 => 260946) --- trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.h 2020-04-30 12:57:00 UTC (rev 260945) +++ trunk/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.h 2020-04-30 12:58:53 UTC (rev 260946) @@ -23,8 +23,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef PlatformDisplayX11_h -#define PlatformDisplayX11_h +#pragma once #if PLATFORM(X11) @@ -33,6 +32,10 @@ typedef struct _XDisplay Display; +// It's not possible to forward declare Visual, and including xlib in headers is problematic, +// so we use void* for Visual and provide this macro to get the visual easily. +#define WK_XVISUAL(platformDisplay) (static_cast(platformDisplay.visual())) + namespace WebCore { class PlatformDisplayX11 final : public PlatformDisplay { @@ -43,6 +46,7 @@ virtual ~PlatformDisplayX11(); Display* native() const { return m_display; } +void* visual() const; bool supportsXComposite() const; bool supportsXDamage(Optional& damageEventBase, Optional& damageErrorBase) const; @@ -60,6 +64,7 @@ mutable Optional m_supportsXDamage; mutable Optional m_damageEventBase; mutable Optional m_damageErrorBase; +mutable void* m_visual { nullptr }; }; } // namespace WebCore @@ -67,5 +72,3 @@ SPECIALIZE_TYPE_TRAITS_PLATFORM_DISPLAY(PlatformDisplayX11, X11) #endif // PLATFORM(X11) - -#endif // PlatformDisplayX11 Modified:
[webkit-changes] [260945] trunk/Source/WebCore
Title: [260945] trunk/Source/WebCore Revision 260945 Author andresg...@apple.com Date 2020-04-30 05:57:00 -0700 (Thu, 30 Apr 2020) Log Message Add logging of AXIsolatedTree and AXNotifications. https://bugs.webkit.org/show_bug.cgi?id=211214 Reviewed by Chris Fleizach. - Added operator<< implementations for AXIsolatedTree and AX notifications. - Added corresponding AXLogger::log overloads for the above types. - To set the root node and the focused node we are now always using setRootNodeID and setFocusedNodeID respectively. Therefore, before returning the root or the focused nodes, it is necessary to applyPendingChanges. * accessibility/AXLogger.cpp: (WebCore::AXLogger::add): Used for recursive logging of the hierarchy. (WebCore::AXLogger::log): (WebCore::operator<<): * accessibility/AXLogger.h: * accessibility/AXObjectCache.cpp: Added logging of the isolated tree when it's generated and before and after updates. (WebCore::AXObjectCache::isolatedTreeFocusedObject): (WebCore::AXObjectCache::generateIsolatedTree): (WebCore::AXObjectCache::updateIsolatedTree): * accessibility/AXObjectCache.h: * accessibility/isolatedtree/AXIsolatedObject.cpp: (WebCore::AXIsolatedObject::focusedUIElement const): * accessibility/isolatedtree/AXIsolatedTree.cpp: (WebCore::AXIsolatedTree::createTreeForPageID): (WebCore::AXIsolatedTree::removeTreeForPageID): (WebCore::AXIsolatedTree::nodeForID const): (WebCore::AXIsolatedTree::generateSubtree): (WebCore::AXIsolatedTree::focusedNode): (WebCore::AXIsolatedTree::rootNode): (WebCore::AXIsolatedTree::setRootNodeID): (WebCore::AXIsolatedTree::setFocusedNodeID): (WebCore::AXIsolatedTree::applyPendingChanges): (WebCore::AXIsolatedTree::focusedUIElement): Renamed focusedNode for naming consistency. (WebCore::AXIsolatedTree::setRootNode): Deleted. Using setRootNodeID instead, (WebCore::AXIsolatedTree::setFocusedNode): Deleted. Use setFocusedNodeID instead. * accessibility/isolatedtree/AXIsolatedTree.h: (WebCore::AXIsolatedTree::treeID const): (WebCore::AXIsolatedTree::treeIdentifier const): renamed treeID for naming consistency. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/AXLogger.cpp trunk/Source/WebCore/accessibility/AXLogger.h trunk/Source/WebCore/accessibility/AXObjectCache.cpp trunk/Source/WebCore/accessibility/AXObjectCache.h trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h Diff Modified: trunk/Source/WebCore/ChangeLog (260944 => 260945) --- trunk/Source/WebCore/ChangeLog 2020-04-30 12:52:10 UTC (rev 260944) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 12:57:00 UTC (rev 260945) @@ -1,3 +1,46 @@ +2020-04-30 Andres Gonzalez + +Add logging of AXIsolatedTree and AXNotifications. +https://bugs.webkit.org/show_bug.cgi?id=211214 + +Reviewed by Chris Fleizach. + +- Added operator<< implementations for AXIsolatedTree and AX notifications. +- Added corresponding AXLogger::log overloads for the above types. +- To set the root node and the focused node we are now always using +setRootNodeID and setFocusedNodeID respectively. Therefore, before +returning the root or the focused nodes, it is necessary to applyPendingChanges. + +* accessibility/AXLogger.cpp: +(WebCore::AXLogger::add): Used for recursive logging of the hierarchy. +(WebCore::AXLogger::log): +(WebCore::operator<<): +* accessibility/AXLogger.h: +* accessibility/AXObjectCache.cpp: +Added logging of the isolated tree when it's generated and before and after updates. +(WebCore::AXObjectCache::isolatedTreeFocusedObject): +(WebCore::AXObjectCache::generateIsolatedTree): +(WebCore::AXObjectCache::updateIsolatedTree): +* accessibility/AXObjectCache.h: +* accessibility/isolatedtree/AXIsolatedObject.cpp: +(WebCore::AXIsolatedObject::focusedUIElement const): +* accessibility/isolatedtree/AXIsolatedTree.cpp: +(WebCore::AXIsolatedTree::createTreeForPageID): +(WebCore::AXIsolatedTree::removeTreeForPageID): +(WebCore::AXIsolatedTree::nodeForID const): +(WebCore::AXIsolatedTree::generateSubtree): +(WebCore::AXIsolatedTree::focusedNode): +(WebCore::AXIsolatedTree::rootNode): +(WebCore::AXIsolatedTree::setRootNodeID): +(WebCore::AXIsolatedTree::setFocusedNodeID): +(WebCore::AXIsolatedTree::applyPendingChanges): +(WebCore::AXIsolatedTree::focusedUIElement): Renamed focusedNode for naming consistency. +(WebCore::AXIsolatedTree::setRootNode): Deleted. Using setRootNodeID instead, +(WebCore::AXIsolatedTree::setFocusedNode): Deleted. Use setFocusedNodeID instead. +* accessibility/isolatedtree/AXIsolatedTree.h: +(WebCore::AXIsolatedTree::treeID const): +
[webkit-changes] [260944] trunk/Tools
Title: [260944] trunk/Tools Revision 260944 Author andresg...@apple.com Date 2020-04-30 05:52:10 -0700 (Thu, 30 Apr 2020) Log Message Fix for crashes in accessibility/accessibility-node-memory-management.html in isolated tree mode. https://bugs.webkit.org/show_bug.cgi?id=211215 Reviewed by Chris Fleizach. * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp: (WTR::AccessibilityController::executeOnAXThreadIfPossible): Removed the call CFRunLoopRunInMode and instead we'll use setTimeout in each of the tests that require to complete a spin of the main run loop. * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm: (WTR::AccessibilityController::accessibleElementById): Need to retain ObjectiveC object when it is retrieved from the secondary thread. * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm: (WTR::AccessibilityUIElement::getChildrenWithRange): Dito as above. Modified Paths trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/InjectedBundle/AccessibilityController.cpp trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm Diff Modified: trunk/Tools/ChangeLog (260943 => 260944) --- trunk/Tools/ChangeLog 2020-04-30 12:25:39 UTC (rev 260943) +++ trunk/Tools/ChangeLog 2020-04-30 12:52:10 UTC (rev 260944) @@ -1,3 +1,22 @@ +2020-04-30 Andres Gonzalez + +Fix for crashes in accessibility/accessibility-node-memory-management.html in isolated tree mode. +https://bugs.webkit.org/show_bug.cgi?id=211215 + +Reviewed by Chris Fleizach. + +* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp: +(WTR::AccessibilityController::executeOnAXThreadIfPossible): +Removed the call CFRunLoopRunInMode and instead we'll use setTimeout in +each of the tests that require to complete a spin of the main run loop. + +* WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm: +(WTR::AccessibilityController::accessibleElementById): +Need to retain ObjectiveC object when it is retrieved from the secondary thread. + +* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm: +(WTR::AccessibilityUIElement::getChildrenWithRange): Dito as above. + 2020-04-30 Claudio Saavedra [GTK4] Bring back the URI entry to MiniBrowser Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/AccessibilityController.cpp (260943 => 260944) --- trunk/Tools/WebKitTestRunner/InjectedBundle/AccessibilityController.cpp 2020-04-30 12:25:39 UTC (rev 260943) +++ trunk/Tools/WebKitTestRunner/InjectedBundle/AccessibilityController.cpp 2020-04-30 12:52:10 UTC (rev 260944) @@ -116,17 +116,12 @@ m_semaphore.signal(); }); -// Spin the main loop so that any required DOM processing can be -// executed in the main thread. That is the case of most parameterized -// attributes, where the attribute value has to be calculated -// back in the main thread. -CFRunLoopRunInMode(kCFRunLoopDefaultMode, .25, false); m_semaphore.wait(); } else #endif function(); } -#endif +#endif // PLATFORM(COCOA) RefPtr AccessibilityController::elementAtPoint(int x, int y) { Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm (260943 => 260944) --- trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm 2020-04-30 12:25:39 UTC (rev 260943) +++ trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm 2020-04-30 12:52:10 UTC (rev 260944) @@ -99,13 +99,13 @@ WKBundlePageRef page = InjectedBundle::singleton().page()->page(); PlatformUIElement root = static_cast(WKAccessibilityRootObject(page)); -id result; +RetainPtr result; executeOnAXThreadIfPossible([, , ] { result = findAccessibleObjectById(root, [NSString stringWithJSStringRef:idAttribute]); }); if (result) -return AccessibilityUIElement::create(result); +return AccessibilityUIElement::create(result.get()); return nullptr; } Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm (260943 => 260944) --- trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm 2020-04-30 12:25:39 UTC (rev 260943) +++ trunk/Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm 2020-04-30 12:52:10 UTC (rev 260944) @@ -372,11 +372,11 @@ void AccessibilityUIElement::getChildrenWithRange(Vector >& elementVector, unsigned location, unsigned length) { BEGIN_AX_OBJC_EXCEPTIONS -NSArray* children; +RetainPtr children; s_controller->executeOnAXThreadIfPossible([, location, length, this] { children = [m_element accessibilityArrayAttributeValues:NSAccessibilityChildrenAttribute index:location maxCount:length]; }); -elementVector =
[webkit-changes] [260943] trunk/LayoutTests
Title: [260943] trunk/LayoutTests Revision 260943 Author commit-qu...@webkit.org Date 2020-04-30 05:25:39 -0700 (Thu, 30 Apr 2020) Log Message REGRESSION(r260822): Apparently broke media/track/track-cue-missing.html on Mac https://bugs.webkit.org/show_bug.cgi?id=211194 Patch by Philippe Normand on 2020-04-30 Reviewed by Xabier Rodriguez-Calvar. * media/track/track-cue-missing-expected.txt: * media/track/track-cue-missing.html: Prospective fix, set display mode to automatic. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/media/track/track-cue-missing-expected.txt trunk/LayoutTests/media/track/track-cue-missing.html Diff Modified: trunk/LayoutTests/ChangeLog (260942 => 260943) --- trunk/LayoutTests/ChangeLog 2020-04-30 12:10:19 UTC (rev 260942) +++ trunk/LayoutTests/ChangeLog 2020-04-30 12:25:39 UTC (rev 260943) @@ -1,5 +1,15 @@ 2020-04-30 Philippe Normand +REGRESSION(r260822): Apparently broke media/track/track-cue-missing.html on Mac +https://bugs.webkit.org/show_bug.cgi?id=211194 + +Reviewed by Xabier Rodriguez-Calvar. + +* media/track/track-cue-missing-expected.txt: +* media/track/track-cue-missing.html: Prospective fix, set display mode to automatic. + +2020-04-30 Philippe Normand + [GStreamer] fast/mediastream/get-user-media-device-id.html failing https://bugs.webkit.org/show_bug.cgi?id=190576 Modified: trunk/LayoutTests/media/track/track-cue-missing-expected.txt (260942 => 260943) --- trunk/LayoutTests/media/track/track-cue-missing-expected.txt 2020-04-30 12:10:19 UTC (rev 260942) +++ trunk/LayoutTests/media/track/track-cue-missing-expected.txt 2020-04-30 12:25:39 UTC (rev 260943) @@ -1,4 +1,5 @@ +RUN(internals.setCaptionDisplayMode('Automatic')) RUN(video.src = "" "../content/test")) RUN(track = video.addTextTrack("subtitles", "English", "en")) RUN(track.mode = "showing") Modified: trunk/LayoutTests/media/track/track-cue-missing.html (260942 => 260943) --- trunk/LayoutTests/media/track/track-cue-missing.html 2020-04-30 12:10:19 UTC (rev 260942) +++ trunk/LayoutTests/media/track/track-cue-missing.html 2020-04-30 12:25:39 UTC (rev 260943) @@ -5,6 +5,8 @@
[webkit-changes] [260942] trunk/Tools
Title: [260942] trunk/Tools Revision 260942 Author csaave...@igalia.com Date 2020-04-30 05:10:19 -0700 (Thu, 30 Apr 2020) Log Message [GTK4] Bring back the URI entry to MiniBrowser https://bugs.webkit.org/show_bug.cgi?id=211186 Reviewed by Carlos Garcia Campos. GTK4 support for the URI entry added, using a GtkCenterBox to start layouting a modern version of the toolbar. * MiniBrowser/gtk/BrowserWindow.c: (activateUriEntryCallback): (webViewURIChanged): (updateUriEntryIcon): (faviconChanged): (insertLinkCommandCallback): (browser_window_init): Modified Paths trunk/Tools/ChangeLog trunk/Tools/MiniBrowser/gtk/BrowserWindow.c Diff Modified: trunk/Tools/ChangeLog (260941 => 260942) --- trunk/Tools/ChangeLog 2020-04-30 11:41:45 UTC (rev 260941) +++ trunk/Tools/ChangeLog 2020-04-30 12:10:19 UTC (rev 260942) @@ -1,3 +1,21 @@ +2020-04-30 Claudio Saavedra + +[GTK4] Bring back the URI entry to MiniBrowser +https://bugs.webkit.org/show_bug.cgi?id=211186 + +Reviewed by Carlos Garcia Campos. + +GTK4 support for the URI entry added, using a GtkCenterBox +to start layouting a modern version of the toolbar. + +* MiniBrowser/gtk/BrowserWindow.c: +(activateUriEntryCallback): +(webViewURIChanged): +(updateUriEntryIcon): +(faviconChanged): +(insertLinkCommandCallback): +(browser_window_init): + 2020-04-29 Simon Fraser Add a MiniBrowser option to inset the web view so it doesn't fill the window Modified: trunk/Tools/MiniBrowser/gtk/BrowserWindow.c (260941 => 260942) --- trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2020-04-30 11:41:45 UTC (rev 260941) +++ trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2020-04-30 12:10:19 UTC (rev 260942) @@ -63,7 +63,11 @@ GtkWidget *downloadsBar; gboolean searchBarVisible; gboolean fullScreenIsEnabled; +#if GTK_CHECK_VERSION(3, 98, 0) +GdkTexture *favicon; +#else GdkPixbuf *favicon; +#endif GtkWidget *reloadOrStopButton; GtkWindow *parentWindow; guint resetEntryProgressTimeoutId; @@ -103,12 +107,18 @@ browserWindowSetStatusText(window, NULL); } -#if !GTK_CHECK_VERSION(3, 98, 0) static void activateUriEntryCallback(BrowserWindow *window) { -browser_window_load_uri(window, gtk_entry_get_text(GTK_ENTRY(window->uriEntry))); +browser_window_load_uri(window, +#if GTK_CHECK_VERSION(3, 98, 0) +gtk_editable_get_text(GTK_EDITABLE(window->uriEntry)) +#else +gtk_entry_get_text(GTK_ENTRY(window->uriEntry)) +#endif +); } +#if !GTK_CHECK_VERSION(3, 98, 0) static void reloadOrStopCallback(BrowserWindow *window) { WebKitWebView *webView = browser_tab_get_web_view(window->activeTab); @@ -147,14 +157,13 @@ static void webViewURIChanged(WebKitWebView *webView, GParamSpec *pspec, BrowserWindow *window) { -#if !GTK_CHECK_VERSION(3, 98, 0) char *externalURI = getExternalURI(webkit_web_view_get_uri(webView)); -if (externalURI) { -gtk_entry_set_text(GTK_ENTRY(window->uriEntry), externalURI); -g_free(externalURI); -} else -gtk_entry_set_text(GTK_ENTRY(window->uriEntry), ""); +#if GTK_CHECK_VERSION(3, 98, 0) +gtk_editable_set_text(GTK_EDITABLE(window->uriEntry), externalURI ? externalURI : ""); +#else +gtk_entry_set_text(GTK_ENTRY(window->uriEntry), externalURI ? externalURI : ""); #endif +g_free(externalURI); } static void webViewTitleChanged(WebKitWebView *webView, GParamSpec *pspec, BrowserWindow *window) @@ -486,24 +495,37 @@ static void updateUriEntryIcon(BrowserWindow *window) { -#if !GTK_CHECK_VERSION(3, 98, 0) GtkEntry *entry = GTK_ENTRY(window->uriEntry); if (window->favicon) +#if GTK_CHECK_VERSION(3, 98, 0) +gtk_entry_set_icon_from_paintable(entry, GTK_ENTRY_ICON_PRIMARY, GDK_PAINTABLE(window->favicon)); +#else gtk_entry_set_icon_from_pixbuf(entry, GTK_ENTRY_ICON_PRIMARY, window->favicon); +#endif else gtk_entry_set_icon_from_icon_name(entry, GTK_ENTRY_ICON_PRIMARY, "document-new"); -#endif } static void faviconChanged(WebKitWebView *webView, GParamSpec *paramSpec, BrowserWindow *window) { +#if GTK_CHECK_VERSION(3, 98, 0) +GdkTexture *favicon = NULL; +#else GdkPixbuf *favicon = NULL; +#endif cairo_surface_t *surface = webkit_web_view_get_favicon(webView); if (surface) { int width = cairo_image_surface_get_width(surface); int height = cairo_image_surface_get_height(surface); +#if GTK_CHECK_VERSION(3, 98, 0) +int stride = cairo_image_surface_get_stride(surface); +GBytes *bytes = g_bytes_new(cairo_image_surface_get_data(surface), stride * height); +favicon = gdk_memory_texture_new(width, height, GDK_MEMORY_DEFAULT, bytes, stride); +g_bytes_unref(bytes); +#else favicon = gdk_pixbuf_get_from_surface(surface, 0, 0, width, height); +#endif } if (window->favicon) @@ -684,7 +706,11 @@
[webkit-changes] [260941] trunk/Source/WebKitLegacy/mac
Title: [260941] trunk/Source/WebKitLegacy/mac Revision 260941 Author commit-qu...@webkit.org Date 2020-04-30 04:41:45 -0700 (Thu, 30 Apr 2020) Log Message Remove -[WebView setCSSAnimationsSuspended:] https://bugs.webkit.org/show_bug.cgi?id=211227 Patch by Antoine Quint on 2020-04-30 Reviewed by Antti Koivisto. This SPI has no user and it has no equivalent for the new animation engine. * WebView/WebView.mm: * WebView/WebViewPrivate.h: Modified Paths trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/WebView/WebView.mm trunk/Source/WebKitLegacy/mac/WebView/WebViewPrivate.h Diff Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (260940 => 260941) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2020-04-30 11:31:50 UTC (rev 260940) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2020-04-30 11:41:45 UTC (rev 260941) @@ -1,3 +1,16 @@ +2020-04-30 Antoine Quint + +Remove -[WebView setCSSAnimationsSuspended:] +https://bugs.webkit.org/show_bug.cgi?id=211227 + + +Reviewed by Antti Koivisto. + +This SPI has no user and it has no equivalent for the new animation engine. + +* WebView/WebView.mm: +* WebView/WebViewPrivate.h: + 2020-04-28 Daniel Bates [WebKitLegacy] Implement -hidePlaceholder and -showPlaceholderIfNecessary in terms of setCanShowPlaceholder() Modified: trunk/Source/WebKitLegacy/mac/WebView/WebView.mm (260940 => 260941) --- trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2020-04-30 11:31:50 UTC (rev 260940) +++ trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2020-04-30 11:41:45 UTC (rev 260941) @@ -4772,28 +4772,6 @@ [CATransaction synchronize]; } -- (BOOL)cssAnimationsSuspended -{ -// should ask the page! -auto* frame = core([self mainFrame]); -if (frame) -return frame->legacyAnimation().isSuspended(); - -return false; -} - -- (void)setCSSAnimationsSuspended:(BOOL)suspended -{ -auto* frame = core([self mainFrame]); -if (suspended == frame->legacyAnimation().isSuspended()) -return; - -if (suspended) -frame->legacyAnimation().suspendAnimations(); -else -frame->legacyAnimation().resumeAnimations(); -} - + (void)_setDomainRelaxationForbidden:(BOOL)forbidden forURLScheme:(NSString *)scheme { WebCore::LegacySchemeRegistry::setDomainRelaxationForbiddenForURLScheme(forbidden, scheme); Modified: trunk/Source/WebKitLegacy/mac/WebView/WebViewPrivate.h (260940 => 260941) --- trunk/Source/WebKitLegacy/mac/WebView/WebViewPrivate.h 2020-04-30 11:31:50 UTC (rev 260940) +++ trunk/Source/WebKitLegacy/mac/WebView/WebViewPrivate.h 2020-04-30 11:41:45 UTC (rev 260941) @@ -819,20 +819,6 @@ + (void)_setLoadResourcesSerially:(BOOL)serialize; - (void)_forceRepaintForTesting; -/*! -@method cssAnimationsSuspended -@abstract Returns whether or not CSS Animations are suspended. -@result YES if CSS Animations are suspended. -*/ -- (BOOL)cssAnimationsSuspended; - -/*! -@method setCSSAnimationsSuspended -@param suspended YES to suspend animations, NO to resume animations. -@discussion Suspends or resumes all running animations and transitions in the page. -*/ -- (void)setCSSAnimationsSuspended:(BOOL)suspended; - + (void)_setDomainRelaxationForbidden:(BOOL)forbidden forURLScheme:(NSString *)scheme; + (void)_registerURLSchemeAsSecure:(NSString *)scheme; + (void)_registerURLSchemeAsAllowingLocalStorageAccessInPrivateBrowsing:(NSString *)scheme; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260940] trunk/Source/WebInspectorUI
Title: [260940] trunk/Source/WebInspectorUI Revision 260940 Author chris.r...@sony.com Date 2020-04-30 04:31:50 -0700 (Thu, 30 Apr 2020) Log Message [CMake] Don't copy inspector resources in every incremental build https://bugs.webkit.org/show_bug.cgi?id=211212 Reviewed by Žan Doberšek. Moving the copy to a custom_command with a stamp so the copy isn't done each build. * CMakeLists.txt: Modified Paths trunk/Source/WebInspectorUI/CMakeLists.txt trunk/Source/WebInspectorUI/ChangeLog Diff Modified: trunk/Source/WebInspectorUI/CMakeLists.txt (260939 => 260940) --- trunk/Source/WebInspectorUI/CMakeLists.txt 2020-04-30 11:23:28 UTC (rev 260939) +++ trunk/Source/WebInspectorUI/CMakeLists.txt 2020-04-30 11:31:50 UTC (rev 260940) @@ -1,4 +1,7 @@ +include(WebKitCommon) +set_property(DIRECTORY . PROPERTY FOLDER "WebInspectorUI") + set(InspectorFiles ${WEBINSPECTORUI_DIR}/UserInterface/*.html ${WEBINSPECTORUI_DIR}/UserInterface/Base/*.js @@ -66,8 +69,8 @@ endif () endif () -add_custom_target( -WebInspectorUI +add_custom_command( +OUTPUT ${CMAKE_BINARY_DIR}/inspector-resources.stamp DEPENDS ${InspectorFilesDependencies} ${InspectorResourceScripts} ${WebInspectorUI_DERIVED_SOURCES_DIR}/UserInterface/Protocol/InspectorBackendCommands.js @@ -75,5 +78,11 @@ COMMAND ${CMAKE_COMMAND} -E env "DERIVED_SOURCES_DIR=${WebInspectorUI_DERIVED_SOURCES_DIR}" "SRCROOT=${WEBINSPECTORUI_DIR}" "_javascript_CORE_PRIVATE_HEADERS_DIR=${_javascript_Core_SCRIPTS_DIR}" "TARGET_BUILD_DIR=${WebInspectorUI_RESOURCES_DIR}" "UNLOCALIZED_RESOURCES_FOLDER_PATH=WebInspectorUI" "COMBINE_INSPECTOR_RESOURCES=${COMBINE_INSPECTOR_RESOURCES}" "COMBINE_TEST_RESOURCES=${COMBINE_TEST_RESOURCES}" PYTHON=${PYTHON_EXECUTABLE} ${PERL_EXECUTABLE} ${WEBINSPECTORUI_DIR}/Scripts/copy-user-interface-resources.pl COMMAND ${CMAKE_COMMAND} -E make_directory ${WebInspectorUI_LOCALIZED_STRINGS_DIR} COMMAND ${CMAKE_COMMAND} -E copy "${WEBINSPECTORUI_DIR}/Localizations/en.lproj/localizedStrings.js" ${WebInspectorUI_LOCALIZED_STRINGS_DIR}/localizedStrings.js +COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_BINARY_DIR}/inspector-resources.stamp VERBATIM ) + +add_custom_target( +WebInspectorUI +DEPENDS ${CMAKE_BINARY_DIR}/inspector-resources.stamp +) Modified: trunk/Source/WebInspectorUI/ChangeLog (260939 => 260940) --- trunk/Source/WebInspectorUI/ChangeLog 2020-04-30 11:23:28 UTC (rev 260939) +++ trunk/Source/WebInspectorUI/ChangeLog 2020-04-30 11:31:50 UTC (rev 260940) @@ -1,3 +1,14 @@ +2020-04-30 Christopher Reid + +[CMake] Don't copy inspector resources in every incremental build +https://bugs.webkit.org/show_bug.cgi?id=211212 + +Reviewed by Žan Doberšek. + +Moving the copy to a custom_command with a stamp so the copy isn't done each build. + +* CMakeLists.txt: + 2020-04-29 Devin Rousso Web Inspector: don't immediately attempt to perform a search whenever the find string changes ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260939] trunk/Source/WebKit
Title: [260939] trunk/Source/WebKit Revision 260939 Author carlo...@webkit.org Date 2020-04-30 04:23:28 -0700 (Thu, 30 Apr 2020) Log Message [GTK4] Add support click events https://bugs.webkit.org/show_bug.cgi?id=211175 Reviewed by Adrian Perez de Castro. Handle button pressed and released events using a GtkGestureClick. * UIProcess/API/gtk/WebKitWebViewBase.cpp: (ClickCounter::currentClickCountForGdkButtonEvent): (webkitWebViewBaseButtonPressed): (webkitWebViewBaseButtonReleased): (webkitWebViewBaseConstructed): (webkitWebViewBaseResetClickCounter): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (260938 => 260939) --- trunk/Source/WebKit/ChangeLog 2020-04-30 10:43:05 UTC (rev 260938) +++ trunk/Source/WebKit/ChangeLog 2020-04-30 11:23:28 UTC (rev 260939) @@ -1,3 +1,19 @@ +2020-04-30 Carlos Garcia Campos + +[GTK4] Add support click events +https://bugs.webkit.org/show_bug.cgi?id=211175 + +Reviewed by Adrian Perez de Castro. + +Handle button pressed and released events using a GtkGestureClick. + +* UIProcess/API/gtk/WebKitWebViewBase.cpp: +(ClickCounter::currentClickCountForGdkButtonEvent): +(webkitWebViewBaseButtonPressed): +(webkitWebViewBaseButtonReleased): +(webkitWebViewBaseConstructed): +(webkitWebViewBaseResetClickCounter): + 2020-04-29 Simon Fraser Use initializers in PlatformMouseEvent and WebEvent Modified: trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp (260938 => 260939) --- trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp 2020-04-30 10:43:05 UTC (rev 260938) +++ trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp 2020-04-30 11:23:28 UTC (rev 260939) @@ -82,6 +82,7 @@ using namespace WebKit; using namespace WebCore; +#if !USE(GTK4) struct ClickCounter { public: void reset() @@ -94,7 +95,6 @@ int currentClickCountForGdkButtonEvent(GdkEvent* event) { -#if !USE(GTK4) int doubleClickDistance = 250; int doubleClickTime = 5; g_object_get(gtk_settings_get_for_screen(gdk_event_get_screen(event)), @@ -131,7 +131,6 @@ previousClickPoint = IntPoint(x, y); previousClickButton = button; previousClickTime = eventTime; -#endif return currentClickCount; } @@ -142,6 +141,7 @@ unsigned previousClickButton; int previousClickTime; }; +#endif typedef HashMap WebKitWebViewChildrenMap; typedef HashMap> TouchEventsMap; @@ -181,7 +181,9 @@ RefPtr pageProxy; bool shouldForwardNextKeyEvent { false }; bool shouldForwardNextWheelEvent { false }; +#if !USE(GTK4) ClickCounter clickCounter; +#endif CString tooltipText; IntRect tooltipArea; GRefPtr accessible; @@ -1025,7 +1027,48 @@ return GDK_EVENT_STOP; } +#endif +#if USE(GTK4) +static void webkitWebViewBaseButtonPressed(WebKitWebViewBase* webViewBase, int clickCount, double x, double y, GtkGesture* gesture) +{ +WebKitWebViewBasePrivate* priv = webViewBase->priv; +if (priv->dialog) +return; + +if (clickCount == 1) +priv->inputMethodFilter.cancelComposition(); +gtk_widget_grab_focus(GTK_WIDGET(webViewBase)); + +auto* sequence = gtk_gesture_single_get_current_sequence(GTK_GESTURE_SINGLE(gesture)); +gtk_gesture_set_sequence_state(gesture, sequence, GTK_EVENT_SEQUENCE_CLAIMED); + +auto button = gtk_gesture_single_get_current_button(GTK_GESTURE_SINGLE(gesture)); +auto* event = gtk_gesture_get_last_event(gesture, sequence); + +// If it's a right click event save it as a possible context menu event. +if (button == GDK_BUTTON_SECONDARY) +priv->contextMenuEvent.reset(gdk_event_copy(event)); + +priv->pageProxy->handleMouseEvent(NativeWebMouseEvent(event, { clampToInteger(x), clampToInteger(y) }, clickCount, WTF::nullopt)); +} + +static void webkitWebViewBaseButtonReleased(WebKitWebViewBase* webViewBase, int clickCount, double x, double y, GtkGesture* gesture) +{ +WebKitWebViewBasePrivate* priv = webViewBase->priv; +if (priv->dialog) +return; + +gtk_widget_grab_focus(GTK_WIDGET(webViewBase)); + +auto* sequence = gtk_gesture_single_get_current_sequence(GTK_GESTURE_SINGLE(gesture)); +gtk_gesture_set_sequence_state(gesture, sequence, GTK_EVENT_SEQUENCE_CLAIMED); + +priv->pageProxy->handleMouseEvent(NativeWebMouseEvent(gtk_gesture_get_last_event(gesture, sequence), { clampToInteger(x), clampToInteger(y) }, clickCount, WTF::nullopt)); +} +#endif + +#if !USE(GTK4) static void webkitWebViewBaseHandleWheelEvent(WebKitWebViewBase* webViewBase, GdkEvent* event, Optional phase = WTF::nullopt, Optional momentum = WTF::nullopt) { ViewGestureController* controller = webkitWebViewBaseViewGestureController(webViewBase); @@ -1659,6 +1702,12 @@ g_signal_connect_object(controller,
[webkit-changes] [260938] trunk/Source/WebCore
Title: [260938] trunk/Source/WebCore Revision 260938 Author ph...@webkit.org Date 2020-04-30 03:43:05 -0700 (Thu, 30 Apr 2020) Log Message Unreviewed, GStreamer build warning fix after r260755. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (webKitWebSrcMakeRequest): There is no need to capture src in the closure, its protector is used instead. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (260937 => 260938) --- trunk/Source/WebCore/ChangeLog 2020-04-30 08:12:01 UTC (rev 260937) +++ trunk/Source/WebCore/ChangeLog 2020-04-30 10:43:05 UTC (rev 260938) @@ -1,5 +1,13 @@ 2020-04-30 Philippe Normand +Unreviewed, GStreamer build warning fix after r260755. + +* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: +(webKitWebSrcMakeRequest): There is no need to capture src in the +closure, its protector is used instead. + +2020-04-30 Philippe Normand + [GStreamer] fast/mediastream/get-user-media-device-id.html failing https://bugs.webkit.org/show_bug.cgi?id=190576 Modified: trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp (260937 => 260938) --- trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp 2020-04-30 08:12:01 UTC (rev 260937) +++ trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp 2020-04-30 10:43:05 UTC (rev 260938) @@ -683,7 +683,7 @@ request.setHTTPHeaderField(HTTPHeaderName::IcyMetadata, "1"); ASSERT(!isMainThread()); -RunLoop::main().dispatch([protector = WTF::ensureGRef(src), request = WTFMove(request), requestNumber = members->requestNumber, src] { +RunLoop::main().dispatch([protector = WTF::ensureGRef(src), request = WTFMove(request), requestNumber = members->requestNumber] { WebKitWebSrcPrivate* priv = protector->priv; DataMutex::LockedWrapper members(priv->dataMutex); // Ignore this task (not making any HTTP request) if by now WebKitWebSrc streaming thread is already waiting ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [260937] trunk
Title: [260937] trunk Revision 260937 Author ph...@webkit.org Date 2020-04-30 01:12:01 -0700 (Thu, 30 Apr 2020) Log Message [GStreamer] fast/mediastream/get-user-media-device-id.html failing https://bugs.webkit.org/show_bug.cgi?id=190576 Reviewed by Xabier Rodriguez-Calvar. Source/WebCore: The test was failing due to deviceId invalid constraint, which led me to rewrite the GStreamer Mock sources, removing various hacks and appsrc usage, which is not needed because we rely on audioSamplesAvailable and videoSamplesAvailable notifications. This patch also fixes the audio mock, which was generating silence until now. * platform/GStreamer.cmake: * platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp: (WebCore::WebKitMediaStreamTrackObserver::WebKitMediaStreamTrackObserver): * platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp: Removed. * platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp: Removed. * platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h: Removed. * platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp: Added. (WebCore::MockRealtimeAudioSource::create): (WebCore::MockRealtimeAudioSourceGStreamer::createForMockAudioCapturer): (WebCore::MockRealtimeAudioSourceGStreamer::MockRealtimeAudioSourceGStreamer): (WebCore::MockRealtimeAudioSourceGStreamer::render): (WebCore::MockRealtimeAudioSourceGStreamer::addHum): (WebCore::MockRealtimeAudioSourceGStreamer::reconfigure): * platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h: Copied from Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.h. * platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp: Added. (WebCore::MockRealtimeVideoSource::create): (WebCore::MockRealtimeVideoSourceGStreamer::createForMockDisplayCapturer): (WebCore::MockRealtimeVideoSourceGStreamer::MockRealtimeVideoSourceGStreamer): (WebCore::MockRealtimeVideoSourceGStreamer::updateSampleBuffer): * platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h: Renamed from Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.h. * platform/mock/MockRealtimeVideoSource.h: LayoutTests: * platform/gtk/TestExpectations: Unskip now-passing mediastream tests. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/GStreamer.cmake trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h Added Paths trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h Removed Paths trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.h trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h Diff Modified: trunk/LayoutTests/ChangeLog (260936 => 260937) --- trunk/LayoutTests/ChangeLog 2020-04-30 08:02:16 UTC (rev 260936) +++ trunk/LayoutTests/ChangeLog 2020-04-30 08:12:01 UTC (rev 260937) @@ -1,3 +1,12 @@ +2020-04-30 Philippe Normand + +[GStreamer] fast/mediastream/get-user-media-device-id.html failing +https://bugs.webkit.org/show_bug.cgi?id=190576 + +Reviewed by Xabier Rodriguez-Calvar. + +* platform/gtk/TestExpectations: Unskip now-passing mediastream tests. + 2020-04-29 Noam Rosenthal [Mac] http/tests/performance/paint-timing/performance-paint-timing-fcp-after-visually-non-empty-for-num-chars.html is flaky Modified: trunk/LayoutTests/platform/gtk/TestExpectations (260936 => 260937) --- trunk/LayoutTests/platform/gtk/TestExpectations 2020-04-30 08:02:16 UTC (rev 260936) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2020-04-30 08:12:01 UTC (rev 260937) @@ -559,11 +559,6 @@ webkit.org/b/186933 webrtc/peer-connection-createMediaStreamDestination.html -webkit.org/b/205930 webrtc/audio-peer-connection-webaudio.html [ Failure ] -webkit.org/b/205930 webrtc/peer-connection-audio-mute2.html [ Failure ] -webkit.org/b/205930 webrtc/peer-connection-audio-unmute.html [ Failure Slow ] -webkit.org/b/205930 webrtc/peer-connection-remote-audio-mute2.html [ Failure ] - imported/w3c/web-platform-tests/webrtc/ [ Skip ] http/tests/webrtc [ Skip ] @@ -581,7 +576,6 @@ webkit.org/b/79203 fast/mediastream/RTCPeerConnection-media-setup-two-dialogs.html [ Pass Failure Crash ] webkit.org/b/79203 fast/mediastream/RTCPeerConnection-stats.html [ Timeout Crash ] webkit.org/b/79203
[webkit-changes] [260936] trunk/LayoutTests/imported/w3c
Title: [260936] trunk/LayoutTests/imported/w3c Revision 260936 Author svil...@igalia.com Date 2020-04-30 01:02:16 -0700 (Thu, 30 Apr 2020) Log Message [WebXR] Import latest changes from webxr/resources in tests https://bugs.webkit.org/show_bug.cgi?id=211129 Reviewed by Žan Doberšek. The code in webxr_utils.js had some engine detecting code that was not working, and thus was unconditionally loading Chromium-only resources when running tests with other engines (as WebKit). I fixed it upstream in https://github.com/web-platform-tests/wpt/pull/23200 and now I'm importing it along with a recent fix in webxr_test_constants.js. * web-platform-tests/webxr/resources/webxr_test_constants.js: Reverse position. * web-platform-tests/webxr/resources/webxr_util.js: (xr_promise_test): Properly detect browser engines. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_test_constants.js trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_util.js Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (260935 => 260936) --- trunk/LayoutTests/imported/w3c/ChangeLog 2020-04-30 05:30:43 UTC (rev 260935) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2020-04-30 08:02:16 UTC (rev 260936) @@ -1,3 +1,20 @@ +2020-04-30 Sergio Villar Senin + +[WebXR] Import latest changes from webxr/resources in tests +https://bugs.webkit.org/show_bug.cgi?id=211129 + +Reviewed by Žan Doberšek. + +The code in webxr_utils.js had some engine detecting code that was not +working, and thus was unconditionally loading Chromium-only resources when +running tests with other engines (as WebKit). I fixed it upstream in +https://github.com/web-platform-tests/wpt/pull/23200 and now I'm importing it +along with a recent fix in webxr_test_constants.js. + +* web-platform-tests/webxr/resources/webxr_test_constants.js: Reverse position. +* web-platform-tests/webxr/resources/webxr_util.js: +(xr_promise_test): Properly detect browser engines. + 2020-04-28 Noam Rosenthal Implement FCP (first contentful paint) Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_test_constants.js (260935 => 260936) --- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_test_constants.js 2020-04-30 05:30:43 UTC (rev 260935) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_test_constants.js 2020-04-30 08:02:16 UTC (rev 260936) @@ -71,7 +71,7 @@ 1, 1.65, -1, 1]; const VALID_FLOOR_ORIGIN = { -position: [1.0, 1.65, -1.0], +position: [-1.0, -1.65, 1.0], orientation: [0, 0, 0, 1] }; Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_util.js (260935 => 260936) --- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_util.js 2020-04-30 05:30:43 UTC (rev 260935) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/resources/webxr_util.js 2020-04-30 08:02:16 UTC (rev 260936) @@ -10,6 +10,8 @@ // Debugging message helper, by default does nothing. Implementations can // override this. var xr_debug = function(name, msg) {} +var isChromiumBased = 'MojoInterfaceInterceptor' in self; +var isWebKitBased = 'internals' in self && 'xrTest' in internals; function xr_promise_test(name, func, properties) { promise_test(async (t) => { @@ -16,13 +18,13 @@ // Perform any required test setup: xr_debug(name, 'setup'); -if (window.XRTest === undefined) { +if (isChromiumBased) { // Chrome setup await loadChromiumResources; xr_debug = navigator.xr.test.Debug; } -if (self.internals && internals.xrTest && navigator.xr) { +if (isWebKitBased) { // WebKit setup await setupWebKitWebXRTestAPI; } @@ -161,7 +163,7 @@ // Code for loading test API in Chromium. let loadChromiumResources = Promise.resolve().then(() => { - if (!('MojoInterfaceInterceptor' in self)) { + if (!isChromiumBased) { // Do nothing on non-Chromium-based browsers or when the Mojo bindings are // not present in the global namespace. return; @@ -206,7 +208,7 @@ }); let setupWebKitWebXRTestAPI = Promise.resolve().then(() => { - if (!self.internals) { + if (!isWebKitBased) { // Do nothing on non-WebKit-based browsers. return; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes