Timeline
Aug 30, 2018:
- 9:27 PM Changeset in webkit [235537] by
-
- 3 edits2 adds in trunk
CounterMaps should hold a unique_ptr of CounterMap.
https://bugs.webkit.org/show_bug.cgi?id=189174
<rdar://problem/43686458>
Reviewed by Ryosuke Niwa.
Source/WebCore:
In certain cases calls to CounterMaps might lead to unexpected deletion of the CounterMap object.
Test: fast/css/counters/crash-when-cloning-body.html
- rendering/RenderCounter.cpp:
(WebCore::makeCounterNode):
(WebCore::destroyCounterNodeWithoutMapRemoval):
(WebCore::RenderCounter::destroyCounterNodes):
(WebCore::RenderCounter::destroyCounterNode):
(WebCore::updateCounters):
(showCounterRendererTree):
LayoutTests:
- fast/css/counters/crash-when-cloning-body-expected.txt: Added.
- fast/css/counters/crash-when-cloning-body.html: Added.
- 9:17 PM Changeset in webkit [235536] by
-
- 2 edits in trunk/Source/WebCore
Speculative build fix for WPE after r235531.
- platform/graphics/filters/PointLightSource.cpp:
Add missing include.
- 7:26 PM Changeset in webkit [235535] by
-
- 7 edits in trunk
Add assignedElements to HTMLSlotElement
https://bugs.webkit.org/show_bug.cgi?id=189146
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaselined the tests now that we're passing all test cases.
- web-platform-tests/shadow-dom/slots-expected.txt:
- web-platform-tests/shadow-dom/slots-fallback-expected.txt:
Source/WebCore:
Added assignedElements to HTMLSlotElement. For now, we simply filter the results returned by assignedNodes.
Also fixed a bug that assignedNodes was returning the fallback content when the slot is not in a shadow tree,
which is specified in step 2 of the concept to find flattened slotables for a slot.
Spec: https://html.spec.whatwg.org/multipage/scripting.html#dom-slot-assignedelements
Tests: imported/w3c/web-platform-tests/shadow-dom/slots.html
imported/w3c/web-platform-tests/shadow-dom/slots-fallback.html
- html/HTMLSlotElement.cpp:
(WebCore::flattenAssignedNodes): Updated to take Vector<Ref<Node>> for consistency.
(WebCore::HTMLSlotElement::assignedNodes const): Ditto.
(WebCore::HTMLSlotElement::assignedElements const):
- html/HTMLSlotElement.h:
- html/HTMLSlotElement.idl:
- 6:03 PM Changeset in webkit [235534] by
-
- 2 edits in trunk/Source/WebKit
One more build fix
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView shareSheetDidDismiss:]):
Actually tested this time.
- 5:39 PM Changeset in webkit [235533] by
-
- 3 edits in trunk/Tools
[WHLSL] Fix array indexing behavior
https://bugs.webkit.org/show_bug.cgi?id=189175
Array, pointer, and array ref types are now parsed and then constructed
in reverse so that the declaration order matches the indexing order, as
in C/C++.
Patch by Thomas Denney <tdenney@apple.com> on 2018-08-30
Reviewed by Myles C. Maxfield.
- WebGPUShadingLanguageRI/Parse.js:
(parseType):
- WebGPUShadingLanguageRI/Test.js:
- 4:32 PM Changeset in webkit [235532] by
-
- 3 edits in trunk/Source/WebKit
Add WKPageLoadFile SPI variant which returns a navigation object
https://bugs.webkit.org/show_bug.cgi?id=189168
<rdar://problem/43899330>
Reviewed by Alex Christensen.
Add WKPageLoadFile SPI variant which returns a navigation object, similarly to WKPageLoadURLRequestReturningNavigation().
This is needed in order to implement <rdar://problem/40309266>.
- UIProcess/API/C/mac/WKPagePrivateMac.h:
- UIProcess/API/C/mac/WKPagePrivateMac.mm:
(WKPageLoadFileReturningNavigation):
- 4:28 PM Changeset in webkit [235531] by
-
- 15 edits1 delete in trunk
[CMake] Replace AVFoundationSupport.py using CMake
https://bugs.webkit.org/show_bug.cgi?id=182891
Reviewed by Per Arne Vollan.
.:
Adds CMake checks for AVFoundation support replacing the functionality
of AVFoundationSupport.py.
CMake is used to detect the symbols expected with the HAVE_* checks for
AVFoundation support. This involves creating source files that will be
built which verifies the presence of symbols. For Apple frameworks it
is customary to include the main framework file which includes the
other associated headers.
The check for HAVE_AVCFPLAYERITEM_CALLBACK_VERSION_2 involves looking
for an enumeration which a symbol check cannot detect. Instead a small
program is used which will compile and link when the version 2
enumeration is present.
- Source/cmake/OptionsAppleWin.cmake:
- Source/cmake/OptionsWin.cmake:
- Source/cmake/WebKitCommon.cmake:
- Source/cmake/WebKitFeatures.cmake:
Source/WebCore:
No new tests. No change in behavior.
Remove refernces to PAL derived sources.
- PlatformWin.cmake:
- config.h:
Source/WebCore/PAL:
Remove AVFoundationSupport.py file and its invocation.
- AVFoundationSupport.py: Removed.
- config.h:
- pal/PlatformWin.cmake:
Source/WebKitLegacy/win:
Remove references to the config.h contained in WebCore as it should
not be accessible from outside of WebCore.
- WebKitPrefix.h:
Source/WTF:
Rely on CMake values for the added HAVE_* checks.
- wtf/Platform.h:
- 4:10 PM Changeset in webkit [235530] by
-
- 2 edits in trunk/Source/WebKit
Try to fix the watchOS and tvOS build
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _showShareSheet:completionHandler:]):
(-[WKContentView shareSheetDidDismiss:]):
- 4:00 PM WebKitGTK/2.22.x edited by
- (diff)
- 3:55 PM Changeset in webkit [235529] by
-
- 7 edits in trunk/Source/WebKit
[GTK] Touchscreen pinch to zoom should scale the page like other platforms
https://bugs.webkit.org/show_bug.cgi?id=188746
Changes the pinch-to-zoom gesture to magnify/scale the page, rather than zooming in. Also resets this magnification when the zoom level is changed.
Patch by Justin Michaud <justin@justinmichaud.com> on 2018-08-30
Reviewed by Michael Catanzaro.
- UIProcess/API/glib/WebKitWebView.cpp:
(webkit_web_view_set_zoom_level):
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::zoom): Deleted.
- UIProcess/API/gtk/PageClientImpl.h:
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
- UIProcess/gtk/GestureController.cpp:
(WebKit::GestureController::ZoomGesture::handleZoom):
(WebKit::GestureController::ZoomGesture::scaleChanged):
- UIProcess/gtk/GestureController.h:
- 3:50 PM Changeset in webkit [235528] by
-
- 2 edits in trunk/Tools
Followup to [iOS] TestWebKitAPI.PasteImage tests are flaky failures
https://bugs.webkit.org/show_bug.cgi?id=185965
Reviewed by Andy Estes.
The first attempt to fix these flaky tests on iOS caused timeouts on macOS while waiting for a "loaded" message
from the page. To (hopefully) fix this across both platforms, make sure that we first register our script
message handlers in the UI process *before* evaluating script that could propagate the script message.
- TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
(-[TestWKWebView waitForMessage:afterEvaluatingScript:]):
(TEST):
- 3:37 PM Changeset in webkit [235527] by
-
- 7 edits in trunk/Source/JavaScriptCore
Switch int8_t to GPRReg in StructureStubInfo because sizeof(GPRReg) == sizeof(int8_t)
https://bugs.webkit.org/show_bug.cgi?id=189166
Reviewed by Mark Lam.
- bytecode/AccessCase.cpp:
(JSC::AccessCase::generateImpl):
- bytecode/GetterSetterAccessCase.cpp:
(JSC::GetterSetterAccessCase::emitDOMJITGetter):
- bytecode/InlineAccess.cpp:
(JSC::getScratchRegister):
- bytecode/PolymorphicAccess.cpp:
(JSC::PolymorphicAccess::regenerate):
- bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::valueRegs const):
- jit/JITInlineCacheGenerator.cpp:
(JSC::JITByIdGenerator::JITByIdGenerator):
(JSC::JITGetByIdWithThisGenerator::JITGetByIdWithThisGenerator):
(JSC::JITInstanceOfGenerator::JITInstanceOfGenerator):
- 3:36 PM Changeset in webkit [235526] by
-
- 21 edits in tags/Safari-607.1.4/Source/WebKit
Cherry-pick r235511. rdar://problem/43906230
Unreviewed, rolling out r235413 and r235444.
https://bugs.webkit.org/show_bug.cgi?id=189163
Causes crashes when running layout tests under GuardMalloc
(Requested by ryanhaddad on #webkit).
Reverted changesets:
"NetworkLoad::didReceiveResponse should pass its completion
handler to its client"
https://bugs.webkit.org/show_bug.cgi?id=188701
https://trac.webkit.org/changeset/235413
"Remove assertion introduced in r235413"
https://bugs.webkit.org/show_bug.cgi?id=188701
https://trac.webkit.org/changeset/235444
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@235511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:53 PM Changeset in webkit [235525] by
-
- 3 edits in trunk/Tools
[WHLSL] Implement tests to verify array indexing order matches our desires
https://bugs.webkit.org/show_bug.cgi?id=189099
Patch by Thomas Denney <tdenney@apple.com> on 2018-08-30
Reviewed by Myles C. Maxfield.
- WebGPUShadingLanguageRI/Test.js: Add new test for array indexing order
and the option to explicitly disable tests (this test is disabled by
default).
- WebGPUShadingLanguageRI/TypeRef.js:
(TypeRef.wrap): Fixes typo.
- 2:33 PM Changeset in webkit [235524] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r235489): fast/dom/navigator-detached-no-crash.html crashes under Navigator::share
https://bugs.webkit.org/show_bug.cgi?id=189170
Patch by Olivia Barnett <obarnett@apple.com> on 2018-08-30
Reviewed by Tim Horton.
No new tests; fixing a failing existing test.
- page/Navigator.cpp:
(WebCore::Navigator::share):
Added null check for frame.
- 2:28 PM Abandoned documents edited by
- (diff)
- 2:26 PM Abandoned documents edited by
- (diff)
- 1:54 PM Changeset in webkit [235523] by
-
- 3 edits2 deletes in trunk
Unreviewed, rolling out r235516.
Caused 50 Crashes on Sierra
Reverted changeset:
"The width of a nullptr TextRun should be zero"
https://bugs.webkit.org/show_bug.cgi?id=189154
https://trac.webkit.org/changeset/235516
- 1:47 PM Changeset in webkit [235522] by
-
- 2 edits in tags/Safari-607.1.4/Source/WebCore
Revert r235363. rdar://problem/43899483
- 1:31 PM Changeset in webkit [235521] by
-
- 56 edits in trunk/Source
Bundle unified sources more tightly in projects with deep directory structures
https://bugs.webkit.org/show_bug.cgi?id=189009
Reviewed by Simon Fraser.
- Scripts/generate-unified-source-bundles.rb:
It turns out our plan to switch unified source bundle every time the directory
changes is not a good fit for projects like WebKit2 with many small directories.
It leaves many unified source bundles with only a single source file,
achieving only ~40% density.
Instead, switch unified source bundles every time the top-level directory changes.
This still achieves the goal of *usually* only rebuilding the one top-level
directory you touched, and increases source bundle density wildly, to ~95%.
Fix a variety of unification errors due to reshuffling the bundles.
- Modules/mediastream/RTCController.cpp:
- SourcesCocoa.txt:
- WebCore.xcodeproj/project.pbxproj:
- crypto/algorithms/CryptoAlgorithmECDSA.cpp:
(WebCore::CryptoAlgorithmECDSA::importKey):
- dom/Document.h:
- html/parser/HTMLTreeBuilder.cpp:
- loader/appcache/ApplicationCacheResourceLoader.h:
- page/AlternativeTextClient.h:
- platform/Pasteboard.h:
- platform/graphics/DisplayRefreshMonitor.cpp:
- platform/graphics/FontFamilySpecificationNull.cpp:
- platform/graphics/cocoa/WebGLLayer.mm:
(-[WebGLLayer initWithGraphicsContext3D:]):
(-[WebGLLayer copyImageSnapshotWithColorSpace:]):
(-[WebGLLayer display]):
(-[WebGLLayer allocateIOSurfaceBackingStoreWithSize:usingAlpha:]):
- platform/graphics/cocoa/WebGPULayer.mm:
(-[WebGPULayer initWithGPUDevice:]):
- platform/graphics/metal/GPUCommandQueueMetal.mm:
- platform/mac/PasteboardMac.mm:
- platform/mediastream/mac/DisplayCaptureManagerCocoa.cpp:
- platform/network/ResourceRequestBase.cpp:
- rendering/updating/RenderTreeBuilderBlockFlow.cpp:
- rendering/updating/RenderTreeBuilderInline.cpp:
- Shared/APIWebArchive.mm:
- Shared/APIWebArchiveResource.mm:
- Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
- Shared/Plugins/Netscape/mac/PluginInformationMac.mm:
- SourcesCocoa.txt:
- SourcesGTK.txt:
- UIProcess/API/APIAutomationSessionClient.h:
(API::AutomationSessionClient::sessionIdentifier const):
(API::AutomationSessionClient::messageOfCurrentJavaScriptDialogOnPage):
(API::AutomationSessionClient::setUserInputForCurrentJavaScriptPromptOnPage):
- UIProcess/Cocoa/LegacyCustomProtocolManagerClient.mm:
(-[WKCustomProtocolLoader initWithLegacyCustomProtocolManagerProxy:customProtocolID:request:]):
(-[WKCustomProtocolLoader connection:didFailWithError:]):
(-[WKCustomProtocolLoader connection:didReceiveResponse:]):
- UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::generatePluginProcessCallbackID):
(WebKit::PluginProcessProxy::fetchWebsiteData):
(WebKit::PluginProcessProxy::deleteWebsiteData):
(WebKit::PluginProcessProxy::deleteWebsiteDataForHostNames):
(WebKit::generateCallbackID): Deleted.
- UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
(-[WKScrollingNodeScrollViewDelegate scrollViewWillEndDragging:withVelocity:targetContentOffset:]):
- UIProcess/Storage/StorageProcessProxy.cpp:
(WebKit::generateStorageProcessCallbackID):
(WebKit::StorageProcessProxy::fetchWebsiteData):
(WebKit::StorageProcessProxy::deleteWebsiteData):
(WebKit::StorageProcessProxy::deleteWebsiteDataForOrigins):
(WebKit::generateCallbackID): Deleted.
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(-[WKPDFPluginAccessibilityObject accessibilityPerformAction:]):
(-[WKPDFPluginAccessibilityObject accessibilityFocusedUIElement]):
(-[WKPDFPluginAccessibilityObject accessibilityAssociatedControlForAnnotation:]):
(-[WKPDFPluginAccessibilityObject accessibilityHitTest:]):
(-[WKPDFLayerControllerDelegate updateScrollPosition:]):
(WebKit::PDFPlugin::updateCursor):
(WebKit::coreCursor):
(appendValuesInPDFNameSubtreeToVector): Deleted.
(getAllValuesInPDFNameTree): Deleted.
(getAllScriptsInPDFDocument): Deleted.
- 1:01 PM Changeset in webkit [235520] by
-
- 2 edits in trunk/Source/WebKit
Fix the watchOS and tvOS build
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView cleanupInteraction]):
(-[WKContentView invokeShareSheetWithResolution:]):
- 1:01 PM Changeset in webkit [235519] by
-
- 2 edits in trunk/LayoutTests
Remove WebRTC legacy API implementation
https://bugs.webkit.org/show_bug.cgi?id=189040
<rdar://problem/43861361>
Unreviewed.
- platform/ios/TestExpectations: Use default expectations for the folder.
This allows skipping imported/w3c/web-platform-tests/webrtc/rtcpeerconnection/setRemoteDescription.html
- 12:57 PM Changeset in webkit [235518] by
-
- 16 edits5 copies in trunk
[Payment Request] Implement the PaymentMethodChangeEvent and PaymentMethodChangeEventInit interfaces
https://bugs.webkit.org/show_bug.cgi?id=189100
Reviewed by Daniel Bates.
LayoutTests/imported/w3c:
- web-platform-tests/payment-request/PaymentMethodChangeEvent/methodDetails-attribute.https-expected.txt:
- web-platform-tests/payment-request/PaymentMethodChangeEvent/methodName-attribute.https-expected.txt:
- web-platform-tests/payment-request/onpaymentmenthodchange-attribute.https-expected.txt:
Source/WebCore:
Implement the PaymentMethodChangeEvent interface and PaymentMethodChangeEventInit dictionary
defined in the Payment Request API W3C Editor's Draft of 30 August 2018.
<https://w3c.github.io/payment-request/#paymentmethodchangeevent-interface>
The "payment method changed" algorithm will be implemented in a follow-up.
Covered by existing web platform tests.
- CMakeLists.txt:
- DerivedSources.make:
- Modules/paymentrequest/PaymentMethodChangeEvent.cpp: Added.
(WebCore::PaymentMethodChangeEvent::eventInterface const):
(WebCore::PaymentMethodChangeEvent::PaymentMethodChangeEvent):
- Modules/paymentrequest/PaymentMethodChangeEvent.h: Added.
- Modules/paymentrequest/PaymentMethodChangeEvent.idl: Added.
- Modules/paymentrequest/PaymentMethodChangeEventInit.h: Added.
- Modules/paymentrequest/PaymentMethodChangeEventInit.idl: Added.
- Modules/paymentrequest/PaymentRequest.idl:
- Modules/paymentrequest/PaymentRequestUpdateEvent.cpp:
(WebCore::PaymentRequestUpdateEvent::PaymentRequestUpdateEvent):
- Modules/paymentrequest/PaymentRequestUpdateEvent.h:
- Modules/paymentrequest/PaymentRequestUpdateEventInit.h:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/WebCoreBuiltinNames.h:
- dom/EventNames.h:
- dom/EventNames.in:
- 12:46 PM Changeset in webkit [235517] by
-
- 11 edits in trunk/Source/JavaScriptCore
InlineAccess should do StringLength
https://bugs.webkit.org/show_bug.cgi?id=158911
Reviewed by Yusuke Suzuki.
This patch extends InlineAccess to support StringLength. This patch also
fixes AccessCase::fromStructureStubInfo to support ArrayLength and StringLength.
I forgot to implement this for ArrayLength in the initial InlineAccess
implementation. Supporting StringLength is a natural extension of the
InlineAccess machinery.
- assembler/MacroAssembler.h:
(JSC::MacroAssembler::patchableBranch8):
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::patchableBranch8):
- bytecode/AccessCase.cpp:
(JSC::AccessCase::fromStructureStubInfo):
- bytecode/BytecodeDumper.cpp:
(JSC::BytecodeDumper<Block>::printGetByIdCacheStatus):
- bytecode/InlineAccess.cpp:
(JSC::InlineAccess::dumpCacheSizesAndCrash):
(JSC::InlineAccess::generateSelfPropertyAccess):
(JSC::getScratchRegister):
(JSC::InlineAccess::generateSelfPropertyReplace):
(JSC::InlineAccess::generateArrayLength):
(JSC::InlineAccess::generateSelfInAccess):
(JSC::InlineAccess::generateStringLength):
- bytecode/InlineAccess.h:
- bytecode/PolymorphicAccess.cpp:
(JSC::PolymorphicAccess::regenerate):
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::initStringLength):
(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::aboutToDie):
(JSC::StructureStubInfo::propagateTransitions):
- bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::baseGPR const):
- jit/Repatch.cpp:
(JSC::tryCacheGetByID):
- 12:37 PM Changeset in webkit [235516] by
-
- 3 edits2 adds in trunk
The width of a nullptr TextRun should be zero
https://bugs.webkit.org/show_bug.cgi?id=189154
<rdar://problem/43685926>
Reviewed by Zalan Bujtas.
Source/WebCore:
If a page has an empty TextRun and attempts to paint it we can crash with a nullptr.
This patch recognizes that an empty TextRun should always produce a zero width, rather than
attempt to compute this value from font data.
Test: fast/text/null-string-textrun.html
- platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::widthOfTextRange const): An empty TextRun has zero width.
(WebCore::FontCascade::width const): Ditto.
(WebCore::FontCascade::codePath const): ASSERT that the TextRun is non-empty.
LayoutTests:
- fast/text/null-string-textrun-expected.txt: Added.
- fast/text/null-string-textrun.html: Added.
- 12:27 PM Changeset in webkit [235515] by
-
- 6 edits2 adds in trunk
CSE DataViewGet* DFG nodes
https://bugs.webkit.org/show_bug.cgi?id=188768
Reviewed by Yusuke Suzuki.
JSTests:
- microbenchmarks/dataview-cse.js: Added.
(assert):
(test):
- stress/dataview-get-cse.js: Added.
(assert):
(test1.foo):
(test1):
(test2.foo):
(test2):
(test3.foo):
(test3):
(test4.foo):
(test4):
(test5.foo):
(test5):
(test6.foo):
(test6):
Source/JavaScriptCore:
This patch makes it so that we CSE DataViewGet* accesses. To do this,
I needed to add a third descriptor to HeapLocation to represent the
isLittleEndian child. This patch is neutral on compile time benchmarks,
and is a 50% speedup on a trivial CSE microbenchmark that I added.
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGHeapLocation.cpp:
(WTF::printInternal):
- dfg/DFGHeapLocation.h:
(JSC::DFG::HeapLocation::HeapLocation):
(JSC::DFG::HeapLocation::hash const):
(JSC::DFG::HeapLocation::operator== const):
(JSC::DFG::indexedPropertyLocForResultType):
- 12:05 PM Changeset in webkit [235514] by
-
- 4 edits1 add in trunk
output of toString() of Generator is wrong
https://bugs.webkit.org/show_bug.cgi?id=188952
Reviewed by Saam Barati.
JSTests:
- stress/function-to-string.js: Added.
(shouldBe):
(shouldBe.test):
(test):
(shouldBe.async.test):
(async.test):
(shouldBe.async):
(async):
- test262/expectations.yaml:
Source/JavaScriptCore:
Function#toString does not respect generator and async generator.
This patch fixes them and supports all the function types.
- runtime/FunctionPrototype.cpp:
(JSC::functionProtoFuncToString):
- 12:03 PM Changeset in webkit [235513] by
-
- 33 edits2 adds2 deletes in trunk
Mock video devices should only support discrete sizes
https://bugs.webkit.org/show_bug.cgi?id=189000
<rdar://problem/43766551>
Reviewed by Youenn Fablet.
Source/WebCore:
While many/most video capture devices only support a finite number of discrete width/height
pairs, our mock video capture devices supported arbitrary width and height combinations which
made it difficult to write realistic tests using them. Change the mock devices to support
finite "presets" like those supported by AVFoundation. Create a RealtimeVideoSource base
class with support for these presets, so the same code will eventually be used by the mock
and real capture devices.
No new tests, existing tests updated for these changes.
- Sources.txt: Add RealtimeVideoSource.cpp, remove MockRealtimeMediaSource.cpp.
- WebCore.xcodeproj/project.pbxproj: Ditto.
- platform/mediastream/MediaConstraints.h: Deal with min constraint less than the supported minimum
and max larger than the supported maximum when there is no ideal.
- platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::selectSettings): Use supportsSizeAndFrameRate for widths,
heights, and framerates in advanced constraints so a width and height that are supported but
in the same preset are filtered out.
(WebCore::RealtimeMediaSource::setSize): New.
- platform/mediastream/RealtimeMediaSource.h:
- platform/mediastream/RealtimeMediaSourceSettings.h: Remove an unneeded include.
- platform/mediastream/RealtimeVideoSource.cpp: Added.
(WebCore::RealtimeVideoSource::RealtimeVideoSource):
(WebCore::RealtimeVideoSource::~RealtimeVideoSource):
(WebCore::RealtimeVideoSource::startProducingData):
(WebCore::RealtimeVideoSource::setSupportedFrameRates):
(WebCore::RealtimeVideoSource::addSupportedCapabilities const):
(WebCore::RealtimeVideoSource::supportsSizeAndFrameRate):
(WebCore::RealtimeVideoSource::bestSupportedCaptureSizeForWidthAndHeight):
(WebCore::RealtimeVideoSource::applySize):
(WebCore::RealtimeVideoSource::applySizeAndFrameRate):
(WebCore::RealtimeVideoSource::videoSampleAvailable):
(WebCore::RealtimeVideoSource::applyFrameRate):
(WebCore::RealtimeVideoSource::supportsFrameRate):
- platform/mediastream/RealtimeVideoSource.h: Copied from Source/WebCore/platform/mock/MockRealtimeAudioSource.h.
(WebCore::RealtimeVideoSource::setSupportedCaptureSizes):
(WebCore::RealtimeVideoSource::setDefaultSize):
(WebCore::RealtimeVideoSource::observedFrameRate const):
- platform/mediastream/mac/AVMediaCaptureSource.mm:
(WebCore::AVMediaCaptureSource::initializeSettings): Don't set label, it isn't used.
- platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
(WebCore::MockRealtimeVideoSourceMac::applySize): Call the base class.
- platform/mock/MockMediaDevice.h:
(WebCore::MockCameraProperties::encode const): Add frame rates, sizes, and facing mode.
(WebCore::MockCameraProperties::decode): Ditto.
- platform/mock/MockRealtimeAudioSource.cpp:
(WebCore::MockRealtimeAudioSource::MockRealtimeAudioSource): No more MockRealtimeMediaSource.
(WebCore::MockRealtimeAudioSource::settings const): Clean up.
(WebCore::MockRealtimeAudioSource::capabilities const): Ditto.
(WebCore::MockRealtimeAudioSource::settingsDidChange): Ditto.
(WebCore::MockRealtimeAudioSource::stopProducingData): m_elapsedTime isn't used, delete it.
(WebCore::MockRealtimeAudioSource::updateSettings): Deleted.
(WebCore::MockRealtimeAudioSource::initializeCapabilities): Deleted.
(WebCore::MockRealtimeAudioSource::initializeSupportedConstraints): Deleted.
(WebCore::MockRealtimeAudioSource::elapsedTime): Deleted.
- platform/mock/MockRealtimeAudioSource.h:
- platform/mock/MockRealtimeMediaSourceCenter.cpp: Moved all of the mock device management
code from MockRealtimeMediaSource.cpp here.
(WebCore::defaultDevices):
(WebCore::devices):
(WebCore::deviceMap):
(WebCore::deviceListForDevice):
(WebCore::createCaptureDevice):
(WebCore::MockRealtimeMediaSourceCenter::resetDevices):
(WebCore::MockRealtimeMediaSourceCenter::setDevices):
(WebCore::MockRealtimeMediaSourceCenter::addDevice):
(WebCore::MockRealtimeMediaSourceCenter::removeDevice):
(WebCore::MockRealtimeMediaSourceCenter::mockDeviceWithPersistentID):
(WebCore::MockRealtimeMediaSourceCenter::captureDeviceWithPersistentID):
(WebCore::MockRealtimeMediaSourceCenter::audioDevices):
(WebCore::MockRealtimeMediaSourceCenter::videoDevices):
(WebCore::MockRealtimeMediaSourceCenter::displayDevices):
- platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource): Use RealtimeVideoSource, no
more MockRealtimeMediaSource.
(WebCore::MockRealtimeVideoSource::capabilities const): Ditto, cleanup.
(WebCore::MockRealtimeVideoSource::settings const): Ditto.
(WebCore::MockRealtimeVideoSource::settingsDidChange): Ditto.
(WebCore::MockRealtimeVideoSource::startCaptureTimer): Ditto.
(WebCore::MockRealtimeVideoSource::startProducingData): Ditto.
(WebCore::MockRealtimeVideoSource::stopProducingData): Ditto.
(WebCore::MockRealtimeVideoSource::elapsedTime): Ditto.
(WebCore::MockRealtimeVideoSource::applySize): Ditto.
(WebCore::MockRealtimeVideoSource::drawText): Render the actual frame rate.
(WebCore::MockRealtimeVideoSource::generateFrame): Use m_fillColor.
(WebCore::MockRealtimeVideoSource::~MockRealtimeVideoSource): Deleted.
(WebCore::MockRealtimeVideoSource::updateSettings): Deleted.
(WebCore::MockRealtimeVideoSource::initializeCapabilities): Deleted.
(WebCore::MockRealtimeVideoSource::initializeSupportedConstraints): Deleted.
(WebCore::MockRealtimeVideoSource::applyFrameRate): Deleted.
- platform/mock/MockRealtimeVideoSource.h:
(WebCore::MockRealtimeVideoSource::updateSampleBuffer): Deleted.
Source/WebKit:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::resetMockMediaDevices):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::resetMockMediaDevices):
LayoutTests:
Updated tests and results now that we have better support for width and height constraints.
- fast/mediastream/MediaDevices-getUserMedia.html:
- fast/mediastream/MediaStreamTrack-getCapabilities-expected.txt:
- fast/mediastream/apply-constraints-advanced-expected.txt:
- fast/mediastream/apply-constraints-advanced.html:
- fast/mediastream/apply-constraints-video-expected.txt:
- fast/mediastream/apply-constraints-video.html:
- fast/mediastream/getUserMedia-default-expected.txt:
- fast/mediastream/getUserMedia-default.html:
- imported/w3c/web-platform-tests/mediacapture-streams/MediaStreamTrack-getSettings.https-expected.txt:
- webrtc/video-interruption.html:
- webrtc/video.html:
- 11:29 AM Changeset in webkit [235512] by
-
- 6 edits in trunk/Source/WebKit
Web Share API compatible with AppleTV and WatchOS
https://bugs.webkit.org/show_bug.cgi?id=189157
Patch by Olivia Barnett <obarnett@apple.com> on 2018-08-30
Reviewed by Tim Horton.
- Shared/WebPreferencesDefaultValues.h:
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView fileUploadPanelDidDismiss:]):
- UIProcess/ios/forms/WKShareSheet.h:
- UIProcess/ios/forms/WKShareSheet.mm:
(-[WKShareSheet invokeShareSheetWithResolution:]):
Added platform checks.
- 11:21 AM Changeset in webkit [235511] by
-
- 21 edits in trunk/Source/WebKit
Unreviewed, rolling out r235413 and r235444.
https://bugs.webkit.org/show_bug.cgi?id=189163
Causes crashes when running layout tests under GuardMalloc
(Requested by ryanhaddad on #webkit).
Reverted changesets:
"NetworkLoad::didReceiveResponse should pass its completion
handler to its client"
https://bugs.webkit.org/show_bug.cgi?id=188701
https://trac.webkit.org/changeset/235413
"Remove assertion introduced in r235413"
https://bugs.webkit.org/show_bug.cgi?id=188701
https://trac.webkit.org/changeset/235444
- 11:13 AM Changeset in webkit [235510] by
-
- 2 edits in trunk/Source/WebKit
[Curl][WebKit] Bugfix on redirect.
https://bugs.webkit.org/show_bug.cgi?id=189056
Reviewed by Alex Christensen.
Forget to call updateFromDelegatePreservingOldProperties in continueWillSendRequest like other ports do.
- NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::continueWillSendRequest):
- 10:03 AM Changeset in webkit [235509] by
-
- 2 edits in trunk/Tools
WKNavigation.ProcessCrashDuringCallback is failing on iOS
https://bugs.webkit.org/show_bug.cgi?id=189148
Reviewed by Chris Dumez.
We should not deference WebView or we may get WKErrorWebViewInvalidated error, because
WebView could be destroyed before Web Process termination is noticed.
- TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
(TEST):
- 9:53 AM Changeset in webkit [235508] by
-
- 2 edits in trunk/LayoutTests
fast/mediastream/RTCPeerConnection-overloaded-operations.html is flaky after r235484
https://bugs.webkit.org/show_bug.cgi?id=189155
Reviewed by Eric Carlson.
- fast/mediastream/RTCPeerConnection-overloaded-operations.html:
createOffer/createAnswer will now reject promises if callbacks are passed as parameters.
Make sure that these promises are handled.
- 9:35 AM Changeset in webkit [235507] by
-
- 2 edits in trunk/Source/WebKit
[macOS] Color picker layout is broken if suggested colors are specified
https://bugs.webkit.org/show_bug.cgi?id=189117
Reviewed by Tim Horton.
NSPopoverColorWell recently changed the size of its swatches. We need to update
the width of the swatches we provide to match the width of the other swatches,
in order to avoid breaking the layout.
While such a solution is not a good precedent, we do not have fully-functional SPI
to customize the suggested colors. A FIXME has been added for this reason.
However, even once we obtain SPI, we will need to find a way to support older
clients, making conditional compilation a potential necessity.
- UIProcess/mac/WebColorPickerMac.mm:
- 9:30 AM Changeset in webkit [235506] by
-
- 2 edits in trunk/Source/WebKit
[macOS] Whitelist Network process features for VPN
https://bugs.webkit.org/show_bug.cgi?id=189023
<rdar://problem/43310000>
Reviewed by Eric Carlson.
CFNetwork needs access to some VPN preference files to configure networking, and
need to be allowed to communicate with the VPN process from the Network Process
sandbox.
- NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
- 7:44 AM Changeset in webkit [235505] by
-
- 9 edits8 adds in trunk
Source/WebCore:
[LFC][Floating] Block formatting context roots avoid floats.
https://bugs.webkit.org/show_bug.cgi?id=189150
Reviewed by Antti Koivisto.
This patch implements the float avoiding behaviour for block formatting context roots.
When a box establishes a block formatting context, floats from outside of the context can't interfere with content inside. In order
to achive this, such formatting root boxes need to be positioned so that they don't overlap with floats (floats that share the same
context with the formatting root). In ltr block direction, roots start with avoiding floats on the left, while in rtl on the right.
Tests: fast/block/block-only/float-avoider-multiple-roots.html
fast/block/block-only/float-avoider-simple-left.html
fast/block/block-only/float-avoider-simple-right.html
fast/block/block-only/float-avoider-with-margins.html
- layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::layoutFormattingContextRoot const):
(WebCore::Layout::BlockFormattingContext::computeEstimatedMarginTopForAncestors const):
(WebCore::Layout::BlockFormattingContext::computePositionToAvoidFloats const):
- layout/blockformatting/BlockFormattingContext.h:
- layout/floats/FloatAvoider.cpp:
(WebCore::Layout::FloatAvoider::FloatAvoider):
- layout/floats/FloatingContext.cpp:
(WebCore::Layout::FloatingContext::positionForFloatAvoiding const):
- layout/floats/FloatingContext.h:
Tools:
[LFC][Floating] Formatting context roots avoid floats.
https://bugs.webkit.org/show_bug.cgi?id=189150
Reviewed by Antti Koivisto.
- LayoutReloaded/misc/LFC-passing-tests.txt:
LayoutTests:
[LFC][Floating] Formatting context roots avoid floats.
https://bugs.webkit.org/show_bug.cgi?id=189150
Reviewed by Antti Koivisto.
- fast/block/block-only/float-avoider-multiple-roots-expected.txt: Added.
- fast/block/block-only/float-avoider-multiple-roots.html: Added.
- fast/block/block-only/float-avoider-simple-left-expected.txt: Added.
- fast/block/block-only/float-avoider-simple-left.html: Added.
- fast/block/block-only/float-avoider-simple-right-expected.txt: Added.
- fast/block/block-only/float-avoider-simple-right.html: Added.
- fast/block/block-only/float-avoider-with-margins-expected.txt: Added.
- fast/block/block-only/float-avoider-with-margins.html: Added.
- 7:35 AM Changeset in webkit [235504] by
-
- 2 edits in trunk/Tools
[iOS] TestWebKitAPI.PasteImage tests are flaky failures
https://bugs.webkit.org/show_bug.cgi?id=185965
Reviewed by Andy Estes.
These tests pass reliably when run locally, but sometimes fail in automation when checking that the image
element with its "src" attribute set to a new blob URL has an empty size. It's possible that this is happening
because we're checking the size of the image element prior to image load after setting the blob URL; we can fix
this by waiting for the "load" event (which is also done in some of the other tests in this file).
- TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
(TEST):
- 7:32 AM Changeset in webkit [235503] by
-
- 4 edits in trunk/Source/WebCore
[LFC][Floating] Move containing block constraint logic from FloatAvoider to FloatingContext
https://bugs.webkit.org/show_bug.cgi?id=189145
Reviewed by Antti Koivisto.
When the float avoider is constrained horizontally, simply align it with the left/right edge of its containing block (with the combination of the constraints)
and check the overflow as part of the FloatingContext::floatingPosition() logic. It simplifies the constraint logic/helps implementing the non-float avoider
case.
- layout/floats/FloatAvoider.cpp:
(WebCore::Layout::FloatAvoider::setHorizontalConstraints):
(WebCore::Layout::FloatAvoider::overflowsContainingBlock const):
- layout/floats/FloatAvoider.h:
- layout/floats/FloatingContext.cpp:
(WebCore::Layout::FloatingContext::floatingPosition const):
- 7:28 AM Changeset in webkit [235502] by
-
- 5 edits in trunk/Source/WebCore
[LFC][Floating] Use non-computed horizontal margins when intersecting floats with float avoiders.
https://bugs.webkit.org/show_bug.cgi?id=189143
Reviewed by Antti Koivisto.
- layout/Verification.cpp:
(WebCore::Layout::LayoutContext::verifyAndOutputMismatchingLayoutTree const):
- layout/floats/FloatAvoider.cpp:
(WebCore::Layout::FloatAvoider::setHorizontalConstraints):
(WebCore::Layout::FloatAvoider::initialHorizontalPosition const):
- layout/floats/FloatAvoider.h:
(WebCore::Layout::FloatAvoider::marginTop const):
(WebCore::Layout::FloatAvoider::marginBottom const):
(WebCore::Layout::FloatAvoider::marginLeft const):
(WebCore::Layout::FloatAvoider::marginRight const):
(WebCore::Layout::FloatAvoider::marginBoxWidth const):
- layout/floats/FloatBox.cpp:
(WebCore::Layout::FloatBox::rect const):
(WebCore::Layout::FloatBox::horizontalPositionCandidate):
(WebCore::Layout::FloatBox::verticalPositionCandidate):
(WebCore::Layout::FloatBox::initialVerticalPosition const):
- layout/floats/FloatBox.h:
- 7:25 AM Changeset in webkit [235501] by
-
- 9 edits in trunk/Source/WebCore
[LFC][Margins] Add non-computed horizontal margins to DisplayBox
https://bugs.webkit.org/show_bug.cgi?id=189141
Reviewed by Antti Koivisto.
Inflow block boxes' horizontal margins extend all the way to the left/right edge of their containing block.
See https://www.w3.org/TR/CSS22/visudet.html#blockwidth for example
"...
10.3.3 Block-level, non-replaced elements in normal flow
'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' = width of containing block
..."
In certain cases (float avoiding) we need to know the original (non-extended) horiztonal margin values.
- layout/FormattingContext.cpp:
(WebCore::Layout::FormattingContext::computeFloatingWidthAndMargin const):
(WebCore::Layout::FormattingContext::computeOutOfFlowHorizontalGeometry const):
- layout/FormattingContextGeometry.cpp:
(WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedHorizontalGeometry):
(WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedHorizontalGeometry):
(WebCore::Layout::FormattingContext::Geometry::floatingNonReplacedWidthAndMargin):
(WebCore::Layout::FormattingContext::Geometry::inlineReplacedWidthAndMargin):
- layout/LayoutContext.cpp:
(WebCore::Layout::LayoutContext::initializeRoot):
- layout/LayoutUnits.h:
- layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::computeInFlowWidthAndMargin const):
- layout/blockformatting/BlockFormattingContextGeometry.cpp:
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedWidthAndMargin):
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowReplacedWidthAndMargin):
- layout/displaytree/DisplayBox.h:
(WebCore::Display::Box::setHasValidHorizontalNonComputedMargin):
(WebCore::Display::Box::setHorizontalNonComputedMargin):
(WebCore::Display::Box::nonComputedMarginLeft const):
(WebCore::Display::Box::nonComputedMarginRight const):
- 7:22 AM WebKitGTK/2.22.x edited by
- (diff)
- 7:21 AM Changeset in webkit [235500] by
-
- 4 edits3 adds in trunk/Tools
Unreviewed, rolling out r235114.
ostree server deleted our commits?
Reverted changeset:
"[Flatpak] Update to GNOME master runtime"
https://bugs.webkit.org/show_bug.cgi?id=188731
https://trac.webkit.org/changeset/235114
- 7:01 AM Changeset in webkit [235499] by
-
- 2 edits in trunk/Source/WebKit
[ConnectionUnix] Shrink sizeof AttachmentInfo by reordering members
https://bugs.webkit.org/show_bug.cgi?id=189149
Reviewed by Michael Catanzaro.
Reorder members to shrink the size of AttachmentInfo so that
we can attach more attachments.
- Platform/IPC/unix/ConnectionUnix.cpp:
- 3:24 AM Changeset in webkit [235498] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, add comments about enum names to bitfields
https://bugs.webkit.org/show_bug.cgi?id=188944
- xml/XMLHttpRequest.h:
- 3:17 AM Changeset in webkit [235497] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, add comments about enum names to bitfields
https://bugs.webkit.org/show_bug.cgi?id=188945
- html/HTMLCollection.h:
Aug 29, 2018:
- 10:05 PM Changeset in webkit [235496] by
-
- 4 edits in tags/Safari-607.1.4/Source/WebKit
Cherry-pick r235492. rdar://problem/43860224
Revert some of r235398
https://bugs.webkit.org/show_bug.cgi?id=189133
Patch by Alex Christensen <achristensen@webkit.org> on 2018-08-29
Reviewed by Tim Horton.
- UIProcess/API/APILoaderClient.h: (API::LoaderClient::processDidCrash): (API::LoaderClient::didChangeBackForwardList): (API::LoaderClient::didCommitLoadForFrame):
- UIProcess/API/C/WKPage.cpp: (WKPageSetPageLoaderClient):
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didChangeBackForwardList): (WebKit::WebPageProxy::didCommitLoadForFrame): (WebKit::WebPageProxy::dispatchProcessDidTerminate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@235492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:39 PM Changeset in webkit [235495] by
-
- 2 edits in trunk/Source/WebKit
Avoid code duplication in ResourceLoadStatisticsMemoryStore::processStatisticsAndDataRecords()
https://bugs.webkit.org/show_bug.cgi?id=189130
Reviewed by Youenn Fablet.
Move if check inside the lambda instead of outside to avoid code duplication.
- UIProcess/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::processStatisticsAndDataRecords):
- 7:26 PM Changeset in webkit [235494] by
-
- 2 edits in trunk/Source/WebCore
Addressed additional review feedback after r235342.
- Modules/applepay/ApplePayRequestBase.cpp:
(WebCore::convertAndValidate):
Used '"' instead of "\"" with makeString().
- 6:50 PM Changeset in webkit [235493] by
-
- 4 edits in trunk/Tools
[WHLSL] Test row-majorness of matrices
https://bugs.webkit.org/show_bug.cgi?id=189101
The matrix multiplication functions are temporarily commented out of the standard library,
so I've temporarily copy/pasted them into the test. Matrix multiplication is not
commutative, so it requires the right indexing order.
Reviewed by Dean Jackson and Thomas Denney.
- WebGPUShadingLanguageRI/Intrinsics.js:
- WebGPUShadingLanguageRI/StandardLibrary.js:
(let.standardLibrary):
- WebGPUShadingLanguageRI/Test.js:
- 6:22 PM Changeset in webkit [235492] by
-
- 4 edits in trunk/Source/WebKit
Revert some of r235398
https://bugs.webkit.org/show_bug.cgi?id=189133
Patch by Alex Christensen <achristensen@webkit.org> on 2018-08-29
Reviewed by Tim Horton.
- UIProcess/API/APILoaderClient.h:
(API::LoaderClient::processDidCrash):
(API::LoaderClient::didChangeBackForwardList):
(API::LoaderClient::didCommitLoadForFrame):
- UIProcess/API/C/WKPage.cpp:
(WKPageSetPageLoaderClient):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChangeBackForwardList):
(WebKit::WebPageProxy::didCommitLoadForFrame):
(WebKit::WebPageProxy::dispatchProcessDidTerminate):
- 6:20 PM Changeset in webkit [235491] by
-
- 4 edits1 add in trunk
Add some missing exception checks in JSRopeString::resolveRopeToAtomicString().
https://bugs.webkit.org/show_bug.cgi?id=189132
<rdar://problem/42513068>
Reviewed by Saam Barati.
JSTests:
- stress/regress-189132.js: Added.
Source/JavaScriptCore:
- runtime/JSCJSValueInlines.h:
(JSC::JSValue::toPropertyKey const):
- runtime/JSString.cpp:
(JSC::JSRopeString::resolveRopeToAtomicString const):
- 5:26 PM Changeset in webkit [235490] by
-
- 6 edits2 adds in trunk
[Datalist] Display prefix-matched suggestions first
https://bugs.webkit.org/show_bug.cgi?id=189106
Reviewed by Tim Horton.
Source/WebCore:
In order to increase suggestion relevancy, we should display suggestions that have
the same prefix as the input value first. In order to achieve this, we can place
the suggestions into two buckets, one that contains prefix-matched values and
another that contains only substring-matched values.
TextFieldInputType::suggestions() can be called up to three times before we
display the values. In order to avoid generating the same suggestions multiple
times, the most recent values can be stored and reused. We clear the cached values
whenever the datalist element is modified or when the suggestions view is hidden.
Finally, removed logic to de-duplicate the list of suggested values. This behavior
is not a part of the specification and leads to unnecessary slowdown when
populating the suggestions view.
Test: fast/forms/datalist/datalist-textinput-suggestions-order.html
- html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::listAttributeTargetChanged):
(WebCore::TextFieldInputType::suggestions):
(WebCore::TextFieldInputType::didCloseSuggestions):
- html/TextFieldInputType.h:
- platform/DataListSuggestionsClient.h:
LayoutTests:
Added a test to verify that prefix-matched suggestions are shown before other
matches.
- fast/forms/datalist/datalist-textinput-suggestions-order-expected.txt: Added.
- fast/forms/datalist/datalist-textinput-suggestions-order.html: Added.
- platform/ios/TestExpectations:
- 5:20 PM Changeset in webkit [235489] by
-
- 55 edits14 adds in trunk
Implement the Web Share API
https://bugs.webkit.org/show_bug.cgi?id=171100
<rdar://problem/31751734>
Patch by Olivia Barnett <obarnett@apple.com> on 2018-08-29
Reviewed by Tim Horton.
LayoutTests/imported/w3c:
- web-platform-tests/web-share/idlharness.https-expected.txt:
- web-platform-tests/web-share/share-empty.https-expected.txt:
- web-platform-tests/web-share/share-securecontext.http-expected.txt:
- web-platform-tests/web-share/share-url-invalid.https-expected.txt:
- web-platform-tests/web-share/share-without-user-gesture.https-expected.txt:
Updated expected results.
Source/WebCore:
Added one test in fast/events/ios called share.html; adjusted expectations for existing tests.
- DerivedSources.make:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- features.json:
- loader/EmptyClients.cpp:
(WebCore::EmptyChromeClient::showShareSheet):
- loader/EmptyClients.h:
Added empty showShareSheet function.
- page/Chrome.cpp:
(WebCore::Chrome::showShareSheet):
- page/Chrome.h:
Added call to showShareSheet on client.
- page/ChromeClient.h:
Virtual showShareSheet function.
- page/Navigator.cpp:
(WebCore::Navigator::share):
- page/Navigator.h:
Share function that returns a promise and invokes the share sheet.
- page/Navigator.idl:
Implements NavigatorShare
- page/NavigatorShare.idl: Added.
Added definition of share function returning a promise.
- page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setWebShareEnabled):
(WebCore::RuntimeEnabledFeatures::webShareEnabled const):
Added RuntimeEnabledFeature switch.
- page/ShareData.h: Added.
- page/ShareData.idl: Added.
Definition of ShareData struct.
Source/WebKit:
- Platform/spi/ios/UIKitSPI.h:
Added NSURL _title property as in the WebCore UIKitSPI.
- Scripts/webkit/messages.py:
ShareDataWithParsedURL special case for header for type.
- Shared/ShareSheetCallbackID.h:
Added a typedef for a share sheet callback id.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ShareData>::encode):
(IPC::ArgumentCoder<ShareData>::decode):
(IPC::ArgumentCoder<ShareDataWithParsedURL>::encode):
(IPC::ArgumentCoder<ShareDataWithParsedURL>::decode):
- Shared/WebCoreArgumentCoders.h:
Added encoding and decoding functionality for new structs.
- Shared/WebPreferences.yaml:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetWebShareEnabled):
(WKPreferencesGetWebShareEnabled):
- UIProcess/API/C/WKPreferencesRefPrivate.h:
Added switch for RuntimeEnabledFeature.
- UIProcess/API/Cocoa/WKWebView.mm:
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
Added hook for share sheet testing.
- UIProcess/PageClient.h:
(WebKit::PageClient::showShareSheet):
Page client call to invoke share sheet.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::showShareSheet):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
Web page proxy handling of call to invoke share sheet.
Creates completion handler to send to WKShareSheet.mm
Completion handler sends message to WebPage with message id.
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::showShareSheet):
Page client implementation call to invoke share sheet.
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView cleanupInteraction]):
(-[WKContentView _showShareSheet:completionHandler:]):
(-[WKContentView shareSheetDidDismiss:]):
(-[WKContentView invokeShareSheetWithResolution:resolved):
Call to WKShareSheet to invoke the share sheet and callback.
Hook for share sheet resolution testing.
- UIProcess/ios/forms/WKShareSheet.h: Added.
- UIProcess/ios/forms/WKShareSheet.mm: Added.
(-[WKShareSheet initWithView:]):
(-[WKShareSheet presentWithParameters:completionHandler:]):
(-[WKShareSheet _dispatchDidDismiss]):
(-[WKShareSheet _cancel]):
(-[WKShareSheet dismiss]):
(-[WKShareSheet _dismissDisplayAnimated:]):
(-[WKShareSheet _presentFullscreenViewController:animated:]):
(-[WKShareSheet invokeShareSheetWithResolution:resolved:]):
Completion handler call and creation of share sheet with parameters.
Hook that force resolves the share sheet completion handler for testing.
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::showShareSheet):
Call to page to invoke share sheet.
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::nextShareSheetContextId):
(WebKit::WebPage::showShareSheet):
(WebKit::WebPage::showShareSheetResponse):
WebPage calls proxy and saves context id for promise.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Callback for completed response.
Source/WebKitLegacy/ios:
- WebCoreSupport/WebChromeClientIOS.h:
- WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::showShareSheet):
Empty declaration of showShareSheet.
Source/WebKitLegacy/mac:
- WebCoreSupport/WebChromeClient.h:
- WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::showShareSheet):
Empty declaration of showShareSheet.
LayoutTests:
- fast/dom/navigator-detached-no-crash-expected.txt:
Updated expected results.
- 5:04 PM Changeset in webkit [235488] by
-
- 3 edits in trunk/LayoutTests
Layout Test js/error-should-not-strong-reference-global-object.html is flaky on macOS
https://bugs.webkit.org/show_bug.cgi?id=187103
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations: Consolidate expectations.
- 4:41 PM Changeset in webkit [235487] by
-
- 2 edits in trunk/Source/WebKit
Crash under WebKit: WTF::Function<void ()>::CallableWrapper<WebKit::ResourceLoadStatisticsMemoryStore::removeDataRecords(WTF::CompletionHandler<void ()>&&)::$_1>::call()
https://bugs.webkit.org/show_bug.cgi?id=189098
<rdar://problem/43179891>
Reviewed by Youenn Fablet.
The crash was caused by implicitly using |this| on the main thread by accessing member variables, even though
|this| gets destroyed on the statistics queue. To address the issue, capture what we need on the statistics
queue, *before* dispatching to the main thread.
Also stop capturing |this| in the lambdas to make this less error prone.
- UIProcess/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::removeDataRecords):
(WebKit::ResourceLoadStatisticsMemoryStore::grandfatherExistingWebsiteData):
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
- 4:39 PM Changeset in webkit [235486] by
-
- 2 edits in trunk/Tools
Unreviewed test gardening; NowPlayingTest API tests require High Sierra.
- TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm:
- 4:35 PM Changeset in webkit [235485] by
-
- 3 edits2 adds in trunk
REGRESSION (r226138): WebCore::subdivide() may return an empty vector; Web process can crash when performing find in Epiphany
https://bugs.webkit.org/show_bug.cgi?id=184390
<rdar://problem/41804994>
And
<rdar://problem/39771867>
Reviewed by Simon Fraser.
Source/WebCore:
Speculative fix for Epiphany.
In theory, WebCore::subdivide() should never return an empty vector - no subdivisions - as such a
result represents a programmer error. In practice, InlineTextBox can invoke WebCore::subdivide()
such that it returns an empty vector. One way this can happen is when subdividing an empty inline
text box associated with combined text (RenderCombineText). For now we add a check to bail out of
resolving the style of subdivisions when WebCore::subdivide() returns no subdivisions. In a
subsequent patch we will look to assert that WebCore::subdivide() always returns subdivisions.
Test: fast/text/text-combine-surroundContents-crash.html
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::subdivideAndResolveStyle):
LayoutTests:
Add a test to ensure that we do not crash when painting an empty inline text box associated
with combined text.
- fast/text/text-combine-surroundContents-crash-expected.txt: Added.
- fast/text/text-combine-surroundContents-crash.html: Added.
- 3:42 PM Changeset in webkit [235484] by
-
- 74 edits23 deletes in trunk
Remove WebRTC legacy API implementation
https://bugs.webkit.org/show_bug.cgi?id=189040
Reviewed by Eric Carlson.
LayoutTests/imported/w3c:
- web-platform-tests/mediacapture-streams/MediaDevices-IDL-all-expected.txt:
- web-platform-tests/mediacapture-streams/MediaDevices-IDL-enumerateDevices-expected.txt:
- web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https-expected.txt:
- web-platform-tests/webrtc/historical-expected.txt:
- web-platform-tests/webrtc/no-media-call.html:
- web-platform-tests/webrtc/simplecall.https.html:
Source/WebCore:
This API is no longer needed as the runtime flag is off by default.
Removing this option allows removing some code and will ease future WebRTC improvements.
Covered by existing tests.
- CMakeLists.txt:
- DerivedSources.make:
- Modules/mediastream/MediaStreamEvent.cpp: Removed.
- Modules/mediastream/MediaStreamEvent.h: Removed.
- Modules/mediastream/MediaStreamEvent.idl: Removed.
- Modules/mediastream/NavigatorUserMedia.idl: Removed.
- Modules/mediastream/NavigatorUserMedia.js: Removed.
- Modules/mediastream/PeerConnectionBackend.cpp:
- Modules/mediastream/PeerConnectionBackend.h:
- Modules/mediastream/RTCPeerConnection.h:
- Modules/mediastream/RTCPeerConnection.idl:
- Modules/mediastream/RTCPeerConnection.js:
(initializeRTCPeerConnection):
(createOffer):
(createAnswer):
(setLocalDescription):
(setRemoteDescription):
(addIceCandidate):
(getLocalStreams): Deleted.
(getStreamById): Deleted.
(addStream): Deleted.
(): Deleted.
- Modules/mediastream/RTCPeerConnectionInternals.js:
(callbacksAndDictionaryOverload):
(if): Deleted.
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::mediaStreamFromRTCStream):
(WebCore::LibWebRTCMediaEndpoint::addRemoteStream):
(WebCore::LibWebRTCMediaEndpoint::removeRemoteStream):
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h:
- Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
(WebCore::LibWebRTCPeerConnectionBackend::doStop):
(WebCore::LibWebRTCPeerConnectionBackend::removeRemoteStream): Deleted.
(WebCore::LibWebRTCPeerConnectionBackend::addRemoteStream): Deleted.
- Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::addBuiltinGlobals):
(WebCore::isWebRTCLegacyAPIEnabled): Deleted.
- bindings/js/WebCoreBuiltinNames.h:
- dom/EventNames.in:
- page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setPeerConnectionEnabled):
(WebCore::RuntimeEnabledFeatures::webRTCLegacyAPIEnabled const): Deleted.
(WebCore::RuntimeEnabledFeatures::setWebRTCLegacyAPIEnabled): Deleted.
Source/WebKit:
- Shared/WebPreferences.yaml:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetWebRTCLegacyAPIEnabled): Deleted.
(WKPreferencesGetWebRTCLegacyAPIEnabled): Deleted.
- UIProcess/API/C/WKPreferencesRef.h:
- UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences _webRTCLegacyAPIEnabled]): Deleted.
(-[WKPreferences _setWebRTCLegacyAPIEnabled:]): Deleted.
- UIProcess/API/Cocoa/WKPreferencesPrivate.h:
- WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
Source/WebKitLegacy/mac:
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences webRTCLegacyAPIEnabled]): Deleted.
(-[WebPreferences setWebRTCLegacyAPIEnabled:]): Deleted.
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Tools:
- DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebRTCLegacyAPIEnabled): Deleted.
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
LayoutTests:
- TestExpectations:
- fast/events/constructors/media-stream-event-constructor-expected.txt: Removed.
- fast/events/constructors/media-stream-event-constructor.html: Removed.
- fast/mediastream/RTCPeerConnection-AddRemoveStream-expected.txt: Removed.
- fast/mediastream/RTCPeerConnection-AddRemoveStream.html: Removed.
- fast/mediastream/RTCPeerConnection-createAnswer-expected.txt:
- fast/mediastream/RTCPeerConnection-createAnswer.html:
- fast/mediastream/RTCPeerConnection-createOffer-expected.txt: Removed.
- fast/mediastream/RTCPeerConnection-createOffer.html: Removed.
- fast/mediastream/RTCPeerConnection-dtmf.html: Removed.
- fast/mediastream/RTCPeerConnection-events-expected.txt: Removed.
- fast/mediastream/RTCPeerConnection-events.html: Removed.
- fast/mediastream/RTCPeerConnection-have-local-offer-expected.txt:
- fast/mediastream/RTCPeerConnection-have-local-offer.html:
- fast/mediastream/RTCPeerConnection-have-local-pranswer-expected.txt:
- fast/mediastream/RTCPeerConnection-have-local-pranswer.html:
- fast/mediastream/RTCPeerConnection-have-remote-offer-expected.txt:
- fast/mediastream/RTCPeerConnection-have-remote-offer.html:
- fast/mediastream/RTCPeerConnection-have-remote-pranswer-expected.txt:
- fast/mediastream/RTCPeerConnection-have-remote-pranswer.html:
- fast/mediastream/RTCPeerConnection-legacy-stream-based-api-expected.txt: Removed.
- fast/mediastream/RTCPeerConnection-legacy-stream-based-api.html: Removed.
- fast/mediastream/RTCPeerConnection-localDescription-expected.txt:
- fast/mediastream/RTCPeerConnection-localDescription.html:
- fast/mediastream/RTCPeerConnection-remoteDescription-expected.txt:
- fast/mediastream/RTCPeerConnection-remoteDescription.html:
- fast/mediastream/RTCPeerConnection-stable-expected.txt:
- fast/mediastream/RTCPeerConnection-stable.html:
- fast/mediastream/RTCPeerConnection-stats.html:
- fast/mediastream/RTCPeerConnection-statsSelector-expected.txt:
- fast/mediastream/RTCPeerConnection-statsSelector.html:
- fast/mediastream/argument-types-expected.txt: Removed.
- fast/mediastream/argument-types.html: Removed.
- fast/mediastream/getusermedia-expected.txt: Removed.
- fast/mediastream/getusermedia.html: Removed.
- fast/mediastream/webkitGetUserMedia-shadowing-then-expected.txt: Removed.
- fast/mediastream/webkitGetUserMedia-shadowing-then.html: Removed.
- platform/mac/TestExpectations:
- webrtc/legacy-api-expected.txt:
- webrtc/legacy-api.html:
- 3:23 PM Changeset in webkit [235483] by
-
- 4 edits in trunk/Source/WebCore
Modernize SlotAssignment
https://bugs.webkit.org/show_bug.cgi?id=189075
Reviewed by Antti Koivisto.
Modernized the code related to SlotAssignment. Namely, use HashMap<>::get instead of HashMap<>::find,
and use HashMap<>::ensure instead of HashMap<>::add. Also use WeakPtr to keep track of HTMLSlotElement
instead of a raw pointer.
- dom/SlotAssignment.cpp:
(WebCore::SlotAssignment::findAssignedSlot):
(WebCore::SlotAssignment::addSlotElementByName):
(WebCore::SlotAssignment::removeSlotElementByName):
(WebCore::SlotAssignment::didChangeSlot):
(WebCore::SlotAssignment::findFirstSlotElement):
(WebCore::SlotAssignment::resolveAllSlotElements):
(WebCore::SlotAssignment::assignToSlot):
- dom/SlotAssignment.h:
(WebCore::SlotAssignment::Slot::Slot): Renamed from SlotInfo since "Info" doesn't add any value.
- html/HTMLSlotElement.h:
- 3:20 PM Changeset in webkit [235482] by
-
- 2 edits in trunk/Tools
lldb-webkit: KeyError thrown for uninitialized OptionSet
https://bugs.webkit.org/show_bug.cgi?id=189070
Reviewed by Simon Fraser.
Do not compute what enumerators are in an uninitialized OptionSet. A local OptionSet variable
is only considered initialized when execution passes over its assignment regardless of whether
the variable is in scope.
The LLDB Python API does not provide a way to determine whether an variable is initialized.
So, we use a simple heuristic: when the value of the OptionSet is greater than the value
of the bitmask with all enumerators set then we consider the OptionSet to be garbage (i.e.
uninitialized memory). When the variable is finally initialized LLDB will notify us to update
our state.
- lldb/lldb_webkit.py:
(WTFOptionSetProvider.update):
- 3:01 PM Changeset in webkit [235481] by
-
- 7 edits in trunk
[PSON] We should only process-swap when eTLD+1 changes on navigation
https://bugs.webkit.org/show_bug.cgi?id=189090
<rdar://problem/43799225>
Reviewed by Geoffrey Garen.
Source/WebCore:
Add toRegistrableDomain() utility function to get the eTLD+1 (aka "registrable
domain") from an URL.
- platform/network/ResourceRequestBase.h:
(WebCore::toRegistrableDomain):
(WebCore::registrableDomainsAreEqual):
Source/WebKit:
When navigating cross-origin, only process swap when the eTLD+1 (aka "Registrable
domain") changes, instead of considering the full security origin.
This has performance benefits and is also needed to keep document.domain origin
relaxation working.
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::addProcessToOriginCacheSet):
(WebKit::WebProcessPool::removeProcessFromOriginCacheSet):
(WebKit::WebProcessPool::processForNavigation):
(WebKit::WebProcessPool::processForNavigationInternal):
- UIProcess/WebProcessPool.h:
Tools:
Update existing PSON API tests to use different registrable domains instead of different
protocols, as we now only process-swap when the eTLD+1 (aka "registrable domain") changes.
Add test coverage to make sure that we do not process swap when eTLD+1 does not change.
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- 2:50 PM Changeset in webkit [235480] by
-
- 19 edits in trunk
Add a runtime flag for WebRTC unified plan
https://bugs.webkit.org/show_bug.cgi?id=189068
Reviewed by Eric Carlson.
LayoutTests/imported/w3c:
- web-platform-tests/webrtc/RTCPeerConnection-addTrack.https-expected.txt:
Source/WebCore:
Covered by existing updated tests.
Main change is to call addTrack with a stream parameter so that on the other side, the track will be tied to a stream.
Receive-only case in unified plan is not yet supported.
This will be supported in follow-up patches.
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::setConfiguration): Activate unified plan based on runtime flag.
(WebCore::LibWebRTCMediaEndpoint::addTrack): Do not use AddStream in case of unified plan.
(WebCore::LibWebRTCMediaEndpoint::shouldOfferAllowToReceiveAudio const):
(WebCore::LibWebRTCMediaEndpoint::shouldOfferAllowToReceiveVideo const):
(WebCore::LibWebRTCMediaEndpoint::doCreateOffer): Use legacy webrtc option for receive only cases only in plan B case.
- page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::webRTCUnifiedPlanEnabled const):
(WebCore::RuntimeEnabledFeatures::setWebRTCUnifiedPlanEnabled):
Source/WebKit:
- Shared/WebPreferences.yaml:
- WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
Tools:
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
LayoutTests:
- fast/mediastream/RTCPeerConnection-add-removeTrack-expected.txt:
- webrtc/peer-connection-audio-mute2.html:
- webrtc/peer-connection-remote-audio-mute2.html:
- webrtc/video-addTrack-expected.txt:
- webrtc/video-addTrack.html:
- webrtc/video-addTransceiver.html:
- 2:20 PM Changeset in webkit [235479] by
-
- 3 edits in trunk/LayoutTests
Generalize suppresion for flaky IntersectionObserver web platform tests
https://bugs.webkit.org/show_bug.cgi?id=189091
Unreviewed test gardening.
- TestExpectations:
- platform/mac-wk1/TestExpectations:
- 2:09 PM Changeset in webkit [235478] by
-
- 2 edits in trunk/Source/WebKit
Followup (r235427): Use the null string instead of std::nullopt when no suggestion is selected
https://bugs.webkit.org/show_bug.cgi?id=189095
Reviewed by Tim Horton.
Followup to r235427 as per Darin's comment.
We can avoid unnecessary use of std::optional by taking advantage of the fact that
WTF::String already has a null value distinct from the empty value.
No change in behavior.
- UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:
(WebKit::WebDataListSuggestionsDropdownMac::selectOption):
(-[WKDataListSuggestionsView currentSelectedString]):
- 1:55 PM Changeset in webkit [235477] by
-
- 2 edits4 adds in trunk/Tools
[CMake] Split Tools/CMakeLists.txt into platform files
https://bugs.webkit.org/show_bug.cgi?id=189093
Reviewed by Michael Catanzaro.
- CMakeLists.txt:
- PlatformGTK.cmake: Added.
- PlatformMac.cmake: Added.
- PlatformWPE.cmake: Added.
- PlatformWin.cmake: Added.
- 1:33 PM Changeset in webkit [235476] by
-
- 9 copies1 add in releases/Apple/Safari Technology Preview 64
Added a tag for Safari Technology Preview release 64.
- 12:57 PM Changeset in webkit [235475] by
-
- 3 edits2 adds in trunk
Fix crash when reflections and backdrop filter are combined
https://bugs.webkit.org/show_bug.cgi?id=188504
rdar://problem/43225590
Reviewed by Dan Bates.
Source/WebCore:
GraphicsLayerCA::updateBackdropFiltersRect() was confused about which hash map to modify
when changes to the clipping rect affect whether we make backdrop clipping layers;
we need to add/remove from backdropClippingLayerClones, not backdropLayerClones.
Test: compositing/filters/backdrop-filter-update-rect.html
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateBackdropFiltersRect):
LayoutTests:
- compositing/filters/backdrop-filter-update-rect-expected.txt: Added.
- compositing/filters/backdrop-filter-update-rect.html: Added.
- 12:39 PM Changeset in webkit [235474] by
-
- 8 edits2 adds in trunk
Muted elements do not have their Now Playing status updated when unmuted.
https://bugs.webkit.org/show_bug.cgi?id=189069
Reviewed by Eric Carlson.
Source/WebCore:
Schedule an updateNowPlayingInfo() when an element becomes unmuted.
- platform/audio/PlatformMediaSessionManager.h:
- platform/audio/mac/MediaSessionManagerMac.h:
- platform/audio/mac/MediaSessionManagerMac.mm:
(WebCore::MediaSessionManagerMac::sessionCanProduceAudioChanged):
Source/WebCore/PAL:
- pal/spi/mac/MediaRemoteSPI.h:
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm: Added.
(userInfoHasNowPlayingApplicationPID):
(getNowPlayingClient):
(getNowPlayingClientPid):
(NowPlayingTest::webView):
(NowPlayingTest::configuration):
(NowPlayingTest::webViewPid):
(NowPlayingTest::loadPage):
(NowPlayingTest::runScriptWithUserGesture):
(NowPlayingTest::runScriptWithoutUserGesture):
(NowPlayingTest::executeAndWaitForPlaying):
(NowPlayingTest::executeAndWaitForWebViewToBecomeNowPlaying):
(NowPlayingTest::observers):
(NowPlayingTest::addObserver):
(NowPlayingTest::removeObserver):
(NowPlayingTest::notificationCallback):
(NowPlayingTest::receivedNotification):
(NowPlayingTest::performAfterReceivingNotification):
(TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/now-playing.html: Added.
- 12:24 PM Changeset in webkit [235473] by
-
- 3 edits1 copy1 delete in trunk/Source/WTF
Rename wtf/text/mac/StringMac.mm to wtf/text/cococa/StringCococa.mm
<https://webkit.org/b/189082>
Reviewed by Sam Weinig.
Includes a drive-by fix for a webkit-style warning:
ERROR: Source/WTF/wtf/text/cocoa/StringCocoa.mm:34: Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons. [readability/comparison_to_zero] [5]
- WTF.xcodeproj/project.pbxproj: Update for move and rename.
- wtf/PlatformMac.cmake: Add missing cocoa/StringCocoa.mm source
file. Drive-by fix for rename of
TextBreakIteratorInternalICUMac.mm to
TextBreakIteratorInternalICUCocoa.cpp.
- wtf/text/cocoa/StringCocoa.mm: Renamed from Source/WTF/wtf/text/mac/StringMac.mm.
(WTF::String::String):
- 12:17 PM Changeset in webkit [235472] by
-
- 8 edits in trunk/Source
Use the null string instead of std::nullopt for missing attachment file names and content types
https://bugs.webkit.org/show_bug.cgi?id=189080
Reviewed by Tim Horton.
Replace instances of std::optional<String> with just String instead, and use the null string to represent a
missing value instead of std::nullopt. No change in behavior.
Source/WebCore:
- html/HTMLAttachmentElement.cpp:
(WebCore::HTMLAttachmentElement::updateAttributes):
- html/HTMLAttachmentElement.h:
Source/WebKit:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::updateAttachmentAttributes):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updateAttachmentAttributes):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 11:44 AM Changeset in webkit [235471] by
-
- 2 edits in trunk/LayoutTests
[mac-wk1] Mark three IntersectionObserver web platform tests as flaky
https://bugs.webkit.org/show_bug.cgi?id=189091
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:24 AM Changeset in webkit [235470] by
-
- 3 edits in trunk/Tools
[WHLSL] Ensure that isLValue is copied by the rewriter
https://bugs.webkit.org/show_bug.cgi?id=189083
The value of isLValue was not propagated when new TernaryExpressions are
created in Rewriter.
Patch by Thomas Denney <tdenney@apple.com> on 2018-08-29
Reviewed by Myles C. Maxfield.
- WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitTernaryExpression):
- WebGPUShadingLanguageRI/Test.js: Add new test to verify the value is
propagated.
- 11:21 AM Changeset in webkit [235469] by
-
- 24 edits1 copy3 moves5 deletes in trunk/Tools
[WHLSL] Add more functions to the standard library
https://bugs.webkit.org/show_bug.cgi?id=188873
Reviewed by Filip Pizlo.
This patch adds the rest of the standard library to StandardLibrary.js, and updates the compiler to be able to compile it.
There are a few major pieces:
- Swizzle operators are now implemented in the language, instead of as native functions
- Vector constructors are now implemented in the language, instead of as native functions
- The matrix type is implemented
- Vector operator&[] is illegal, and is removed from the compiler
- Vector index setters & index getters are now implemented in the language, instead of as native functions
- Vector and matrix equality operators are implemented in the language, instead of as native functions
- Casting a scalar to a boolean is implemented in the language, instead of as native functions
- Casting a vector to a boolean is not part of the language, and is removed from the compiler
- Half-precision floating point types are implemented
- WebGPUShadingLanguageRI/All.js:
- WebGPUShadingLanguageRI/BuiltinMatrixGetter.js: Copied from Tools/WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js.
(BuiltinMatrixGetter):
(BuiltinMatrixGetter.prototype.get height):
(BuiltinMatrixGetter.prototype.get width):
(BuiltinMatrixGetter.prototype.toString):
(BuiltinMatrixGetter.functions):
(BuiltinMatrixGetter.prototype.instantiateImplementation):
- WebGPUShadingLanguageRI/BuiltinMatrixSetter.js: Renamed from Tools/WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js.
(BuiltinMatrixSetter):
(BuiltinMatrixSetter.prototype.get height):
(BuiltinMatrixSetter.prototype.get width):
(BuiltinMatrixSetter.prototype.toString):
(BuiltinMatrixSetter.functions):
(BuiltinMatrixSetter.prototype.instantiateImplementation):
- WebGPUShadingLanguageRI/BuiltinVectorConstructors.js: Removed.
- WebGPUShadingLanguageRI/BuiltinVectorEqualityOperator.js: Removed.
- WebGPUShadingLanguageRI/BuiltinVectorGetter.js:
(BuiltinVectorGetter.prototype.instantiateImplementation):
(BuiltinVectorGetter):
- WebGPUShadingLanguageRI/BuiltinVectorSetter.js:
(BuiltinVectorSetter.functions):
(BuiltinVectorSetter.prototype.instantiateImplementation):
(BuiltinVectorSetter):
- WebGPUShadingLanguageRI/CallExpression.js:
(CallExpression.prototype.resolve):
- WebGPUShadingLanguageRI/CheckTypesWithArguments.js:
(checkTypesWithArguments.TypeWithArgumentsChecker.prototype.visitTypeRef):
(checkTypesWithArguments.TypeWithArgumentsChecker):
(checkTypesWithArguments):
- WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype.visitVectorType):
(Checker.prototype.visitMatrixType):
- WebGPUShadingLanguageRI/ConstexprFolder.js:
(ConstexprFolder.prototype.visitCallExpression):
(ConstexprFolder):
- WebGPUShadingLanguageRI/Evaluator.js:
(Evaluator.prototype.visitTernaryExpression):
- WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
(FlattenedStructOffsetGatherer.prototype.visitMatrixType):
(FlattenedStructOffsetGatherer):
- WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.):
(Intrinsics):
- WebGPUShadingLanguageRI/MatrixType.js: Renamed from Tools/WebGPUShadingLanguageRI/BuiltinVectorIndexGetter.js.
(MatrixType):
(MatrixType.prototype.get elementType):
(MatrixType.prototype.get numRows):
(MatrixType.prototype.get numColumns):
(MatrixType.prototype.get numRowsValue):
(MatrixType.prototype.get numColumnsValue):
(MatrixType.prototype.get size):
(MatrixType.prototype.unifyImpl):
(MatrixType.prototype.populateDefaultValue):
(MatrixType.prototype.toString):
- WebGPUShadingLanguageRI/NameContext.js:
(NameContext.prototype.add):
- WebGPUShadingLanguageRI/NativeType.js:
(NativeType.create):
(NativeType):
- WebGPUShadingLanguageRI/OperatorAnderIndexer.js: Renamed from Tools/WebGPUShadingLanguageRI/OperatorAnderIndex.js.
(OperatorAnderIndexer):
- WebGPUShadingLanguageRI/OperatorBool.js: Removed.
- WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
- WebGPUShadingLanguageRI/Program.js:
(Program.prototype.add):
- WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitMatrixType):
(Rewriter):
- WebGPUShadingLanguageRI/SPIRV.html:
- WebGPUShadingLanguageRI/StandardLibrary.js:
(operator.bool):
(bool.operator):
(uchar.operator):
(ushort.operator):
(char.operator):
(short.operator):
(uint.operator):
(int.operator):
(half.operator):
(float.operator):
(uchar2.operator):
(uchar3.operator):
(uchar4.operator):
(ushort2.operator):
(ushort3.operator):
(ushort4.operator):
(uint2.operator):
(uint3.operator):
(uint4.operator):
(char2.operator):
(char3.operator):
(char4.operator):
(short2.operator):
(short3.operator):
(short4.operator):
(int2.operator):
(int3.operator):
(int4.operator):
(half2.operator):
(half3.operator):
(half4.operator):
(float2.operator):
(float3.operator):
(float4.operator):
(half2x2.operator):
(half2x3.operator):
(half2x4.operator):
(half3x2.operator):
(half3x3.operator):
(half3x4.operator):
(half4x2.operator):
(half4x3.operator):
(half4x4.operator):
(float2x2.operator):
(float2x3.operator):
(float2x4.operator):
(float3x2.operator):
(float3x3.operator):
(float3x4.operator):
(float4x2.operator):
(float4x3.operator):
(float4x4.operator):
(operator.bool2):
(operator.bool3):
(operator.bool4):
(uint.operator.length):
(operator.uchar2):
(operator.uchar3):
(operator.uchar4):
(operator.ushort2):
(operator.ushort3):
(operator.ushort4):
(operator.uint2):
(operator.uint3):
(operator.uint4):
(operator.char2):
(operator.char3):
(operator.char4):
(operator.short2):
(operator.short3):
(operator.short4):
(operator.int2):
(operator.int3):
(operator.int4):
(operator.half2):
(operator.half3):
(operator.half4):
(operator.float2):
(operator.float3):
(operator.float4):
(bool2.operator):
(bool3.operator):
(bool4.operator):
(allVectorTypeNames):
- WebGPUShadingLanguageRI/SwizzleOp.js: Removed.
- WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js:
(synthesizeDefaultConstructorOperator.FindAllTypes.prototype.visitMatrixType):
(synthesizeDefaultConstructorOperator.FindAllTypes):
(synthesizeDefaultConstructorOperator):
- WebGPUShadingLanguageRI/SynthesizeOperatorBool.js: Removed.
- WebGPUShadingLanguageRI/Test.html:
- WebGPUShadingLanguageRI/Test.js:
(makeHalf):
(checkHalf):
- WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitMatrixType):
(Visitor):
- WebGPUShadingLanguageRI/index.html:
- 10:56 AM Changeset in webkit [235468] by
-
- 3 edits in trunk/LayoutTests
Layout Test svg/animations/animate-end-attribute-numeric-precision.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=189087
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk1/TestExpectations:
- 10:51 AM Changeset in webkit [235467] by
-
- 21 edits in trunk
Teach webkitpy how to check leaks and treat leaks as test failures
https://bugs.webkit.org/show_bug.cgi?id=189067
Reviewed by Darin Adler.
Tools:
Add a new "--world-leaks" argument to run-webkit-tests. When enabled, DRT/WTR are launched
with a --world-leaks argument (which is renamed in this patch for consistency). This enables the
behavior added in r235408, namely that they check for leaked documents after each test, and at
the end of one (if --run-singly) or a set of tests run in a single DRT/WTR instance handle the
"#CHECK FOR WORLD LEAKS" command to get still-live documents.
LayoutTestRunner in webkitpy now has the notion of doing "post-tests work", called via _finished_test_group(),
and here it sends the "#CHECK FOR WORLD LEAKS" command to the runner and parses the resulting output block.
If this results block includes leaks, we convert an existing TestResult into a LEAK failure
in TestRunResults.change_result_to_failure(). Leaks are then added to the ouput JSON for display in results.html
Unit tests are updated with some leak examples.
- DumpRenderTree/mac/DumpRenderTree.mm:
(initializeGlobalsFromCommandLineOptions):
- Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:
(ParsedJSONResultsTest):
- Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(LayoutTestRunner._annotate_results_with_additional_failures):
(LayoutTestRunner._handle_finished_test_group):
(Worker.handle):
(Worker._run_test):
(Worker._do_post_tests_work):
(Worker._finished_test_group):
(Worker._run_test_in_another_thread):
- Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
(JSONLayoutResultsGenerator):
- Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser):
(TestExpectations):
- Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(Base.get_basic_tests):
- Scripts/webkitpy/layout_tests/models/test_failures.py:
(determine_result_type):
(FailureLeak):
(FailureLeak.init):
(FailureLeak.message):
(FailureDocumentLeak):
(FailureDocumentLeak.init):
(FailureDocumentLeak.message):
- Scripts/webkitpy/layout_tests/models/test_results.py:
(TestResult.convert_to_failure):
- Scripts/webkitpy/layout_tests/models/test_run_results.py:
(TestRunResults.change_result_to_failure):
(_interpret_test_failures):
(summarize_results):
- Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
(get_result):
(run_results):
(summarized_results):
- Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
- Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(parse_args):
(RunTest.test_check_for_world_leaks):
- Scripts/webkitpy/port/driver.py:
(DriverPostTestOutput):
(DriverPostTestOutput.init):
(Driver.do_post_tests_work):
(Driver._parse_world_leaks_output):
(Driver.cmd_line):
(DriverProxy.do_post_tests_work):
- Scripts/webkitpy/port/test.py:
(unit_test_list):
- WebKitTestRunner/Options.cpp:
(WTR::OptionsHandler::OptionsHandler):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::checkForWorldLeaks):
LayoutTests:
Put some fake leaks in full_results.json, and update results.html to show a table
of leaks when results are expanded.
- fast/harness/full_results.json:
- fast/harness/results-expected.txt:
- fast/harness/results.html:
- 10:50 AM Changeset in webkit [235466] by
-
- 2 edits in trunk/LayoutTests
Missed adding expctations to ios for webkit.org/b/188985
https://bugs.webkit.org/show_bug.cgi?id=188985
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 10:14 AM Changeset in webkit [235465] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, rolling out r235432 and r235436.
https://bugs.webkit.org/show_bug.cgi?id=189086
Is a Swift source breaking change. (Requested by keith_miller
on #webkit).
Reverted changesets:
"Add nullablity attributes to JSValue"
https://bugs.webkit.org/show_bug.cgi?id=189047
https://trac.webkit.org/changeset/235432
"Add nullablity attributes to JSValue"
https://bugs.webkit.org/show_bug.cgi?id=189047
https://trac.webkit.org/changeset/235436
- 9:44 AM Changeset in webkit [235464] by
-
- 1 copy in tags/Safari-607.1.4
Tag Safari-607.1.4.
- 9:30 AM Changeset in webkit [235463] by
-
- 7 edits in trunk/Source
Versioning.
- 9:25 AM Changeset in webkit [235462] by
-
- 6 edits100 deletes in trunk
Remove empty directories from from svn.webkit.org repository
<https://webkit.org/b/189081>
Source/ThirdParty/ANGLE:
- src/angle.xcodeproj: Removed.
- src/common/third_party/numerics: Removed.
Source/ThirdParty/libwebrtc:
- Source/webrtc/base: Removed.
- Source/webrtc/media/devices: Removed.
- Source/webrtc/modules/audio_conference_mixer: Removed.
- Source/webrtc/modules/remote_bitrate_estimator/include/mock: Removed.
- Source/webrtc/system_wrappers/test: Removed.
- Source/webrtc/test/testsupport/mac: Removed.
- Source/webrtc/voice_engine: Removed.
Source/WebCore:
- Modules/proximity: Removed.
Source/WebInspectorUI:
- WebInspectorUI.esproj: Removed.
Tools:
- DumpRenderTree/TestNetscapePlugIn/unix: Removed.
- WebKitTestRunner/UIScriptContext: Removed.
LayoutTests:
- css3/filters/backdrop/script-tests: Removed.
- css3/filters/script-tests: Removed.
- indieui: Removed.
- legacy-animation-engine/fullscreen: Removed.
- platform/gtk/editing/pasteboard/script-tests: Removed.
- platform/gtk/resources: Removed.
- platform/ios-wk2/fast/backgrounds: Removed.
- platform/ios-wk2/fast/block/margin-collapse/block-inside-inline: Removed.
- platform/ios-wk2/fast/block/positioning/auto/vertical-lr: Removed.
- platform/ios-wk2/fast/body-propagation/background-color: Removed.
- platform/ios-wk2/fast/body-propagation/background-image: Removed.
- platform/ios-wk2/fast/borders: Removed.
- platform/ios-wk2/fast/box-shadow: Removed.
- platform/ios-wk2/fast/box-sizing: Removed.
- platform/ios-wk2/fast/canvas: Removed.
- platform/ios-wk2/fast/compact: Removed.
- platform/ios-wk2/fast/css/counters: Removed.
- platform/ios-wk2/fast/css/namespaces: Removed.
- platform/ios-wk2/fast/css3-text: Removed.
- platform/ios-wk2/fast/doctypes: Removed.
- platform/ios-wk2/fast/dom/Element: Removed.
- platform/ios-wk2/fast/dom/HTMLDocument: Removed.
- platform/ios-wk2/fast/dom/HTMLElement: Removed.
- platform/ios-wk2/fast/dom/HTMLHeadElement: Removed.
- platform/ios-wk2/fast/dom/HTMLImageElement: Removed.
- platform/ios-wk2/fast/dom/HTMLInputElement: Removed.
- platform/ios-wk2/fast/dom/HTMLLinkElement: Removed.
- platform/ios-wk2/fast/dom/HTMLMeterElement: Removed.
- platform/ios-wk2/fast/dom/HTMLObjectElement: Removed.
- platform/ios-wk2/fast/dom/HTMLProgressElement: Removed.
- platform/ios-wk2/fast/dom/HTMLTableColElement: Removed.
- platform/ios-wk2/fast/dom/HTMLTableElement: Removed.
- platform/ios-wk2/fast/dom/Range: Removed.
- platform/ios-wk2/fast/dom/Window: Removed.
- platform/ios-wk2/fast/events/touch: Removed.
- platform/ios-wk2/fast/fast-mobile-scrolling: Removed.
- platform/ios-wk2/fast/forms/color: Removed.
- platform/ios-wk2/fast/forms/datalist: Removed.
- platform/ios-wk2/fast/forms/file: Removed.
- platform/ios-wk2/fast/forms/number: Removed.
- platform/ios-wk2/fast/forms/range: Removed.
- platform/ios-wk2/fast/forms/select: Removed.
- platform/ios-wk2/fast/gradients: Removed.
- platform/ios-wk2/fast/inspector-support: Removed.
- platform/ios-wk2/fast/line-grid: Removed.
- platform/ios-wk2/fast/multicol/span: Removed.
- platform/ios-wk2/fast/multicol/vertical-lr: Removed.
- platform/ios-wk2/fast/preloader: Removed.
- platform/ios-wk2/fast/reflections: Removed.
- platform/ios-wk2/fast/regions/auto-size: Removed.
- platform/ios-wk2/fast/replaced/vertical-lr: Removed.
- platform/ios-wk2/fast/replaced/vertical-rl: Removed.
- platform/ios-wk2/fast/sub-pixel: Removed.
- platform/ios-wk2/fast/text/firstline: Removed.
- platform/ios-wk2/fast/text/shaping: Removed.
- platform/ios-wk2/fast/tokenizer: Removed.
- platform/ios-wk2/scrolling: Removed.
- platform/ios/fast/viewport: Removed.
- platform/ios/ios/fast/events/touch/script-tests: Removed.
- platform/ios/ios/fast/html: Removed.
- platform/ios/ios/scrolling: Removed.
- platform/mac-sierra-wk2/js: Removed.
- platform/mac-sierra/http/tests/ssl: Removed.
- platform/mac-wk2/http/tests/plugins: Removed.
- platform/mac-wk2/js: Removed.
- platform/mac-wk2/tiled-drawing: Removed.
- platform/mac/accessibility/resources: Removed.
- platform/mac/accessibility/select-text: Removed.
- platform/mac/editing/attributed-string: Removed.
- platform/mac/editing/dictionary-lookup: Removed.
- platform/mac/editing/input/resources: Removed.
- platform/mac/editing/selection/script-tests: Removed.
- platform/mac/fast/canvas/resources: Removed.
- platform/mac/fast/forms/script-tests: Removed.
- platform/mac/fast/ruby/resources: Removed.
- platform/mac/fast/scrolling/resources: Removed.
- platform/mac/http/tests/usercontentfilter: Removed.
- platform/mac/platform/mac/accessibility: Removed.
- platform/mac/platform/mac/editing: Removed.
- platform/win-xp: Removed.
- platform/win/editing/exeCommand: Removed.
- platform/win/platform/win/accessibility: Removed.
- platform/win/sputnik: Removed.
- platform/wk2/js: Removed.
- platform/wk2/storage: Removed.
- proximity: Removed.
- vibration: Removed.
- 8:07 AM Changeset in webkit [235461] by
-
- 3 edits in trunk/Tools
[GTK][WPE] Add JSCOnly Release bot for Linux ARMv7 Thumb2 SoftFP
https://bugs.webkit.org/show_bug.cgi?id=189077
Patch by Pablo Saavedra <Pablo Saavedra> on 2018-08-29
Reviewed by Michael Catanzaro.
Deployed new bot for WPE Release in Linux ARMv7 Thumb2 SoftFP
This bot (jsconly-linux-igalia-bot-5) will run the 'JSCOnly
Linux ARMv7 Thumb2 SoftFP Release' buildjob.
- BuildSlaveSupport/build.webkit.org-config/config.json:
- BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
- 7:49 AM Changeset in webkit [235460] by
-
- 7 edits2 copies in trunk/Source/WebCore
[LFC][Floating] Introduce FloatBox, a FloatAvoider subclass.
https://bugs.webkit.org/show_bug.cgi?id=189074
Reviewed by Antti Koivisto.
FloatBox is a float avoider and a float positioned box as well.
This is in preparation for the float avoidance feature where formatting context root boxes avoid existing floats.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- layout/displaytree/DisplayBox.h:
- layout/floats/FloatAvoider.cpp:
(WebCore::Layout::FloatAvoider::FloatAvoider):
(WebCore::Layout::FloatAvoider::setHorizontalConstraints):
(WebCore::Layout::FloatAvoider::setVerticalConstraint):
(WebCore::Layout::FloatAvoider::horizontalPositionCandidate):
(WebCore::Layout::FloatAvoider::verticalPositionCandidate):
(WebCore::Layout::FloatAvoider::resetPosition):
(WebCore::Layout::FloatAvoider::rectInContainingBlock const):
(WebCore::Layout::FloatAvoider::initializePosition): Deleted.
(WebCore::Layout::FloatAvoider::isLeftAligned const): Deleted.
(WebCore::Layout::FloatAvoider::rect const): Deleted.
(WebCore::Layout::FloatAvoider::resetHorizontalConstraints): Deleted.
(WebCore::Layout::FloatAvoider::initialVerticalPosition const): Deleted.
- layout/floats/FloatAvoider.h:
(WebCore::Layout::FloatAvoider::rect const):
(WebCore::Layout::FloatAvoider::isLeftAligned const):
(WebCore::Layout::FloatAvoider::initialVerticalPosition const):
(WebCore::Layout::FloatAvoider::floatingState const):
(WebCore::Layout::FloatAvoider::layoutBox const):
(WebCore::Layout::FloatAvoider::displayBox const):
- layout/floats/FloatBox.cpp: Copied from Source/WebCore/layout/floats/FloatAvoider.h.
(WebCore::Layout::FloatBox::FloatBox):
(WebCore::Layout::FloatBox::horizontalPositionCandidate):
(WebCore::Layout::FloatBox::verticalPositionCandidate):
(WebCore::Layout::FloatBox::initialVerticalPosition const):
- layout/floats/FloatBox.h: Copied from Source/WebCore/layout/floats/FloatAvoider.h.
- layout/floats/FloatingContext.cpp:
(WebCore::Layout::FloatingContext::positionForFloat const):
(WebCore::Layout::FloatingContext::floatingPosition const):
- 5:36 AM Changeset in webkit [235459] by
-
- 14 edits in trunk
[IntersectionObserver] Implement intersection logic for the same-document implicit root case
https://bugs.webkit.org/show_bug.cgi?id=189055
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
Rebaseline tests.
- web-platform-tests/intersection-observer/display-none-expected.txt:
- web-platform-tests/intersection-observer/inline-client-rect-expected.txt:
- web-platform-tests/intersection-observer/multiple-targets-expected.txt:
- web-platform-tests/intersection-observer/multiple-thresholds-expected.txt:
- web-platform-tests/intersection-observer/observer-without-js-reference-expected.txt:
- web-platform-tests/intersection-observer/root-margin-expected.txt:
- web-platform-tests/intersection-observer/same-document-no-root-expected.txt:
- web-platform-tests/intersection-observer/same-document-zero-size-target-expected.txt:
- web-platform-tests/intersection-observer/shadow-content-expected.txt:
- web-platform-tests/intersection-observer/text-target-expected.txt:
- web-platform-tests/intersection-observer/zero-area-element-hidden-expected.txt:
Source/WebCore:
Extend the intersection logic to handle computing the intersection of the target and the
viewport, for the case where the target is in the main frame.
Tested by existing tests in imported/w3c/web-platform-tests/intersection-observer.
- dom/Document.cpp:
(WebCore::computeIntersectionRects):
(WebCore::Document::updateIntersectionObservations):