Timeline
Aug 10, 2019:
- 10:03 PM Changeset in webkit [248516] by
-
- 4 edits in branches/safari-608.1-branch/Source/WebKit
Apply patch. rdar://problem/54130665
- 9:48 PM Changeset in webkit [248515] by
-
- 2 edits in trunk/Tools
WebKitTestRunner's InjectedBundle has too aggressive stripping, resulting in non-symbolicated crash logs
https://bugs.webkit.org/show_bug.cgi?id=200621
Reviewed by Dan Bernstein.
- WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
- 9:03 PM Changeset in webkit [248514] by
-
- 6 edits3 adds in trunk
REGRESSION (r245974): Missing content on habitburger.com, amazon.com
https://bugs.webkit.org/show_bug.cgi?id=200618
rdar://problem/53920224
Reviewed by Zalan Bujtas.
Source/WebCore:
In r245974 TileController::adjustTileCoverageRect() started to intersect the coverage
rect with the bounds of the layer, which is wrong because this coverage rect is passed down
to descendant layers, and they may project outside the bounds of this tiled layer.
This caused missing dropdowns on amazon.com, and a missing menu on habitburger.com on iPhone.
The fix is to just not do the intersection with the bounds. TileGrid::getTileIndexRangeForRect()
already ensures that we never make tiles outside the bounds of a TileController.
Test: compositing/backing/layer-outside-tiled-parent.html
- platform/graphics/ca/TileController.cpp:
(WebCore::TileController::adjustTileCoverageRect):
- platform/graphics/ca/TileGrid.cpp:
(WebCore::TileGrid::ensureTilesForRect):
LayoutTests:
- compositing/backing/layer-outside-tiled-parent-expected.txt: Added.
- compositing/backing/layer-outside-tiled-parent.html: Added.
- platform/ios-wk2/compositing/backing/layer-outside-tiled-parent-expected.txt: Added.
- tiled-drawing/tile-coverage-iframe-to-zero-coverage-expected.txt:
- tiled-drawing/tiled-backing-in-window-expected.txt:
- 8:46 PM Changeset in webkit [248513] by
-
- 7 edits in trunk
Accessibility client cannot navigate to internal links targets on iOS.
https://bugs.webkit.org/show_bug.cgi?id=200559
<rdar://problem/45242534>
Patch by Andres Gonzalez <Andres Gonzalez> on 2019-08-10
Reviewed by Zalan Bujtas.
Source/WebCore:
The cause of the problem on iOS is that AccessibilityObject::firstAccessibleObjectFromNode
used in AccessibilityRenderObject::linkedUIElements may return an object
that is ignored by accessibility clients on iOS, and thus the client
would not track the target of an internal link. This change ensures that
accessibilityLinkedElement will return a valid accessibility element to
the client, if it is exists.
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
(WebCore::firstAccessibleObjectFromNode):
- accessibility/AccessibilityObject.h:
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityLinkedElement]):
LayoutTests:
Extneded this test to not only check that internal links expose their
target, but also that the target is an accessible element. Added a
second test case where the target is contained in a grouping element.
- accessibility/ios-simulator/internal-link-expected.txt:
- accessibility/ios-simulator/internal-link.html:
- 8:18 PM Changeset in webkit [248512] by
-
- 14 edits3 adds in branches/safari-608.1.42-branch
Cherry-pick r248494. rdar://problem/54171864
Universal XSS in JSObject::putInlineSlow and JSValue::putToPrimitive
https://bugs.webkit.org/show_bug.cgi?id=199864
Reviewed by Saam Barati.
Source/JavaScriptCore:
Our JSObject::put implementation is not correct in term of the spec. Our Put implementation is something like this.
JSObject::put(object):
if (can-do-fast-path(object))
return fast-path(object);
slow-path
do {
object-put-check-and-setter-calls(object); (1)
object = object->prototype;
} while (is-object(object));
return do-put(object);
Since JSObject::put is registered in the methodTable, the derived classes can override it. Some of classes are adding
extra checks to this put.
Derived::put(object):
if (do-extra-check(object))
fail
return JSObject::put(object)
The problem is that Derived::put is only called when the |this| object is the Derived class. When traversing Prototype in
JSObject::put, at (1), we do not perform the extra checks added in Derived::put even ifobjectis Derived one. This means that
we skip the check.
Currently, JSObject::put and WebCore checking mechanism are broken. JSObject::put should call getOwnPropertySlot at (1) to
perform the additional checks. This behavior is matching against the spec. However, currently, our JSObject::getOwnPropertySlot
does not propagate setter information. This is required to cache cacheable Put at (1) for CustomValue, CustomAccessor, and
Accessors. We also need to reconsider how to integrate static property setters to this mechanism. So, basically, this involves
large refactoring to renew our JSObject::put and JSObject::getOwnPropertySlot.
To work-around for now, we add a new TypeInfo flag, HasPutPropertySecurityCheck . And adding this flag to DOM objects
that implements the addition checks. We also add doPutPropertySecurityCheck method hook to perform the check in JSObject.
When we found this flag at (1), we perform doPutPropertySecurityCheck to properly perform the checks.
Since our JSObject::put code is old and it does not match against the spec now, we should refactor it largely. This is tracked separately in [1].
- runtime/ClassInfo.h:
- runtime/JSCJSValue.cpp: (JSC::JSValue::putToPrimitive):
- runtime/JSCell.cpp: (JSC::JSCell::doPutPropertySecurityCheck):
- runtime/JSCell.h:
- runtime/JSObject.cpp: (JSC::JSObject::putInlineSlow): (JSC::JSObject::getOwnPropertyDescriptor):
- runtime/JSObject.h: (JSC::JSObject::doPutPropertySecurityCheck):
- runtime/JSTypeInfo.h: (JSC::TypeInfo::hasPutPropertySecurityCheck const):
Source/WebCore:
Test: http/tests/security/cross-frame-access-object-put-optimization.html
- bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::doPutPropertySecurityCheck):
- bindings/js/JSLocationCustom.cpp: (WebCore::JSLocation::doPutPropertySecurityCheck):
- bindings/scripts/CodeGeneratorJS.pm: (GenerateHeader):
- bindings/scripts/test/JS/JSTestActiveDOMObject.h:
LayoutTests:
- http/tests/security/cross-frame-access-object-put-optimization-expected.txt: Added.
- http/tests/security/cross-frame-access-object-put-optimization.html: Added.
- http/tests/security/resources/cross-frame-iframe-for-object-put-optimization-test.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248494 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:17 PM Changeset in webkit [248511] by
-
- 7 edits in branches/safari-608.1.42-branch/Source
Versioning.
- 8:02 PM Changeset in webkit [248510] by
-
- 11 edits in branches/safari-608.1-branch/Source
Cherry-pick r248502. rdar://problem/54130678
Disable ContentChangeObserver TouchEvent adjustment on youtube.com on iOS in mobile browsing mode
https://bugs.webkit.org/show_bug.cgi?id=200609
<rdar://problem/54015403>
Reviewed by Maciej Stachowiak.
Source/WebCore:
When watching a youtube video on iOS with "Autoplay" switched to off,
upon finishing the video all clicks anywhere on the page are effectively ignored.
Disabling ContentChangeObserver's TouchEvent adjustment fixes this bug. I verified this manually.
This switch was introduced in r242621, and it disables part of a new feature, so there is low risk of fallout.
- loader/DocumentLoader.h: (WebCore::DocumentLoader::setAllowContentChangeObserverQuirk): (WebCore::DocumentLoader::allowContentChangeObserverQuirk const):
- page/Quirks.cpp: (WebCore::Quirks::shouldDisableContentChangeObserverTouchEventAdjustment const):
- page/Quirks.h:
- page/ios/ContentChangeObserver.cpp: (WebCore::ContentChangeObserver::touchEventDidStart):
Source/WebKit:
- Shared/WebsitePoliciesData.cpp: (WebKit::WebsitePoliciesData::encode const): (WebKit::WebsitePoliciesData::decode): (WebKit::WebsitePoliciesData::applyToDocumentLoader):
- Shared/WebsitePoliciesData.h:
- UIProcess/API/APIWebsitePolicies.cpp: (API::WebsitePolicies::copy const): (API::WebsitePolicies::data):
- UIProcess/API/APIWebsitePolicies.h:
- UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248502 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:02 PM Changeset in webkit [248509] by
-
- 9 edits in branches/safari-608.1-branch/Source
Cherry-pick r248501. rdar://problem/54130617
[iOS] Add a quirk for gmail.com messages on iPhone iOS13
https://bugs.webkit.org/show_bug.cgi?id=200605
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-08-10
Reviewed by Maciej Stachowiak.
Source/WebCore:
Add a quirk which sets the user agent for gmail.com messages on iPhone
OS 13 to be iPhone OS 12. This is a workaround for a gmail.com bug till
it is fixed.
- page/Quirks.cpp: (WebCore::Quirks::shouldAvoidUsingIOS13ForGmail const):
- page/Quirks.h:
- platform/UserAgent.h:
- platform/ios/UserAgentIOS.mm: (WebCore::osNameForUserAgent): (WebCore::standardUserAgentWithApplicationName):
- platform/mac/UserAgentMac.mm: (WebCore::standardUserAgentWithApplicationName):
Source/WebKit:
Use WebPage::platformUserAgent() to add the gmail.com quirk.
- UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):
- WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::platformUserAgent const):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248501 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:02 PM Changeset in webkit [248508] by
-
- 14 edits3 adds in branches/safari-608.1-branch
Cherry-pick r248494. rdar://problem/54171879
Universal XSS in JSObject::putInlineSlow and JSValue::putToPrimitive
https://bugs.webkit.org/show_bug.cgi?id=199864
Reviewed by Saam Barati.
Source/JavaScriptCore:
Our JSObject::put implementation is not correct in term of the spec. Our Put implementation is something like this.
JSObject::put(object):
if (can-do-fast-path(object))
return fast-path(object);
slow-path
do {
object-put-check-and-setter-calls(object); (1)
object = object->prototype;
} while (is-object(object));
return do-put(object);
Since JSObject::put is registered in the methodTable, the derived classes can override it. Some of classes are adding
extra checks to this put.
Derived::put(object):
if (do-extra-check(object))
fail
return JSObject::put(object)
The problem is that Derived::put is only called when the |this| object is the Derived class. When traversing Prototype in
JSObject::put, at (1), we do not perform the extra checks added in Derived::put even ifobjectis Derived one. This means that
we skip the check.
Currently, JSObject::put and WebCore checking mechanism are broken. JSObject::put should call getOwnPropertySlot at (1) to
perform the additional checks. This behavior is matching against the spec. However, currently, our JSObject::getOwnPropertySlot
does not propagate setter information. This is required to cache cacheable Put at (1) for CustomValue, CustomAccessor, and
Accessors. We also need to reconsider how to integrate static property setters to this mechanism. So, basically, this involves
large refactoring to renew our JSObject::put and JSObject::getOwnPropertySlot.
To work-around for now, we add a new TypeInfo flag, HasPutPropertySecurityCheck . And adding this flag to DOM objects
that implements the addition checks. We also add doPutPropertySecurityCheck method hook to perform the check in JSObject.
When we found this flag at (1), we perform doPutPropertySecurityCheck to properly perform the checks.
Since our JSObject::put code is old and it does not match against the spec now, we should refactor it largely. This is tracked separately in [1].
- runtime/ClassInfo.h:
- runtime/JSCJSValue.cpp: (JSC::JSValue::putToPrimitive):
- runtime/JSCell.cpp: (JSC::JSCell::doPutPropertySecurityCheck):
- runtime/JSCell.h:
- runtime/JSObject.cpp: (JSC::JSObject::putInlineSlow): (JSC::JSObject::getOwnPropertyDescriptor):
- runtime/JSObject.h: (JSC::JSObject::doPutPropertySecurityCheck):
- runtime/JSTypeInfo.h: (JSC::TypeInfo::hasPutPropertySecurityCheck const):
Source/WebCore:
Test: http/tests/security/cross-frame-access-object-put-optimization.html
- bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::doPutPropertySecurityCheck):
- bindings/js/JSLocationCustom.cpp: (WebCore::JSLocation::doPutPropertySecurityCheck):
- bindings/scripts/CodeGeneratorJS.pm: (GenerateHeader):
- bindings/scripts/test/JS/JSTestActiveDOMObject.h:
LayoutTests:
- http/tests/security/cross-frame-access-object-put-optimization-expected.txt: Added.
- http/tests/security/cross-frame-access-object-put-optimization.html: Added.
- http/tests/security/resources/cross-frame-iframe-for-object-put-optimization-test.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248494 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:02 PM Changeset in webkit [248507] by
-
- 12 edits16 adds in branches/safari-608.1-branch
Cherry-pick r248491. rdar://problem/54130644
Don't allow cross-origin iframes to autofocus
https://bugs.webkit.org/show_bug.cgi?id=200515
<rdar://problem/54092988>
Reviewed by Ryosuke Niwa.
Source/WebCore:
According to Step 6 in the WhatWG Spec (https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofocusing-a-form-control:-the-autofocus-attribute),
the 'autofocus' attribute shouldn't work for cross-origin iframes.
This change is based on the Blink change (patch by <mustaq@chromium.org>):
<https://chromium-review.googlesource.com/c/chromium/src/+/1593026>
Also disallow cross-origin iframes from focusing programmatically without ever having
had any user interaction.
- dom/Element.cpp: Check if an invalid frame is trying to grab the focus. (WebCore::Element::focus):
- html/HTMLFormControlElement.cpp: Check if the focus is moving to an invalid frame. (WebCore::shouldAutofocus):
- page/DOMWindow.cpp: Check if an invalid frame is trying to grab the focus. (WebCore::DOMWindow::focus):
Tools:
Make WebKit.FocusedFrameAfterCrash use same-origin iframes instead
of cross-origin iframes, since it depends on focusing one of the
frames.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp: (TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit/many-same-origin-iframes.html: Added.
LayoutTests:
Add test coverage, and simulate user interaction in existing tests
that require focusing a cross-origin frame.
- http/tests/security/clipboard/resources/copy-html.html:
- http/tests/security/clipboard/resources/copy-mso-list.html:
- http/tests/security/clipboard/resources/copy-url.html:
- http/wpt/html/interaction/focus/no-cross-origin-element-focus-expected.txt: Added.
- http/wpt/html/interaction/focus/no-cross-origin-element-focus.html: Added.
- http/wpt/html/interaction/focus/no-cross-origin-window-focus-expected.txt: Added.
- http/wpt/html/interaction/focus/no-cross-origin-window-focus.html: Added.
- http/wpt/html/interaction/focus/resources/child-focus-element.html: Added.
- http/wpt/html/interaction/focus/resources/child-focus-window.html: Added.
- http/wpt/html/semantics/forms/autofocus/no-cross-origin-autofocus.sub-expected.txt: Added.
- http/wpt/html/semantics/forms/autofocus/no-cross-origin-autofocus.sub.html: Added.
- http/wpt/html/semantics/forms/autofocus/resources/child-autofocus.html: Added.
- http/wpt/webauthn/resources/last-layer-frame.https.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248491 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:01 PM Changeset in webkit [248506] by
-
- 7 edits in branches/safari-608.1-branch/Source
Cherry-pick r248471. rdar://problem/54130628
Disable CSSOM View Scrolling API for IMDb iOS app
https://bugs.webkit.org/show_bug.cgi?id=200586
<rdar://problem/53645833>
Patch by Alex Christensen <achristensen@webkit.org> on 2019-08-09
Reviewed by Simon Fraser.
Source/WebCore:
They are calling scrollHeight on the HTML element and it is running new code introduced in r235806
Disable this new feature until they update their app to use the iOS13 SDK.
- platform/RuntimeApplicationChecks.h:
- platform/cocoa/RuntimeApplicationChecksCocoa.mm: (WebCore::IOSApplication::isIMDb):
Source/WebKit:
Change the CSSOMViewScrollingAPIEnabled default value to be off for the IMDb app's WKWebViews.
I manually verified this is effective in those WKWebViews but no other WKWebViews and that it fixes the radar.
- Shared/WebPreferences.yaml:
- Shared/WebPreferencesDefaultValues.cpp: (WebKit::defaultCSSOMViewScrollingAPIEnabled):
- Shared/WebPreferencesDefaultValues.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248471 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:01 PM Changeset in webkit [248505] by
-
- 5 edits in branches/safari-608.1-branch/Source
Cherry-pick r248469. rdar://problem/54130692
Tapping buttons in Data Detectors lookup previews doesn't work
https://bugs.webkit.org/show_bug.cgi?id=200579
<rdar://problem/54056519>
Reviewed by Megan Gardner.
Source/WebCore/PAL:
- pal/spi/ios/DataDetectorsUISPI.h:
Source/WebKit:
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _contextMenuInteraction:styleForMenuWithConfiguration:]): If a Data Detectors context menu wants the action menu style, provide it.
(-[WKContentView contextMenuInteraction:willPerformPreviewActionForMenuWithConfiguration:animator:]):
If a Data Detectors context menu provides a view controller to present
on context menu commit, present it. We present on top of the same view
controller that is currently presenting the context menu, but modally
instead of inside the context menu.
If a Data Detectors context menu instead provides a URL to launch on
context menu commit, call openURL.
In both cases, change the commit style to pop, since we're committing
instead of dismissing.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248469 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:01 PM Changeset in webkit [248504] by
-
- 4 edits in branches/safari-608.1-branch/Source/WebCore
Cherry-pick r248463. rdar://problem/54139834
REGRESSION (iOS 13): united.com web forms do not respond to taps
https://bugs.webkit.org/show_bug.cgi?id=200531
Reviewed by Antti Koivisto and Wenson Hsieh.
The bug is caused by the content change observer detecting “Site Feedback” link at the bottom of
the page (https://www.united.com/ual/en/US/account/enroll/default) constantly getting re-generated
in every frame via requestAnimationFrame when the page is opened with iPhone UA string.
Note that the content re-generation can be reproduced even in Chrome if iPhone UA string is used.
Ignore this constant content change in ContentChangeObserver as a site specific quirk.
In the future, we should make ContentChangeObserver observe the final location of each element
being observed so that we can ignore content that like this which is placed outside the viewport,
and/or far away from where the user tapped.
- page/Quirks.cpp: (WebCore::Quirks::shouldIgnoreContentChange const): Added.
- page/Quirks.h:
- page/ios/ContentChangeObserver.cpp: (WebCore::ContentChangeObserver::shouldObserveVisibilityChangeForElement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248463 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:50 PM Changeset in webkit [248503] by
-
- 43 edits in trunk/Source/WebCore
Blob should store its session ID
https://bugs.webkit.org/show_bug.cgi?id=200572
Reviewed by Darin Adler.
Blob at creation time now initializes its session ID.
This will allow in the future to call blob registry routines with it.
Update all call sites to provide the session ID.
No observable change.
- Modules/entriesapi/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::getFile):
- Modules/fetch/FetchBody.cpp:
(WebCore::FetchBody::fromFormData):
- Modules/fetch/FetchBody.h:
- Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::blobFromData):
(WebCore::resolveWithTypeAndData):
(WebCore::FetchBodyConsumer::resolve):
(WebCore::FetchBodyConsumer::takeAsBlob):
- Modules/fetch/FetchBodyConsumer.h:
- Modules/fetch/FetchBodyOwner.cpp:
(WebCore::FetchBodyOwner::blob):
- Modules/mediarecorder/MediaRecorder.cpp:
(WebCore::MediaRecorder::createRecordingDataBlob):
- Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::didReceiveRawData):
- Modules/websockets/WebSocket.cpp:
(WebCore::WebSocket::didReceiveBinaryData):
- Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
(WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
- bindings/js/JSDOMPromiseDeferred.h:
(WebCore::DeferredPromise::sessionID const):
- bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneDeserializer::readFile):
(WebCore::CloneDeserializer::readTerminal):
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::DataTransfer):
(WebCore::DataTransfer::createForCopyAndPaste):
(WebCore::DataTransfer::filesFromPasteboardAndItemList const):
(WebCore::DataTransfer::createForInputEvent):
(WebCore::DataTransfer::createForDrag):
(WebCore::DataTransfer::createForDragStartEvent):
(WebCore::DataTransfer::createForDrop):
(WebCore::DataTransfer::createForUpdatingDropTarget):
- dom/DataTransfer.h:
- dom/Document.cpp:
(WebCore::Document::originIdentifierForPasteboard const):
- dom/Document.h:
- editing/ReplaceRangeWithTextCommand.cpp:
(WebCore::ReplaceRangeWithTextCommand::inputEventDataTransfer const):
- editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::inputEventDataTransfer const):
- editing/SpellingCorrectionCommand.cpp:
(WebCore::SpellingCorrectionCommand::inputEventDataTransfer const):
- editing/TypingCommand.cpp:
(WebCore::TypingCommand::inputEventDataTransfer const):
- editing/WebCorePasteboardFileReader.cpp:
(WebCore::WebCorePasteboardFileReader::readFilename):
(WebCore::WebCorePasteboardFileReader::readBuffer):
- editing/WebCorePasteboardFileReader.h:
- editing/cocoa/WebContentReaderCocoa.mm:
(WebCore::createFragmentForImageAttachment):
(WebCore::replaceRichContentWithAttachments):
(WebCore::createFragmentAndAddResources):
(WebCore::sanitizeMarkupWithArchive):
(WebCore::WebContentReader::readImage):
(WebCore::attachmentForFilePath):
(WebCore::attachmentForData):
- editing/markup.cpp:
(WebCore::restoreAttachmentElementsInFragment):
- fileapi/Blob.cpp:
(WebCore::Blob::Blob):
- fileapi/Blob.h:
(WebCore::Blob::create):
(WebCore::Blob::deserialize):
(WebCore::Blob::slice const):
- fileapi/Blob.idl:
- fileapi/File.cpp:
(WebCore::File::createWithRelativePath):
(WebCore::File::File):
- fileapi/File.h:
- fileapi/File.idl:
- html/FileInputType.cpp:
(WebCore::FileInputType::appendFormData const):
(WebCore::FileInputType::filesChosen):
- html/FileListCreator.cpp:
(WebCore::appendDirectoryFiles):
(WebCore::FileListCreator::FileListCreator):
(WebCore::FileListCreator::createFileList):
- html/FileListCreator.h:
(WebCore::FileListCreator::create):
- html/HTMLAttachmentElement.cpp:
(WebCore::HTMLAttachmentElement::updateEnclosingImageWithData):
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::toBlob):
- page/EventHandler.cpp:
(WebCore::EventHandler::handleDrag):
- testing/Internals.cpp:
(WebCore::Internals::createFile):
- testing/ServiceWorkerInternals.cpp:
(WebCore::ServiceWorkerInternals::createOpaqueWithBlobBodyResponse):
- workers/service/context/ServiceWorkerFetch.cpp:
(WebCore::ServiceWorkerFetch::dispatchFetchEvent):
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createResponseBlob):
- 3:45 PM Changeset in webkit [248502] by
-
- 11 edits in trunk/Source
Disable ContentChangeObserver TouchEvent adjustment on youtube.com on iOS in mobile browsing mode
https://bugs.webkit.org/show_bug.cgi?id=200609
<rdar://problem/54015403>
Reviewed by Maciej Stachowiak.
Source/WebCore:
When watching a youtube video on iOS with "Autoplay" switched to off,
upon finishing the video all clicks anywhere on the page are effectively ignored.
Disabling ContentChangeObserver's TouchEvent adjustment fixes this bug. I verified this manually.
This switch was introduced in r242621, and it disables part of a new feature, so there is low risk of fallout.
- loader/DocumentLoader.h:
(WebCore::DocumentLoader::setAllowContentChangeObserverQuirk):
(WebCore::DocumentLoader::allowContentChangeObserverQuirk const):
- page/Quirks.cpp:
(WebCore::Quirks::shouldDisableContentChangeObserverTouchEventAdjustment const):
- page/Quirks.h:
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::touchEventDidStart):
Source/WebKit:
- Shared/WebsitePoliciesData.cpp:
(WebKit::WebsitePoliciesData::encode const):
(WebKit::WebsitePoliciesData::decode):
(WebKit::WebsitePoliciesData::applyToDocumentLoader):
- Shared/WebsitePoliciesData.h:
- UIProcess/API/APIWebsitePolicies.cpp:
(API::WebsitePolicies::copy const):
(API::WebsitePolicies::data):
- UIProcess/API/APIWebsitePolicies.h:
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):
- 3:25 PM Changeset in webkit [248501] by
-
- 9 edits in trunk/Source
[iOS] Add a quirk for gmail.com messages on iPhone iOS13
https://bugs.webkit.org/show_bug.cgi?id=200605
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-08-10
Reviewed by Maciej Stachowiak.
Source/WebCore:
Add a quirk which sets the user agent for gmail.com messages on iPhone
OS 13 to be iPhone OS 12. This is a workaround for a gmail.com bug till
it is fixed.
- page/Quirks.cpp:
(WebCore::Quirks::shouldAvoidUsingIOS13ForGmail const):
- page/Quirks.h:
- platform/UserAgent.h:
- platform/ios/UserAgentIOS.mm:
(WebCore::osNameForUserAgent):
(WebCore::standardUserAgentWithApplicationName):
- platform/mac/UserAgentMac.mm:
(WebCore::standardUserAgentWithApplicationName):
Source/WebKit:
Use WebPage::platformUserAgent() to add the gmail.com quirk.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::platformUserAgent const):
- 4:18 AM Changeset in webkit [248500] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer][WebRTC] Remove unused GstAdapter
https://bugs.webkit.org/show_bug.cgi?id=200585
Patch by Thibault Saunier <tsaunier@igalia.com> on 2019-08-10
Reviewed by Philippe Normand.
Minor "refactoring"
- platform/mediastream/libwebrtc/GStreamerVideoEncoderFactory.cpp:
(WebCore::GStreamerVideoEncoder::GStreamerVideoEncoder):
- 3:38 AM Changeset in webkit [248499] by
-
- 3 edits in trunk/Source/WebCore
Can’t sort videos on a YouTube channel page on iPad
https://bugs.webkit.org/show_bug.cgi?id=200573
<rdar://problem/53415195>
Reviewed by Darin Adler.
Add a quirk to make touch events non-cancelable (preventDefault() does nothing).
- page/Quirks.cpp:
(WebCore::Quirks::shouldMakeTouchEventNonCancelableForTarget const):
- page/Quirks.h:
- 1:04 AM Changeset in webkit [248498] by
-
- 14 edits2 deletes in trunk/Source
Remove some more unused 32-bit code
https://bugs.webkit.org/show_bug.cgi?id=200607
Reviewed by Alexey Proskuryakov.
Source/WebKit:
- Modules/OSX.modulemap:
Source/WebKitLegacy:
- PlatformMac.cmake:
- WebKitLegacy.xcodeproj/project.pbxproj:
Source/WebKitLegacy/mac:
- Configurations/WebKitLegacy.xcconfig:
- Misc/WebSharingServicePickerController.mm:
(-[WebSharingServicePickerController initWithItems:includeEditorServices:client:style:]):
(-[WebSharingServicePickerController initWithSharingServicePicker:client:]):
(-[WebSharingServicePickerController sharingService:didShareItems:]):
- Plugins/WebNetscapePluginEventHandler.mm:
- Plugins/WebNetscapePluginEventHandlerCarbon.h: Removed.
- Plugins/WebNetscapePluginEventHandlerCarbon.mm: Removed.
- Plugins/WebNetscapePluginEventHandlerCocoa.h:
(WebNetscapePluginEventHandlerCocoa::installKeyEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::removeKeyEventHandler): Deleted.
- Plugins/WebNetscapePluginEventHandlerCocoa.mm:
(WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa):
(WebNetscapePluginEventHandlerCocoa::keyDown):
(WebNetscapePluginEventHandlerCocoa::focusChanged):
(WebNetscapePluginEventHandlerCocoa::installKeyEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::removeKeyEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::TSMEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::handleTSMEvent): Deleted.
- WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::contextMenuForEvent):
- WebView/WebHTMLView.mm:
(-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):
(-[WebHTMLView pressureChangeWithEvent:]):
- WebView/WebView.mm:
(LayerFlushController::flushLayers):
- 12:02 AM Changeset in webkit [248497] by
-
- 14 edits1 delete in trunk/Source
Web Inspector: REGRESSION(r248454): WK1 inspector frontend client doesn't queue messages to the frontend before it's loaded
https://bugs.webkit.org/show_bug.cgi?id=200587
Reviewed by Joseph Pecoraro.
WK1 inspector sends messages to the frontend using
WebCore::InspectorClient::doDispatchMessageOnFrontendPage,
which does not do any sort of queueing to wait until the frontend is loaded (InspectorFrontendHost.loaded()).
Now that we are sending messages immediately, we should always queue.
Source/WebCore:
Covered by existing tests (which were failing after r248454, and now won't fail).
- inspector/InspectorFrontendClientLocal.h:
- inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::setDockingUnavailable):
(WebCore::InspectorFrontendClientLocal::setAttachedWindow):
(WebCore::InspectorFrontendClientLocal::setDebuggingEnabled):
(WebCore::InspectorFrontendClientLocal::setTimelineProfilingEnabled):
(WebCore::InspectorFrontendClientLocal::startProfilingJavaScript):
(WebCore::InspectorFrontendClientLocal::stopProfilingJavaScript):
(WebCore::InspectorFrontendClientLocal::showConsole):
(WebCore::InspectorFrontendClientLocal::showResources):
(WebCore::InspectorFrontendClientLocal::showMainResourceForFrame):
(WebCore::InspectorFrontendClientLocal::dispatch): Added.
(WebCore::InspectorFrontendClientLocal::dispatchMessage): Added.
(WebCore::InspectorFrontendClientLocal::dispatchMessageAsync): Added.
(WebCore::InspectorFrontendClientLocal::evaluateOnLoad):
Provide additional ways for subclasses to call otherInspectorFrontendAPImethods using
the "on load" queue.
- testing/Internals.cpp:
(WebCore::InspectorStubFrontend::sendMessageToFrontend):
(WebCore::InspectorStubFrontend::frontendLoaded): Deleted.
Leverage the baseInspectorFrontendClientLocal's functions for queueing messages.
- inspector/InspectorClient.h:
- inspector/InspectorClient.cpp: Removed.
(WebCore::InspectorClient::doDispatchMessageOnFrontendPage): Deleted.
- inspector/agents/InspectorTimelineAgent.cpp:
Add missing include.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
Source/WebInspectorUI:
- UserInterface/Test/TestStub.js:
(InspectorFrontendAPI.dispatch): Added.
- UserInterface/Models/Frame.js:
(WI.Frame.prototype.markDOMContentReadyEvent):
(WI.Frame.prototype.markLoadEvent):
- UserInterface/Controllers/TimelineManager.js:
(WI.TimelineManager.prototype.pageDOMContentLoadedEventFired):
(WI.TimelineManager.prototype.pageLoadEventFired):
Source/WebKitLegacy/cf:
- WebCoreSupport/WebInspectorClientCF.cpp:
(WebInspectorClient::sendMessageToFrontend):
Leverage the baseInspectorFrontendClientLocal's functions for queueing messages.
Aug 9, 2019:
- 9:00 PM Changeset in webkit [248496] by
-
- 2 edits in trunk/Tools
KeyboardInputTests.CaretSelectionRectAfterRestoringFirstResponder API tests time out on iPad
https://bugs.webkit.org/show_bug.cgi?id=200604
<rdar://problem/51273130>
Reviewed by Megan Gardner.
Tweak some API tests so that they work on iPad simulator. These tests checked that the final caret rect was
{{16, 13}, {2, 15}}; however, this is only correct behavior on iPhone, where we will scale the page so that the
focused element's font size is legible. Note that when the page is scaled, we scale the height but not the
width of the caret, which is why the width of the caret (in content coordinates) decreases while the height
remains the same.
We don't have the same behavior on iPad, so the expected caret rect is {{16, 13}, {3, 15}}, which is equal to
the caret rect at initial scale 1.
- TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
- 8:19 PM Changeset in webkit [248495] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Node details sidebar sections have unclear delineation in Dark Mode
https://bugs.webkit.org/show_bug.cgi?id=200603
<rdar://problem/54146925>
Reviewed by Devin Rousso.
- UserInterface/Views/DetailsSection.css:
(@media (prefers-color-scheme: dark)):
(.details-section .details-section,):
Give a details section header a different color than a normal sidebar header.
- 6:20 PM Changeset in webkit [248494] by
-
- 14 edits3 adds in trunk
Universal XSS in JSObject::putInlineSlow and JSValue::putToPrimitive
https://bugs.webkit.org/show_bug.cgi?id=199864
Reviewed by Saam Barati.
Source/JavaScriptCore:
Our JSObject::put implementation is not correct in term of the spec. Our Put implementation is something like this.
JSObject::put(object):
if (can-do-fast-path(object))
return fast-path(object);
slow-path
do {
object-put-check-and-setter-calls(object); (1)
object = object->prototype;
} while (is-object(object));
return do-put(object);
Since JSObject::put is registered in the methodTable, the derived classes can override it. Some of classes are adding
extra checks to this put.
Derived::put(object):
if (do-extra-check(object))
fail
return JSObject::put(object)
The problem is that Derived::put is only called when the |this| object is the Derived class. When traversing Prototype in
JSObject::put, at (1), we do not perform the extra checks added in Derived::put even ifobjectis Derived one. This means that
we skip the check.
Currently, JSObject::put and WebCore checking mechanism are broken. JSObject::put should call getOwnPropertySlot at (1) to
perform the additional checks. This behavior is matching against the spec. However, currently, our JSObject::getOwnPropertySlot
does not propagate setter information. This is required to cache cacheable Put at (1) for CustomValue, CustomAccessor, and
Accessors. We also need to reconsider how to integrate static property setters to this mechanism. So, basically, this involves
large refactoring to renew our JSObject::put and JSObject::getOwnPropertySlot.
To work-around for now, we add a new TypeInfo flag, HasPutPropertySecurityCheck . And adding this flag to DOM objects
that implements the addition checks. We also add doPutPropertySecurityCheck method hook to perform the check in JSObject.
When we found this flag at (1), we perform doPutPropertySecurityCheck to properly perform the checks.
Since our JSObject::put code is old and it does not match against the spec now, we should refactor it largely. This is tracked separately in [1].
[1]: https://bugs.webkit.org/show_bug.cgi?id=200562
- runtime/ClassInfo.h:
- runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitive):
- runtime/JSCell.cpp:
(JSC::JSCell::doPutPropertySecurityCheck):
- runtime/JSCell.h:
- runtime/JSObject.cpp:
(JSC::JSObject::putInlineSlow):
(JSC::JSObject::getOwnPropertyDescriptor):
- runtime/JSObject.h:
(JSC::JSObject::doPutPropertySecurityCheck):
- runtime/JSTypeInfo.h:
(JSC::TypeInfo::hasPutPropertySecurityCheck const):
Source/WebCore:
Test: http/tests/security/cross-frame-access-object-put-optimization.html
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::doPutPropertySecurityCheck):
- bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::doPutPropertySecurityCheck):
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
- bindings/scripts/test/JS/JSTestActiveDOMObject.h:
LayoutTests:
- http/tests/security/cross-frame-access-object-put-optimization-expected.txt: Added.
- http/tests/security/cross-frame-access-object-put-optimization.html: Added.
- http/tests/security/resources/cross-frame-iframe-for-object-put-optimization-test.html: Added.
- 6:02 PM Changeset in webkit [248493] by
-
- 17 edits in trunk/Source/WebCore
When I did the devirtualization of the AST in r248488, I needed to
update the various type checks under the Type class hierarchy
operate on Type itself, since we now downcast straight from Type
instead of UnnamedType, ResolvableType, and NamedType.
- Modules/webgpu/WHLSL/AST/WHLSLArrayReferenceType.h:
- Modules/webgpu/WHLSL/AST/WHLSLArrayType.h:
- Modules/webgpu/WHLSL/AST/WHLSLEnumerationDefinition.h:
- Modules/webgpu/WHLSL/AST/WHLSLFloatLiteralType.h:
- Modules/webgpu/WHLSL/AST/WHLSLIntegerLiteralType.h:
- Modules/webgpu/WHLSL/AST/WHLSLNamedType.h:
- Modules/webgpu/WHLSL/AST/WHLSLNativeTypeDeclaration.h:
- Modules/webgpu/WHLSL/AST/WHLSLNullLiteralType.h:
- Modules/webgpu/WHLSL/AST/WHLSLPointerType.h:
- Modules/webgpu/WHLSL/AST/WHLSLReferenceType.h:
- Modules/webgpu/WHLSL/AST/WHLSLResolvableType.h:
- Modules/webgpu/WHLSL/AST/WHLSLStructureDefinition.h:
- Modules/webgpu/WHLSL/AST/WHLSLTypeDefinition.h:
- Modules/webgpu/WHLSL/AST/WHLSLTypeReference.h:
- Modules/webgpu/WHLSL/AST/WHLSLUnnamedType.h:
- Modules/webgpu/WHLSL/AST/WHLSLUnsignedIntegerLiteralType.h:
- 5:56 PM Changeset in webkit [248492] by
-
- 2 edits in trunk/Source/WebCore
Possible non-thread safe usage of RefCounted in ~VideoFullscreenControllerContext()
https://bugs.webkit.org/show_bug.cgi?id=200599
Reviewed by Geoffrey Garen.
WebVideoFullscreenControllerAVKit's m_playbackModel & m_fullscreenModel data members are
WebThread objects so we need to make sure we grab the WebThread lock before dereferencing
them in the WebVideoFullscreenControllerAVKit destructor, when destroyed on the UIThread.
- platform/ios/WebVideoFullscreenControllerAVKit.mm:
(VideoFullscreenControllerContext::~VideoFullscreenControllerContext):
- 5:27 PM Changeset in webkit [248491] by
-
- 12 edits16 adds in trunk
Don't allow cross-origin iframes to autofocus
https://bugs.webkit.org/show_bug.cgi?id=200515
<rdar://problem/54092988>
Reviewed by Ryosuke Niwa.
Source/WebCore:
According to Step 6 in the WhatWG Spec (https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofocusing-a-form-control:-the-autofocus-attribute),
the 'autofocus' attribute shouldn't work for cross-origin iframes.
This change is based on the Blink change (patch by <mustaq@chromium.org>):
<https://chromium-review.googlesource.com/c/chromium/src/+/1593026>
Also disallow cross-origin iframes from focusing programmatically without ever having
had any user interaction.
- dom/Element.cpp: Check if an invalid frame is trying to grab the focus.
(WebCore::Element::focus):
- html/HTMLFormControlElement.cpp: Check if the focus is moving to an invalid frame.
(WebCore::shouldAutofocus):
- page/DOMWindow.cpp: Check if an invalid frame is trying to grab the focus.
(WebCore::DOMWindow::focus):
Tools:
Make WebKit.FocusedFrameAfterCrash use same-origin iframes instead
of cross-origin iframes, since it depends on focusing one of the
frames.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit/many-same-origin-iframes.html: Added.
LayoutTests:
Add test coverage, and simulate user interaction in existing tests
that require focusing a cross-origin frame.
- http/tests/security/clipboard/resources/copy-html.html:
- http/tests/security/clipboard/resources/copy-mso-list.html:
- http/tests/security/clipboard/resources/copy-url.html:
- http/wpt/html/interaction/focus/no-cross-origin-element-focus-expected.txt: Added.
- http/wpt/html/interaction/focus/no-cross-origin-element-focus.html: Added.
- http/wpt/html/interaction/focus/no-cross-origin-window-focus-expected.txt: Added.
- http/wpt/html/interaction/focus/no-cross-origin-window-focus.html: Added.
- http/wpt/html/interaction/focus/resources/child-focus-element.html: Added.
- http/wpt/html/interaction/focus/resources/child-focus-window.html: Added.
- http/wpt/html/semantics/forms/autofocus/no-cross-origin-autofocus.sub-expected.txt: Added.
- http/wpt/html/semantics/forms/autofocus/no-cross-origin-autofocus.sub.html: Added.
- http/wpt/html/semantics/forms/autofocus/resources/child-autofocus.html: Added.
- http/wpt/webauthn/resources/last-layer-frame.https.html:
- 4:55 PM Changeset in webkit [248490] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: REGRESSION(r248480): Sources: the Pause Reason section takes the entire vertical space when there are few breakpoints/resources
https://bugs.webkit.org/show_bug.cgi?id=200597
Reviewed by Joseph Pecoraro.
- UserInterface/Views/SourcesNavigationSidebarPanel.css:
(@media (min-height: 650px) .sidebar > .panel.navigation.sources > .content > .pause-reason-container): Deleted.
Don'tflex-groworflex-shrinkthe Pause Reason section so it always displays its full
content. The rest of the sections can grow/shrink as needed.
- 4:52 PM Changeset in webkit [248489] by
-
- 2 edits in trunk/Source/WebKitLegacy
Fix WebKitLegacy's post-process-header-rule script to support paths with spaces in them
https://bugs.webkit.org/show_bug.cgi?id=200595
<rdar://problem/54045608>
Reviewed by Darin Adler.
A number of scripts were added to WebKit, JavaScriptCore, and
WebKitLegacy to support XCBuild's new facility for copying and
modifying files in one atomic step. The first two are OK, but
WebKitLegacy's script (post-process-header-rule) references a file via
a variable named "header", and does so without quoting the variable's
value. When the header's path contains spaces -- as can happen when
building Safari Technology Preview -- the script breaks. Fix this by
adding quoting.
- scripts/postprocess-header-rule:
- 4:30 PM Changeset in webkit [248488] by
-
- 72 edits1 copy3 adds in trunk/Source
[WHLSL] Devirtualize the AST
https://bugs.webkit.org/show_bug.cgi?id=200522
Reviewed by Robin Morisset.
Source/WebCore:
This patch devirtualizes the AST for Type, Expression, and Statement.
We now have an enum which represents all the concrete types in the
three hierarchies. Doing dynamic dispatch is implemented as a switch
on that type enum.
The interesting part of this patch is how to handle destruction. We do
this by defining a custom deleter for all nodes in the AST. This ensures
that when they're used inside UniqueRef, unique_ptr, Ref, and RefPtr,
we do dynamic dispatch when we delete the object. This allows each base
class to define a "destroy" method which does dynamic dispatch on type
and calls the appropriate delete. We also mark all non-concrete nodes
in all type hierarchies with a protected destructor, which ensures it's
never called except from within the concrete child classes. We allow
all concrete classes to have public destructors, as it's valid for
their destructors to be called explicitly since there is no need for
dynamic dispatch in such scenarios. All concrete classes are also marked
as final.
This is a 3ms speedup on compute_boids, which is about a 10% improvement
in the WHLSL compiler.
- Modules/webgpu/WHLSL/AST/WHLSLArrayReferenceType.h:
- Modules/webgpu/WHLSL/AST/WHLSLArrayType.h:
- Modules/webgpu/WHLSL/AST/WHLSLAssignmentExpression.h:
(WebCore::WHLSL::AST::AssignmentExpression::AssignmentExpression): Deleted.
(WebCore::WHLSL::AST::AssignmentExpression::left): Deleted.
(WebCore::WHLSL::AST::AssignmentExpression::right): Deleted.
(WebCore::WHLSL::AST::AssignmentExpression::takeRight): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLBlock.h:
(WebCore::WHLSL::AST::Block::Block): Deleted.
(WebCore::WHLSL::AST::Block::statements): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLBooleanLiteral.h:
(WebCore::WHLSL::AST::BooleanLiteral::BooleanLiteral): Deleted.
(WebCore::WHLSL::AST::BooleanLiteral::value const): Deleted.
(WebCore::WHLSL::AST::BooleanLiteral::clone const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLBreak.h:
(WebCore::WHLSL::AST::Break::Break): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLCallExpression.h:
(WebCore::WHLSL::AST::CallExpression::CallExpression): Deleted.
(WebCore::WHLSL::AST::CallExpression::arguments): Deleted.
(WebCore::WHLSL::AST::CallExpression::name): Deleted.
(WebCore::WHLSL::AST::CallExpression::setCastData): Deleted.
(WebCore::WHLSL::AST::CallExpression::isCast): Deleted.
(WebCore::WHLSL::AST::CallExpression::castReturnType): Deleted.
(WebCore::WHLSL::AST::CallExpression::function): Deleted.
(WebCore::WHLSL::AST::CallExpression::setFunction): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLCommaExpression.h:
(WebCore::WHLSL::AST::CommaExpression::CommaExpression): Deleted.
(WebCore::WHLSL::AST::CommaExpression::list): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLConstantExpression.h:
(WebCore::WHLSL::AST::ConstantExpression::ConstantExpression): Deleted.
(WebCore::WHLSL::AST::ConstantExpression::integerLiteral): Deleted.
(WebCore::WHLSL::AST::ConstantExpression::visit): Deleted.
(WebCore::WHLSL::AST::ConstantExpression::visit const): Deleted.
(WebCore::WHLSL::AST::ConstantExpression::clone const): Deleted.
(WebCore::WHLSL::AST::ConstantExpression::matches const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLContinue.h:
(WebCore::WHLSL::AST::Continue::Continue): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLDefaultDelete.h: Added.
- Modules/webgpu/WHLSL/AST/WHLSLDereferenceExpression.h:
(WebCore::WHLSL::AST::DereferenceExpression::DereferenceExpression): Deleted.
(WebCore::WHLSL::AST::DereferenceExpression::pointer): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLDoWhileLoop.h:
(WebCore::WHLSL::AST::DoWhileLoop::DoWhileLoop): Deleted.
(WebCore::WHLSL::AST::DoWhileLoop::body): Deleted.
(WebCore::WHLSL::AST::DoWhileLoop::conditional): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLDotExpression.h:
(WebCore::WHLSL::AST::DotExpression::DotExpression): Deleted.
(WebCore::WHLSL::AST::DotExpression::fieldName): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLEffectfulExpressionStatement.h:
(WebCore::WHLSL::AST::EffectfulExpressionStatement::EffectfulExpressionStatement): Deleted.
(WebCore::WHLSL::AST::EffectfulExpressionStatement::effectfulExpression): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLEnumerationDefinition.h:
(WebCore::WHLSL::AST::EnumerationDefinition::EnumerationDefinition): Deleted.
(WebCore::WHLSL::AST::EnumerationDefinition::type): Deleted.
(WebCore::WHLSL::AST::EnumerationDefinition::add): Deleted.
(WebCore::WHLSL::AST::EnumerationDefinition::memberByName): Deleted.
(WebCore::WHLSL::AST::EnumerationDefinition::enumerationMembers): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLEnumerationMemberLiteral.h:
(WebCore::WHLSL::AST::EnumerationMemberLiteral::EnumerationMemberLiteral): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::wrap): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::left const): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::right const): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::clone const): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::enumerationDefinition): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::enumerationDefinition const): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::enumerationMember): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::enumerationMember const): Deleted.
(WebCore::WHLSL::AST::EnumerationMemberLiteral::setEnumerationMember): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLExpression.cpp: Added.
(WebCore::WHLSL::AST::Expression::destroy):
(WebCore::WHLSL::AST::PropertyAccessExpression::getterFunctionName const):
(WebCore::WHLSL::AST::PropertyAccessExpression::setterFunctionName const):
(WebCore::WHLSL::AST::PropertyAccessExpression::anderFunctionName const):
- Modules/webgpu/WHLSL/AST/WHLSLExpression.h:
(WebCore::WHLSL::AST::Expression::Expression):
(WebCore::WHLSL::AST::Expression::kind const):
(WebCore::WHLSL::AST::Expression::isAssignmentExpression const):
(WebCore::WHLSL::AST::Expression::isBooleanLiteral const):
(WebCore::WHLSL::AST::Expression::isCallExpression const):
(WebCore::WHLSL::AST::Expression::isCommaExpression const):
(WebCore::WHLSL::AST::Expression::isDereferenceExpression const):
(WebCore::WHLSL::AST::Expression::isDotExpression const):
(WebCore::WHLSL::AST::Expression::isGlobalVariableReference const):
(WebCore::WHLSL::AST::Expression::isFloatLiteral const):
(WebCore::WHLSL::AST::Expression::isIndexExpression const):
(WebCore::WHLSL::AST::Expression::isIntegerLiteral const):
(WebCore::WHLSL::AST::Expression::isLogicalExpression const):
(WebCore::WHLSL::AST::Expression::isLogicalNotExpression const):
(WebCore::WHLSL::AST::Expression::isMakeArrayReferenceExpression const):
(WebCore::WHLSL::AST::Expression::isMakePointerExpression const):
(WebCore::WHLSL::AST::Expression::isNullLiteral const):
(WebCore::WHLSL::AST::Expression::isPropertyAccessExpression const):
(WebCore::WHLSL::AST::Expression::isReadModifyWriteExpression const):
(WebCore::WHLSL::AST::Expression::isTernaryExpression const):
(WebCore::WHLSL::AST::Expression::isUnsignedIntegerLiteral const):
(WebCore::WHLSL::AST::Expression::isVariableReference const):
(WebCore::WHLSL::AST::Expression::isEnumerationMemberLiteral const):
(WebCore::WHLSL::AST::Expression::codeLocation const):
(WebCore::WHLSL::AST::Expression::updateCodeLocation):
- Modules/webgpu/WHLSL/AST/WHLSLFallthrough.h:
(WebCore::WHLSL::AST::Fallthrough::Fallthrough): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLFloatLiteral.h:
(WebCore::WHLSL::AST::FloatLiteral::FloatLiteral): Deleted.
(WebCore::WHLSL::AST::FloatLiteral::type): Deleted.
(WebCore::WHLSL::AST::FloatLiteral::value const): Deleted.
(WebCore::WHLSL::AST::FloatLiteral::clone const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLFloatLiteralType.cpp:
(WebCore::WHLSL::AST::FloatLiteralType::FloatLiteralType):
- Modules/webgpu/WHLSL/AST/WHLSLFloatLiteralType.h:
(WebCore::WHLSL::AST::FloatLiteralType::value const): Deleted.
(WebCore::WHLSL::AST::FloatLiteralType::preferredType): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLForLoop.h:
(WebCore::WHLSL::AST::ForLoop::ForLoop): Deleted.
(WebCore::WHLSL::AST::ForLoop::~ForLoop): Deleted.
(WebCore::WHLSL::AST::ForLoop::initialization): Deleted.
(WebCore::WHLSL::AST::ForLoop::condition): Deleted.
(WebCore::WHLSL::AST::ForLoop::increment): Deleted.
(WebCore::WHLSL::AST::ForLoop::body): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLGlobalVariableReference.h:
(WebCore::WHLSL::AST::GlobalVariableReference::GlobalVariableReference): Deleted.
(WebCore::WHLSL::AST::GlobalVariableReference::structField): Deleted.
(WebCore::WHLSL::AST::GlobalVariableReference::base): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLIfStatement.h:
(WebCore::WHLSL::AST::IfStatement::IfStatement): Deleted.
(WebCore::WHLSL::AST::IfStatement::conditional): Deleted.
(WebCore::WHLSL::AST::IfStatement::body): Deleted.
(WebCore::WHLSL::AST::IfStatement::elseBody): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLIndexExpression.h:
(WebCore::WHLSL::AST::IndexExpression::IndexExpression): Deleted.
(WebCore::WHLSL::AST::IndexExpression::indexExpression): Deleted.
(WebCore::WHLSL::AST::IndexExpression::takeIndex): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLIntegerLiteral.h:
(WebCore::WHLSL::AST::IntegerLiteral::IntegerLiteral): Deleted.
(WebCore::WHLSL::AST::IntegerLiteral::type): Deleted.
(WebCore::WHLSL::AST::IntegerLiteral::value const): Deleted.
(WebCore::WHLSL::AST::IntegerLiteral::clone const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLIntegerLiteralType.cpp:
(WebCore::WHLSL::AST::IntegerLiteralType::IntegerLiteralType):
- Modules/webgpu/WHLSL/AST/WHLSLIntegerLiteralType.h:
(WebCore::WHLSL::AST::IntegerLiteralType::value const): Deleted.
(WebCore::WHLSL::AST::IntegerLiteralType::preferredType): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLLogicalExpression.h:
(WebCore::WHLSL::AST::LogicalExpression::LogicalExpression): Deleted.
(WebCore::WHLSL::AST::LogicalExpression::type const): Deleted.
(WebCore::WHLSL::AST::LogicalExpression::left): Deleted.
(WebCore::WHLSL::AST::LogicalExpression::right): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLLogicalNotExpression.h:
(WebCore::WHLSL::AST::LogicalNotExpression::LogicalNotExpression): Deleted.
(WebCore::WHLSL::AST::LogicalNotExpression::operand): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLMakeArrayReferenceExpression.h:
(WebCore::WHLSL::AST::MakeArrayReferenceExpression::MakeArrayReferenceExpression): Deleted.
(WebCore::WHLSL::AST::MakeArrayReferenceExpression::leftValue): Deleted.
(WebCore::WHLSL::AST::MakeArrayReferenceExpression::mightEscape const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLMakePointerExpression.h:
(WebCore::WHLSL::AST::MakePointerExpression::MakePointerExpression): Deleted.
(WebCore::WHLSL::AST::MakePointerExpression::leftValue): Deleted.
(WebCore::WHLSL::AST::MakePointerExpression::mightEscape const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLNamedType.h:
(WebCore::WHLSL::AST::NamedType::NamedType):
(WebCore::WHLSL::AST::NamedType::unifyNodeImpl):
(): Deleted.
(WebCore::WHLSL::AST::NamedType::isTypeDefinition const): Deleted.
(WebCore::WHLSL::AST::NamedType::isStructureDefinition const): Deleted.
(WebCore::WHLSL::AST::NamedType::isEnumerationDefinition const): Deleted.
(WebCore::WHLSL::AST::NamedType::isNativeTypeDeclaration const): Deleted.
(WebCore::WHLSL::AST::NamedType::unifyNode const): Deleted.
(WebCore::WHLSL::AST::NamedType::unifyNode): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLNativeTypeDeclaration.h:
(WebCore::WHLSL::AST::NativeTypeDeclaration::NativeTypeDeclaration): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::typeArguments): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isInt const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isNumber const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isFloating const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isAtomic const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isVector const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isMatrix const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isOpaqueType const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isTexture const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isTextureArray const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isDepthTexture const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isWritableTexture const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::textureDimension const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::isSigned const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::std::function<bool const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::std::function<int64_t const): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::iterateAllValues): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsInt): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsNumber): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsFloating): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsAtomic): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsVector): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsMatrix): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsOpaqueType): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsTexture): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsTextureArray): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsDepthTexture): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsWritableTexture): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setTextureDimension): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIsSigned): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setCanRepresentInteger): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setCanRepresentUnsignedInteger): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setCanRepresentFloat): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setSuccessor): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setFormatValueFromInteger): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setFormatValueFromUnsignedInteger): Deleted.
(WebCore::WHLSL::AST::NativeTypeDeclaration::setIterateAllValues): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLNullLiteral.h:
(WebCore::WHLSL::AST::NullLiteral::NullLiteral): Deleted.
(WebCore::WHLSL::AST::NullLiteral::type): Deleted.
(WebCore::WHLSL::AST::NullLiteral::clone const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLNullLiteralType.h:
- Modules/webgpu/WHLSL/AST/WHLSLPointerType.h:
- Modules/webgpu/WHLSL/AST/WHLSLPropertyAccessExpression.h:
(WebCore::WHLSL::AST::PropertyAccessExpression::PropertyAccessExpression):
- Modules/webgpu/WHLSL/AST/WHLSLReadModifyWriteExpression.h:
(WebCore::WHLSL::AST::ReadModifyWriteExpression::create): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::setNewValueExpression): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::setResultExpression): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::oldVariableReference): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::newVariableReference): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::leftValue): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::oldValue): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::newValue): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::newValueExpression): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::resultExpression): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::takeLeftValue): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::takeOldValue): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::takeNewValue): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::takeNewValueExpression): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::takeResultExpression): Deleted.
(WebCore::WHLSL::AST::ReadModifyWriteExpression::ReadModifyWriteExpression): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLReferenceType.h:
(WebCore::WHLSL::AST::ReferenceType::ReferenceType):
- Modules/webgpu/WHLSL/AST/WHLSLResolvableType.h:
(WebCore::WHLSL::AST::ResolvableType::ResolvableType):
(): Deleted.
(WebCore::WHLSL::AST::ResolvableType::isFloatLiteralType const): Deleted.
(WebCore::WHLSL::AST::ResolvableType::isIntegerLiteralType const): Deleted.
(WebCore::WHLSL::AST::ResolvableType::isNullLiteralType const): Deleted.
(WebCore::WHLSL::AST::ResolvableType::isUnsignedIntegerLiteralType const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLReturn.h:
(WebCore::WHLSL::AST::Return::Return): Deleted.
(WebCore::WHLSL::AST::Return::value): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLStatement.cpp: Added.
(WebCore::WHLSL::AST::Statement::destroy):
- Modules/webgpu/WHLSL/AST/WHLSLStatement.h:
(WebCore::WHLSL::AST::Statement::Statement):
(WebCore::WHLSL::AST::Statement::kind const):
(WebCore::WHLSL::AST::Statement::isBlock const):
(WebCore::WHLSL::AST::Statement::isBreak const):
(WebCore::WHLSL::AST::Statement::isContinue const):
(WebCore::WHLSL::AST::Statement::isDoWhileLoop const):
(WebCore::WHLSL::AST::Statement::isEffectfulExpressionStatement const):
(WebCore::WHLSL::AST::Statement::isFallthrough const):
(WebCore::WHLSL::AST::Statement::isForLoop const):
(WebCore::WHLSL::AST::Statement::isIfStatement const):
(WebCore::WHLSL::AST::Statement::isReturn const):
(WebCore::WHLSL::AST::Statement::isStatementList const):
(WebCore::WHLSL::AST::Statement::isSwitchCase const):
(WebCore::WHLSL::AST::Statement::isSwitchStatement const):
(WebCore::WHLSL::AST::Statement::isVariableDeclarationsStatement const):
(WebCore::WHLSL::AST::Statement::isWhileLoop const):
(WebCore::WHLSL::AST::Statement::codeLocation const):
(WebCore::WHLSL::AST::Statement::updateCodeLocation):
- Modules/webgpu/WHLSL/AST/WHLSLStatementList.h:
(WebCore::WHLSL::AST::StatementList::StatementList): Deleted.
(WebCore::WHLSL::AST::StatementList::statements): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLStructureDefinition.h:
(WebCore::WHLSL::AST::StructureDefinition::StructureDefinition): Deleted.
(WebCore::WHLSL::AST::StructureDefinition::structureElements): Deleted.
(WebCore::WHLSL::AST::StructureDefinition::find): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLStructureElement.h:
(WebCore::WHLSL::AST::StructureElement::StructureElement): Deleted.
(WebCore::WHLSL::AST::StructureElement::codeLocation const): Deleted.
(WebCore::WHLSL::AST::StructureElement::type): Deleted.
(WebCore::WHLSL::AST::StructureElement::name): Deleted.
(WebCore::WHLSL::AST::StructureElement::semantic): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLSwitchCase.h:
(WebCore::WHLSL::AST::SwitchCase::SwitchCase): Deleted.
(WebCore::WHLSL::AST::SwitchCase::value): Deleted.
(WebCore::WHLSL::AST::SwitchCase::block): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLSwitchStatement.h:
(WebCore::WHLSL::AST::SwitchStatement::SwitchStatement): Deleted.
(WebCore::WHLSL::AST::SwitchStatement::value): Deleted.
(WebCore::WHLSL::AST::SwitchStatement::switchCases): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLTernaryExpression.h:
(WebCore::WHLSL::AST::TernaryExpression::TernaryExpression): Deleted.
(WebCore::WHLSL::AST::TernaryExpression::predicate): Deleted.
(WebCore::WHLSL::AST::TernaryExpression::bodyExpression): Deleted.
(WebCore::WHLSL::AST::TernaryExpression::elseExpression): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLType.cpp: Added.
(WebCore::WHLSL::AST::Type::destroy):
(WebCore::WHLSL::AST::Type::unifyNode):
(WebCore::WHLSL::AST::ResolvableType::canResolve const):
(WebCore::WHLSL::AST::ResolvableType::conversionCost const):
(WebCore::WHLSL::AST::UnnamedType::toString const):
- Modules/webgpu/WHLSL/AST/WHLSLType.h:
(WebCore::WHLSL::AST::Type::Type):
(WebCore::WHLSL::AST::Type::kind const):
(WebCore::WHLSL::AST::Type::isUnnamedType const):
(WebCore::WHLSL::AST::Type::isNamedType const):
(WebCore::WHLSL::AST::Type::isResolvableType const):
(WebCore::WHLSL::AST::Type::isTypeReference const):
(WebCore::WHLSL::AST::Type::isPointerType const):
(WebCore::WHLSL::AST::Type::isArrayReferenceType const):
(WebCore::WHLSL::AST::Type::isArrayType const):
(WebCore::WHLSL::AST::Type::isReferenceType const):
(WebCore::WHLSL::AST::Type::isTypeDefinition const):
(WebCore::WHLSL::AST::Type::isStructureDefinition const):
(WebCore::WHLSL::AST::Type::isEnumerationDefinition const):
(WebCore::WHLSL::AST::Type::isNativeTypeDeclaration const):
(WebCore::WHLSL::AST::Type::isFloatLiteralType const):
(WebCore::WHLSL::AST::Type::isIntegerLiteralType const):
(WebCore::WHLSL::AST::Type::isNullLiteralType const):
(WebCore::WHLSL::AST::Type::isUnsignedIntegerLiteralType const):
(WebCore::WHLSL::AST::Type::unifyNode const):
- Modules/webgpu/WHLSL/AST/WHLSLTypeDefinition.h:
(WebCore::WHLSL::AST::TypeDefinition::TypeDefinition): Deleted.
(WebCore::WHLSL::AST::TypeDefinition::type): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLTypeReference.h:
- Modules/webgpu/WHLSL/AST/WHLSLUnnamedType.cpp:
(WebCore::WHLSL::AST::UnnamedType::hash const):
(WebCore::WHLSL::AST::UnnamedType::operator== const):
- Modules/webgpu/WHLSL/AST/WHLSLUnnamedType.h:
(WebCore::WHLSL::AST::UnnamedType::UnnamedType):
(WebCore::WHLSL::AST::UnnamedType::unifyNodeImpl):
(): Deleted.
(WebCore::WHLSL::AST::UnnamedType::kind const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::isTypeReference const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::isPointerType const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::isArrayReferenceType const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::isArrayType const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::isReferenceType const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::unifyNode const): Deleted.
(WebCore::WHLSL::AST::UnnamedType::unifyNode): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLUnsignedIntegerLiteral.h:
(WebCore::WHLSL::AST::UnsignedIntegerLiteral::UnsignedIntegerLiteral): Deleted.
(WebCore::WHLSL::AST::UnsignedIntegerLiteral::type): Deleted.
(WebCore::WHLSL::AST::UnsignedIntegerLiteral::value const): Deleted.
(WebCore::WHLSL::AST::UnsignedIntegerLiteral::clone const): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLUnsignedIntegerLiteralType.cpp:
(WebCore::WHLSL::AST::UnsignedIntegerLiteralType::UnsignedIntegerLiteralType):
- Modules/webgpu/WHLSL/AST/WHLSLUnsignedIntegerLiteralType.h:
(WebCore::WHLSL::AST::UnsignedIntegerLiteralType::value const): Deleted.
(WebCore::WHLSL::AST::UnsignedIntegerLiteralType::preferredType): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLVariableDeclarationsStatement.h:
(WebCore::WHLSL::AST::VariableDeclarationsStatement::VariableDeclarationsStatement): Deleted.
(WebCore::WHLSL::AST::VariableDeclarationsStatement::variableDeclarations): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLVariableReference.h:
(WebCore::WHLSL::AST::VariableReference::VariableReference): Deleted.
(WebCore::WHLSL::AST::VariableReference::wrap): Deleted.
(WebCore::WHLSL::AST::VariableReference::name): Deleted.
(WebCore::WHLSL::AST::VariableReference::variable): Deleted.
(WebCore::WHLSL::AST::VariableReference::setVariable): Deleted.
- Modules/webgpu/WHLSL/AST/WHLSLWhileLoop.h:
(WebCore::WHLSL::AST::WhileLoop::WhileLoop): Deleted.
(WebCore::WHLSL::AST::WhileLoop::conditional): Deleted.
(WebCore::WHLSL::AST::WhileLoop::body): Deleted.
- Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.cpp:
(WebCore::WHLSL::Metal::BaseTypeNameNode::isPointerTypeNameNode const):
(WebCore::WHLSL::Metal::BaseTypeNameNode::isArrayReferenceTypeNameNode const):
(WebCore::WHLSL::Metal::BaseTypeNameNode::isArrayTypeNameNode const):
(WebCore::WHLSL::Metal::TypeNamer::createNameNode):
(WebCore::WHLSL::Metal::parent):
(WebCore::WHLSL::Metal::TypeNamer::emitUnnamedTypeDefinition):
- Modules/webgpu/WHLSL/WHLSLParser.cpp:
(WebCore::WHLSL::Parser::parseSuffixOperator):
(WebCore::WHLSL::Parser::completeAssignment):
(WebCore::WHLSL::Parser::parsePossiblePrefix):
- Modules/webgpu/WHLSL/WHLSLPreserveVariableLifetimes.cpp:
- Modules/webgpu/WHLSL/WHLSLVisitor.cpp:
(WebCore::WHLSL::Visitor::visit):
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- workers/WorkerScriptLoader.h:
Source/WTF:
Make RefCounted use std::default_delete instead of explicitly calling delete.
This allows uses of RefCounted to define their own custom deleter.
- wtf/RefCounted.h:
(WTF::RefCounted::deref const):
- wtf/UniqueRef.h:
(WTF::UniqueRef::UniqueRef):
- 4:06 PM Changeset in webkit [248487] by
-
- 5 edits in trunk
[iOS 13] Google Docs/Slides/Sheets: paste often doesn't work and sometimes produces an error
https://bugs.webkit.org/show_bug.cgi?id=200591
<rdar://problem/54102238>
Reviewed by Ryosuke Niwa and Tim Horton.
Source/WebKit:
Adopts UIKit SPI to avoid incrementing the general pasteboard's change count whenever an editable element is
focused. This is due to how, in iOS 13, UIKit temporarily writes an image to the pasteboard when showing the
keyboard, to determine whether or not to show the Memojis in the input view.
This causes UIPasteboard's changeCount to increment twice due to adding and then removing the image, which means
that the changeCount sanity checks in the web process will race against the pasteboard gaining and then losing
this temporary image.
Instead, the new -supportsImagePaste SPI may be used to short-circuit this step, and avoid updating the
changeCount when UIKeyboardImpl's delegate changes.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView supportsImagePaste]):
Tools:
Add a new API test to exercise -supportsImagePaste.
- TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/ios/UIKitSPI.h:
- 3:58 PM Changeset in webkit [248486] by
-
- 3 edits in trunk/Source/WebKit
Remove unused Connection::sendWithReply
https://bugs.webkit.org/show_bug.cgi?id=200590
Patch by Alex Christensen <achristensen@webkit.org> on 2019-08-09
Reviewed by Chris Dumez.
This was attempted in r245151, but rolled out in r245164 because my SecItemShim code didn't work well on non-main threads.
Chris found a better solution for SecItemShim in r248014, making this unused code. Let's remove it.
- Platform/IPC/Connection.cpp:
(IPC::Connection::invalidate):
(IPC::Connection::processIncomingSyncReply):
(IPC::Connection::connectionDidClose):
(IPC::Connection::sendMessageWithReply): Deleted.
- Platform/IPC/Connection.h:
(IPC::Connection::send):
(IPC::Connection::sendWithReply): Deleted.
- 3:12 PM Changeset in webkit [248485] by
-
- 7 edits2 moves in trunk/Source/WebInspectorUI
REGRESSION (Safari 6): Web Inspector: JSON may not be pretty printed if served as text/html
https://bugs.webkit.org/show_bug.cgi?id=122898
<rdar://problem/15241419>
Reviewed by Joseph Pecoraro.
Check the request/response data to see if it's JSON parsable. If so, allow the user to elect
to view the request/response as a JSON preview instead of raw (or pretty printed) text.
Prefer the JSON view wherever possible.
- UserInterface/Views/ResourceClusterContentView.js:
(WI.ResourceClusterContentView):
(WI.ResourceClusterContentView.prototype.get requestContentView):
(WI.ResourceClusterContentView.prototype.get customRequestContentView): Added.
(WI.ResourceClusterContentView.prototype.get customResponseContentView):
(WI.ResourceClusterContentView.prototype.get selectionPathComponents):
(WI.ResourceClusterContentView.prototype.showRequest):
(WI.ResourceClusterContentView.prototype._canShowCustomRequestContentView): Added.
(WI.ResourceClusterContentView.prototype._canShowCustomResponseContentView):
(WI.ResourceClusterContentView.prototype._contentViewForResourceType):
(WI.ResourceClusterContentView.prototype._pathComponentForContentView):
(WI.ResourceClusterContentView.prototype._identifierForContentView):
(WI.ResourceClusterContentView.prototype._showContentViewForIdentifier):
(WI.ResourceClusterContentView.prototype._canUseJSONContentViewForContent): Added.
(WI.ResourceClusterContentView.prototype._tryEnableCustomRequestContentView): Added.
(WI.ResourceClusterContentView.prototype._tryEnableCustomResponseContentView):
(WI.ResourceClusterContentView.prototype.saveToCookie): Deleted.
(WI.ResourceClusterContentView.prototype._customContentViewConstructorForResource): Deleted.
Since the current view is already saved in aWI.Setting, there's no need to save that
state to a cookie, as it'll be restored elsewhere.
- UserInterface/Base/Main.js:
(WI.showResourceRequest):
- UserInterface/Main.html:
- UserInterface/Views/JSONContentView.js: Added.
(WI.JSONContentView):
(WI.JSONContentView.prototype.initialLayout):
(WI.JSONContentView.prototype.attached):
(WI.JSONContentView.prototype.closed):
- UserInterface/Views/JSONContentView.css: Added.
(.content-view.json):
- Source/WebInspectorUI/UserInterface/Views/JSONResourceContentView.js: Deleted.
- Source/WebInspectorUI/UserInterface/Views/JSONResourceContentView.css: Deleted.
Create a more generic content view that shows a preview for the given JSON parsable string.
- UserInterface/Base/Utilities.js:
(String.prototype.isJSON): Added.
- UserInterface/Views/WebSocketDataGridNode.js:
(WI.WebSocketDataGridNode.prototype.appendContextMenuItems):
Utility function for checking if a string is JSON parsable.
- Localizations/en.lproj/localizedStrings.js:
- 3:09 PM Changeset in webkit [248484] by
-
- 7 edits in branches/safari-608-branch/Source
Versioning.
- 3:07 PM Changeset in webkit [248483] by
-
- 1 copy in tags/Safari-608.2.4
Tag Safari-608.2.4.
- 3:06 PM Changeset in webkit [248482] by
-
- 4 edits in branches/safari-608-branch/Source
Cherry-pick r248462. rdar://problem/54144119
[Win] Fix internal build
https://bugs.webkit.org/show_bug.cgi?id=200519
Reviewed by Alex Christensen.
Source/JavaScriptCore:
The script 'generate-js-builtins.py' cannot be found when building WebCore. Copy the JavaScriptCore Scripts
folder after building JSC.
- JavaScriptCore.vcxproj/JavaScriptCore.proj:
Source/WebKitLegacy/win:
Switch to the String::wideCharacers method, since its return type is compatible with the Win32 api.
- WebDownloadCFNet.cpp: (WebDownload::didFinish):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:01 PM Changeset in webkit [248481] by
-
- 3 edits in trunk/Source/WebKit
[iOS WK2] Remove context menu hints on navigation
https://bugs.webkit.org/show_bug.cgi?id=200588
rdar://problem/54061796
Reviewed by Tim Horton.
Make sure the context menu hint doesn't linger across navigations by hosting it in its
own container view (shared with drag previews), and hiding that view on navigation (unparenting
may have bad consequences). We remove the view when the animation ends.
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _didCommitLoadForMainFrame]):
(-[WKContentView containerViewForTargetedPreviews]):
(-[WKContentView _hideContextMenu]):
(-[WKContentView contextMenuInteraction:willEndForConfiguration:animator:]):
- 2:59 PM Changeset in webkit [248480] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Sources: increase the vertical space allocated to the call stack when paused
https://bugs.webkit.org/show_bug.cgi?id=200236
Reviewed by Joseph Pecoraro.
Rather than uniformly constrict the height of the Call Stack and Breakpoints sections, they
should "flex" based on their importance, which can likely be derived from the current state.
This way, it's possible to see information from each section at the same time, but still
have enough space in each section to be able to do something useful.
When paused, the most useful data is the call stack, so give the Call Stack section the most
vertical space (the Pause Reason is also important, but it usually needs very little space).
When not paused, it's likely that the user cares more about the resources with breakpoints
than those without, so favor the Breakpoints section.
Each section will only expand to fit it's maximum content height.
If the inspector window becomes too short, remove the "flex" entirely and have all the
content be part of a single scroll area instead.
- UserInterface/Views/SourcesNavigationSidebarPanel.js:
(WI.SourcesNavigationSidebarPanel):
(WI.SourcesNavigationSidebarPanel.prototype.createContentTreeOutline):
(WI.SourcesNavigationSidebarPanel.prototype._handleBreakpointElementAddedOrRemoved):
(WI.SourcesNavigationSidebarPanel.prototype._handleDebuggerPaused):
(WI.SourcesNavigationSidebarPanel.prototype._handleDebuggerResumed):
(WI.SourcesNavigationSidebarPanel.prototype._handleCallStackElementAddedOrRemoved): Deleted.
- UserInterface/Views/SourcesNavigationSidebarPanel.css:
(.sidebar > .panel.navigation.sources > .content > :matches(.pause-reason-container, .call-stack-container, .breakpoints-container)): Added.
(.sidebar > .panel.navigation.sources > .content .details-section): Added.
(.sidebar > .panel.navigation.sources > .content .details-section.collapsed > .header > .options, .sidebar > .panel.navigation.sources > .content .details-section:not(.collapsed) > .content, .sidebar > .panel.navigation.sources > .content .details-section:not(.collapsed) > .content > .group): Added.
(.sidebar > .panel.navigation.sources > .content > .breakpoints-container .create-breakpoint): Added.
(.sidebar > .panel.navigation.sources > .content > .navigation-bar): Added.
(@media (min-height: 650px)): Added.
(.sidebar > .panel.navigation.sources > .content > .pause-reason-container): Added.
(.sidebar > .panel.navigation.sources > .content > :matches(.call-stack-container, .breakpoints-container, .resources)): Added.
(.sidebar > .panel.navigation.sources > .content > .call-stack-container): Added.
(.sidebar > .panel.navigation.sources > .content > .breakpoints-container): Added.
(.sidebar > .panel.navigation.sources > .content > .resources): Added.
(.sidebar > .panel.navigation.sources > .content > .breakpoints-container .tree-outline .item.event-target-window .icon): Added.
(.sidebar > .panel.navigation.sources > .content > .details-section): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section:matches(.paused-reason, .breakpoints).collapsed > .header > .options,): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section.collapsed > .content): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section.breakpoints > .header > .options .create-breakpoint): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section:matches(.pause-reason, .call-stack, .breakpoints) > .content,): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section:matches(.call-stack, .breakpoints) > .content): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section:matches(.call-stack, .breakpoints):not(.collapsed) > .content): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section.call-stack): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section.breakpoints): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section.breakpoints .create-breakpoint): Deleted.
(@media (min-height: 600px)): Deleted.
(.sidebar > .panel.navigation.sources > .content > .pause-reason): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section:matches(.call-stack, .breakpoints):not(.collapsed) > .content,): Deleted.
(.sidebar > .panel.navigation.sources > .content > .details-section.breakpoints .tree-outline .item.event-target-window .icon): Deleted.
Wrap the Pause Reason, Call Stack, and BreakpointsWI.DetailsSections in a container
element so that the styling of the sticky header doesn't get affected by the clamping of the
container's height.
- UserInterface/Views/DetailsSection.css:
(.details-section):
(.details-section > .header):
Create CSS variables for styles that will be overridden by the Sources navigation sidebar.
- 2:57 PM Changeset in webkit [248479] by
-
- 2 edits in trunk/LayoutTests
[GTK] fast/mediastream/RTCPeerConnection-add-removeTrack.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=199018
This is fixed by the patch provided in https://bugs.webkit.org/show_bug.cgi?id=194326
Unreviewed gardening patch
Patch by Thibault Saunier <tsaunier@igalia.com> on 2019-08-09
- platform/gtk/TestExpectations:
- 2:46 PM Changeset in webkit [248478] by
-
- 1 copy in tags/Safari-608.1.42.1
Tag Safari-608.1.42.1.
- 2:44 PM Changeset in webkit [248477] by
-
- 7 edits in branches/safari-608.1-branch/Source
Versioning.
- 2:43 PM Changeset in webkit [248476] by
-
- 1 copy in tags/Safari-608.1.46
Tag Safari-608.1.46.
- 2:18 PM Changeset in webkit [248475] by
-
- 2 edits in trunk/Tools
Follow-up commit to r248474 as webkit-patch did not commit the svn property changes.
[ews-build] Set svn:ignore to various EWS Buildbot files
https://bugs.webkit.org/show_bug.cgi?id=200581
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build: Added property svn:ignore.
- 2:15 PM Changeset in webkit [248474] by
-
- 1 edit in trunk/Tools/ChangeLog
[ews-build] Set svn:ignore to various EWS Buildbot files
https://bugs.webkit.org/show_bug.cgi?id=200581
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build: Added property svn:ignore.
- 1:55 PM Changeset in webkit [248473] by
-
- 8 edits in trunk/Source/WebCore
Pass a ScriptExecutionContext as input to register/unregister URLRegistry routines
https://bugs.webkit.org/show_bug.cgi?id=200571
Reviewed by Darin Adler.
Passing a ScriptExecutionContext to register/unregister routines will allow
to have session ID based handling for blobs, in particular to use session partitioned blob registries.
No change of behavior.
- Modules/mediasource/MediaSourceRegistry.cpp:
(WebCore::MediaSourceRegistry::registerURL):
(WebCore::MediaSourceRegistry::unregisterURL):
- Modules/mediasource/MediaSourceRegistry.h:
- fileapi/Blob.cpp:
(WebCore::BlobURLRegistry::registerURL):
(WebCore::BlobURLRegistry::unregisterURL):
- html/DOMURL.cpp:
(WebCore::DOMURL::createPublicURL):
- html/PublicURLManager.cpp:
(WebCore::PublicURLManager::registerURL):
(WebCore::PublicURLManager::revoke):
(WebCore::PublicURLManager::stop):
- html/PublicURLManager.h:
- html/URLRegistry.h:
- 1:33 PM Changeset in webkit [248472] by
-
- 2 edits in trunk/Source/WebKitLegacy/win
[Win] Remove compiler workaround for VS2013
https://bugs.webkit.org/show_bug.cgi?id=200582
Reviewed by Don Olmstead.
A VS2013 compiler workaround can be removed now.
- WebKitQuartzCoreAdditions/API/WebKitQuartzCoreAdditions.cpp:
(DllMain):
- 1:20 PM Changeset in webkit [248471] by
-
- 7 edits in trunk/Source
Disable CSSOM View Scrolling API for IMDb iOS app
https://bugs.webkit.org/show_bug.cgi?id=200586
<rdar://problem/53645833>
Patch by Alex Christensen <achristensen@webkit.org> on 2019-08-09
Reviewed by Simon Fraser.
Source/WebCore:
They are calling scrollHeight on the HTML element and it is running new code introduced in r235806
Disable this new feature until they update their app to use the iOS13 SDK.
- platform/RuntimeApplicationChecks.h:
- platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::IOSApplication::isIMDb):
Source/WebKit:
Change the CSSOMViewScrollingAPIEnabled default value to be off for the IMDb app's WKWebViews.
I manually verified this is effective in those WKWebViews but no other WKWebViews and that it fixes the radar.
- Shared/WebPreferences.yaml:
- Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultCSSOMViewScrollingAPIEnabled):
- Shared/WebPreferencesDefaultValues.h:
- 12:51 PM Changeset in webkit [248470] by
-
- 1 edit1 add in trunk/Tools
[ews] Add buildbot.tac to repository
https://bugs.webkit.org/show_bug.cgi?id=200580
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/buildbot.tac: Added.
- 12:50 PM Changeset in webkit [248469] by
-
- 5 edits in trunk/Source
Tapping buttons in Data Detectors lookup previews doesn't work
https://bugs.webkit.org/show_bug.cgi?id=200579
<rdar://problem/54056519>
Reviewed by Megan Gardner.
Source/WebCore/PAL:
- pal/spi/ios/DataDetectorsUISPI.h:
Source/WebKit:
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _contextMenuInteraction:styleForMenuWithConfiguration:]):
If a Data Detectors context menu wants the action menu style, provide it.
(-[WKContentView contextMenuInteraction:willPerformPreviewActionForMenuWithConfiguration:animator:]):
If a Data Detectors context menu provides a view controller to present
on context menu commit, present it. We present on top of the same view
controller that is currently presenting the context menu, but modally
instead of inside the context menu.
If a Data Detectors context menu instead provides a URL to launch on
context menu commit, call openURL.
In both cases, change the commit style to pop, since we're committing
instead of dismissing.
- 10:46 AM Changeset in webkit [248468] by
-
- 3 edits in trunk/LayoutTests
Correcting Expectation Typo from r248388.
rdar://54049321
Unreviewed Test Gardening.
- platform/ios-12/TestExpectations:
- platform/ios/TestExpectations:
- 9:58 AM Changeset in webkit [248467] by
-
- 9 edits2 deletes in trunk/Source/WebCore
Remove MediaStreamRegistry
https://bugs.webkit.org/show_bug.cgi?id=200570
Reviewed by Eric Carlson.
MediaStream cannot be registered as an URL by JavaScript.
Remove MediaStreamRegistry and the 'src' loading specific handling in HTMLMediaElement.
Implement ending of capture track by directly handling MediaStreamTrack which is more accurate.
No change of behavior.
- Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::~MediaStream):
(WebCore::MediaStream::stop):
- Modules/mediastream/MediaStream.h:
- Modules/mediastream/MediaStreamRegistry.cpp: Removed.
- Modules/mediastream/MediaStreamRegistry.h: Removed.
- Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack):
(WebCore::MediaStreamTrack::~MediaStreamTrack):
(WebCore::MediaStreamTrack::endCapture):
- Modules/mediastream/MediaStreamTrack.h:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- dom/Document.cpp:
(WebCore::Document::stopMediaCapture):
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::loadResource):
- 8:53 AM Changeset in webkit [248466] by
-
- 16 edits in branches/safari-608.1-branch/Source
Cherry-pick r248447. rdar://problem/54109873
Add to InteractionInformationAtPosition information about whether the element is in a subscrollable region
https://bugs.webkit.org/show_bug.cgi?id=200374
rdar://problem/54095519
Reviewed by Tim Horton.
Source/WebCore:
Add to InteractionInformationAtPosition a ScrollingNodeID which represents the enclosing scrolling
node that affects the targeted element's position. We use this to find a UIScrollView in the UI process.
The entrypoint to finding the enclosing scrolling node is ScrollingCoordinator::scrollableContainerNodeID(),
which calls RenderLayerCompositor::asyncScrollableContainerNodeID() to look for a scrolling ancestor in
the current frame, and then looks for an enclosing scrollable frame, or a scrolling ancestor in
the enclosing frame.
There's a bit of subtlety in RenderLayerCompositor::asyncScrollableContainerNodeID() because if you're asking
for the node that scrolls the renderer, if the renderer itself has a layer and is scrollable, you want
its enclosing scroller.
- page/scrolling/AsyncScrollingCoordinator.cpp: (WebCore::AsyncScrollingCoordinator::scrollableContainerNodeID const):
- page/scrolling/AsyncScrollingCoordinator.h:
- page/scrolling/ScrollingCoordinator.cpp: (WebCore::scrollableContainerNodeID const):
- page/scrolling/ScrollingCoordinator.h:
- rendering/RenderLayer.h:
- rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::asyncScrollableContainerNodeID):
- rendering/RenderLayerCompositor.h:
Source/WebKit:
Add InteractionInformationAtPosition.containerScrollingNodeID and initialize it in elementPositionInformation()
by asking the scrolling coordinator.
Also add a way to get from a ScrollingNodeID to a UIScrollView to RemoteScrollingCoordinatorProxy,
which gets the scrolling node and asks the delegate for the UIView.
- Shared/ios/InteractionInformationAtPosition.h:
- Shared/ios/InteractionInformationAtPosition.mm: (WebKit::InteractionInformationAtPosition::encode const): (WebKit::InteractionInformationAtPosition::decode):
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
- UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm: (WebKit::RemoteScrollingCoordinatorProxy::scrollViewForScrollingNodeID const):
- UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
- UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.mm: (WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollView const):
- UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h:
- WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::elementPositionInformation):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248447 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 7:54 AM Changeset in webkit [248465] by
-
- 2 edits in trunk/Tools
[GTK] Add missing spellchecking packages to dependencies script
https://bugs.webkit.org/show_bug.cgi?id=200574
Reviewed by Philippe Normand.
These are needed for the spellchecking test in WebContext API tests.
- gtk/install-dependencies:
- 2:36 AM Changeset in webkit [248464] by
-
- 7 edits in trunk/Source/WebCore
[GL][GStreamer] activate wrapped shared context
https://bugs.webkit.org/show_bug.cgi?id=196966
Patch by Víctor Manuel Jáquez Leal <vjaquez@igalia.com> on 2019-08-09
Reviewed by Žan Doberšek.
This patch consists in four parts:
1\ When the media player is instantiated, and it is intended to
render textures, it will create a wrapped object of the
application's GL context, and in order to populate the wrapped
object with the GL vtable, the context has to be current. Thus,
this patch makes current the shared WebKit application context,
and populate the wrapped GstGLContext by activating it and filling
in it. Afterwards, the wrapped context is deactivated.
2\ This patch makes GL texture use the RGBA color space, thus the
color transformation is done in GStreamer, and no further color
transformation is required in WebKit.
3\ Since it is not necessary to modify behavior if the decoder is
imxvpudecoder, its identification and label were removed.
4\ As only RGBA is used, the old color conversions when rendering
using Cairo (fallback) were changed to convert the RGBA, as in
GStreamer's format, to ARGB32, as in Cairo format -which depends
on endianness.
No new tests because there is no behavior change.
- platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
(WebCore::ImageGStreamer::ImageGStreamer): Only convert GStreamer
RGBA to Cairo RGB32.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Removes
the IMX VPU identification.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::ensureGstGLContext):
Intializes the wrapped GL Context.
(WebCore::MediaPlayerPrivateGStreamerBase::updateTextureMapperFlags):
Removes frame's color conversion.
(WebCore::MediaPlayerPrivateGStreamerBase::createVideoSinkGL):
Instead of parsing a string, the GstCaps are created manually, and
it is set to appsink, rather than a filtered linking.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
Removes ImxVPU enumeration value.
- platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp:
Adds NoConvert option to texture copier, setting an identity
matrix.
(WebCore::VideoTextureCopierGStreamer::updateColorConversionMatrix):
- platform/graphics/gstreamer/VideoTextureCopierGStreamer.h: Adds
NoConvert enumeration value.
- 12:17 AM Changeset in webkit [248463] by
-
- 4 edits in trunk/Source/WebCore
REGRESSION (iOS 13): united.com web forms do not respond to taps
https://bugs.webkit.org/show_bug.cgi?id=200531
Reviewed by Antti Koivisto and Wenson Hsieh.
The bug is caused by the content change observer detecting “Site Feedback” link at the bottom of
the page (https://www.united.com/ual/en/US/account/enroll/default) constantly getting re-generated
in every frame via requestAnimationFrame when the page is opened with iPhone UA string.
Note that the content re-generation can be reproduced even in Chrome if iPhone UA string is used.
Ignore this constant content change in ContentChangeObserver as a site specific quirk.
In the future, we should make ContentChangeObserver observe the final location of each element
being observed so that we can ignore content that like this which is placed outside the viewport,
and/or far away from where the user tapped.
- page/Quirks.cpp:
(WebCore::Quirks::shouldIgnoreContentChange const): Added.
- page/Quirks.h:
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::shouldObserveVisibilityChangeForElement):