Timeline
Jun 7, 2019:
- 10:19 PM Changeset in webkit [246231] by
-
- 16 edits in trunk
REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately
https://bugs.webkit.org/show_bug.cgi?id=198664
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-06-07
Reviewed by Simon Fraser.
Source/WebCore:
Because WK1 is a single process, scheduleCompositingLayerFlush() has to
be called immediately when layers' update is needed. Otherwise no content
will be drawn for the current frame. Doing this will get smooth scrolling
back to WK1.
RenderingUpdateScheduler now has three different scheduling methods:
- scheduleTimedRenderingUpdate(): This is a two-steps scheduling method. DisplayRefreshMonitor has to fire before scheduleCompositingLayerFlush() is called. This is used by rAF, WebAnimations and intersection and resize observers.
- scheduleImmediateRenderingUpdate(): This is a one-step scheduling method. layerTreeAsText() calls this method because it has to process the rendering update within the current frame.
- scheduleRenderingUpdate(): RenderLayerCompositor::scheduleLayerFlush() calls this function to decide either immediately flush layers or wait for the next timed frame. scheduleImmediateRenderingUpdate() will be called for WK1. scheduleTimedRenderingUpdate() will be called for WK2.
- animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::scheduleAnimationResolution):
- dom/Document.cpp:
(WebCore::Document::scheduleTimedRenderingUpdate):
(WebCore::Document::scheduleInitialIntersectionObservationUpdate):
(WebCore::Document::updateResizeObservations):
(WebCore::Document::scheduleRenderingUpdate): Deleted.
- dom/Document.h:
- dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::scheduleAnimation):
- page/ChromeClient.h:
- page/PageOverlayController.cpp:
(WebCore::PageOverlayController::didChangeViewExposedRect):
(WebCore::PageOverlayController::notifyFlushRequired):
- page/RenderingUpdateScheduler.cpp:
(WebCore::RenderingUpdateScheduler::scheduleTimedRenderingUpdate):
(WebCore::RenderingUpdateScheduler::displayRefreshFired):
(WebCore::RenderingUpdateScheduler::scheduleImmediateRenderingUpdate):
(WebCore::RenderingUpdateScheduler::scheduleRenderingUpdate):
(WebCore::RenderingUpdateScheduler::scheduleCompositingLayerFlush): Deleted.
- page/RenderingUpdateScheduler.h:
- page/ResizeObserver.cpp:
(WebCore::ResizeObserver::observe):
- page/mac/ServicesOverlayController.mm:
(WebCore::ServicesOverlayController::Highlight::notifyFlushRequired):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::layerTreeAsText):
Source/WebKitLegacy/mac:
WK1 has to skip using DisplayRefreshMonitor when layers need to be updated.
- WebCoreSupport/WebChromeClient.h:
(WebChromeClient::needsImmediateScheduleCompositingLayerFlush):
Tools:
Delete repeated entries which were submitted by mistake.
- Tracing/SystemTracePoints.plist:
- 10:05 PM Changeset in webkit [246230] by
-
- 4 edits in trunk/Source/WebKit
REGRESSION (r245006): Setting scrollview.scrollEnabled clobbers any scrollEnabled set by a client
https://bugs.webkit.org/show_bug.cgi?id=198656
<rdar://problem/51494585>
Reviewed by Tim Horton.
Allow client to disable scrolling and zooming.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:]):
- UIProcess/ios/WKScrollView.h:
- UIProcess/ios/WKScrollView.mm:
(-[WKScrollView initWithFrame:]):
(-[WKScrollView setScrollEnabled:]):
(-[WKScrollView _setScrollEnabledInternal:]):
(-[WKScrollView _updateScrollability]):
(-[WKScrollView setZoomEnabled:]):
(-[WKScrollView _setZoomEnabledInternal:]):
(-[WKScrollView _updateZoomability]):
- 6:37 PM Changeset in webkit [246229] by
-
- 6 edits in trunk
Allow clients to vend custom -inputView and -inputAccessoryView by overriding WKWebView methods
https://bugs.webkit.org/show_bug.cgi?id=198631
<rdar://problem/51505431>
Reviewed by Tim Horton.
Source/WebKit:
Allow WKWebView API clients to override WKContentView's default input view and/or input accessory view by
subclassing WKWebView and implementing -inputView or -inputAccessoryView.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView inputAccessoryView]):
(-[WKWebView inputView]):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView inputView]):
(-[WKContentView inputViewForWebView]):
(-[WKContentView inputAccessoryView]):
(-[WKContentView inputAccessoryViewForWebView]):
Tools:
Add an API test that overrides -[WKWebView inputView] and -[WKWebView inputAccessoryView].
- TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(-[CustomInputWebView initWithFrame:configuration:inputView:inputAccessoryView:]):
(-[CustomInputWebView inputView]):
(-[CustomInputWebView inputAccessoryView]):
(TestWebKitAPI::TEST):
- 6:33 PM Changeset in webkit [246228] by
-
- 3 edits in trunk/Source/WebKit
Disable focus rings on WKContentView for PLATFORM(IOSMAC)
https://bugs.webkit.org/show_bug.cgi?id=198685
Reviewed by Simon Fraser.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/WKContentView.mm:
(-[WKContentView _commonInitializationWithProcessPool:configuration:]):
- 6:30 PM Changeset in webkit [246227] by
-
- 3 edits in trunk/LayoutTests
[ Mac Debug ] REGRESSION (r242975) Layout Test storage/indexeddb/modern/deletedatabase-2-private.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=196445
<rdar://problem/49483061>
Reviewed by Brady Eidson.
Unflake the test by making sure to wait for the onerror event before continuing the test.
- platform/mac-wk2/TestExpectations:
- storage/indexeddb/modern/resources/deletedatabase-2.js:
(prepareDatabase.event.target.onerror):
(continueTest1.request.onsuccess): Deleted.
- 5:48 PM Changeset in webkit [246226] by
-
- 10 edits in trunk/Source
Extend quirks to emulate bold/italic/underline in hidden editable areas
https://bugs.webkit.org/show_bug.cgi?id=198681
Reviewed by Wenson Hsieh.
Source/WebCore:
Rename only.
Rename quirks to be more accurate for new extended use.
- page/Quirks.cpp:
(WebCore::shouldEmulateEditingButtonsAndGesturesInHiddenEditableAreasForHost):
(WebCore::Quirks::shouldEmulateEditingButtonsAndGesturesInHiddenEditableAreas const):
(WebCore::shouldEmulateUndoRedoInHiddenEditableAreasForHost): Deleted.
(WebCore::Quirks::shouldEmulateUndoRedoInHiddenEditableAreas const): Deleted.
- page/Quirks.h:
Source/WebKit:
- Shared/FocusedElementInformation.cpp:
(WebKit::FocusedElementInformation::encode const):
(WebKit::FocusedElementInformation::decode):
- Shared/FocusedElementInformation.h:
- Shared/SyntheticEditingCommandType.h:
- UIProcess/ios/WKContentView.mm:
(-[WKContentView undoManager]):
- UIProcess/ios/WKContentViewInteraction.mm:
(shouldSynthezieKeyEvents):
(-[WKContentView toggleBoldfaceForWebView:]):
(-[WKContentView toggleItalicsForWebView:]):
(-[WKContentView toggleUnderlineForWebView:]):
(-[WKContentView _elementDidBlur]):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::generateSyntheticEditingCommand):
(WebKit::WebPage::getFocusedElementInformation):
- 5:03 PM Changeset in webkit [246225] by
-
- 12 edits1 delete in trunk
Unreviewed, rolling out r246138.
Broke internal builds
Reverted changeset:
"[WHLSL] Educate the property resolver about IndexExpressions"
https://bugs.webkit.org/show_bug.cgi?id=198399
https://trac.webkit.org/changeset/246138
- 4:59 PM Changeset in webkit [246224] by
-
- 17 edits6 copies in trunk/Source/WebKit
Introduce new SPI for context menus on iOS
https://bugs.webkit.org/show_bug.cgi?id=198590
Reviewed by Tim Horton.
Also introduce WKContextMenuElementInfo which is API.
This is part of <rdar://problem/51003503>
- Shared/API/APIObject.h:
- Shared/API/Cocoa/WebKit.h:
- Shared/Cocoa/APIObject.mm:
(API::Object::newObject):
- Sources.txt:
- SourcesCocoa.txt:
- UIProcess/API/APIContextMenuElementInfo.cpp: Added.
(API::ContextMenuElementInfo::ContextMenuElementInfo):
- UIProcess/API/APIContextMenuElementInfo.h: Added.
- UIProcess/API/Cocoa/WKContextMenuElementInfo.h: Added.
- UIProcess/API/Cocoa/WKContextMenuElementInfo.mm: Added.
(-[WKContextMenuElementInfo linkURL]):
(-[WKContextMenuElementInfo _apiObject]):
(-[WKContextMenuElementInfo _activatedElementInfo]):
- UIProcess/API/Cocoa/WKContextMenuElementInfoInternal.h: Added.
- UIProcess/API/Cocoa/WKContextMenuElementInfoPrivate.h: Added.
- UIProcess/API/Cocoa/WKPreviewElementInfo.h:
- UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
- UIProcess/API/Cocoa/_WKActivatedElementInfo.h:
- UIProcess/API/Cocoa/_WKActivatedElementInfo.mm:
(-[_WKActivatedElementInfo _initWithInteractionInformationAtPosition:]):
(-[_WKActivatedElementInfo isAnimatedImage]):
- UIProcess/ios/WKActionSheetAssistant.h:
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant defaultActionsForLinkSheet:]):
(-[WKActionSheetAssistant defaultActionsForImageSheet:]):
- UIProcess/ios/WKContentView.h:
- UIProcess/ios/WKContentViewInteraction.mm:
- WebKit.xcodeproj/project.pbxproj:
- 4:18 PM Changeset in webkit [246223] by
-
- 6 edits in trunk
Web Inspector: longhand CSS properties overridden by shorthands miss strikethrough
https://bugs.webkit.org/show_bug.cgi?id=198629
<rdar://problem/51504160>
Reviewed by Devin Rousso.
Source/WebInspectorUI:
Longhand CSS properties (e.g. "font-size") overriden by shorthands (e.g. "font") now have strikethroughs.
- UserInterface/Models/CSSProperty.js:
(WI.CSSProperty.prototype.set overridingProperty):
(WI.CSSProperty):
- UserInterface/Models/DOMNodeStyles.js:
(WI.DOMNodeStyles.prototype._updateStyleCascade):
Call _associateRelatedProperties before _markOverriddenProperties because
_associateRelatedProperties sets relatedShorthandProperty property, which
is now used by _markOverriddenProperties.
(WI.DOMNodeStyles.prototype._markOverriddenProperties.isOverriddenBy):
(WI.DOMNodeStyles.prototype._markOverriddenProperties):
LayoutTests:
- inspector/css/overridden-property-expected.txt:
- inspector/css/overridden-property.html:
- 3:52 PM Changeset in webkit [246222] by
-
- 2 edits in trunk/Tools
[lldb-webkit] Pretty-print all kinds of Documents
https://bugs.webkit.org/show_bug.cgi?id=198620
Reviewed by Simon Fraser.
Register formatters for all classes derived from WebCore::Document so we get nice summaries
without having to drill down in Xcode- or casting- to the base class, Document.
Older LLDB versions use to do this automatically, but this functionality was removed in newer
versions:
[[
Warning: previous versions of LLDB defined cascading to mean not only going through typedef
chains, but also through inheritance chains. This feature has been removed since it
significantly degrades performance. You need to set up your formatters for every type in
inheritance chains to which you want the formatter to apply.
]]
<https://lldb.llvm.org/use/variable.html> (as of 06/06/2019)
- lldb/lldb_webkit.py:
(lldb_init_module):
- 3:50 PM Changeset in webkit [246221] by
-
- 5 edits in trunk/Tools
webkitpy: Support reporting results for uncommon test configurations
https://bugs.webkit.org/show_bug.cgi?id=198662
<rdar://problem/51524128>
Reviewed by Aakash Jain.
- Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Override wk1 and wk2 flavors with specified flavor.
- Scripts/webkitpy/port/base.py:
(Port.configuration_for_upload): Set flavor based on options.
- Scripts/webkitpy/results/options.py:
(upload_options): Add result-report-flavor option.
- Scripts/webkitpy/test/main.py:
(Tester._run_tests): Set flavor based on options.
- 3:43 PM Changeset in webkit [246220] by
-
- 7 edits in branches/safari-608.1.27-branch/Source
Versioning.
- 3:40 PM Changeset in webkit [246219] by
-
- 1 copy in tags/Safari-608.1.27.5
Tag Safari-608.1.27.5.
- 3:26 PM Changeset in webkit [246218] by
-
- 1 edit in trunk/Source/WebCore/ChangeLog
Correct commit message for my previous commit
Brent didn't review this. It was unreviewed. Whoops!
- 3:24 PM Changeset in webkit [246217] by
-
- 25 edits in trunk
[WebGPU] Remove GPUBuffer.setSubData and implement GPUDevice.createBufferMapped
https://bugs.webkit.org/show_bug.cgi?id=198591
Reviewed by Myles C. Maxfield.
Source/WebCore:
Remove GPUBuffer.setSubData from the WebGPU API.
Add GPUDevice.createBufferMapped to the WebGPU API.
Existing tests have been updated.
- Modules/webgpu/WebGPUBuffer.cpp:
(WebCore::WebGPUBuffer::setSubData): Deleted.
- Modules/webgpu/WebGPUBuffer.h:
- Modules/webgpu/WebGPUBuffer.idl:
- Modules/webgpu/WebGPUDevice.cpp:
(WebCore::WebGPUDevice::createBufferMapped const):
- Modules/webgpu/WebGPUDevice.h:
- Modules/webgpu/WebGPUDevice.idl:
- platform/graphics/gpu/GPUBuffer.h:
- platform/graphics/gpu/GPUCommandBuffer.h:
- platform/graphics/gpu/GPUDevice.cpp:
(WebCore::GPUDevice::tryCreateBuffer):
- platform/graphics/gpu/GPUDevice.h:
- platform/graphics/gpu/cocoa/GPUBufferMetal.mm:
(WebCore::GPUBuffer::tryCreate):
(WebCore::GPUBuffer::GPUBuffer):
(WebCore::GPUBuffer::state const):
(WebCore::GPUBuffer::mapOnCreation):
(WebCore::GPUBuffer::commandBufferCompleted):
(WebCore::GPUBuffer::copyStagingBufferToGPU):
Required to unmap GPUBuffers created with GPU-private storage.
(WebCore::GPUBuffer::unmap):
(WebCore::GPUBuffer::setSubData): Deleted.
(WebCore::GPUBuffer::reuseSubDataBuffer): Deleted.
LayoutTests:
GPUBuffer.setSubData has been removed from the WebGPU implementation.
GPUDevice.createBufferMapped has been added to the WebGPU implementation.
Replace all setSubData calls with appropriate replacements.
- webgpu/blend-triangle-strip.html:
- webgpu/blit-commands.html:
- webgpu/buffer-command-buffer-races.html:
- webgpu/buffer-resource-triangles.html:
- webgpu/compute-squares.html:
- webgpu/depth-enabled-triangle-strip.html:
- webgpu/draw-indexed-triangles.html:
- webgpu/js/webgpu-functions.js:
(createBufferWithData):
(async.mapWriteDataToBuffer):
- webgpu/map-read-buffers-expected.txt:
- webgpu/map-read-buffers.html:
- webgpu/texture-triangle-strip.html:
- webgpu/vertex-buffer-triangle-strip.html:
- 3:18 PM Changeset in webkit [246216] by
-
- 3 edits in trunk/Source/WebCore
Fix non-iOS build after r246205
https://bugs.webkit.org/show_bug.cgi?id=198657
Reviewed by Brent Fulgham.
<rdar://problem/51345064>
- page/Quirks.cpp:
- page/Quirks.h:
- 3:12 PM Changeset in webkit [246215] by
-
- 4 edits in trunk/Source/WebCore
mediaDevices.enumerateDevices() doesn't list the system default audio devices with deviceId as "default"
https://bugs.webkit.org/show_bug.cgi?id=198577
<rdar://problem/51454067>
Reviewed by Eric Carlson.
Make the system default microphone/camera be the first in the list.
This ensures that getUserMedia without constraints will pick these devices.
This also ensures enumerateDevices will show these default devices as first in the list.
Make sure that a default device change will refresh the list.
For CoreAudioCaptureSource, we always add the default system input device in the list of capture devices.
Covered by manual testing.
- platform/mediastream/mac/AVCaptureDeviceManager.h:
- platform/mediastream/mac/AVCaptureDeviceManager.mm:
(WebCore::toCaptureDevice):
(WebCore::AVCaptureDeviceManager::isMatchingExistingCaptureDevice):
(WebCore::AVCaptureDeviceManager::refreshCaptureDevices):
- platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:
(WebCore::getDefaultDeviceID):
(WebCore::CoreAudioCaptureDeviceManager::refreshAudioCaptureDevices):
- 2:49 PM Changeset in webkit [246214] by
-
- 2 edits in trunk/LayoutTests
Layout Test fast/events/fire-mousedown-while-pressing-mouse-button.html is failing
https://bugs.webkit.org/show_bug.cgi?id=198679
Unreviewed test gardening.
- platform/win/TestExpectations:
- 1:55 PM Changeset in webkit [246213] by
-
- 7 edits2 adds in trunk
Restrict fast clicks everywhere to desktop content mode
https://bugs.webkit.org/show_bug.cgi?id=198610
<rdar://problem/50114230>
Reviewed by Dean Jackson.
Source/WebKit:
We now set a new allowsFastClicksEverywhere property on the WebPageProxy when the content mode changes, set to true
when we're in desktop browsing mode. We now check on this property to opt into the fast clicks everywhere behavior.
This patch had been reverted once because it yielded some regressions in existing tests, notably under
fast/events/touch/ios/content-observation. This updated patch addresses this by ensuring the gesture recognizers
used for double-tap-to-zoom are disabled in -[WKContentViewInteraction _didStartProvisionalLoadForMainFrame]
to ensure that two tests dispatching a tap at the same location don't yield the recognition of a double-tap
rathern than the recognition of two single taps.
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::allowsFastClicksEverywhere const):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]):
(_didStartProvisionalLoadForMainFrame):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):
LayoutTests:
Add a new test that enables fast clicks but also sets a mobile content mode.
We also mark fast/visual-viewport/ios/min-scale-greater-than-one.html as non-flaky
since the flakiness was due to the fast clicks everywhere behavior being enabled on iPhone.
Finally, we can now remove the hack where ui.tap() in the Pointer Events utility returned
a promise with a one-second delay since the issue of double-taps being recognized instead of
two consecutive single taps across two tests has been resolved.
- fast/events/ios/ipad/fast-click-always-mobile-content-mode-expected.txt: Added.
- fast/events/ios/ipad/fast-click-always-mobile-content-mode.html: Added.
- platform/ios-simulator-wk2/TestExpectations:
- pointerevents/utils.js:
- 1:08 PM Changeset in webkit [246212] by
-
- 3 edits in trunk/Source/WebCore
A MediaStreamTrack cannot modify whether being a capture track or not
https://bugs.webkit.org/show_bug.cgi?id=198669
Reviewed by Eric Carlson.
Add a boolean in MediaStreamTrack to store whether a track is a capture one or not.
This removes the need to always go through the private and its source.
As a track might change of source (for non capture track cases), this
also removes the possibility for a track to be capture and then no
longer capture.
No change of behavior.
See also rdar://problem/49444622.
- Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack):
- Modules/mediastream/MediaStreamTrack.h:
(WebCore::MediaStreamTrack::isCaptureTrack const):
- 1:07 PM Changeset in webkit [246211] by
-
- 2 edits in trunk/Source/WebCore
Add a RELEASE_ASSERT that removeAudioProducer should always be done in the main thread
https://bugs.webkit.org/show_bug.cgi?id=198668
Reviewed by Eric Carlson.
See rdar://problem/49444622 for background information.
No change of behavior.
- dom/Document.cpp:
(WebCore::Document::removeAudioProducer):
- 11:54 AM Changeset in webkit [246210] by
-
- 3 edits1 add in trunk
AI should get GetterSetter structure from the base's GlobalObject for GetGetterSetterByOffset
https://bugs.webkit.org/show_bug.cgi?id=198581
<rdar://problem/51099753>
Reviewed by Saam Barati.
JSTests:
- stress/global-object-proto-getter.js: Added.
(f):
(test):
Source/JavaScriptCore:
For GetGetterSetterByOffset, when the abstract interpreter fails to read the property
from the object, it gets the GetterSetter structure from the CodeBlock's global object.
However, that's not correct, since the global object for the base object might differ
from the CodeBlock's. Instead, we try to get the global object from the base, when it's
a constant object. Otherwise, we can't infer the value and only set the type.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- 11:05 AM Changeset in webkit [246209] by
-
- 8 edits in branches/safari-608.1.27-branch/Source/WebCore
Cherry-pick r246207. rdar://problem/51185518
Images are not resizing correctly when dragged to a message in 1/3 view
https://bugs.webkit.org/show_bug.cgi?id=198623
<rdar://problem/51185518>
Reviewed by Wenson Hsieh.
Mail's max-width: 100%; default style is in conflict with the preferred presentation size. This patch preserves the existing behaviour for Mail by
not setting the height (and rely on the width + aspect ratio).
- editing/WebContentReader.h:
- editing/cocoa/WebContentReaderCocoa.mm: (WebCore::createFragmentForImageAttachment): (WebCore::WebContentReader::readImage): (WebCore::attachmentForFilePath): (WebCore::attachmentForData): (WebCore::WebContentReader::readFilePath): (WebCore::WebContentReader::readDataBuffer):
- editing/gtk/EditorGtk.cpp: (WebCore::createFragmentFromPasteboardData):
- editing/markup.cpp: (WebCore::createFragmentForImageAndURL):
- editing/markup.h:
- platform/Pasteboard.h: (WebCore::PasteboardWebContentReader::readFilePath): (WebCore::PasteboardWebContentReader::readImage): (WebCore::PasteboardWebContentReader::readDataBuffer):
- platform/PasteboardItemInfo.h: (WebCore::PasteboardItemInfo::encode const): (WebCore::PasteboardItemInfo::decode):
- platform/ios/PasteboardIOS.mm: (WebCore::Pasteboard::readPasteboardWebContentDataForType): (WebCore::Pasteboard::read): (WebCore::Pasteboard::readRespectingUTIFidelities):
- platform/ios/PlatformPasteboardIOS.mm: (WebCore::PlatformPasteboard::informationForItemAtIndex):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246207 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:57 AM Changeset in webkit [246208] by
-
- 3 edits in branches/safari-608.1.27-branch/Source/WebCore
Cherry-pick r246205. rdar://problem/51345064
Limit simulated mouse events on Google Maps to entering Street View
https://bugs.webkit.org/show_bug.cgi?id=198657
<rdar://problem/51345064>
Reviewed by Brent Fulgham.
- page/Quirks.cpp: (WebCore::Quirks::shouldDispatchSimulatedMouseEvents const): (WebCore::Quirks::shouldDispatchSimulatedMouseEventsOnTarget const):
- page/Quirks.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:50 AM Changeset in webkit [246207] by
-
- 8 edits in trunk/Source/WebCore
Images are not resizing correctly when dragged to a message in 1/3 view
https://bugs.webkit.org/show_bug.cgi?id=198623
<rdar://problem/51185518>
Reviewed by Wenson Hsieh.
Mail's max-width: 100%; default style is in conflict with the preferred presentation size. This patch preserves the existing behaviour for Mail by
not setting the height (and rely on the width + aspect ratio).
- editing/WebContentReader.h:
- editing/cocoa/WebContentReaderCocoa.mm:
(WebCore::createFragmentForImageAttachment):
(WebCore::WebContentReader::readImage):
(WebCore::attachmentForFilePath):
(WebCore::attachmentForData):
(WebCore::WebContentReader::readFilePath):
(WebCore::WebContentReader::readDataBuffer):
- editing/gtk/EditorGtk.cpp:
(WebCore::createFragmentFromPasteboardData):
- editing/markup.cpp:
(WebCore::createFragmentForImageAndURL):
- editing/markup.h:
- platform/Pasteboard.h:
(WebCore::PasteboardWebContentReader::readFilePath):
(WebCore::PasteboardWebContentReader::readImage):
(WebCore::PasteboardWebContentReader::readDataBuffer):
- platform/PasteboardItemInfo.h:
(WebCore::PasteboardItemInfo::encode const):
(WebCore::PasteboardItemInfo::decode):
- platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::readPasteboardWebContentDataForType):
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::readRespectingUTIFidelities):
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::informationForItemAtIndex):
- 10:15 AM Changeset in webkit [246206] by
-
- 4 edits in trunk/Source/WebCore
[LFC][IFC] Line should skip all vertical adjustment when running preferred width computation
https://bugs.webkit.org/show_bug.cgi?id=198642
<rdar://problem/51511043>
Reviewed by Antti Koivisto.
While layout triggers both horizontal and vertical aligment, preferred width computation should only do (logical)horizontal.
Make all vertical alignment computation optional in Line.
- layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
(WebCore::Layout::UncommittedContent::add):
(WebCore::Layout::InlineFormattingContext::LineLayout::placeInlineItems const):
(WebCore::Layout::InlineFormattingContext::LineLayout::computedIntrinsicWidth const):
(WebCore::Layout::InlineFormattingContext::LineLayout::createDisplayRuns const):
(WebCore::Layout::inlineItemHeight): Deleted.
- layout/inlineformatting/InlineLine.cpp:
(WebCore::Layout::Line::Content::Run::Run):
(WebCore::Layout::Line::Line):
(WebCore::Layout::Line::close):
(WebCore::Layout::Line::removeTrailingTrimmableContent):
(WebCore::Layout::Line::moveLogicalLeft):
(WebCore::Layout::Line::trailingTrimmableWidth const):
(WebCore::Layout::Line::appendNonBreakableSpace):
(WebCore::Layout::Line::appendInlineContainerStart):
(WebCore::Layout::Line::appendInlineContainerEnd):
(WebCore::Layout::Line::appendTextContent):
(WebCore::Layout::Line::appendNonReplacedInlineBox):
(WebCore::Layout::Line::appendReplacedInlineBox):
(WebCore::Layout::Line::appendHardLineBreak):
(WebCore::Layout::Line::inlineItemHeight const):
- layout/inlineformatting/InlineLine.h:
- 10:11 AM Changeset in webkit [246205] by
-
- 3 edits in trunk/Source/WebCore
Limit simulated mouse events on Google Maps to entering Street View
https://bugs.webkit.org/show_bug.cgi?id=198657
<rdar://problem/51345064>
Reviewed by Brent Fulgham.
- page/Quirks.cpp:
(WebCore::Quirks::shouldDispatchSimulatedMouseEvents const):
(WebCore::Quirks::shouldDispatchSimulatedMouseEventsOnTarget const):
- page/Quirks.h:
- 10:10 AM Changeset in webkit [246204] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Update sandboxes to address iokit-get-property errors
https://bugs.webkit.org/show_bug.cgi?id=198494
<rdar://problem/51322072> and <rdar://problem/50602737>
Reviewed by Per Arne Vollan.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 9:31 AM Changeset in webkit [246203] by
-
- 2 edits in trunk/LayoutTests
http/tests/storageAccess/request-and-grant-access-then-navigate-same-site-should-have-access.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=198663
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations: Updating expectations for flaky test
- 9:12 AM Changeset in webkit [246202] by
-
- 2 edits in trunk/LayoutTests
scrollingcoordinator/mac/nested-sticky.html is a flaky Timeout and ImageOnlyFailure
https://bugs.webkit.org/show_bug.cgi?id=198661
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations: Updating expectations for flaky test
- 8:44 AM Changeset in webkit [246201] by
-
- 5 edits in trunk/Source/WebKit
process-swap-on-navigation error when loading blocked website on iOS 12.2 only.
https://bugs.webkit.org/show_bug.cgi?id=196930
<rdar://problem/47819301>
Reviewed by Chris Dumez.
The ContentFilterDidBlockLoadForFrame message needs to be handled by ProvisionalPageProxy in
order to look up the blocked frame in the correct WebProcessProxy.
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::contentFilterDidBlockLoadForFrame):
(WebKit::WebPageProxy::contentFilterDidBlockLoadForFrameShared):
- UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::contentFilterDidBlockLoadForFrame):
(WebKit::ProvisionalPageProxy::didReceiveMessage):
- UIProcess/ProvisionalPageProxy.h:
- UIProcess/WebPageProxy.h:
- 8:36 AM Changeset in webkit [246200] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Use const TabSize& instead of TabSize to avoid unnecessary copy.
Using const reference is a c++ feature to extend the life time of
a temporary object to the life time of the const reference which refers to it.
No behavioral changes.
Patch by Joonghun Park <jh718.park@samsung.com> on 2019-06-07
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::setTabSize):
- 7:57 AM Changeset in webkit [246199] by
-
- 2 edits in trunk/Source/WebCore
[GTK] GLContextEGL.h must be built with @no-unify
https://bugs.webkit.org/show_bug.cgi?id=198659
Unreviewed ARM build fix.
- SourcesGTK.txt:
- 7:42 AM Changeset in webkit [246198] by
-
- 3 edits in trunk/Tools
[iOS] At least 6 API tests are failing due to an exception when writing NSAttributedString to the pasteboard
https://bugs.webkit.org/show_bug.cgi?id=198641
<rdar://problem/51266310>
Reviewed by Tim Horton.
Work around a bug in a lower-level framework, which currently prevents NSAttributedStrings from being written to
UIPasteboard by way of -[NSItemProvider registerObject:visibility:]. This is because, when saving a
representation of "public.rtfd" to disk, the default suggested filename (determined using CoreServices APIs
_UTTypeCreateSuggestedFilename and UTTypeCopyDescription) ends up being nil; UIKit then subsequently tries to
append nil as a path component using -URLByAppendingPathComponent:, which throws an exception. This only
reproduces on iOS simulator.
To work around this for the time being, simply avoid writing a representation of "public.rtfd" to disk. This
representation is actually ignored by most clients anyways (including WebKit), in favor of using
"com.apple.flat-rtfd".
- TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/cocoa/TestWKWebView.mm:
(applyWorkaroundToAllowWritingAttributedStringsToItemProviders):
(-[TestWKWebView initWithFrame:configuration:addToWindow:]):
- 7:17 AM Changeset in webkit [246197] by
-
- 7 edits6 adds in trunk
position:fixed inside overflow positioning nodes is jumpy
https://bugs.webkit.org/show_bug.cgi?id=198647
<rdar://problem/51514437>
Reviewed by Frédéric Wang.
Source/WebCore:
Tests: scrollingcoordinator/ios/fixed-overflow-no-stacking-context-1.html
scrollingcoordinator/ios/fixed-overflow-no-stacking-context-2.html
scrollingcoordinator/ios/fixed-overflow-stacking-context-stationary.html
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/cocoa/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::applyLayerPositions):
Take deltas from positioning nodes into account.
- page/scrolling/cocoa/ScrollingTreePositionedNode.h:
- page/scrolling/cocoa/ScrollingTreePositionedNode.mm:
(WebCore::ScrollingTreePositionedNode::scrollDeltaSinceLastCommit const):
Rename since 'scrollOffset' has other meaning.
(WebCore::ScrollingTreePositionedNode::applyLayerPositions):
(WebCore::ScrollingTreePositionedNode::scrollOffsetSinceLastCommit const): Deleted.
- page/scrolling/cocoa/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::applyLayerPositions):
LayoutTests:
- scrollingcoordinator/ios/fixed-overflow-no-stacking-context-1-expected.html: Added.
- scrollingcoordinator/ios/fixed-overflow-no-stacking-context-1.html: Added.
- scrollingcoordinator/ios/fixed-overflow-no-stacking-context-2-expected.html: Added.
- scrollingcoordinator/ios/fixed-overflow-no-stacking-context-2.html: Added.
- scrollingcoordinator/ios/fixed-overflow-stacking-context-stationary-expected.html: Added.
- scrollingcoordinator/ios/fixed-overflow-stacking-context-stationary.html: Added.
- 7:12 AM Changeset in webkit [246196] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed. Fix api used to release wpe_fdo_egl_exported_image in GTK
We are using the old deprecated API in AcceleratedBackingStoreWayland::displayBuffer().
- UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
(WebKit::AcceleratedBackingStoreWayland::displayBuffer):
- 3:54 AM Changeset in webkit [246195] by
-
- 3 edits6 adds in trunk
[MSE][GStreamer] Avoid QUOTA_EXCEEDED_ERR when seeking to a buffered range just before the buffered one
https://bugs.webkit.org/show_bug.cgi?id=166620
Reviewed by Xabier Rodriguez-Calvar.
Source/WebCore:
This patch is fixing a seek to unbuffered range just before the buffered one.
For example, supposing a [120, 176) append has filled all the memory and then
a seek to 115.0 is done, a subsequent [115, 120) append would fail without
this fix. EvictCodedFrames() would return without actually evicting anything,
and appendBufferInternal will print "buffer full, failing with
QUOTA_EXCEEDED_ERR error" on GStreamer platforms instead of letting the new
[115, 120) append succeed.
This patch is based on an original patch by iivlev <iivlev@productengine.com>
Test: media/media-source/media-source-append-before-last-range-no-quota-exceeded.html
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::evictCodedFrames):
Removed the "only if there are buffered ranges *containing* the currentTime" condition
to enter into the second part of the eviction algorithm, which removes frames
starting from the duration of the media and going backwards down to currentPosition + 30.
The loop break condition has also been changed to deal with notFound currentTimeRange.
LayoutTests:
Added a test to check that, after the memory is filled by appending a continuous
range, a seek right before it and a new append can be done without getting a
QuotaExceededError on GStreamer ports. On the rest of the ports, QuotaExceededError
is never thrown and the expectations just check that the right buffered ranges
remain.
- media/media-source/media-source-append-before-last-range-no-quota-exceeded-expected.txt: Added.
- media/media-source/media-source-append-before-last-range-no-quota-exceeded.html: Added.
- platform/gtk/media/media-source/media-source-append-before-last-range-no-quota-exceeded-expected.txt: Added.
- platform/wpe/media/media-source/media-source-append-before-last-range-no-quota-exceeded-expected.txt: Added.
- 1:59 AM Changeset in webkit [246194] by
-
- 3 edits in trunk/Source/WebCore
[GStreamer] AVC1 decoding capabilities probing support
https://bugs.webkit.org/show_bug.cgi?id=198569
Patch by Philippe Normand <philn@igalia.com> on 2019-06-07
Reviewed by Xabier Rodriguez-Calvar.
When capabilities for an avc1 codec are requested, the registry scanner looks
for a compatible decoder for the given H.264 profile and level.
This new approach can be avoided by using the WEBKIT_GST_MAX_AVC1_RESOLUTION
environment variable. If supplied, the decoder capabilities won't be probed and
the codec will be advertised as supported if it complies with the contents of
the environment variable. The resolutions currently handled are specifically:
1080P, 720P and 480P. We don't handle framerate checking yet, so the implied
H.264 levels are assumed to be for 30FPS.
- platform/graphics/gstreamer/GStreamerRegistryScanner.cpp:
(WebCore::GStreamerRegistryScanner::isCodecSupported const):
(WebCore::GStreamerRegistryScanner::areInputCapsAccepted const):
(WebCore::GStreamerRegistryScanner::isAVC1CodecSupported const):
- platform/graphics/gstreamer/GStreamerRegistryScanner.h:
- 1:27 AM Changeset in webkit [246193] by
-
- 23 edits6 adds in trunk
Implement tab-size with units
https://bugs.webkit.org/show_bug.cgi?id=179022
Reviewed by Simon Fraser.
This change is ported from Blink.
The committed revision is https://src.chromium.org/viewvc/blink?revision=189430&view=revision.
Additionally, this patch lets css "number" value be allowed as tab-size's property value,
not css "integer" value,
according to https://drafts.csswg.org/css-text-3/#tab-size-property.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-text/inheritance-expected.txt:
- web-platform-tests/css/css-text/parsing/tab-size-valid-expected.txt:
- web-platform-tests/css/css-values/calc-numbers-expected.txt: Added.
- web-platform-tests/css/css-values/calc-numbers.html: Added.
Source/WebCore:
Tests: css3/tab-size.html
imported/w3c/web-platform-tests/css/css-values/calc-numbers.html
- Headers.cmake:
- WebCore.xcodeproj/project.pbxproj:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
- css/CSSProperties.json:
- css/StyleBuilderConverter.h:
(WebCore::StyleBuilderConverter::convertTabSize):
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeTabSize):
- layout/inlineformatting/text/TextUtil.cpp:
(WebCore::Layout::TextUtil::width):
- platform/graphics/FontCascade.h:
(WebCore::FontCascade::tabWidth const):
- platform/graphics/TabSize.h: Added.
(WebCore::TabSize::TabSize):
(WebCore::TabSize::isSpaces const):
(WebCore::TabSize::widthInPixels const):
(WebCore::TabSize::operator bool const):
(WebCore::operator==):
(WebCore::operator!=):
- platform/graphics/TextRun.cpp:
- platform/graphics/TextRun.h:
(WebCore::TextRun::tabSize const):
(WebCore::TextRun::setTabSize):
- rendering/SimpleLineLayoutTextFragmentIterator.cpp:
(WebCore::SimpleLineLayout::TextFragmentIterator::Style::Style):
- rendering/SimpleLineLayoutTextFragmentIterator.h:
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::tabSize const):
(WebCore::RenderStyle::setTabSize):
(WebCore::RenderStyle::initialTabSize):
- rendering/style/StyleRareInheritedData.cpp:
- rendering/style/StyleRareInheritedData.h:
LayoutTests:
- TestExpectations:
- css3/tab-size-expected.txt: Added.
- css3/tab-size.html: Added.
- fast/css/tab-size-expected.html:
- fast/css/tab-size.html:
- 1:14 AM Changeset in webkit [246192] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] videorate issues with v4l2src
https://bugs.webkit.org/show_bug.cgi?id=198614
Reviewed by Xabier Rodriguez-Calvar.
Configure videorate to cope with the live stream provided by the
source element. Not doing so might lead to errors in the v4l2
buffer allocator.
- platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp:
(WebCore::GStreamerVideoCapturer::createConverter):
Jun 6, 2019:
- 11:26 PM Changeset in webkit [246191] by
-
- 4 edits2 adds in branches/safari-608.1.27-branch
Cherry-pick r246096. rdar://problem/51375055
[ContentChangeObserver] Gmail text editing controls require two taps
https://bugs.webkit.org/show_bug.cgi?id=198541
<rdar://problem/51375055>
Reviewed by Simon Fraser.
Source/WebCore:
When the animation completes we should also check if the newly visible content is also clickable and report it accordingly.
When the animated content is not clickable, we need to proceed with click instead of stopping at hover.
Test: fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove-no-clickable.html
- page/ios/ContentChangeObserver.cpp: (WebCore::isConsideredClickable): (WebCore::ContentChangeObserver::didFinishTransition): (WebCore::ContentChangeObserver::adjustObservedState): (WebCore::ContentChangeObserver::StyleChangeScope::~StyleChangeScope): (WebCore::ContentChangeObserver::StyleChangeScope::isConsideredClickable const): Deleted. -> Turn it into a static function so that didFinishTransition could call it as well.
- page/ios/ContentChangeObserver.h:
LayoutTests:
- fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove-no-clickable.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246096 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:09 PM Changeset in webkit [246190] by
-
- 5 edits in trunk/Source/WebCore
process-swap-on-navigation error when loading blocked website on iOS 12.2 only.
https://bugs.webkit.org/show_bug.cgi?id=196930
<rdar://problem/47819301>
Reviewed by Chris Dumez.
When the content filter blocks a navigation, it will continue to load the content filter
error page in the provisional web process. When dispatching didFailProvisionalLoad, we need
to specify WillContinueLoading::Yes so that WebKit presents the error page rather than
switching back to the committed web process.
Testing blocked by <https://webkit.org/b/198626>.
- loader/ContentFilter.cpp:
(WebCore::ContentFilter::willHandleProvisionalLoadFailure):
(WebCore::ContentFilter::handleProvisionalLoadFailure):
- loader/ContentFilter.h:
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::dispatchDidFailProvisionalLoad):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
- loader/FrameLoader.h:
- 10:47 PM Changeset in webkit [246189] by
-
- 4 edits in trunk/Tools
REGRESSION(r244857): [GTK][WPE] Many tests are no longer run in the bots after r244857
https://bugs.webkit.org/show_bug.cgi?id=198607
Reviewed by Michael Catanzaro.
Since r244857 several test executables are compiled in the base tests directory instead of using their own sub
directory. Our scripts to run the tests rely on the tests location to decide whether to run them or not, or
determine the type of the tests.
- Scripts/run-gtk-tests:
(GtkTestRunner): Rename TEST_DIRS as TEST_TARGETS and use the executable names for tests not in a subdirectory.
(GtkTestRunner._setup_testing_environment): Fix TestWebKitAccessibility directory name.
(GtkTestRunner.is_glib_test): Use the test name for the ones not using a subdirectory.
(GtkTestRunner.is_google_test): Ditto.
- Scripts/run-wpe-tests:
(WPETestRunner): Rename TEST_DIRS as TEST_TARGETS and use the executable names for tests not in a subdirectory.
(WPETestRunner.is_glib_test): Use the test name for the ones not using a subdirectory.
(WPETestRunner.is_google_test): Ditto.
- glib/api_test_runner.py:
(TestRunner): Rename TEST_DIRS as TEST_TARGETS.
(TestRunner._get_tests): Handle test targets which can now contain directories and executables.
- 10:46 PM Changeset in webkit [246188] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r243094): [GTK][WPE] Stale content after restoring the web view session
https://bugs.webkit.org/show_bug.cgi?id=198561
Reviewed by Chris Dumez.
This is another regression of delaying the web process launch until the first load. If the session is restored
before anything has been loaded, which is the normal way, the RestoreSession message is just ignored and the
state is sent to the WebPage on creation via creation parameters. The WebPage considers that restoring a session
from creation parameters only happens when re-launching a process after a crash or in case of process swap. In
those cases, the history item is not marked as restored from session. We need to ensure the session is restored
in the web process from the IPC message handler, by launching the initial process before the session is
restored.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::restoreFromSessionState):
- 10:14 PM Changeset in webkit [246187] by
-
- 2 edits in trunk/Source/WebCore
RELEASE_ASSERT hit in CachedFrame constructor
https://bugs.webkit.org/show_bug.cgi?id=198625
<rdar://problem/49877867>
Reviewed by Geoffrey Garen.
This is a speculative fix, it appears the document is already detached from its
frame by the time we construct a CachedFrame for it when entering PageCache.
No new tests, because we do not know yet how this can be reproduced.
- history/PageCache.cpp:
(WebCore::canCacheFrame):
Make a frame as ineligible for PageCache if:
- It does not have a document
or
- Its document is already detached from the frame
(WebCore::PageCache::addIfCacheable):
Destroy the render tree *before* we check if the page can enter page cache, in case
destroying the render tree has any side effects that could make the page ineligible
for Page Cache.
- 8:38 PM Changeset in webkit [246186] by
-
- 2 edits in trunk/Source/WebCore
Web Inspector: Timelines: only complete Composite records if the m_startedComposite (followup to r246142)
https://bugs.webkit.org/show_bug.cgi?id=198639
Reviewed by Matt Baker.
In r246142, an
ASSERTwas removed because it is possible for Web Inspector to be opened in
betweenwillCompositeanddidComposite, meaning that previously theASSERTwould fire.
In order to properly handle this, we should replace the
ASSERTwith anifso that Web
Inspector doesn't even try to complete aCompositerecord if it was opened in that case.
- inspector/agents/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didComposite):
- 8:29 PM Changeset in webkit [246185] by
-
- 5 edits in trunk/Source/WebKit
Use an enumeration in UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo callback
https://bugs.webkit.org/show_bug.cgi?id=198548
Reviewed by Eric Carlson.
Move from an Optional<bool> to an enum having three values to ease readability.
- UIProcess/UserMediaPermissionCheckProxy.cpp:
(WebKit::UserMediaPermissionCheckProxy::setUserMediaAccessInfo):
(WebKit::UserMediaPermissionCheckProxy::complete):
- UIProcess/UserMediaPermissionCheckProxy.h:
(WebKit::UserMediaPermissionCheckProxy::invalidate):
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::captureDevicesChanged):
(WebKit::UserMediaPermissionRequestManagerProxy::startProcessingUserMediaPermissionRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo):
(WebKit::UserMediaPermissionRequestManagerProxy::enumerateMediaDevicesForFrame):
- UIProcess/UserMediaPermissionRequestManagerProxy.h:
- 6:28 PM Changeset in webkit [246184] by
-
- 15 edits in trunk
Allow WebKitTestRunner to terminate network process after it finishes service worker file operations
https://bugs.webkit.org/show_bug.cgi?id=198584
Reviewed by Geoffrey Garen.
Source/WebCore:
Add a promise-based internal API to store service worker registrations on disk.
Covered by updated test.
- testing/Internals.cpp:
(WebCore::Internals::storeRegistrationsOnDisk):
- testing/Internals.h:
- testing/Internals.idl:
- workers/service/SWClientConnection.h:
(WebCore::SWClientConnection::storeRegistrationsOnDiskForTesting):
- workers/service/server/RegistrationStore.cpp:
(WebCore::RegistrationStore::startSuspension):
(WebCore::RegistrationStore::closeDatabase):
- workers/service/server/RegistrationStore.h:
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::Connection::storeRegistrationsOnDisk):
- workers/service/server/SWServer.h:
Source/WebKit:
Add IPC binding to new internal API.
- NetworkProcess/ServiceWorker/WebSWServerConnection.messages.in:
- WebProcess/Storage/WebSWClientConnection.cpp:
(WebKit::WebSWClientConnection::storeRegistrationsOnDiskForTesting):
- WebProcess/Storage/WebSWClientConnection.h:
LayoutTests:
- http/wpt/service-workers/service-worker-networkprocess-crash.html:
- 5:30 PM Changeset in webkit [246183] by
-
- 5 edits2 deletes in trunk
Unreviewed, rolling out r246165.
https://bugs.webkit.org/show_bug.cgi?id=198636
Causing test failures in 7 content-observation tests.
(Requested by ShawnRoberts on #webkit).
Reverted changeset:
"Restrict fast clicks everywhere to desktop content mode"
https://bugs.webkit.org/show_bug.cgi?id=198610
https://trac.webkit.org/changeset/246165
- 5:23 PM Changeset in webkit [246182] by
-
- 2 edits in trunk/Source/WebCore
Avoid generating new XSLT-based document when already changing the document.
https://bugs.webkit.org/show_bug.cgi?id=198525
<rdar://problem/51393787>
Reviewed by Ryosuke Niwa.
We should not allow a pending XSLT transform to change the current document when
that current document is int he process of being replaced.
- dom/Document.cpp:
(WebCore::Document::applyPendingXSLTransformsTimerFired):
- 5:14 PM Changeset in webkit [246181] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, rolling out r246123.
https://bugs.webkit.org/show_bug.cgi?id=198634
Causes test failures (Requested by ShawnRoberts on #webkit).
Reverted changeset:
"[iOS] Update sandboxes to address iokit-get-property errors"
https://bugs.webkit.org/show_bug.cgi?id=198494
https://trac.webkit.org/changeset/246123
- 4:56 PM Changeset in webkit [246180] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Timelines: remove always disabled details sidebar navigation item
https://bugs.webkit.org/show_bug.cgi?id=198393
Reviewed by Timothy Hatcher.
- UserInterface/Views/TimelineTabContentView.js:
(WI.TimelineTabContentView):
- 4:37 PM Changeset in webkit [246179] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: REGRESSION(r245833): Timelines: CPU: JavaScript label is missing and JavaScript section of pie chart is black
https://bugs.webkit.org/show_bug.cgi?id=198627
Reviewed by Joseph Pecoraro.
- UserInterface/Views/CPUTimelineView.js:
(WI.CPUTimelineView.displayNameForSampleType):
- UserInterface/Views/CPUTimelineView.css:
(.timeline-view.cpu > .content > .overview .legend > .row > .swatch.sample-type-javascript):
(.timeline-view.cpu .circle-chart > svg > path.segment.sample-type-javascript): Added.
(.timeline-view.cpu .circle-chart > svg > path.segment.sample-type-script): Deleted.
- UserInterface/Views/CPUUsageCombinedView.css:
(.cpu-usage-combined-view > .graph > .range-chart .sample-type-javascript): Added.
(.cpu-usage-combined-view > .graph > .range-chart .sample-type-script): Deleted.
Use the enum string added in r245833 (sample-type-javascript) instead of what was there
before (sample-type-script).
- UserInterface/Views/Variables.css:
(:root):
Rename--cpu-script-*to--cpu-javascript-*.
- 4:35 PM Changeset in webkit [246178] by
-
- 8 edits16 adds in trunk
Web Inspector: Formatter: pretty-print CSS using a Worker
https://bugs.webkit.org/show_bug.cgi?id=197829
<rdar://problem/36891532>
Reviewed by Timothy Hatcher.
Source/WebInspectorUI:
- UserInterface/Proxies/FormatterWorkerProxy.js:
(WI.FormatterWorkerProxy.prototype.formatCSS): Added.
- UserInterface/Workers/Formatter/FormatterWorker.js:
(FormatterWorker.prototype.formatCSS): Added.
- UserInterface/Workers/Formatter/CSSFormatter.js: Added.
(CSSFormatter):
(CSSFormatter.prototype.get success):
(CSSFormatter.prototype.get formattedText):
(CSSFormatter.prototype.get sourceMapData):
(CSSFormatter.prototype._format):
- UserInterface/Workers/Formatter/FormatterContentBuilder.js:
(FormatterContentBuilder.prototype.get currentLine): Added.
- UserInterface/Views/TextEditor.js:
(WI.TextEditor.prototype._canUseFormatterWorker):
(WI.TextEditor.prototype._startWorkerPrettyPrint):
- .eslintrc:
LayoutTests:
- inspector/formatting/formatting-css.html: Added.
- inspector/formatting/formatting-css-expected.txt: Added.
- inspector/formatting/resources/css-tests/basic-expected.css: Added.
- inspector/formatting/resources/css-tests/basic.css: Added.
- inspector/formatting/resources/css-tests/gradient-expected.css: Added.
- inspector/formatting/resources/css-tests/gradient.css: Added.
- inspector/formatting/resources/css-tests/keyframes-expected.css: Added.
- inspector/formatting/resources/css-tests/keyframes.css: Added.
- inspector/formatting/resources/css-tests/media-query-expected.css: Added.
- inspector/formatting/resources/css-tests/media-query.css: Added.
- inspector/formatting/resources/css-tests/selectors-expected.css: Added.
- inspector/formatting/resources/css-tests/selectors.css: Added.
- inspector/formatting/resources/css-tests/wrapping-expected.css: Added.
- inspector/formatting/resources/css-tests/wrapping.css: Added.
- inspector/formatting/resources/utilities.js:
(TestPage.registerInitializer.runFormattingTest):
- 4:31 PM Changeset in webkit [246177] by
-
- 9 edits in trunk/Source
Web Inspector: create CommandLineAPIHost lazily like the other agents
https://bugs.webkit.org/show_bug.cgi?id=196047
<rdar://problem/49087835>
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
- inspector/InjectedScriptManager.h:
- inspector/InjectedScriptManager.cpp:
(Inspector::InjectedScriptManager::connect): Added.
Source/WebCore:
No change in functionality.
- inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::createLazyAgents):
- inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
(WebCore::WorkerInspectorController::createLazyAgents):
- inspector/WebInjectedScriptManager.h:
- inspector/WebInjectedScriptManager.cpp:
(WebCore::WebInjectedScriptManager::WebInjectedScriptManager):
(WebCore::WebInjectedScriptManager::connect): Added.
(WebCore::WebInjectedScriptManager::disconnect):
(WebCore::WebInjectedScriptManager::discardInjectedScripts):
- inspector/agents/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::setInspectedNode):
- 4:28 PM Changeset in webkit [246176] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Elements: print/rulers/compositing/paint navigation items shouldn't be visible if the inspected target doesn't have a PageAgent
https://bugs.webkit.org/show_bug.cgi?id=198410
Reviewed by Timothy Hatcher.
- UserInterface/Views/DOMTreeContentView.js:
(WI.DOMTreeContentView):
(WI.DOMTreeContentView.prototype.get navigationItems):
(WI.DOMTreeContentView.prototype._showRulersChanged):
- 4:19 PM Changeset in webkit [246175] by
-
- 2 edits in trunk/LayoutTests
REGRESSION (r243270) [ iOS Sim Release ] Layout Test imported/w3c/web-platform-tests/IndexedDB/keypath-special-identifiers.htm is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=198573
<rdar://problem/51447519>
Unreviewed.
- platform/ios-simulator-wk2/TestExpectations:
Marking test as slow.
- 4:00 PM Changeset in webkit [246174] by
-
- 2 edits in trunk/Source/WebKit
Crash using WKHTTPCookieStore when you use WKWebView and UIWebView in the same app
https://bugs.webkit.org/show_bug.cgi?id=198622
Reviewed by Chris Dumez.
Today in a WWDC lab, I saw some crash reports from an app that mixed
WKWebView and UIWebView. The proximate cause of the crash is that
WKHTTPCookieStore queues a callOnMainThread function, and then
UIWebView dequeues it on the WebThread.
No test because this crash depends on mixing WKWebView and UIWebView and
getting (un)lucky on the timing.
- UIProcess/API/APIHTTPCookieStore.cpp:
(API::HTTPCookieStore::cookies):
(API::HTTPCookieStore::setCookies):
(API::HTTPCookieStore::deleteCookie): Avoid using callOnMainThread
becuase it is prohibited in the UI process.
- 3:34 PM Changeset in webkit [246173] by
-
- 6 edits in trunk/Tools
Remove SSL-based tests from TestWebKitAPI on some configurations
https://bugs.webkit.org/show_bug.cgi?id=198551
<rdar://problem/51424996>
Reviewed by Jonathan Bedard.
Not all platforms have SSL handy, so don't include SSL-based tests on
those platforms.
- TestWebKitAPI/TCPServer.cpp:
- TestWebKitAPI/TCPServer.h:
- TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
- TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
- TestWebKitAPI/config.h:
- 3:08 PM Changeset in webkit [246172] by
-
- 7 edits in branches/safari-608.1.27-branch/Source
Versioning.
- 3:03 PM Changeset in webkit [246171] by
-
- 1 copy in tags/Safari-608.1.27.4
Tag Safari-608.1.27.4.
- 2:56 PM Changeset in webkit [246170] by
-
- 4 edits2 adds in trunk
REGRESSION (r243121): Load event should not be fired while animating the 'externalResourcesRequired' attribute
https://bugs.webkit.org/show_bug.cgi?id=198576
Reviewed by Simon Fraser.
Source/WebCore:
Firing the load event should only happen when dynamic update changes the
attribute 'externalResourcesRequired'. Animating this attribute should
not fire the load event.
When stopping the animations, applyAnimatedPropertyChange() should be
called first then stopAnimation() is called second. The target element
should know that its svgAttributeChanged() is called because of animating
the attribute. So it can differentiate this case from the dynamic update.
Test: svg/animations/animate-externalResourcesRequired-no-load-event.html
- svg/SVGExternalResourcesRequired.cpp:
(WebCore::SVGExternalResourcesRequired::svgAttributeChanged):
- svg/properties/SVGAnimatedPropertyAnimator.h:
LayoutTests:
- svg/animations/animate-externalResourcesRequired-no-load-event-expected.txt: Added.
- svg/animations/animate-externalResourcesRequired-no-load-event.html: Added.
- 1:23 PM Changeset in webkit [246169] by
-
- 7 edits in trunk/Source
Versioning.
- 1:21 PM Changeset in webkit [246168] by
-
- 1 copy in tags/Safari-608.1.28
Tag Safari-608.1.28.
- 1:15 PM Changeset in webkit [246167] by
-
- 2 edits in trunk/Source/WebKit
Remove duplicated websiteDataStoreParameters code from WebsitePoliciesData::applyToDocumentLoader()
https://bugs.webkit.org/show_bug.cgi?id=198608
Patch by Antoine Quint <Antoine Quint> on 2019-06-06
Reviewed by Wenson Hsieh.
Due to a rebasing error, r244218 re-introduced code that was removed in r244197. This patch removes this code for good.
- Shared/WebsitePoliciesData.cpp:
(WebKit::WebsitePoliciesData::applyToDocumentLoader):
- 1:11 PM Changeset in webkit [246166] by
-
- 4 edits in trunk/Source/JavaScriptCore
Fix typo in cageWithoutUntagging
https://bugs.webkit.org/show_bug.cgi?id=198617
Reviewed by Saam Barati.
- assembler/testmasm.cpp:
(JSC::testCagePreservesPACFailureBit):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::cageTypedArrayStorage):
(JSC::DFG::SpeculativeJIT::compileGetTypedArrayByteOffset):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::cageWithoutUntagging):
(JSC::AssemblyHelpers::cageConditionally):
(JSC::AssemblyHelpers::cageWithoutUntaging): Deleted.
- 12:45 PM BuildingGtk edited by
-
Remove
+(diff) - 12:32 PM Changeset in webkit [246165] by
-
- 5 edits2 adds in trunk
Restrict fast clicks everywhere to desktop content mode
https://bugs.webkit.org/show_bug.cgi?id=198610
<rdar://problem/50114230>
Patch by Antoine Quint <Antoine Quint> on 2019-06-06
Reviewed by Dean Jackson.
Source/WebKit:
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::allowsFastClicksEverywhere const):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):
LayoutTests:
Add a new test that enables fast clicks but also sets a mobile content mode.
- fast/events/ios/ipad/fast-click-always-mobile-content-mode-expected.txt: Added.
- fast/events/ios/ipad/fast-click-always-mobile-content-mode.html: Added.
- 12:27 PM Changeset in webkit [246164] by
-
- 2 edits in trunk/Tools
[lldb-webkit] TypeError: cannot concatenate 'str' and 'int' objects when prettify SecurityOrigin with
non-default port number
https://bugs.webkit.org/show_bug.cgi?id=198618
Reviewed by Brent Fulgham.
WebCoreSecurityOriginProvider.port() returns an int data type. We need to explicitly convert this to
a string before we concatenate it with another string when building the string representation
for the WebCore::SecurityOrigin object. Otherwise, Python complains that we are concatenating a str
with an int and we don't get a pretty-printed representation for WebCore::SecurityOrigin.
- lldb/lldb_webkit.py:
(WebCoreSecurityOriginProvider.to_string): Call str() on the port before concatenting it.
- 12:15 PM Changeset in webkit [246163] by
-
- 3 edits in trunk/Source/WebKit
NetworkHTTPSUpgradeChecker should construct and destruct database on the background thread
https://bugs.webkit.org/show_bug.cgi?id=198496
Reviewed by Chris Dumez.
- NetworkProcess/NetworkHTTPSUpgradeChecker.cpp:
(WebKit::NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker):
(WebKit::NetworkHTTPSUpgradeChecker::~NetworkHTTPSUpgradeChecker):
- NetworkProcess/NetworkHTTPSUpgradeChecker.h:
- 12:07 PM Changeset in webkit [246162] by
-
- 4 edits in trunk
JSON.parse throws incorrect exception when called w/o arguments
https://bugs.webkit.org/show_bug.cgi?id=198574
Patch by Alexey Shvayka <Alexey Shvayka> on 2019-06-06
Reviewed by Yusuke Suzuki.
Source/JavaScriptCore:
Always coerce first argument to string and attempt to parse it.
(steps 1-2 of https://tc39.github.io/ecma262/#sec-json.parse)
- runtime/JSONObject.cpp:
(JSC::JSONProtoFuncParse): Remove argumentCount check.
LayoutTests:
SyntaxError should be thrown if JSON.parse is called w/o arguments.
(steps 1-2 of https://tc39.github.io/ecma262/#sec-json.parse)
- js/dom/JSON-parse-expected.txt:
- 11:54 AM Changeset in webkit [246161] by
-
- 2 edits in trunk/Tools
Remove obsolete TOOLCHAINS overrides from as asan.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=198613
Reviewed by Alexey Proskuryakov.
- asan/asan.xcconfig: XCBuild doesn't support overriding toolchains.
- 11:45 AM Changeset in webkit [246160] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unrevied build fix for FTL without Gigacage.
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::caged):
- 11:44 AM Changeset in webkit [246159] by
-
- 5 edits in trunk/Tools
webkitpluginhost: Support ASan as a style
https://bugs.webkit.org/show_bug.cgi?id=198586
<rdar://problem/51459088>
Reviewed by Alexey Proskuryakov.
- Scripts/webkitpy/port/base.py:
(Port.configuration_for_upload): Add ASan as a style.
- Scripts/webkitpy/port/config.py:
(Config._read_configuration):
(Config):
(Config.asan): Add property to check if the ASan configuration is active.
- Scripts/webkitpy/port/config_unittest.py:
(ConfigTest.test_default_configurationscripterror):
(ConfigTest):
(ConfigTest.test_asan):
- Scripts/webkitpy/test/main.py:
(Tester._run_tests): Add Asan as a style.
- 10:18 AM WebKitGTK/2.24.x edited by
- This is an important bug fix for MSE, especially on YouTube (diff)
- 9:53 AM Changeset in webkit [246158] by
-
- 3 edits in trunk/Source/WebCore
[LFC][IFC] Move baseline and line height computation to a dedicated function
https://bugs.webkit.org/show_bug.cgi?id=198611
<rdar://problem/51482708>
Reviewed by Antti Koivisto.
This is in preparation for adding vertical aligment.
- layout/inlineformatting/InlineLine.cpp:
(WebCore::Layout::Line::appendInlineContainerStart):
(WebCore::Layout::Line::appendNonReplacedInlineBox):
(WebCore::Layout::Line::adjustBaselineAndLineHeight):
- layout/inlineformatting/InlineLine.h:
- 9:50 AM Changeset in webkit [246157] by
-
- 17 edits6 deletes in trunk/Source/WebKit
Unreviewed, rolling out r246137.
Broke internal builds.
Reverted changeset:
"Introduce new SPI for context menus on iOS"
https://bugs.webkit.org/show_bug.cgi?id=198590
https://trac.webkit.org/changeset/246137
- 9:39 AM Changeset in webkit [246156] by
-
- 9 edits2 adds in trunk
Position fixed is buggy with overflow:auto scrolling inside iframes
https://bugs.webkit.org/show_bug.cgi?id=154399
<rdar://problem/24742251>
Reviewed by Frederic Wang and Simon Fraser.
Source/WebCore:
Test: scrollingcoordinator/ios/fixed-frame-overflow-swipe.html
After layer tree commit we were calling mainFrameViewportChangedViaDelegatedScrolling (even if viewport did not change)
and expecting it to apply UI side scrolling deltas. However optimization prevents it from descending into subframes
and we fail to update those properly.
In reality we only need to to apply scrolling tree positiong after commit if there has been delegated scrolling after the last
one. Track this and do full update when needed.
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::applyLayerPositionsAfterCommit):
Add specific function for this. Don't do anything unless needed.
- page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::didScrollByDelegatedScrolling):
Track if there has been any delegated scrolling.
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::wasScrolledByDelegatedScrolling):
We can now bail out if nothing changes since we no longer rely on this for post-commit updates.
Source/WebKit:
- UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
Remove viewportChangedViaDelegatedScrolling call as we were just relying on its side effect of (partially) applying
the scrolling tree. Instead call the new applyScrollingTreeLayerPositionsAfterCommit() unconditionally.
It only does work if there are local deltas to apply.
Local deltas will potentially need to be applied in non-fixed cases too and it is hard to reason about the conditions.
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositionsAfterCommit):
(WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositions): Deleted.
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
LayoutTests:
- scrollingcoordinator/ios/fixed-frame-overflow-swipe-expected.html: Added.
- scrollingcoordinator/ios/fixed-frame-overflow-swipe.html: Added.
- 9:34 AM Changeset in webkit [246155] by
-
- 2 edits in trunk/Tools
block-spammers tool doesn't block e-mail
https://bugs.webkit.org/show_bug.cgi?id=198570
Reviewed by Jonathan Bedard.
- Scripts/block-spammers: (disable_user): Corrected the parameters, Bugzilla doesn't
recognize "false" here. Also, request body is unnecessary.
- 7:50 AM Changeset in webkit [246154] by
-
- 3 edits in trunk/Source/WebCore
[LFC][IFC] Layout and preferred width computation should both call placeInlineItems().
https://bugs.webkit.org/show_bug.cgi?id=198587
<rdar://problem/51460340>
Reviewed by Antti Koivisto.
This patch enables inline placement logic sharing between layout and preferred width computation.
- layout/inlineformatting/InlineFormattingContext.h:
- layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
(WebCore::Layout::InlineFormattingContext::LineLayout::LineInput::LineInput):
(WebCore::Layout::InlineFormattingContext::LineLayout::placeInlineItems const):
(WebCore::Layout::InlineFormattingContext::LineLayout::layout const):
(WebCore::Layout::InlineFormattingContext::LineLayout::computedIntrinsicWidth const):
- 7:12 AM Changeset in webkit [246153] by
-
- 9 copies1 add in releases/Apple/Safari Technology Preview/Safari Technology Preview 84
Added a tag for Safari Technology Preview release 84.
- 6:51 AM Changeset in webkit [246152] by
-
- 2 edits in trunk/Source/WebKit
[WPE][GTK] Clean up use of initiatingPageID in implementation of webkit_uri_scheme_request_get_web_view()
https://bugs.webkit.org/show_bug.cgi?id=198564
Reviewed by Carlos Garcia Campos.
Note that we have to use RefPtr rather than Ref here because the priv struct has to remain
default-constructible.
- UIProcess/API/glib/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestCreate):
(webkit_uri_scheme_request_get_web_view):
- 6:41 AM Changeset in webkit [246151] by
-
- 2 edits in trunk/Source/JavaScriptCore
aarch64: ‘JSC::ARM64Assembler::LinkRecord::<unnamed union>::RealTypes::m_compareRegister’ is too small to hold all values of ‘JSC::ARM64Assembler::RegisterID’ {aka ‘enum JSC::ARM64Registers::RegisterID’}
https://bugs.webkit.org/show_bug.cgi?id=198014
Reviewed by Yusuke Suzuki.
When building for aarch64, there is a huge warning spam here. It's impossible to see any
other warnings. This has been ongoing for so long I've begun to suspect that nobody works
on this architecture.
Anyway, the problem is because we need eight bits to store all possible RegisterID values,
but the bitfield is only six bits wide. Fix it. The COMPILE_ASSERT checking the size of this
struct is still happy, so I presume the change is OK.
- assembler/ARM64Assembler.h:
- 6:20 AM Changeset in webkit [246150] by
-
- 20 edits in trunk/Source
Reenable Gigacage on ARM64.
https://bugs.webkit.org/show_bug.cgi?id=198453
Reviewed by Michael Saboff.
Source/bmalloc:
- bmalloc/Gigacage.h:
Source/JavaScriptCore:
This patch adds back Gigacaging on Apple's ARM64 ports. Unlike the
old Gigacage however, arm64e uses both Gigacaging and PAC. In
order to ensure the PAC bits are not stripped in the caging
process we use the bit field insert instruction to take the low
bits from caging and the high bits from the PAC authentication.
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::bitFieldInsert64):
- assembler/MacroAssemblerARM64E.h:
- assembler/testmasm.cpp:
(JSC::testCagePreservesPACFailureBit):
(JSC::run):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::jumpForTypedArrayIsNeuteredIfOutOfBounds):
(JSC::DFG::SpeculativeJIT::cageTypedArrayStorage):
(JSC::DFG::SpeculativeJIT::compileGetTypedArrayByteOffset):
(JSC::DFG::SpeculativeJIT::compileNewTypedArrayWithSize):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNewTypedArray):
(JSC::FTL::DFG::LowerDFGToB3::caged):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::cageWithoutUntaging):
(JSC::AssemblyHelpers::cageConditionally):
(JSC::AssemblyHelpers::cage): Deleted.
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitIntTypedArrayGetByVal):
(JSC::JIT::emitFloatTypedArrayGetByVal):
(JSC::JIT::emitIntTypedArrayPutByVal):
(JSC::JIT::emitFloatTypedArrayPutByVal):
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter64.asm:
- offlineasm/arm64.rb:
- offlineasm/instructions.rb:
- offlineasm/registers.rb:
- wasm/WasmAirIRGenerator.cpp:
(JSC::Wasm::AirIRGenerator::restoreWebAssemblyGlobalState):
(JSC::Wasm::AirIRGenerator::addCallIndirect):
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::restoreWebAssemblyGlobalState):
(JSC::Wasm::B3IRGenerator::addCallIndirect):
- wasm/WasmBinding.cpp:
(JSC::Wasm::wasmToWasm):
- wasm/js/JSToWasm.cpp:
(JSC::Wasm::createJSToWasmWrapper):
- wasm/js/WebAssemblyFunction.cpp:
(JSC::WebAssemblyFunction::jsCallEntrypointSlow):
- 4:34 AM Changeset in webkit [246149] by
-
- 2 edits in trunk/LayoutTests
[Pointer Events] Add support for chorded button interactions
https://bugs.webkit.org/show_bug.cgi?id=198462
Unreviewed, rebaselining this test for WK1.
- platform/mac-wk1/imported/w3c/web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
- 4:34 AM Changeset in webkit [246148] by
-
- 5 edits2 adds in trunk
[GTK][WPE] Enable PSON
https://bugs.webkit.org/show_bug.cgi?id=194979
Reviewed by Žan Doberšek.
Source/WebKit:
- Shared/WebPreferencesDefaultValues.h:
Tools:
Add WPEBackend-fdo patch required for PSON to work. It can be removed once we have a new version to depend on.
- gtk/jhbuild.modules:
- gtk/patches/wpebackend-fdo-Handle-the-case-of-new-target-created-for-the-same-v.patch: Added.
- wpe/jhbuild.modules:
- wpe/patches/wpebackend-fdo-Handle-the-case-of-new-target-created-for-the-same-v.patch: Added.
- 2:31 AM Changeset in webkit [246147] by
-
- 3 edits in trunk/Source/JavaScriptCore
[ARM64E]: Add disassembler support for authenticated instructions
https://bugs.webkit.org/show_bug.cgi?id=198562
Reviewed by Keith Miller.
Added support for all the instructions supported in ARM64EAssembler.h.
- disassembler/ARM64/A64DOpcode.cpp:
(JSC::ARM64Disassembler::A64DOpcodeDataProcessing1Source::format):
(JSC::ARM64Disassembler::A64DOpcodeDataProcessing2Source::format):
(JSC::ARM64Disassembler::A64DOpcodeHint::format):
(JSC::ARM64Disassembler::A64DOpcodeHint::opName):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::format):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::authOpName):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::format):
- disassembler/ARM64/A64DOpcode.h:
(JSC::ARM64Disassembler::A64DOpcodeDataProcessing2Source::opNameIndex):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::opName):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::opNum):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::mBit):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::sBit):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::wBit):
(JSC::ARM64Disassembler::A64DOpcodeLoadStoreAuthenticated::immediate10):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::authOpCode):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::op2):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::op3):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::op4):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::mBit):
(JSC::ARM64Disassembler::A64DOpcodeUnconditionalBranchRegister::rm):
(JSC::ARM64Disassembler::A64DOpcodeHint::opName): Deleted.
- 1:58 AM Changeset in webkit [246146] by
-
- 2 edits in trunk/Source/WTF
[JSCOnly] JSCOnly port is not building on macOS
https://bugs.webkit.org/show_bug.cgi?id=198563
Reviewed by Don Olmstead.
We are adding
<mach/vm_types.h>to fix build issues when compiling
JSCOnly port on macOS.
- wtf/WTFAssertions.cpp: