[webkit-changes] [236868] trunk/Source/WebInspectorUI
Title: [236868] trunk/Source/WebInspectorUI Revision 236868 Author mattba...@apple.com Date 2018-10-04 21:04:10 -0700 (Thu, 04 Oct 2018) Log Message Web Inspector: REGRESSION (r236766): Storage tab no longer updates after main frame navigation https://bugs.webkit.org/show_bug.cgi?id=190298 Reviewed by Joseph Pecoraro. Handle Cleared events from storage managers separately, so that successive events during page load does not cause the Storage tab to destroy newly created tree elements. * UserInterface/Views/StorageSidebarPanel.js: (WI.StorageSidebarPanel): (WI.StorageSidebarPanel.prototype._closeContentViewForTreeElement): (WI.StorageSidebarPanel.prototype._domStorageCleared): (WI.StorageSidebarPanel.prototype._applicationCacheCleared): (WI.StorageSidebarPanel.prototype._indexedDatabaseCleared): (WI.StorageSidebarPanel.prototype._databaseCleared): (WI.StorageSidebarPanel.prototype._storageCleared): Deleted. Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (236867 => 236868) --- trunk/Source/WebInspectorUI/ChangeLog 2018-10-05 03:03:21 UTC (rev 236867) +++ trunk/Source/WebInspectorUI/ChangeLog 2018-10-05 04:04:10 UTC (rev 236868) @@ -1,5 +1,25 @@ 2018-10-04 Matt Baker +Web Inspector: REGRESSION (r236766): Storage tab no longer updates after main frame navigation +https://bugs.webkit.org/show_bug.cgi?id=190298 + +Reviewed by Joseph Pecoraro. + +Handle Cleared events from storage managers separately, so that successive +events during page load does not cause the Storage tab to destroy newly +created tree elements. + +* UserInterface/Views/StorageSidebarPanel.js: +(WI.StorageSidebarPanel): +(WI.StorageSidebarPanel.prototype._closeContentViewForTreeElement): +(WI.StorageSidebarPanel.prototype._domStorageCleared): +(WI.StorageSidebarPanel.prototype._applicationCacheCleared): +(WI.StorageSidebarPanel.prototype._indexedDatabaseCleared): +(WI.StorageSidebarPanel.prototype._databaseCleared): +(WI.StorageSidebarPanel.prototype._storageCleared): Deleted. + +2018-10-04 Matt Baker + Web Inspector: Table should support multiple selection and Cmd-click behavior https://bugs.webkit.org/show_bug.cgi?id=189705 Modified: trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js (236867 => 236868) --- trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js 2018-10-05 03:03:21 UTC (rev 236867) +++ trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js 2018-10-05 04:04:10 UTC (rev 236868) @@ -76,15 +76,15 @@ WI.domStorageManager.addEventListener(WI.DOMStorageManager.Event.CookieStorageObjectWasAdded, this._cookieStorageObjectWasAdded, this); WI.domStorageManager.addEventListener(WI.DOMStorageManager.Event.DOMStorageObjectWasAdded, this._domStorageObjectWasAdded, this); WI.domStorageManager.addEventListener(WI.DOMStorageManager.Event.DOMStorageObjectWasInspected, this._domStorageObjectWasInspected, this); -WI.domStorageManager.addEventListener(WI.DOMStorageManager.Event.Cleared, this._storageCleared, this); +WI.domStorageManager.addEventListener(WI.DOMStorageManager.Event.Cleared, this._domStorageCleared, this); WI.databaseManager.addEventListener(WI.DatabaseManager.Event.DatabaseWasAdded, this._databaseWasAdded, this); WI.databaseManager.addEventListener(WI.DatabaseManager.Event.DatabaseWasInspected, this._databaseWasInspected, this); -WI.databaseManager.addEventListener(WI.DatabaseManager.Event.Cleared, this._storageCleared, this); +WI.databaseManager.addEventListener(WI.DatabaseManager.Event.Cleared, this._databaseCleared, this); WI.indexedDBManager.addEventListener(WI.IndexedDBManager.Event.IndexedDatabaseWasAdded, this._indexedDatabaseWasAdded, this); -WI.indexedDBManager.addEventListener(WI.IndexedDBManager.Event.Cleared, this._storageCleared, this); +WI.indexedDBManager.addEventListener(WI.IndexedDBManager.Event.Cleared, this._indexedDatabaseCleared, this); WI.applicationCacheManager.addEventListener(WI.ApplicationCacheManager.Event.FrameManifestAdded, this._frameManifestAdded, this); WI.applicationCacheManager.addEventListener(WI.ApplicationCacheManager.Event.FrameManifestRemoved, this._frameManifestRemoved, this); -WI.applicationCacheManager.addEventListener(WI.ApplicationCacheManager.Event.Cleared, this._storageCleared, this); +WI.applicationCacheManager.addEventListener(WI.ApplicationCacheManager.Event.Cleared, this._applicationCacheCleared, this); this.contentTreeOutline.addEventListener(WI.TreeOutline.Event.SelectionDidChange, this._treeSelectionDidChange, this); @@ -340,39 +340,69 @@ return parentElement; } -
[webkit-changes] [236867] trunk
Title: [236867] trunk Revision 236867 Author wenson_hs...@apple.com Date 2018-10-04 20:03:21 -0700 (Thu, 04 Oct 2018) Log Message [iOS] [WK2] Expose some more editing SPI on WKWebView https://bugs.webkit.org/show_bug.cgi?id=190232 Reviewed by Tim Horton. Source/WebKit: Exposes a few additional editing commands as SPI on WKWebView, by defining a new extension on WKWebView that also conforms to . This patch implements nearly all of the remaining unimplemented methods on UIResponderStandardEditActions, and the new extension augments this set of editing methods by adding additional editing helpers that don't currently exist on iOS (e.g. toggleStrikeThrough and insertUnorderedList). The names of these new methods have been largely been borrowed from their counterparts on macOS (see: `NSResponder.h`). The new edit actions are added in this patch on iOS are: ``` - (void)alignCenter:(id)sender; - (void)alignJustified:(id)sender; - (void)alignLeft:(id)sender; - (void)alignRight:(id)sender; - (void)indent:(id)sender; - (void)insertOrderedList:(id)sender; - (void)insertUnorderedList:(id)sender; - (void)outdent:(id)sender; - (void)toggleStrikeThrough:(id)sender; - (void)setFont:(UIFont *)font sender:(id)sender; - (void)setFontSize:(CGFloat)fontSize sender:(id)sender; - (void)setTextColor:(UIColor *)color sender:(id)sender; ``` Tests: WKWebViewEditActions.ListInsertion WKWebViewEditActions.ChangeIndentation WKWebViewEditActions.SetAlignment WKWebViewEditActions.ToggleStrikeThrough WKWebViewEditActions.ChangeFontSize WKWebViewEditActions.SetTextColor WKWebViewEditActions.SetFontFamily * Platform/spi/ios/UIKitSPI.h: * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView canPerformAction:withSender:]): Update this to handle the new editing actions. For now, we simply treat all of the new edit actions in the same way as we currently treat bold, italic and underline: that is, they are enabled only when the user is in a richly contenteditable element. (-[WKWebView setFont:sender:]): (-[WKWebView setFontSize:sender:]): Construct and send a set of FontChanges. (-[WKWebView setTextColor:sender:]): Invoke "ForeColor" with the serialized color representation. This allows us to handle `rgba()` color values, which hex format would not permit. * UIProcess/API/Cocoa/WKWebViewPrivate.h: Add the new SPI. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::changeFontAttributes): (WebKit::WebPageProxy::changeFont): Pull logic for applying font and font attribute style changes out of macOS-specific code, and into platform-agnostic code in WebPage and WebPageProxy. * UIProcess/WebPageProxy.h: * UIProcess/ios/WKContentViewInteraction.h: Add the new supported editing commands as supported actions in WKWebView. The only new editing commands that aren't present in this list are -setFont:sender:, -setColor:sender:, and -setFontSize:sender: which are manually handled in places where the `FOR_EACH_WKCONTENTVIEW_ACTION` macro is otherwise used. In a followup, we could consider augmenting `FOR_EACH_WKCONTENTVIEW_ACTION` to handle actions with multiple arguments. * UIProcess/ios/WKContentViewInteraction.mm: Define a new helper macro here to define boilerplate implementations of the -…ForWebView edit command implementations that turn around and invoke `_page->executeEditCommand` with no additional arguments, and an edit command name matching that of the WebCore edit command. (-[WKContentView toggleStrikeThroughForWebView:]): (-[WKContentView increaseSizeForWebView:]): (-[WKContentView decreaseSizeForWebView:]): (-[WKContentView setFontForWebView:sender:]): (-[WKContentView setFontSizeForWebView:sender:]): (-[WKContentView setTextColorForWebView:sender:]): (-[WKContentView canPerformActionForWebView:sender:]): Add …ForWebView plumbing for the new editing actions, so they turn around and call into WKContentView by default, but behavior may be overridden in WKWebView. * UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::changeFontAttributes): Deleted. (WebKit::WebPageProxy::changeFont): Deleted. * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::changeFontAttributes): (WebKit::WebPage::changeFont): * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/WebPage.messages.in: * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::changeFontAttributes): Deleted. (WebKit::WebPage::changeFont): Deleted. Tools: Adds new API tests to exercise the new SPIs. * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm: Added. (-[TestWKWebView querySelectorExists:]): (TestWebKitAPI::webViewForEditActionTesting): (TestWebKitAPI::TEST): * TestWebKitAPI/Tests/mac/FontManagerTests.mm: (-[TestWKWebView collapseToStart]): Deleted. (-[TestWKWebView collapseToEnd]): Deleted. (-[TestWKWebView stylePropertyAtSelectionStart:]): Deleted. (-[TestWKWebView stylePropertyAtSelectionEnd:]): Deleted. * TestWebKitAPI/cocoa/TestWKWebView.h: *
[webkit-changes] [236866] trunk
Title: [236866] trunk Revision 236866 Author jer.no...@apple.com Date 2018-10-04 18:11:22 -0700 (Thu, 04 Oct 2018) Log Message Add support for reporting "display composited video frames" through the VideoPlaybackQuality object. https://bugs.webkit.org/show_bug.cgi?id=190266 Reviewed by Eric Carlson. Source/WebCore: Test: TestWebKitAPI.VideoQualityDisplayCompositing Modify VideoPlaybackQuality to take a VideoPlaybackQualityMetrics object in its constructor (rather than individual fields). Add a new setting to control visibility of the displayCompositedVideoFrames attribute on VideoPlaybackQuality. Add support for VideoPlaybackQualityMetrics to MediaPlayerPrivateAVFoundationObjC. * Modules/mediasource/VideoPlaybackQuality.cpp: (WebCore::VideoPlaybackQuality::create): (WebCore::VideoPlaybackQuality::VideoPlaybackQuality): * Modules/mediasource/VideoPlaybackQuality.h: (WebCore::VideoPlaybackQuality::displayCompositedVideoFrames const): * Modules/mediasource/VideoPlaybackQuality.idl: * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::getVideoPlaybackQuality): * html/HTMLMediaElement.h: * html/HTMLMediaElement.idl: * page/Settings.yaml: * platform/graphics/MediaPlayer.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::videoPlaybackQualityMetrics): * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::videoPlaybackQualityMetrics): * platform/mock/mediasource/MockMediaSourcePrivate.cpp: (WebCore::MockMediaSourcePrivate::videoPlaybackQualityMetrics): Source/WebCore/PAL: * pal/spi/mac/AVFoundationSPI.h: Source/WebKit: Add a new preference to control the visibility of displayCompositedVideoFrames in the VideoPlaybackQualityObject. * Shared/WebPreferences.yaml: * UIProcess/API/Cocoa/WKPreferences.mm: (-[WKPreferences _setVideoQualityIncludesDisplayCompositingEnabled:]): (-[WKPreferences _videoQualityIncludesDisplayCompositingEnabled]): * UIProcess/API/Cocoa/WKPreferencesPrivate.h: Tools: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added. (TestWebKitAPI::TEST): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.cpp trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.h trunk/Source/WebCore/Modules/mediasource/VideoPlaybackQuality.idl trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/spi/mac/AVFoundationSPI.h trunk/Source/WebCore/html/HTMLMediaElement.cpp trunk/Source/WebCore/html/HTMLMediaElement.h trunk/Source/WebCore/html/HTMLMediaElement.idl trunk/Source/WebCore/page/Settings.yaml trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp trunk/Source/WebCore/platform/graphics/MediaPlayer.h trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm trunk/Source/WebCore/platform/mock/mediasource/MockMediaSourcePrivate.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm Diff Modified: trunk/Source/WebCore/ChangeLog (236865 => 236866) --- trunk/Source/WebCore/ChangeLog 2018-10-05 00:47:05 UTC (rev 236865) +++ trunk/Source/WebCore/ChangeLog 2018-10-05 01:11:22 UTC (rev 236866) @@ -1,3 +1,37 @@ +2018-10-04 Jer Noble + +Add support for reporting "display composited video frames" through the VideoPlaybackQuality object. +https://bugs.webkit.org/show_bug.cgi?id=190266 + +Reviewed by Eric Carlson. + +Test: TestWebKitAPI.VideoQualityDisplayCompositing + +Modify VideoPlaybackQuality to take a VideoPlaybackQualityMetrics object in its +constructor (rather than individual fields). Add a new setting to control visibility +of the displayCompositedVideoFrames attribute on VideoPlaybackQuality. Add support +for VideoPlaybackQualityMetrics to MediaPlayerPrivateAVFoundationObjC. + +* Modules/mediasource/VideoPlaybackQuality.cpp: +(WebCore::VideoPlaybackQuality::create): +(WebCore::VideoPlaybackQuality::VideoPlaybackQuality): +* Modules/mediasource/VideoPlaybackQuality.h: +(WebCore::VideoPlaybackQuality::displayCompositedVideoFrames const): +* Modules/mediasource/VideoPlaybackQuality.idl: +*
[webkit-changes] [236865] trunk
Title: [236865] trunk Revision 236865 Author wenson_hs...@apple.com Date 2018-10-04 17:47:05 -0700 (Thu, 04 Oct 2018) Log Message [Cocoa] Add SPI to expose typing attributes at the current selection on WKWebView https://bugs.webkit.org/show_bug.cgi?id=190119 Reviewed by Tim Horton. Source/WebKit: Add support for new WebKit2 SPI to notify the UI delegate about font attributes when the editor state changes (e.g. due to selection changes, or executing an edit command). See below for more detail. Test: FontAttributes.FontAttributesAfterChangingSelection * Shared/EditorState.cpp: (WebKit::EditorState::PostLayoutData::encode const): (WebKit::EditorState::PostLayoutData::decode): * Shared/EditorState.h: Add a new optional `FontAttributes` member to EditorState's post-layout data. FontAttributes are computed and sent over IPC only if the UI delegate implements the new delegate hook which requires information about font attributes. * Shared/WebPageCreationParameters.cpp: (WebKit::WebPageCreationParameters::encode const): (WebKit::WebPageCreationParameters::decode): * Shared/WebPageCreationParameters.h: Add a new flag for the UI process to let a new web page know whether it should additionally compute font attributes when computing editor state. * UIProcess/API/APIUIClient.h: (API::UIClient::needsFontAttributes const): (API::UIClient::didChangeFontAttributes): * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: * UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _didChangeEditorState]): * UIProcess/Cocoa/UIDelegate.h: * UIProcess/Cocoa/UIDelegate.mm: (WebKit::UIDelegate::setDelegate): (WebKit::UIDelegate::UIClient::didChangeFontAttributes): Call out to the UI delegate with a font attribute dictionary, created via FontAttributes on EditorState's post-layout data. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::setUIClient): Update whether or not the UI process needs to know about font attributes. The UI process only requires font attribute information if the UI delegate implements `-_webView:didChangeFontAttributes:`. (WebKit::WebPageProxy::setNeedsFontAttributes): (WebKit::WebPageProxy::creationParameters): * UIProcess/WebPageProxy.h: * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::editorStateChanged): * UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::editorStateChanged): Update the cached font attributes in the UI process when receiving a new editor state update. * WebProcess/WebPage/WebPage.cpp: (WebKit::m_cpuLimit): (WebKit::WebPage::editorState const): (WebKit::WebPage::setNeedsFontAttributes): Add a new IPC hook to update whether or not the page should additionally compute font attributes. In the case where the UI delegate changes from something that does not require font attributes to one that does, we additionally schedule an editor state update. (WebKit::WebPage::updateFontAttributesAfterEditorStateChange): Private helper function to plumb FontAttributes to the UI client after an editor state change. * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/WebPage.messages.in: Tools: Add a new API test that loads a document containing various rich text styles. This test moves the selection around the document and checks the last set of font attributes received via the new UI delegate hook. * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm: Added. (-[FontAttributesListener _webView:didChangeFontAttributes:]): (-[FontAttributesListener lastFontAttributes]): (-[TestWKWebView selectElementWithIdentifier:]): (-[TestWKWebView fontAttributesAfterNextPresentationUpdate]): (ColorExpectation::ColorExpectation): (ShadowExpectation::ShadowExpectation): (checkColor): (checkShadow): (checkFont): (webViewForTestingFontAttributes): * TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html: Added. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/EditorState.cpp trunk/Source/WebKit/Shared/EditorState.h trunk/Source/WebKit/Shared/WebPageCreationParameters.cpp trunk/Source/WebKit/Shared/WebPageCreationParameters.h trunk/Source/WebKit/UIProcess/API/APIUIClient.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.h trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj Added Paths trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html Diff Modified:
[webkit-changes] [236864] trunk/Source/JavaScriptCore
Title: [236864] trunk/Source/_javascript_Core Revision 236864 Author mark@apple.com Date 2018-10-04 17:35:25 -0700 (Thu, 04 Oct 2018) Log Message Move start/EndOfFixedExecutableMemoryPool pointers into the FixedVMPoolExecutableAllocator object. https://bugs.webkit.org/show_bug.cgi?id=190295 Reviewed by Saam Barati. This allows us to use the tagging logic already baked into MacroAssemblerCodePtr instead of needing to use our own custom version here. * jit/ExecutableAllocator.cpp: (JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator): (JSC::FixedVMPoolExecutableAllocator::memoryStart): (JSC::FixedVMPoolExecutableAllocator::memoryEnd): (JSC::FixedVMPoolExecutableAllocator::isJITPC): (JSC::ExecutableAllocator::allocate): (JSC::startOfFixedExecutableMemoryPoolImpl): (JSC::endOfFixedExecutableMemoryPoolImpl): (JSC::isJITPC): * jit/ExecutableAllocator.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp trunk/Source/_javascript_Core/jit/ExecutableAllocator.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (236863 => 236864) --- trunk/Source/_javascript_Core/ChangeLog 2018-10-05 00:32:20 UTC (rev 236863) +++ trunk/Source/_javascript_Core/ChangeLog 2018-10-05 00:35:25 UTC (rev 236864) @@ -1,5 +1,27 @@ 2018-10-04 Mark Lam +Move start/EndOfFixedExecutableMemoryPool pointers into the FixedVMPoolExecutableAllocator object. +https://bugs.webkit.org/show_bug.cgi?id=190295 + + +Reviewed by Saam Barati. + +This allows us to use the tagging logic already baked into MacroAssemblerCodePtr +instead of needing to use our own custom version here. + +* jit/ExecutableAllocator.cpp: +(JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator): +(JSC::FixedVMPoolExecutableAllocator::memoryStart): +(JSC::FixedVMPoolExecutableAllocator::memoryEnd): +(JSC::FixedVMPoolExecutableAllocator::isJITPC): +(JSC::ExecutableAllocator::allocate): +(JSC::startOfFixedExecutableMemoryPoolImpl): +(JSC::endOfFixedExecutableMemoryPoolImpl): +(JSC::isJITPC): +* jit/ExecutableAllocator.h: + +2018-10-04 Mark Lam + Disable Options::useWebAssemblyFastMemory() on linux if ASAN signal handling is not disabled. https://bugs.webkit.org/show_bug.cgi?id=190283 Modified: trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp (236863 => 236864) --- trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp 2018-10-05 00:32:20 UTC (rev 236863) +++ trunk/Source/_javascript_Core/jit/ExecutableAllocator.cpp 2018-10-05 00:35:25 UTC (rev 236864) @@ -104,9 +104,6 @@ static const double executablePoolReservationFraction = 0.25; #endif -JS_EXPORT_PRIVATE void* taggedStartOfFixedExecutableMemoryPool; -JS_EXPORT_PRIVATE void* taggedEndOfFixedExecutableMemoryPool; - #if !ENABLE(FAST_JIT_PERMISSIONS) || !CPU(ARM64E) JS_EXPORT_PRIVATE bool useFastPermisionsJITCopy { false }; JS_EXPORT_PRIVATE JITWriteSeparateHeapsFunction jitWriteSeparateHeapsFunction; @@ -168,13 +165,18 @@ addFreshFreeSpace(reservationBase, reservationSize); void* reservationEnd = reinterpret_cast(reservationBase) + reservationSize; -taggedStartOfFixedExecutableMemoryPool = tagCodePtr(reservationBase); -taggedEndOfFixedExecutableMemoryPool = tagCodePtr(reservationEnd); + +m_memoryStart = MacroAssemblerCodePtr(tagCodePtr(reservationBase)); +m_memoryEnd = MacroAssemblerCodePtr(tagCodePtr(reservationEnd)); } } virtual ~FixedVMPoolExecutableAllocator(); +void* memoryStart() { return m_memoryStart.untaggedExecutableAddress(); } +void* memoryEnd() { return m_memoryEnd.untaggedExecutableAddress(); } +bool isJITPC(void* pc) { return memoryStart() <= pc && pc < memoryEnd(); } + protected: FreeSpacePtr allocateNewSpace(size_t&) override { @@ -358,6 +360,8 @@ private: PageReservation m_reservation; +MacroAssemblerCodePtr m_memoryStart; +MacroAssemblerCodePtr m_memoryEnd; }; static FixedVMPoolExecutableAllocator* allocator; @@ -461,12 +465,10 @@ } #if USE(POINTER_PROFILING) -void* start = startOfFixedExecutableMemoryPool(); -void* end = endOfFixedExecutableMemoryPool(); +void* start = allocator->memoryStart(); +void* end = allocator->memoryEnd(); void* resultStart = result->start().untaggedPtr(); void* resultEnd = result->end().untaggedPtr(); -RELEASE_ASSERT(start == removeCodePtrTag(taggedStartOfFixedExecutableMemoryPool)); -RELEASE_ASSERT(end == removeCodePtrTag(taggedEndOfFixedExecutableMemoryPool)); RELEASE_ASSERT(start <= resultStart && resultStart < end); RELEASE_ASSERT(start < resultEnd && resultEnd <= end); #endif @@ -495,8 +497,23 @@ } #endif +void* startOfFixedExecutableMemoryPoolImpl() +{ +return
[webkit-changes] [236863] tags/Safari-606.2.104.0.1/
Title: [236863] tags/Safari-606.2.104.0.1/ Revision 236863 Author kocsen_ch...@apple.com Date 2018-10-04 17:32:20 -0700 (Thu, 04 Oct 2018) Log Message Tag Safari-606.2.104.0.1. Added Paths tags/Safari-606.2.104.0.1/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236862] trunk
Title: [236862] trunk Revision 236862 Author cdu...@apple.com Date 2018-10-04 17:19:46 -0700 (Thu, 04 Oct 2018) Log Message A Document / Window should lose its browsing context as soon as its iframe is removed from the document https://bugs.webkit.org/show_bug.cgi?id=190282 Reviewed by Ryosuke Niwa. LayoutTests/imported/w3c: Rebaseline several WPT tests that are now passing. I have verified that those tests are also passing in Firefox and Chrome. * web-platform-tests/html/browsers/windows/nested-browsing-contexts/window-parent-null-expected.txt: * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-synchronously-discard-expected.txt: Source/WebCore: A Document / Window should lose its browsing context (aka Frame) as soon as its iframe is removed from the document. In WebKit, a Document / Window's Frame was only getting nulled out when the frame gets destroyed, which happens later usually after a GC happens. Specification: - https://html.spec.whatwg.org/#the-iframe-element """ When an iframe element is removed from a document, the user agent must discard the element's nested browsing context, if it is not null, and then set the element's nested browsing context to null. """ This was not consistent with the specification or other browsers (tested Chrome and Firefox) so this patch is aligning our behavior. In a follow-up, I am planning to look into making the Window not be a FrameDestructionObserver, and instead get its frame from the Document. This should make the code simpler. No new tests, rebaselined existing tests. * Modules/mediastream/MediaDevices.cpp: (WebCore::MediaDevices::getUserMedia const): * Modules/mediastream/MediaDevices.h: Update getUserMedia() to reject a the Promise with an InvalidStateError when calling after the document has been detached, instead of throwing an InvalidStateError. This behavior is as per specification: - https://w3c.github.io/mediacapture-main/#dom-mediadevices-getusermedia (Step 4) I needed to make this change to keep one of our layout tests passing. * dom/Document.cpp: (WebCore::Document::attachToCachedFrame): (WebCore::Document::detachFromFrame): * dom/Document.h: * page/DOMWindow.cpp: (WebCore::DOMWindow::didSecureTransitionTo): (WebCore::DOMWindow::willDetachDocumentFromFrame): (WebCore::DOMWindow::setStatus): (WebCore::DOMWindow::detachFromFrame): (WebCore::DOMWindow::attachToFrame): * page/DOMWindow.h: * page/DOMWindowProperty.cpp: (WebCore::DOMWindowProperty::disconnectFrameForDocumentSuspension): (WebCore::DOMWindowProperty::willDestroyGlobalObjectInCachedFrame): (WebCore::DOMWindowProperty::willDestroyGlobalObjectInFrame): * page/Frame.cpp: (WebCore::Frame::disconnectOwnerElement): * platform/mock/MockRealtimeVideoSource.cpp: (WebCore::MockRealtimeVideoSource::drawText): Calling drawText() with a null String hits an assertion in debug. This was triggered by one of our layout tests so I made sure we only call drawText when the String is not null. LayoutTests: Update existing layout test to reflect behavior change. * fast/dom/Window/BarInfo-after-frame-removed.html: * fast/dom/Window/dom-access-from-closure-iframe-expected.txt: * fast/dom/Window/dom-access-from-closure-window-expected.txt: * fast/dom/Window/dom-access-from-closure-window-with-gc-expected.txt: * fast/dom/Window/resources/dom-access-from-closure-iframe-child.html: * fast/dom/Window/resources/dom-access-from-closure-window-child.html: * fast/events/resources/before-unload-return-string-conversion-frame.html: * fast/parser/resources/set-parent-to-_javascript_-url.html: * http/tests/media/media-stream/disconnected-frame.html: * http/tests/security/contentSecurityPolicy/resources/checkDidSameOriginChildWindowLoad.js: (checkDidLoad): * http/tests/security/named-window-property-from-same-origin-inactive-document-expected.txt: * http/tests/security/named-window-property-from-same-origin-inactive-document.html: * http/tests/security/xss-DENIED-contentWindow-eval-expected.txt: * http/tests/security/xss-DENIED-named-window-property-from-cross-origin-inactive-document-expected.txt: * http/tests/security/xss-DENIED-named-window-property-from-cross-origin-inactive-document.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/Window/BarInfo-after-frame-removed.html trunk/LayoutTests/fast/dom/Window/dom-access-from-closure-iframe-expected.txt trunk/LayoutTests/fast/dom/Window/dom-access-from-closure-window-expected.txt trunk/LayoutTests/fast/dom/Window/dom-access-from-closure-window-with-gc-expected.txt trunk/LayoutTests/fast/dom/Window/resources/dom-access-from-closure-iframe-child.html trunk/LayoutTests/fast/dom/Window/resources/dom-access-from-closure-window-child.html trunk/LayoutTests/fast/events/resources/before-unload-return-string-conversion-frame.html trunk/LayoutTests/fast/parser/resources/set-parent-to-_javascript_-url.html trunk/LayoutTests/http/tests/media/media-stream/disconnected-frame.html
[webkit-changes] [236861] trunk/Websites/perf.webkit.org
Title: [236861] trunk/Websites/perf.webkit.org Revision 236861 Author dewei_...@apple.com Date 2018-10-04 17:17:49 -0700 (Thu, 04 Oct 2018) Log Message Add retry for test groups with failed build requests. https://bugs.webkit.org/show_bug.cgi?id=190188 Reviewed by Ryosuke Niwa. Added retry logic in run-analysis script. Current retry logic will only be triggered when there is at least one successful build request for each commit set in a test group. * init-database.sql: Added 'testgroup_initial_repetition_count' and 'testgroup_may_need_more_requests'. SQL to update existing database: ''' BEGIN; ALTER TABLE analysis_test_groups ADD COLUMN testgroup_initial_repetition_count integer DEFAULT NULL, ADD COLUMN testgroup_may_need_more_requests boolean DEFAULT FALSE; UPDATE analysis_test_groups SET testgroup_initial_repetition_count = ( SELECT DISTINCT(COUNT(*)) FROM build_requests WHERE request_group = testgroup_id AND request_order >= 0 GROUP BY request_commit_set ); ALTER TABLE analysis_test_groups ALTER COLUMN testgroup_initial_repetition_count DROP DEFAULT, ALTER COLUMN testgroup_may_need_more_requests SET NOT NULL; END; ''' 'testgroup_initial_repetition_count' represents the number of successful build request for each commit set when test group is created. 'testgroup_may_need_more_requests' will be set when any build request in test group is set to 'failed'. * public/api/build-requests.php: Added the logic to set 'testgroup_may_need_more_requests'. * public/api/test-groups.php: Updated 'ready-for-notification' to 'ready-for-further-processing' so that it returns finished test groups those either have 'needs_notification' or 'may_need_more_requests' set. * public/include/commit-sets-helpers.php: Set 'initial_repetition_count' to repetition count. * public/privileged-api/update-test-group.php: Added APIs to add build request for a test group and update 'may_need_more_requests' flag. * public/v3/models/test-group.js: (TestGroup): Added '_mayNeedMoreRequests' and '_initialRepetitionCount' field. Refactored code that interacts with '/api/update-test-group'. (TestGroup.prototype.updateSingleton): (TestGroup.prototype.mayNeedMoreRequests): (TestGroup.prototype.initialRepetitionCount): (TestGroup.prototype.async._updateBuildRequest): (TestGroup.prototype.updateName): (TestGroup.prototype.updateHiddenFlag): (TestGroup.prototype.async.didSendNotification): (TestGroup.prototype.async.addMoreBuildRequests): (TestGroup.prototype.async.clearMayNeedMoreBuildRequests): Added API to clear 'may_need_more_requests' flag. (TestGroup.fetchAllReadyForFurtherProcessing): Refactored 'TestGroup.fetchAllWithNotificationReady' to return test groups either have 'needs_notification' or 'may_need_more_requests' set. (TestGroup.fetchAllThatMayNeedMoreRequests): Fetches test groups those may need more build requests. * server-tests/api-test-groups.js: Added unit tests. * server-tests/privileged-api-add-build-requests-tests.js: Added unit tests for 'add-build-requests' API. * server-tests/privileged-api-update-test-group-tests.js: Added unit tests. * server-tests/resources/mock-data.js: (MockData.addMockData): * server-tests/resources/test-server.js: (TestServer.prototype._determinePgsqlDirectory): Fixed a bug that 'childProcess.execFileSync' may return a buffer. * tools/run-analysis.js: Added logic to add extra build request before sennding notification. * tools/js/retry-failed-build-requests.js: (async.createAdditionalBuildRequestsForTestGroupsWithFailedRequests): Module that add extra build requests. * unit-tests/retry-failed-build-requests-tests.js: Added. * unit-tests/test-groups-tests.js: Added unit tests. Modified Paths trunk/Websites/perf.webkit.org/ChangeLog trunk/Websites/perf.webkit.org/init-database.sql trunk/Websites/perf.webkit.org/public/api/build-requests.php trunk/Websites/perf.webkit.org/public/api/test-groups.php trunk/Websites/perf.webkit.org/public/include/commit-sets-helpers.php trunk/Websites/perf.webkit.org/public/privileged-api/update-test-group.php trunk/Websites/perf.webkit.org/public/v3/models/build-request.js trunk/Websites/perf.webkit.org/public/v3/models/test-group.js trunk/Websites/perf.webkit.org/server-tests/api-test-groups.js trunk/Websites/perf.webkit.org/server-tests/privileged-api-update-test-group-tests.js trunk/Websites/perf.webkit.org/server-tests/resources/mock-data.js trunk/Websites/perf.webkit.org/server-tests/resources/test-server.js trunk/Websites/perf.webkit.org/tools/run-analysis.js trunk/Websites/perf.webkit.org/unit-tests/test-groups-tests.js Added Paths trunk/Websites/perf.webkit.org/public/privileged-api/add-build-requests.php trunk/Websites/perf.webkit.org/server-tests/privileged-api-add-build-requests-tests.js trunk/Websites/perf.webkit.org/tools/js/retry-failed-build-requests.js trunk/Websites/perf.webkit.org/unit-tests/retry-failed-build-requests-tests.js Diff Modified: trunk/Websites/perf.webkit.org/ChangeLog (236860 =>
[webkit-changes] [236860] trunk/Source
Title: [236860] trunk/Source Revision 236860 Author commit-qu...@webkit.org Date 2018-10-04 16:52:39 -0700 (Thu, 04 Oct 2018) Log Message Unify implementation in VideoFullscreenInterfaceAVKit https://bugs.webkit.org/show_bug.cgi?id=190091 rdar://problem/44734523 Patch by Jeremy Jones on 2018-10-04 Reviewed by Jer Noble. Source/WebCore: No new tests because no behavior change. Unified code in VideoFullscreenInterfaceAVKit now that new code path is proven and include any changes that had been made in the old path. * platform/ios/VideoFullscreenInterfaceAVKit.h: * platform/ios/VideoFullscreenInterfaceAVKit.mm: (-[WebAVPlayerViewControllerDelegate playerViewControllerShouldStartPictureInPictureFromInlineWhenEnteringBackground:]): (VideoFullscreenInterfaceAVKit::preparedToExitFullscreen): (VideoFullscreenInterfaceAVKit::shouldExitFullscreenWithReason): * platform/ios/WebVideoFullscreenControllerAVKit.mm: (VideoFullscreenControllerContext::requestUpdateInlineRect): (VideoFullscreenControllerContext::requestVideoContentLayer): (VideoFullscreenControllerContext::returnVideoContentLayer): (VideoFullscreenControllerContext::didSetupFullscreen): (VideoFullscreenControllerContext::didExitFullscreen): Source/WebKit: Unified code in VideoFullscreenInterfaceAVKit now that new code path is proven and include any changes that had been made in the old path. * UIProcess/Cocoa/VideoFullscreenManagerProxy.mm: * WebProcess/cocoa/VideoFullscreenManager.mm: (WebKit::VideoFullscreenManager::supportsVideoFullscreenStandby const): (WebKit::VideoFullscreenManager::didSetupFullscreen): (WebKit::VideoFullscreenManager::didExitFullscreen): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm trunk/Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.mm Diff Modified: trunk/Source/WebCore/ChangeLog (236859 => 236860) --- trunk/Source/WebCore/ChangeLog 2018-10-04 23:31:06 UTC (rev 236859) +++ trunk/Source/WebCore/ChangeLog 2018-10-04 23:52:39 UTC (rev 236860) @@ -1,3 +1,28 @@ +2018-10-04 Jeremy Jones + +Unify implementation in VideoFullscreenInterfaceAVKit +https://bugs.webkit.org/show_bug.cgi?id=190091 +rdar://problem/44734523 + +Reviewed by Jer Noble. + +No new tests because no behavior change. + +Unified code in VideoFullscreenInterfaceAVKit now that new code path is proven and include +any changes that had been made in the old path. + +* platform/ios/VideoFullscreenInterfaceAVKit.h: +* platform/ios/VideoFullscreenInterfaceAVKit.mm: +(-[WebAVPlayerViewControllerDelegate playerViewControllerShouldStartPictureInPictureFromInlineWhenEnteringBackground:]): +(VideoFullscreenInterfaceAVKit::preparedToExitFullscreen): +(VideoFullscreenInterfaceAVKit::shouldExitFullscreenWithReason): +* platform/ios/WebVideoFullscreenControllerAVKit.mm: +(VideoFullscreenControllerContext::requestUpdateInlineRect): +(VideoFullscreenControllerContext::requestVideoContentLayer): +(VideoFullscreenControllerContext::returnVideoContentLayer): +(VideoFullscreenControllerContext::didSetupFullscreen): +(VideoFullscreenControllerContext::didExitFullscreen): + 2018-10-04 Justin Michaud Bindings generator should support static attributes that are interfaces with CallWith Modified: trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h (236859 => 236860) --- trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h 2018-10-04 23:31:06 UTC (rev 236859) +++ trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h 2018-10-04 23:52:39 UTC (rev 236860) @@ -86,10 +86,8 @@ WEBCORE_EXPORT void requestHideAndExitFullscreen(); WEBCORE_EXPORT void preparedToReturnToInline(bool visible, const IntRect& inlineRect); WEBCORE_EXPORT void preparedToExitFullscreen(); -#if ENABLE(FULLSCREEN_API) WEBCORE_EXPORT void setHasVideoContentLayer(bool); WEBCORE_EXPORT void setInlineRect(const IntRect&, bool visible); -#endif enum class ExitFullScreenReason { DoneButtonTapped, @@ -127,9 +125,7 @@ }; Mode m_currentMode; -#if ENABLE(FULLSCREEN_API) Mode m_targetMode; -#endif VideoFullscreenModel* videoFullscreenModel() const { return m_videoFullscreenModel; } bool shouldExitFullscreenWithReason(ExitFullScreenReason); @@ -146,10 +142,8 @@ void willStopPictureInPicture(); void didStopPictureInPicture(); void prepareForPictureInPictureStopWithCompletionHandler(void (^)(BOOL)); -#if ENABLE(FULLSCREEN_API) void exitFullscreenHandler(BOOL success, NSError *); void enterFullscreenHandler(BOOL success, NSError
[webkit-changes] [236859] trunk/Source/WebKitLegacy/mac
Title: [236859] trunk/Source/WebKitLegacy/mac Revision 236859 Author m...@apple.com Date 2018-10-04 16:31:06 -0700 (Thu, 04 Oct 2018) Log Message More Carbon build-fixing. * Carbon/CarbonWindowAdapter.mm: (-[CarbonWindowAdapter _destroyRealWindow:]): (-[CarbonWindowAdapter _growBoxRect]): Modified Paths trunk/Source/WebKitLegacy/mac/Carbon/CarbonWindowAdapter.mm trunk/Source/WebKitLegacy/mac/ChangeLog Diff Modified: trunk/Source/WebKitLegacy/mac/Carbon/CarbonWindowAdapter.mm (236858 => 236859) --- trunk/Source/WebKitLegacy/mac/Carbon/CarbonWindowAdapter.mm 2018-10-04 23:25:53 UTC (rev 236858) +++ trunk/Source/WebKitLegacy/mac/Carbon/CarbonWindowAdapter.mm 2018-10-04 23:31:06 UTC (rev 236859) @@ -519,7 +519,9 @@ // Do the right thing for a Carbon window. +IGNORE_WARNINGS_BEGIN("deprecated-implementations") - (id)_destroyRealWindow:(BOOL)orderingOut +IGNORE_WARNINGS_END { // Complain, because this should never be called. We don't support one-shot NSCarbonWindows. NSLog(@"-[NSCarbonWindow _destroyRealWindow:] is not implemented."); @@ -1031,7 +1033,9 @@ { } +IGNORE_WARNINGS_BEGIN("deprecated-implementations") - (NSRect) _growBoxRect +IGNORE_WARNINGS_END { WindowAttributes attrs; NSRect retRect = NSZeroRect; Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (236858 => 236859) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 23:25:53 UTC (rev 236858) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 23:31:06 UTC (rev 236859) @@ -1,5 +1,13 @@ 2018-10-04 Dan Bernstein +More Carbon build-fixing. + +* Carbon/CarbonWindowAdapter.mm: +(-[CarbonWindowAdapter _destroyRealWindow:]): +(-[CarbonWindowAdapter _growBoxRect]): + +2018-10-04 Dan Bernstein + Retried to fix 32-bit macOS builds after r236846. * WebView/WebHTMLView.mm: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236858] trunk/Tools
Title: [236858] trunk/Tools Revision 236858 Author alanc...@apple.com Date 2018-10-04 16:25:53 -0700 (Thu, 04 Oct 2018) Log Message Unreviewed, add self as contributor. * Scripts/webkitpy/common/config/contributors.json: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/contributors.json Diff Modified: trunk/Tools/ChangeLog (236857 => 236858) --- trunk/Tools/ChangeLog 2018-10-04 23:18:12 UTC (rev 236857) +++ trunk/Tools/ChangeLog 2018-10-04 23:25:53 UTC (rev 236858) @@ -1,3 +1,9 @@ +2018-10-04 Alan Coon + +Unreviewed, add self as contributor. + +* Scripts/webkitpy/common/config/contributors.json: + 2018-10-04 Wenson Hsieh [macOS] Fix some font attribute conversion bugs in preparation for "Font > Styles…" support in WebKit2 Modified: trunk/Tools/Scripts/webkitpy/common/config/contributors.json (236857 => 236858) --- trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2018-10-04 23:18:12 UTC (rev 236857) +++ trunk/Tools/Scripts/webkitpy/common/config/contributors.json 2018-10-04 23:25:53 UTC (rev 236858) @@ -206,6 +206,14 @@ ], "status" : "committer" }, + "Alan Coon" : { + "emails" : [ + "alanc...@apple.com" + ], + "nicks" : [ + "alancoon" + ] + }, "Alan Cutter" : { "emails" : [ "alancut...@chromium.org" @@ -6144,4 +6152,4 @@ ], "status" : "reviewer" } -} \ No newline at end of file +} ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236857] trunk/Source/WebCore
Title: [236857] trunk/Source/WebCore Revision 236857 Author commit-qu...@webkit.org Date 2018-10-04 16:18:12 -0700 (Thu, 04 Oct 2018) Log Message Bindings generator should support static attributes that are interfaces with CallWith https://bugs.webkit.org/show_bug.cgi?id=190292 Patch by Justin Michaud on 2018-10-04 Reviewed by Chris Dumez. Add support for static attributes that support callWith to the bindings generator. This is needed for CSS.paintWorklet. * bindings/scripts/CodeGeneratorJS.pm: (GenerateAttributeGetterBodyDefinition): * bindings/scripts/test/JS/JSTestObj.cpp: (WebCore::jsTestObjConstructorTestStaticReadonlyObjGetter): (WebCore::jsTestObjConstructorTestStaticReadonlyObj): * bindings/scripts/test/TestObj.idl: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp trunk/Source/WebCore/bindings/scripts/test/TestObj.idl Diff Modified: trunk/Source/WebCore/ChangeLog (236856 => 236857) --- trunk/Source/WebCore/ChangeLog 2018-10-04 22:40:45 UTC (rev 236856) +++ trunk/Source/WebCore/ChangeLog 2018-10-04 23:18:12 UTC (rev 236857) @@ -1,3 +1,20 @@ +2018-10-04 Justin Michaud + +Bindings generator should support static attributes that are interfaces with CallWith +https://bugs.webkit.org/show_bug.cgi?id=190292 + +Reviewed by Chris Dumez. + +Add support for static attributes that support callWith to the bindings generator. This +is needed for CSS.paintWorklet. + +* bindings/scripts/CodeGeneratorJS.pm: +(GenerateAttributeGetterBodyDefinition): +* bindings/scripts/test/JS/JSTestObj.cpp: +(WebCore::jsTestObjConstructorTestStaticReadonlyObjGetter): +(WebCore::jsTestObjConstructorTestStaticReadonlyObj): +* bindings/scripts/test/TestObj.idl: + 2018-10-04 Matt Lewis Unreviewed, rolling out r236730. Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm (236856 => 236857) --- trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm 2018-10-04 22:40:45 UTC (rev 236856) +++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm 2018-10-04 23:18:12 UTC (rev 236857) @@ -4818,8 +4818,9 @@ AddAdditionalArgumentsForImplementationCall(\@arguments, $interface, $attribute, "impl", "state", "thisObject"); unshift(@arguments, @callWithArgs); - -my $toJSExpression = NativeToJSValueUsingReferences($attribute, $interface, "${functionName}(" . join(", ", @arguments) . ")", "*thisObject.globalObject()"); + +my $globalObjectReference = $attribute->isStatic ? "*jsCast(state.lexicalGlobalObject())" : "*thisObject.globalObject()"; +my $toJSExpression = NativeToJSValueUsingReferences($attribute, $interface, "${functionName}(" . join(", ", @arguments) . ")", $globalObjectReference); push(@$outputArray, "auto& impl = thisObject.wrapped();\n") unless $attribute->isStatic or $attribute->isMapLike; if (!IsReadonly($attribute)) { Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp (236856 => 236857) --- trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp 2018-10-04 22:40:45 UTC (rev 236856) +++ trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp 2018-10-04 23:18:12 UTC (rev 236857) @@ -1601,6 +1601,7 @@ JSC::EncodedJSValue jsTestObjConstructorStaticStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName); bool setJSTestObjConstructorStaticStringAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue); JSC::EncodedJSValue jsTestObjConstructorTestSubObj(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName); +JSC::EncodedJSValue jsTestObjConstructorTestStaticReadonlyObj(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName); JSC::EncodedJSValue jsTestObjEnumAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName); bool setJSTestObjEnumAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::EncodedJSValue); JSC::EncodedJSValue jsTestObjByteAttr(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName); @@ -1886,6 +1887,7 @@ { "staticReadOnlyLongAttr", static_cast(JSC::PropertyAttribute::ReadOnly), NoIntrinsic, { (intptr_t)static_cast(jsTestObjConstructorStaticReadOnlyLongAttr), (intptr_t) static_cast(0) } }, { "staticStringAttr", static_cast(0), NoIntrinsic, { (intptr_t)static_cast(jsTestObjConstructorStaticStringAttr), (intptr_t) static_cast(setJSTestObjConstructorStaticStringAttr) } }, { "TestSubObj", static_cast(JSC::PropertyAttribute::ReadOnly), NoIntrinsic, { (intptr_t)static_cast(jsTestObjConstructorTestSubObj), (intptr_t) static_cast(0) } }, +{ "testStaticReadonlyObj", static_cast(JSC::PropertyAttribute::ReadOnly), NoIntrinsic, { (intptr_t)static_cast(jsTestObjConstructorTestStaticReadonlyObj), (intptr_t) static_cast(0) } }, #if ENABLE(TEST_FEATURE) { "enabledAtRuntimeAttributeStatic", static_cast(0), NoIntrinsic, {
[webkit-changes] [236856] trunk/LayoutTests
Title: [236856] trunk/LayoutTests Revision 236856 Author ross.kirsl...@sony.com Date 2018-10-04 15:40:45 -0700 (Thu, 04 Oct 2018) Log Message Unreviewed test gardening for WinCairo (and one cross-platform test). * TestExpectations: Remove a cross-platform failure that seems to be passing on all platforms now. * platform/wincairo/TestExpectations: * platform/wincairo/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/platform/wincairo/TestExpectations Added Paths trunk/LayoutTests/platform/wincairo/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (236855 => 236856) --- trunk/LayoutTests/ChangeLog 2018-10-04 22:25:04 UTC (rev 236855) +++ trunk/LayoutTests/ChangeLog 2018-10-04 22:40:45 UTC (rev 236856) @@ -1,3 +1,13 @@ +2018-10-04 Ross Kirsling + +Unreviewed test gardening for WinCairo (and one cross-platform test). + +* TestExpectations: +Remove a cross-platform failure that seems to be passing on all platforms now. + +* platform/wincairo/TestExpectations: +* platform/wincairo/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt: Added. + 2018-10-04 Matt Baker Web Inspector: Table should support multiple selection and Cmd-click behavior Modified: trunk/LayoutTests/TestExpectations (236855 => 236856) --- trunk/LayoutTests/TestExpectations 2018-10-04 22:25:04 UTC (rev 236855) +++ trunk/LayoutTests/TestExpectations 2018-10-04 22:40:45 UTC (rev 236856) @@ -2880,7 +2880,6 @@ # This is fallout from turning Web Animations on. webkit.org/b/190032 animations/animation-playstate-paused-style-resolution.html [ Failure ] -webkit.org/b/190032 animations/fill-mode-removed.html [ Failure ] webkit.org/b/190032 compositing/backing/backing-store-attachment-fill-forwards-animation.html [ Failure ] webkit.org/b/190032 compositing/backing/transform-transition-from-outside-view.html [ Failure ] webkit.org/b/190032 compositing/layer-creation/mismatched-rotated-transform-transition-overlap.html [ Failure ] Modified: trunk/LayoutTests/platform/wincairo/TestExpectations (236855 => 236856) --- trunk/LayoutTests/platform/wincairo/TestExpectations 2018-10-04 22:25:04 UTC (rev 236855) +++ trunk/LayoutTests/platform/wincairo/TestExpectations 2018-10-04 22:40:45 UTC (rev 236856) @@ -1465,9 +1465,7 @@ fast/css/sticky/sticky-top.html [ Pass ImageOnlyFailure ] -css-custom-properties-api/initialValue.html [ ImageOnlyFailure ] -css-custom-properties-api/initialValueJS.html [ Failure ] -css-custom-properties-api/registerProperty.html [ Failure ] +css-custom-properties-api/ [ Failure ImageOnlyFailure ] #End CSS Issues ### @@ -1523,6 +1521,8 @@ webkit.org/b/176998 fast/dom/Window/Plug-ins.html [ Failure ] +fast/dom/HTMLInputElement/change-type-in-input-event-listener.html [ Skip ] + #End DOM Issues ### @@ -1534,6 +1534,7 @@ ## Pasteboard editing/pasteboard/ [ Pass Failure ImageOnlyFailure ] +editing/pasteboard/copy-paste-across-shadow-boundaries-with-style-2.html [ Skip ] editing/pasteboard/drag-and-drop-color-input-events.html [ Skip ] editing/pasteboard/paste-image-as-blob-url.html [ Skip ] # TODO eventSender.contextClick() needs to return a JS array of the context menu items. @@ -1578,9 +1579,9 @@ editing/selection/home-end.html [ Failure ] editing/selection/move-by-word-visually-mac.html [ Failure ] editing/selection/move-left-right.html [ Failure ] -editing/selection/selection-across-shadow-boundaries-readonly-1.html [ ImageOnlyFailure ] -editing/selection/selection-across-shadow-boundaries-readonly-2.html [ ImageOnlyFailure ] -editing/selection/selection-across-shadow-boundaries-readonly-3.html [ ImageOnlyFailure ] +editing/selection/selection-across-shadow-boundaries-readonly-1.html [ Pass ImageOnlyFailure ] +editing/selection/selection-across-shadow-boundaries-readonly-2.html [ Pass ImageOnlyFailure ] +editing/selection/selection-across-shadow-boundaries-readonly-3.html [ Pass ImageOnlyFailure ] editing/selection/update-selection-by-style-change.html [ ImageOnlyFailure ] editing/selection/user-select-all-image-with-single-click.html [ Failure ] editing/selection/user-select-all-selection.html [ Failure ] @@ -1706,6 +1707,7 @@ fast/masking/clip-path-selection.html [ Skip ] fast/media [ Skip ] fast/mediacapturefromelement/CanvasCaptureMediaStream-capture-out-of-DOM-element.html [ Skip ] +fast/mediacapturefromelement/CanvasCaptureMediaStream-imagebitmaprenderingcontext.html [ Failure ] fast/multicol [ Skip ]
[webkit-changes] [236855] trunk/Source
Title: [236855] trunk/Source Revision 236855 Author jlew...@apple.com Date 2018-10-04 15:25:04 -0700 (Thu, 04 Oct 2018) Log Message Unreviewed, rolling out r236730. Source/WebCore: This caused a consistent crash in test http/tests/media/media-stream/get-display-media-prompt.html. Reverted changeset: "[MediaStream] RealtimeMediaSource should be able to vend hashed IDs" https://bugs.webkit.org/show_bug.cgi?id=190142 https://trac.webkit.org/changeset/236730 Source/WebKit: This caused a consistent crash in test http/tests/media/media- stream/get-display-media-prompt.html. Reverted changeset: "[MediaStream] RealtimeMediaSource should be able to vend hashed IDs" https://bugs.webkit.org/show_bug.cgi?id=190142 https://trac.webkit.org/changeset/236730 Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp trunk/Source/WebCore/Modules/mediastream/MediaDevicesRequest.cpp trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSource.cpp trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/platform/mediastream/MediaConstraints.h trunk/Source/WebCore/platform/mediastream/RealtimeIncomingAudioSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.h trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceFactory.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSourceFactory.h trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.h trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerAudioCaptureSource.h trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/gstreamer/MockGStreamerVideoCaptureSource.h trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.h trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.h trunk/Source/WebCore/platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp trunk/Source/WebCore/platform/mediastream/mac/DisplayCaptureSourceCocoa.h trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeAudioSourceMac.h trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeAudioSourceMac.mm trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.h trunk/Source/WebCore/platform/mediastream/mac/MockRealtimeVideoSourceMac.mm trunk/Source/WebCore/platform/mediastream/mac/RealtimeMediaSourceCenterMac.cpp trunk/Source/WebCore/platform/mediastream/mac/ScreenDisplayCaptureSourceMac.h trunk/Source/WebCore/platform/mediastream/mac/ScreenDisplayCaptureSourceMac.mm trunk/Source/WebCore/platform/mediastream/mac/WindowDisplayCaptureSourceMac.h trunk/Source/WebCore/platform/mediastream/mac/WindowDisplayCaptureSourceMac.mm trunk/Source/WebCore/platform/mock/MockRealtimeAudioSource.cpp trunk/Source/WebCore/platform/mock/MockRealtimeAudioSource.h trunk/Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.cpp trunk/Source/WebCore/platform/mock/MockRealtimeVideoSource.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.h trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in trunk/Source/WebKit/UIProcess/UserMediaPermissionRequestManagerProxy.cpp trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.cpp trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.h Diff Modified: trunk/Source/WebCore/ChangeLog (236854 => 236855) --- trunk/Source/WebCore/ChangeLog 2018-10-04 22:08:51 UTC (rev 236854) +++ trunk/Source/WebCore/ChangeLog 2018-10-04
[webkit-changes] [236854] trunk
Title: [236854] trunk Revision 236854 Author wenson_hs...@apple.com Date 2018-10-04 15:08:51 -0700 (Thu, 04 Oct 2018) Log Message [macOS] Fix some font attribute conversion bugs in preparation for "Font > Styles…" support in WebKit2 https://bugs.webkit.org/show_bug.cgi?id=190289 Reviewed by Ryosuke Niwa. Source/WebCore: Makes some small adjustments to fix two bugs in font attribute conversion logic. See below for more detail. Tests: FontManagerTests.AddFontShadowUsingFontOptions FontManagerTests.AddAndRemoveColorsUsingFontOptions * editing/FontAttributeChanges.cpp: (WebCore::cssValueListForShadow): * editing/cocoa/FontAttributesCocoa.mm: Currently, we bail from adding a font shadow if the shadow's offset is empty. However, valid shadow offsets may have negative dimensions, so a check for `isZero()` should be used instead. (WebCore::FontAttributes::createDictionary const): * platform/mac/WebCoreNSFontManagerExtras.mm: Fall back to a transparent background color; this allows senders to remove the current background color by just removing NSBackgroundColorAttributeName from the attribute dictionary, rather than explicitly setting it to the transparent color (this scenario is exercised when using "Font > Styles…" to specify a font style without a background color). (WebCore::computedFontAttributeChanges): Tools: Add new API tests to exercise two corner cases when using NSFontOptions ("Font > Styles…") to change font attributes at the current selection. * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h: * TestWebKitAPI/Tests/mac/FontManagerTests.mm: (webViewForFontManagerTesting): (TestWebKitAPI::TEST): * TestWebKitAPI/mac/TestFontOptions.h: Copied from Source/WebCore/editing/cocoa/FontAttributesCocoa.mm. * TestWebKitAPI/mac/TestFontOptions.mm: Added. Introduce TestFontOptions, which wraps the shared NSFontOptions and swizzles `-sharedFontOptions` to return a global instance of itself. TestFontOptions supports several testing helpers to add or remove font shadows, foreground colors, and background colors. (sharedFontOptionsForTesting): (+[TestFontOptions sharedInstance]): (-[TestFontOptions initWithFontOptions:]): (-[TestFontOptions selectedAttributes]): (-[TestFontOptions fontOptions]): (-[TestFontOptions shadowWidth]): (-[TestFontOptions setShadowWidth:]): (-[TestFontOptions shadowHeight]): (-[TestFontOptions setShadowHeight:]): (-[TestFontOptions setShadowBlurRadius:]): (-[TestFontOptions setHasShadow:]): (-[TestFontOptions foregroundColor]): (-[TestFontOptions setForegroundColor:]): (-[TestFontOptions backgroundColor]): (-[TestFontOptions setBackgroundColor:]): (-[TestFontOptions _dispatchFontAttributeChanges]): (-[TestFontOptions convertAttributes:]): (-[TestFontOptions setSelectedAttributes:isMultiple:]): (-[TestFontOptions forwardInvocation:]): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/FontAttributeChanges.cpp trunk/Source/WebCore/editing/cocoa/FontAttributesCocoa.mm trunk/Source/WebCore/platform/mac/WebCoreNSFontManagerExtras.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj trunk/Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h trunk/Tools/TestWebKitAPI/Tests/mac/FontManagerTests.mm Added Paths trunk/Tools/TestWebKitAPI/mac/TestFontOptions.h trunk/Tools/TestWebKitAPI/mac/TestFontOptions.mm Diff Modified: trunk/Source/WebCore/ChangeLog (236853 => 236854) --- trunk/Source/WebCore/ChangeLog 2018-10-04 21:54:14 UTC (rev 236853) +++ trunk/Source/WebCore/ChangeLog 2018-10-04 22:08:51 UTC (rev 236854) @@ -1,3 +1,33 @@ +2018-10-04 Wenson Hsieh + +[macOS] Fix some font attribute conversion bugs in preparation for "Font > Styles…" support in WebKit2 +https://bugs.webkit.org/show_bug.cgi?id=190289 + + +Reviewed by Ryosuke Niwa. + +Makes some small adjustments to fix two bugs in font attribute conversion logic. See below for more detail. + +Tests: FontManagerTests.AddFontShadowUsingFontOptions +FontManagerTests.AddAndRemoveColorsUsingFontOptions + +* editing/FontAttributeChanges.cpp: +(WebCore::cssValueListForShadow): +* editing/cocoa/FontAttributesCocoa.mm: + +Currently, we bail from adding a font shadow if the shadow's offset is empty. However, valid shadow offsets may +have negative dimensions, so a check for `isZero()` should be used instead. + +(WebCore::FontAttributes::createDictionary const): +* platform/mac/WebCoreNSFontManagerExtras.mm: + +Fall back to a transparent background color; this allows senders to remove the current background color by just +removing NSBackgroundColorAttributeName from the attribute dictionary, rather than explicitly setting it to the +transparent color (this scenario is exercised when using "Font > Styles…" to specify a font style without a +
[webkit-changes] [236853] trunk
Title: [236853] trunk Revision 236853 Author mattba...@apple.com Date 2018-10-04 14:54:14 -0700 (Thu, 04 Oct 2018) Log Message Web Inspector: Table should support multiple selection and Cmd-click behavior https://bugs.webkit.org/show_bug.cgi?id=189705 Reviewed by Devin Rousso. Source/WebInspectorUI: Add multiple row selection to Table, with new methods for programmatic selection (deselectRow, deselectAll), and Command-click support for selecting/deselecting Table rows. * UserInterface/Base/IndexSet.js: Added. (WI.IndexSet): (WI.IndexSet.prototype.get size): (WI.IndexSet.prototype.get firstIndex): (WI.IndexSet.prototype.get lastIndex): (WI.IndexSet.prototype.add): (WI.IndexSet.prototype.delete): (WI.IndexSet.prototype.has): (WI.IndexSet.prototype.clear): (WI.IndexSet.prototype.indexGreaterThan): (WI.IndexSet.prototype.indexLessThan): (WI.IndexSet.prototype.Symbol.iterator): (WI.IndexSet.prototype._indexClosestTo): (WI.IndexSet.prototype._validateIndex): Helper container for managing an ordered sequence of unique positive integers, with set semantics, backed by a sorted array. Used by Table, and eventually by TreeOutline. * UserInterface/Main.html: * UserInterface/Test.html: * UserInterface/Test/Test.js: New files and stubs to make Table layout tests possible. * UserInterface/Views/NetworkTableContentView.js: (WI.NetworkTableContentView.prototype.reset): (WI.NetworkTableContentView.prototype.showRepresentedObject): (WI.NetworkTableContentView.prototype.networkResourceDetailViewClose): (WI.NetworkTableContentView.prototype.tableSelectionDidChange): (WI.NetworkTableContentView.prototype._restoreSelectedRow): (WI.NetworkTableContentView.prototype.tableSelectedRowChanged): Deleted. Replace uses of `clearSelectedRow` with `deselectAll`, and updated selection changed delegate. * UserInterface/Views/Table.css: (.table > .data-container > .data-list > li): (.table > .data-container > .data-list > li.selected): (@media (prefers-dark-interface)): (.table,): Deleted. Removed styles that are no longer needed after https://webkit.org/b/189766, and provide a visual separation between adjacent selected rows. * UserInterface/Views/Table.js: (WI.Table): (WI.Table.prototype.get selectedRows): (WI.Table.prototype.get allowsMultipleSelection): (WI.Table.prototype.set allowsMultipleSelection): (WI.Table.prototype.reloadData): (WI.Table.prototype.selectRow): (WI.Table.prototype.deselectRow): (WI.Table.prototype.deselectAll): (WI.Table.prototype._getOrCreateRow): (WI.Table.prototype._handleMouseDown): (WI.Table.prototype._deselectAllAndSelect): (WI.Table.prototype._isRowSelected): (WI.Table.prototype._notifySelectionDidChange): (WI.Table.prototype.clearSelectedRow): Deleted. Table now tracks selected rows using an IndexSet. selectRow accepts an optional parameter, `extendSelection`, for adding rows to the selection. _selectedRowIndex is now used to track the most recently selected row. This will be the only selected row unless multiple selection is enabled, in which case it is the row that has the "focus", for purposes of selecting a new row using the up or down arrow keys. LayoutTests: * inspector/table/resources/table-utilities.js: Added. (TestPage.registerInitializer.InspectorTest.TableDataSource): (TestPage.registerInitializer.InspectorTest.TableDataSource.prototype.get items): (TestPage.registerInitializer.InspectorTest.TableDataSource.prototype.tableNumberOfRows): (TestPage.registerInitializer.InspectorTest.TableDelegate): (TestPage.registerInitializer.InspectorTest.TableDelegate.prototype.tableSelectionDidChange): (TestPage.registerInitializer.InspectorTest.TableDelegate.prototype.tablePopulateCell): (TestPage.registerInitializer.InspectorTest.createTable): (TestPage.registerInitializer): * inspector/table/table-selection-expected.txt: Added. * inspector/table/table-selection.html: Added. * inspector/unit-tests/index-set-expected.txt: Added. * inspector/unit-tests/index-set.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Main.html trunk/Source/WebInspectorUI/UserInterface/Test/Test.js trunk/Source/WebInspectorUI/UserInterface/Test.html trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js trunk/Source/WebInspectorUI/UserInterface/Views/Table.css trunk/Source/WebInspectorUI/UserInterface/Views/Table.js Added Paths trunk/LayoutTests/inspector/table/ trunk/LayoutTests/inspector/table/resources/ trunk/LayoutTests/inspector/table/resources/table-utilities.js trunk/LayoutTests/inspector/table/table-selection-expected.txt trunk/LayoutTests/inspector/table/table-selection.html trunk/LayoutTests/inspector/unit-tests/index-set-expected.txt trunk/LayoutTests/inspector/unit-tests/index-set.html trunk/Source/WebInspectorUI/UserInterface/Base/IndexSet.js Diff Modified: trunk/LayoutTests/ChangeLog (236852 => 236853) --- trunk/LayoutTests/ChangeLog 2018-10-04 21:47:13 UTC (rev 236852) +++
[webkit-changes] [236852] trunk/Source/WebKit
Title: [236852] trunk/Source/WebKit Revision 236852 Author bb...@apple.com Date 2018-10-04 14:47:13 -0700 (Thu, 04 Oct 2018) Log Message Web Automation: clear pending callbacks when the session terminates https://bugs.webkit.org/show_bug.cgi?id=190259 Reviewed by Joseph Pecoraro. WebAutomationSession::terminate() can be called at any time to nuke the session. However, it's possible that the session is in the midst of simulating keyboard/mouse events. While in that state, there are some CompletionHandler objects waiting for key/mouse events to be flushed. We need to empty out callback maps with CompletionHandler instances so that they do not assert because they were never called. I was able to test this manually by running a test that erroneously hangs while waiting for keyboard input. While the test was hung, I killed the NetworkProcess manually to trigger WebAutomationSession::terminate(). From there, I saw that the Perform Actions REST API call gets cancelled with the appropriate error code. * UIProcess/Automation/WebAutomationSession.cpp: (WebKit::WebAutomationSession::terminate): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (236851 => 236852) --- trunk/Source/WebKit/ChangeLog 2018-10-04 21:14:58 UTC (rev 236851) +++ trunk/Source/WebKit/ChangeLog 2018-10-04 21:47:13 UTC (rev 236852) @@ -1,3 +1,25 @@ +2018-10-04 Brian Burg + +Web Automation: clear pending callbacks when the session terminates +https://bugs.webkit.org/show_bug.cgi?id=190259 + + +Reviewed by Joseph Pecoraro. + +WebAutomationSession::terminate() can be called at any time to nuke the session. +However, it's possible that the session is in the midst of simulating keyboard/mouse +events. While in that state, there are some CompletionHandler objects waiting +for key/mouse events to be flushed. We need to empty out callback maps with +CompletionHandler instances so that they do not assert because they were never called. + +I was able to test this manually by running a test that erroneously hangs +while waiting for keyboard input. While the test was hung, I killed the NetworkProcess +manually to trigger WebAutomationSession::terminate(). From there, I saw that the +Perform Actions REST API call gets cancelled with the appropriate error code. + +* UIProcess/Automation/WebAutomationSession.cpp: +(WebKit::WebAutomationSession::terminate): + 2018-10-04 Jiewen Tan [WebAuthN] Move time out control from WebProcess to UIProcess Modified: trunk/Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp (236851 => 236852) --- trunk/Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp 2018-10-04 21:14:58 UTC (rev 236851) +++ trunk/Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp 2018-10-04 21:47:13 UTC (rev 236852) @@ -139,6 +139,16 @@ void WebAutomationSession::terminate() { +for (auto& identifier : copyToVector(m_pendingKeyboardEventsFlushedCallbacksPerPage.keys())) { +auto callback = m_pendingKeyboardEventsFlushedCallbacksPerPage.take(identifier); +callback(AUTOMATION_COMMAND_ERROR_WITH_NAME(InternalError)); +} + +for (auto& identifier : copyToVector(m_pendingMouseEventsFlushedCallbacksPerPage.keys())) { +auto callback = m_pendingMouseEventsFlushedCallbacksPerPage.take(identifier); +callback(AUTOMATION_COMMAND_ERROR_WITH_NAME(InternalError)); +} + #if ENABLE(REMOTE_INSPECTOR) if (Inspector::FrontendChannel* channel = m_remoteChannel) { m_remoteChannel = nullptr; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236851] trunk/Source/WebKitLegacy/mac
Title: [236851] trunk/Source/WebKitLegacy/mac Revision 236851 Author m...@apple.com Date 2018-10-04 14:14:58 -0700 (Thu, 04 Oct 2018) Log Message Retried to fix 32-bit macOS builds after r236846. * WebView/WebHTMLView.mm: (-[WebHTMLView setMarkedText:selectedRange:]): Modified Paths trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm Diff Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (236850 => 236851) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 21:12:04 UTC (rev 236850) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 21:14:58 UTC (rev 236851) @@ -2,6 +2,13 @@ Retried to fix 32-bit macOS builds after r236846. +* WebView/WebHTMLView.mm: +(-[WebHTMLView setMarkedText:selectedRange:]): + +2018-10-04 Dan Bernstein + +Retried to fix 32-bit macOS builds after r236846. + * Carbon/HIWebView.mm: (ActiveStateChanged): Modified: trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm (236850 => 236851) --- trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm 2018-10-04 21:12:04 UTC (rev 236850) +++ trunk/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm 2018-10-04 21:14:58 UTC (rev 236851) @@ -888,6 +888,7 @@ - (void)_updateSelectionForInputManager; #endif #if PLATFORM(IOS) +- (void)setMarkedText:(id)string selectedRange:(NSRange)newSelRange; - (void)doCommandBySelector:(SEL)selector; #endif @end @@ -5690,64 +5691,6 @@ } #endif -IGNORE_WARNINGS_BEGIN("deprecated-implementations") -- (void)setMarkedText:(id)string selectedRange:(NSRange)newSelRange -IGNORE_WARNINGS_END -{ -[self _executeSavedKeypressCommands]; - -#if PLATFORM(MAC) -BOOL isAttributedString = [string isKindOfClass:[NSAttributedString class]]; -ASSERT(isAttributedString || [string isKindOfClass:[NSString class]]); - -LOG(TextInput, "setMarkedText:\"%@\" selectedRange:(%u, %u)", isAttributedString ? [string string] : string, newSelRange.location, newSelRange.length); -#endif - -// Use pointer to get parameters passed to us by the caller of interpretKeyEvents. -auto* parameters = _private->interpretKeyEventsParameters; - -if (parameters) { -parameters->eventInterpretationHadSideEffects = true; -parameters->consumedByIM = false; -} - -Frame* coreFrame = core([self _frame]); -if (!coreFrame) -return; - -if (![self _isEditable]) -return; - -Vector underlines; -NSString *text; -NSRange replacementRange = { NSNotFound, 0 }; - -#if PLATFORM(MAC) -if (isAttributedString) { -// FIXME: We ignore most attributes from the string, so an input method cannot specify e.g. a font or a glyph variation. -text = [string string]; -NSString *rangeString = [string attribute:NSTextInputReplacementRangeAttributeName atIndex:0 longestEffectiveRange:0 inRange:NSMakeRange(0, [text length])]; -LOG(TextInput, "ReplacementRange: %@", rangeString); -// The AppKit adds a 'secret' property to the string that contains the replacement range. -// The replacement range is the range of the text that should be replaced with the new string. -if (rangeString) -replacementRange = NSRangeFromString(rangeString); - -extractUnderlines(string, underlines); -} else { -text = string; -underlines.append(CompositionUnderline(0, [text length], CompositionUnderlineColor::TextColor, Color::black, false)); -} -#else -text = string; -#endif - -if (replacementRange.location != NSNotFound) -[[self _frame] _selectNSRange:replacementRange]; - -coreFrame->editor().setComposition(text, underlines, newSelRange.location, NSMaxRange(newSelRange)); -} - @end @implementation WebHTMLView (WebInternal) @@ -6563,6 +6506,64 @@ #endif IGNORE_WARNINGS_BEGIN("deprecated-implementations") +- (void)setMarkedText:(id)string selectedRange:(NSRange)newSelRange +IGNORE_WARNINGS_END +{ +[self _executeSavedKeypressCommands]; + +#if PLATFORM(MAC) +BOOL isAttributedString = [string isKindOfClass:[NSAttributedString class]]; +ASSERT(isAttributedString || [string isKindOfClass:[NSString class]]); + +LOG(TextInput, "setMarkedText:\"%@\" selectedRange:(%u, %u)", isAttributedString ? [string string] : string, newSelRange.location, newSelRange.length); +#endif + +// Use pointer to get parameters passed to us by the caller of interpretKeyEvents. +auto* parameters = _private->interpretKeyEventsParameters; + +if (parameters) { +parameters->eventInterpretationHadSideEffects = true; +parameters->consumedByIM = false; +} + +Frame* coreFrame = core([self _frame]); +if (!coreFrame) +return; + +if (![self _isEditable]) +return; + +Vector underlines; +NSString *text; +NSRange replacementRange = { NSNotFound, 0 }; + +#if PLATFORM(MAC) +if (isAttributedString) { +// FIXME: We ignore
[webkit-changes] [236850] trunk
Title: [236850] trunk Revision 236850 Author rn...@webkit.org Date 2018-10-04 14:12:04 -0700 (Thu, 04 Oct 2018) Log Message MutationRecord doesn't keep JS wrappers of target, addedNodes, and removedNodes alive https://bugs.webkit.org/show_bug.cgi?id=190277 Reviewed by Antti Koivisto. Source/WebCore: The bug was caused by JSMutationRecord not visiting any of the nodes referenced by mutation records. Fixed the bug by adding JSMutationRecord::visitAdditionalChildren, which adds the root nodes of the root nodes of the target, addedNodes, and removedNodes in each mutation record. Test: fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive.html * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSMutationRecordCustom.cpp: Added. (WebCore::JSMutationRecord::visitAdditionalChildren): Added. * bindings/js/JSPerformanceObserverCustom.cpp: This file got dumped out of a unified build file where using namespace JSC was defined. Use the fully qualified names to refer to JSC types. (WebCore::JSPerformanceObserverOwner::isReachableFromOpaqueRoots): * dom/MutationRecord.cpp: (WebCore::ChildListRecord::visitNodesConcurrently): Added. (WebCore::RecordWithEmptyNodeLists::visitNodesConcurrently): Added. (WebCore::MutationRecordWithNullOldValue::visitNodesConcurrently): Added. * dom/MutationRecord.h: * dom/MutationRecord.idl: LayoutTests: Added two regression tests for making sure mutation observers and mutation records keep JS wrappers of the enqueued nodes alive. Also see r236799 for a previous failed attempt to add a similar test. * fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive-expected.txt: Added. * fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive.html: Added. * fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive-expected.txt: Added. * fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Sources.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/bindings/js/JSPerformanceObserverCustom.cpp trunk/Source/WebCore/dom/MutationRecord.cpp trunk/Source/WebCore/dom/MutationRecord.h trunk/Source/WebCore/dom/MutationRecord.idl Added Paths trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive-expected.txt trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive.html trunk/LayoutTests/fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive-expected.txt trunk/LayoutTests/fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive.html trunk/Source/WebCore/bindings/js/JSMutationRecordCustom.cpp Diff Modified: trunk/LayoutTests/ChangeLog (236849 => 236850) --- trunk/LayoutTests/ChangeLog 2018-10-04 21:02:34 UTC (rev 236849) +++ trunk/LayoutTests/ChangeLog 2018-10-04 21:12:04 UTC (rev 236850) @@ -1,3 +1,18 @@ +2018-10-03 Ryosuke Niwa + +MutationRecord doesn't keep JS wrappers of target, addedNodes, and removedNodes alive +https://bugs.webkit.org/show_bug.cgi?id=190277 + +Reviewed by Antti Koivisto. + +Added two regression tests for making sure mutation observers and mutation records keep JS wrappers +of the enqueued nodes alive. Also see r236799 for a previous failed attempt to add a similar test. + +* fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive-expected.txt: Added. +* fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive.html: Added. +* fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive-expected.txt: Added. +* fast/dom/MutationObserver/mutation-record-keeps-js-wrappers-of-nodes-alive.html: Added. + 2018-10-04 Devin Rousso Web Inspector: merge ProbeManager into DebuggerManager Added: trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive-expected.txt (0 => 236850) --- trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive-expected.txt 2018-10-04 21:12:04 UTC (rev 236850) @@ -0,0 +1,8 @@ +This tests that JS wrappers of nodes in a mutation record do not get collected. + +PASS +PASS +PASS +PASS +PASS + Added: trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive.html (0 => 236850) --- trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive.html (rev 0) +++ trunk/LayoutTests/fast/dom/MutationObserver/mutation-observer-keeps-js-wrappers-of-nodes-alive.html 2018-10-04 21:12:04 UTC (rev 236850) @@ -0,0 +1,61 @@ + + + +This tests that JS
[webkit-changes] [236849] trunk/Source/WebKitLegacy/mac
Title: [236849] trunk/Source/WebKitLegacy/mac Revision 236849 Author m...@apple.com Date 2018-10-04 14:02:34 -0700 (Thu, 04 Oct 2018) Log Message Retried to fix 32-bit macOS builds after r236846. * Carbon/HIWebView.mm: (ActiveStateChanged): Modified Paths trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm trunk/Source/WebKitLegacy/mac/ChangeLog Diff Modified: trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm (236848 => 236849) --- trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm 2018-10-04 20:58:14 UTC (rev 236848) +++ trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm 2018-10-04 21:02:34 UTC (rev 236849) @@ -34,7 +34,6 @@ #import "HIViewAdapter.h" #import "WebHTMLViewInternal.h" #import "WebKit.h" -#import #import #import #import @@ -1072,10 +1071,12 @@ // static void ActiveStateChanged(HIWebView* view) { +IGNORE_WARNINGS_BEGIN("undeclared-selector") if ([view->fWebView respondsToSelector:@selector(setEnabled)]) { [(NSControl*)view->fWebView setEnabled: IsControlEnabled(view->fViewRef)]; HIViewSetNeedsDisplay(view->fViewRef, true); } +IGNORE_WARNINGS_END } Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (236848 => 236849) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 20:58:14 UTC (rev 236848) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 21:02:34 UTC (rev 236849) @@ -1,5 +1,12 @@ 2018-10-04 Dan Bernstein +Retried to fix 32-bit macOS builds after r236846. + +* Carbon/HIWebView.mm: +(ActiveStateChanged): + +2018-10-04 Dan Bernstein + Tried to fix 32-bit macOS builds after r236846. * Carbon/HIWebView.mm: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236848] trunk/Source/WebInspectorUI
Title: [236848] trunk/Source/WebInspectorUI Revision 236848 Author drou...@apple.com Date 2018-10-04 13:58:14 -0700 (Thu, 04 Oct 2018) Log Message Web Inspector: REGRESSION(r236540): Uncaught Exception: TypeError: pauseReasonBreakpointTreeElement.removeStatusImage is not a function. https://bugs.webkit.org/show_bug.cgi?id=190230 Reviewed by Matt Baker. * UserInterface/Views/DebuggerSidebarPanel.js: (WI.DebuggerSidebarPanel._removeBreakpoint): Leverage existing `status` getter/setter for creating/removing the breakpoint icon element. * UserInterface/Views/BreakpointTreeElement.js: (WI.BreakpointTreeElement): (WI.BreakpointTreeElement.prototype.populateContextMenu): (WI.BreakpointTreeElement.prototype._updateStatus): (WI.BreakpointTreeElement.prototype.removeStatusImage): Deleted. * UserInterface/Views/DOMBreakpointTreeElement.js: (WI.DOMBreakpointTreeElement): (WI.DOMBreakpointTreeElement.prototype.onattach): (WI.DOMBreakpointTreeElement.prototype.ondetach): (WI.DOMBreakpointTreeElement.prototype._updateStatus): * UserInterface/Views/EventBreakpointTreeElement.js: (WI.EventBreakpointTreeElement): (WI.EventBreakpointTreeElement.prototype.onattach): (WI.EventBreakpointTreeElement.prototype.ondetach): (WI.EventBreakpointTreeElement.prototype._updateStatus): * UserInterface/Views/XHRBreakpointTreeElement.js: (WI.XHRBreakpointTreeElement): (WI.XHRBreakpointTreeElement.prototype.onattach): (WI.XHRBreakpointTreeElement.prototype.ondetach): (WI.XHRBreakpointTreeElement.prototype._updateStatus): Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Views/BreakpointTreeElement.js trunk/Source/WebInspectorUI/UserInterface/Views/DOMBreakpointTreeElement.js trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js trunk/Source/WebInspectorUI/UserInterface/Views/EventBreakpointTreeElement.js trunk/Source/WebInspectorUI/UserInterface/Views/XHRBreakpointTreeElement.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (236847 => 236848) --- trunk/Source/WebInspectorUI/ChangeLog 2018-10-04 20:47:32 UTC (rev 236847) +++ trunk/Source/WebInspectorUI/ChangeLog 2018-10-04 20:58:14 UTC (rev 236848) @@ -1,3 +1,38 @@ +2018-10-04 Devin Rousso + +Web Inspector: REGRESSION(r236540): Uncaught Exception: TypeError: pauseReasonBreakpointTreeElement.removeStatusImage is not a function. +https://bugs.webkit.org/show_bug.cgi?id=190230 + +Reviewed by Matt Baker. + +* UserInterface/Views/DebuggerSidebarPanel.js: +(WI.DebuggerSidebarPanel._removeBreakpoint): +Leverage existing `status` getter/setter for creating/removing the breakpoint icon element. + +* UserInterface/Views/BreakpointTreeElement.js: +(WI.BreakpointTreeElement): +(WI.BreakpointTreeElement.prototype.populateContextMenu): +(WI.BreakpointTreeElement.prototype._updateStatus): +(WI.BreakpointTreeElement.prototype.removeStatusImage): Deleted. + +* UserInterface/Views/DOMBreakpointTreeElement.js: +(WI.DOMBreakpointTreeElement): +(WI.DOMBreakpointTreeElement.prototype.onattach): +(WI.DOMBreakpointTreeElement.prototype.ondetach): +(WI.DOMBreakpointTreeElement.prototype._updateStatus): + +* UserInterface/Views/EventBreakpointTreeElement.js: +(WI.EventBreakpointTreeElement): +(WI.EventBreakpointTreeElement.prototype.onattach): +(WI.EventBreakpointTreeElement.prototype.ondetach): +(WI.EventBreakpointTreeElement.prototype._updateStatus): + +* UserInterface/Views/XHRBreakpointTreeElement.js: +(WI.XHRBreakpointTreeElement): +(WI.XHRBreakpointTreeElement.prototype.onattach): +(WI.XHRBreakpointTreeElement.prototype.ondetach): +(WI.XHRBreakpointTreeElement.prototype._updateStatus): + 2018-10-04 Dan Bernstein WebInspectorUI part of [Xcode] Update some build settings as recommended by Xcode 10 Modified: trunk/Source/WebInspectorUI/UserInterface/Views/BreakpointTreeElement.js (236847 => 236848) --- trunk/Source/WebInspectorUI/UserInterface/Views/BreakpointTreeElement.js 2018-10-04 20:47:32 UTC (rev 236847) +++ trunk/Source/WebInspectorUI/UserInterface/Views/BreakpointTreeElement.js 2018-10-04 20:58:14 UTC (rev 236848) @@ -48,17 +48,15 @@ this._listenerSet.register(WI.debuggerManager, WI.DebuggerManager.Event.ProbeSetAdded, this._probeSetAdded); this._listenerSet.register(WI.debuggerManager, WI.DebuggerManager.Event.ProbeSetRemoved, this._probeSetRemoved); -this._statusImageElement = document.createElement("img"); -this._statusImageElement.className = WI.BreakpointTreeElement.StatusImageElementStyleClassName; -this._listenerSet.register(this._statusImageElement, "mousedown", this._statusImageElementMouseDown); -this._listenerSet.register(this._statusImageElement, "click", this._statusImageElementClicked); +this.status =
[webkit-changes] [236847] trunk/Source/WebKitLegacy/mac
Title: [236847] trunk/Source/WebKitLegacy/mac Revision 236847 Author m...@apple.com Date 2018-10-04 13:47:32 -0700 (Thu, 04 Oct 2018) Log Message Tried to fix 32-bit macOS builds after r236846. * Carbon/HIWebView.mm: (_NSSelectorForHICommand): Modified Paths trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm trunk/Source/WebKitLegacy/mac/ChangeLog Diff Modified: trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm (236846 => 236847) --- trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm 2018-10-04 20:36:56 UTC (rev 236846) +++ trunk/Source/WebKitLegacy/mac/Carbon/HIWebView.mm 2018-10-04 20:47:32 UTC (rev 236847) @@ -34,6 +34,7 @@ #import "HIViewAdapter.h" #import "WebHTMLViewInternal.h" #import "WebKit.h" +#import #import #import #import @@ -1161,6 +1162,7 @@ // static SEL _NSSelectorForHICommand(const HICommand* inCommand) { +IGNORE_WARNINGS_BEGIN("undeclared-selector") switch (inCommand->commandID) { case kHICommandUndo: return @selector(undo:); @@ -1179,6 +1181,7 @@ default: return nullptr; } +IGNORE_WARNINGS_END return nullptr; } Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (236846 => 236847) --- trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 20:36:56 UTC (rev 236846) +++ trunk/Source/WebKitLegacy/mac/ChangeLog 2018-10-04 20:47:32 UTC (rev 236847) @@ -1,5 +1,12 @@ 2018-10-04 Dan Bernstein +Tried to fix 32-bit macOS builds after r236846. + +* Carbon/HIWebView.mm: +(_NSSelectorForHICommand): + +2018-10-04 Dan Bernstein + WebKitLegacy part of [Xcode] Update some build settings as recommended by Xcode 10 https://bugs.webkit.org/show_bug.cgi?id=190250 ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236846] trunk/Source
Title: [236846] trunk/Source Revision 236846 Author m...@apple.com Date 2018-10-04 13:36:56 -0700 (Thu, 04 Oct 2018) Log Message WebInspectorUI and WebKitLegacy parts of [Xcode] Update some build settings as recommended by Xcode 10 https://bugs.webkit.org/show_bug.cgi?id=190250 Reviewed by Andy Estes. Source/WebCore/PAL: * pal/spi/mac/NSWindowSPI.h: Added a private API declaration. Source/WebInspectorUI: * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_INFINITE_RECURSION, CLANG_WARN_SUSPICIOUS_MOVE, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF. * WebInspectorUI.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck. Source/WebKitLegacy: * WebKitLegacy.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck. Source/WebKitLegacy/mac: WebKitLegacy part of [Xcode] Update some build settings as recommended by Xcode 10 https://bugs.webkit.org/show_bug.cgi?id=190250 Reviewed by Andy Estes. * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED. Also enabled GCC_WARN_UNDECLARED_SELECTOR by deleting the line that set it to NO, which let an earlier line set it to YES. Enabling -Wundeclared-selector exposed some long-standing mistakes and required the most changes below. * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Imported an internal header that provides some missing method declarations. * Misc/WebDownload.mm: (-[WebDownload initWithRequest:delegate:]): Suppressed warning about this implementation of a deprecated method. * Misc/WebIconDatabase.mm: Suppressed warning around our implementation of a deprecated class. * Misc/WebNSObjectExtras.mm: Declare a category that is implemented in this file, because other code in the file uses a method from it. * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView renewGState]): Suppressed warning about this implementation of a deprecated method. * Plugins/WebPluginController.mm: (installFlip4MacPlugInWorkaroundIfNecessary): Suppressed the undeclared selector warning around use of a selector that may be present in some WebKit client. * Plugins/WebPluginDatabase.mm: Imported an internal header that provides some missing method declarations. * WebCoreSupport/PopupMenuMac.mm: Imported a header that delcares delegate methods we call from here. * WebCoreSupport/WebCachedFramePlatformData.h: Imported an internal header that provides some missing method declarations. * WebCoreSupport/WebChromeClient.mm: Imported a header that declares delegate methods we call from here. * WebCoreSupport/WebFrameLoaderClient.mm: Imported headers that declare delegate methods we call from here. (WebFrameLoaderClient::setTitle): Suppressed the undeclared selector warning around use of an obsolete delegate method for binary compatibility. (pluginView): Ditto. * WebCoreSupport/WebVisitedLinkStore.mm: Imported a header that declares delegate methods we call from here. * WebView/WebDeviceOrientationInternal.h: Declared -setController in a new WebDeviceOrientationProviderMock protocol. * WebView/WebDeviceOrientationProviderMock.mm: (-[WebDeviceOrientationProviderMock setController:]): Moved from an internal category to the main @implementation. * WebView/WebDeviceOrientationProviderMockInternal.h: Declared that WebDeviceOrientationProviderMock conforms to WebDeviceOrientationProviderMock. * WebView/WebDynamicScrollBarsView.mm: (-[WebDynamicScrollBarsView accessibilityIsIgnored]): Suppressed warning about this implementation of a deprecated method. * WebView/WebHTMLView.mm: (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Suppressed the undeclared selector warning around action methods that are not declared anywhere in WebKit. (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): Suppressed warning about implementing this deprecated method. (-[WebHTMLView draggingSourceOperationMaskForLocal:]): Ditto. (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto. (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto. (-[WebHTMLView accessibilityAttributeValue:]): Ditto. (-[WebHTMLView characterIndexForPoint:]): Ditto. (-[WebHTMLView firstRectForCharacterRange:]): Ditto. (-[WebHTMLView attributedSubstringFromRange:]): Ditto. (-[WebHTMLView setMarkedText:selectedRange:]): Ditto. (-[WebHTMLView doCommandBySelector:]): Ditto. (-[WebHTMLView insertText:]): Ditto. * WebView/WebHTMLViewInternal.h: Declared an internal method that’s used from another file. * WebView/WebJSPDFDoc.mm: Imported a header that declares delegate methods we call from here. * WebView/WebPDFView.h: Removed previewView ivar. * WebView/WebPDFView.mm: Removed declaration of FileInternal category and merged its implementation with the main implementation. (-[WebPDFView dealloc]): Removed previewView
[webkit-changes] [236845] trunk
Title: [236845] trunk Revision 236845 Author drou...@apple.com Date 2018-10-04 13:27:45 -0700 (Thu, 04 Oct 2018) Log Message Web Inspector: merge ProbeManager into DebuggerManager https://bugs.webkit.org/show_bug.cgi?id=190225 Reviewed by Joseph Pecoraro. Source/WebInspectorUI: * UserInterface/Main.html: * UserInterface/Base/Main.js: (WI.loaded): * UserInterface/Test.html: * UserInterface/Test/Test.js: (WI.loaded): * UserInterface/Controllers/DebuggerManager.js: (WI.DebuggerManager.prototype.get probeSets): Added. (WI.DebuggerManager.prototype.probeForIdentifier): Added. (WI.DebuggerManager.prototype.addBreakpoint): (WI.DebuggerManager.prototype.removeBreakpoint): (WI.DebuggerManager.prototype.didSampleProbe): Added. (WI.DebuggerManager.prototype._handleBreakpointActionsDidChange): Added. (WI.DebuggerManager.prototype._addProbesForBreakpoint): Added. (WI.DebuggerManager.prototype._removeProbesForBreakpoint): Added. (WI.DebuggerManager.prototype._updateProbesForBreakpoint): Added. (WI.DebuggerManager.prototype._probeSetForBreakpoint): Added. * UserInterface/Controllers/ProbeManager.js: Removed. * UserInterface/Protocol/DebuggerObserver.js: (WI.DebuggerObserver.prototype.didSampleProbe): * UserInterface/Controllers/TimelineManager.js: (WI.TimelineManager.prototype._processRecord): * UserInterface/Views/BreakpointTreeElement.js: (WI.BreakpointTreeElement.prototype.onattach): * UserInterface/Views/ProbeDetailsSidebarPanel.js: (WI.ProbeDetailsSidebarPanel.prototype.closed): (WI.ProbeDetailsSidebarPanel.prototype.initialLayout): * UserInterface/Views/TextResourceContentView.js: (WI.TextResourceContentView): (WI.TextResourceContentView.prototype.get supplementalRepresentedObjects): (WI.TextResourceContentView.prototype.closed): LayoutTests: * http/tests/inspector/debugger/debugger-test.js: (TestPage.registerInitializer.InspectorTest.startTracingProbes): (TestPage.registerInitializer): * http/tests/inspector/resources/probe-test.js: (TestPage.registerInitializer.ProtocolTest.Probe.installTracingListeners): (TestPage.registerInitializer): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/inspector/debugger/debugger-test.js trunk/LayoutTests/http/tests/inspector/resources/probe-test.js trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Base/Main.js trunk/Source/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js trunk/Source/WebInspectorUI/UserInterface/Controllers/TimelineManager.js trunk/Source/WebInspectorUI/UserInterface/Main.html trunk/Source/WebInspectorUI/UserInterface/Protocol/DebuggerObserver.js trunk/Source/WebInspectorUI/UserInterface/Test/Test.js trunk/Source/WebInspectorUI/UserInterface/Test.html trunk/Source/WebInspectorUI/UserInterface/Views/BreakpointTreeElement.js trunk/Source/WebInspectorUI/UserInterface/Views/ProbeDetailsSidebarPanel.js trunk/Source/WebInspectorUI/UserInterface/Views/TextResourceContentView.js Removed Paths trunk/Source/WebInspectorUI/UserInterface/Controllers/ProbeManager.js Diff Modified: trunk/LayoutTests/ChangeLog (236844 => 236845) --- trunk/LayoutTests/ChangeLog 2018-10-04 20:08:54 UTC (rev 236844) +++ trunk/LayoutTests/ChangeLog 2018-10-04 20:27:45 UTC (rev 236845) @@ -1,5 +1,19 @@ 2018-10-04 Devin Rousso +Web Inspector: merge ProbeManager into DebuggerManager +https://bugs.webkit.org/show_bug.cgi?id=190225 + +Reviewed by Joseph Pecoraro. + +* http/tests/inspector/debugger/debugger-test.js: +(TestPage.registerInitializer.InspectorTest.startTracingProbes): +(TestPage.registerInitializer): +* http/tests/inspector/resources/probe-test.js: +(TestPage.registerInitializer.ProtocolTest.Probe.installTracingListeners): +(TestPage.registerInitializer): + +2018-10-04 Devin Rousso + Web Inspector: some files not listed in OpenResourceDialog https://bugs.webkit.org/show_bug.cgi?id=190272 Modified: trunk/LayoutTests/http/tests/inspector/debugger/debugger-test.js (236844 => 236845) --- trunk/LayoutTests/http/tests/inspector/debugger/debugger-test.js 2018-10-04 20:08:54 UTC (rev 236844) +++ trunk/LayoutTests/http/tests/inspector/debugger/debugger-test.js 2018-10-04 20:27:45 UTC (rev 236845) @@ -51,21 +51,21 @@ InspectorTest.startTracingProbes = function() { -if (!WI.probeManager) +if (!WI.debuggerManager) return; -WI.probeManager.addEventListener(WI.ProbeManager.Event.ProbeSetAdded, function(event) { +WI.debuggerManager.addEventListener(WI.DebuggerManager.Event.ProbeSetAdded, function(event) { var probeSet = event.data.probeSet; console.assert(probeSet instanceof WI.ProbeSet, "Unexpected object type!"); -InspectorTest.log("Probe set was added. New count: " + WI.probeManager.probeSets.length); +InspectorTest.log("Probe set was added. New count: " + WI.debuggerManager.probeSets.length); }); -
[webkit-changes] [236844] trunk
Title: [236844] trunk Revision 236844 Author drou...@apple.com Date 2018-10-04 13:08:54 -0700 (Thu, 04 Oct 2018) Log Message Web Inspector: some files not listed in OpenResourceDialog https://bugs.webkit.org/show_bug.cgi?id=190272 Reviewed by Joseph Pecoraro. Source/WebInspectorUI: * UserInterface/Controllers/ResourceQueryController.js: (WI.ResourceQueryController.prototype._findQueryMatches): Allow the `searchIndex` to go past the end of the `searchString` to allow for backtracking if the last character of `searchString` is not found in `query`. LayoutTests: * inspector/unit-tests/resource-query-controller-expected.txt: * inspector/unit-tests/resource-query-controller.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/inspector/unit-tests/resource-query-controller-expected.txt trunk/LayoutTests/inspector/unit-tests/resource-query-controller.html trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Controllers/ResourceQueryController.js Diff Modified: trunk/LayoutTests/ChangeLog (236843 => 236844) --- trunk/LayoutTests/ChangeLog 2018-10-04 20:03:50 UTC (rev 236843) +++ trunk/LayoutTests/ChangeLog 2018-10-04 20:08:54 UTC (rev 236844) @@ -1,3 +1,13 @@ +2018-10-04 Devin Rousso + +Web Inspector: some files not listed in OpenResourceDialog +https://bugs.webkit.org/show_bug.cgi?id=190272 + +Reviewed by Joseph Pecoraro. + +* inspector/unit-tests/resource-query-controller-expected.txt: +* inspector/unit-tests/resource-query-controller.html: + 2018-10-04 Jiewen Tan [WebAuthN] Move time out control from WebProcess to UIProcess Modified: trunk/LayoutTests/inspector/unit-tests/resource-query-controller-expected.txt (236843 => 236844) --- trunk/LayoutTests/inspector/unit-tests/resource-query-controller-expected.txt 2018-10-04 20:03:50 UTC (rev 236843) +++ trunk/LayoutTests/inspector/unit-tests/resource-query-controller-expected.txt 2018-10-04 20:08:54 UTC (rev 236844) @@ -216,3 +216,6 @@ PASS: Result TextRanges should match the expected ranges. PASS: Result TextRanges should match the expected ranges. +-- Running test case: QueryMatchesExtension +PASS: All resources should be matched. + Modified: trunk/LayoutTests/inspector/unit-tests/resource-query-controller.html (236843 => 236844) --- trunk/LayoutTests/inspector/unit-tests/resource-query-controller.html 2018-10-04 20:03:50 UTC (rev 236843) +++ trunk/LayoutTests/inspector/unit-tests/resource-query-controller.html 2018-10-04 20:08:54 UTC (rev 236844) @@ -61,7 +61,7 @@ for (let {filename, expected} of tests) { let actual = createSpecialMask(filename, matcher._findSpecialCharacterIndices(filename)); -InspectorTest.expectThat(actual === expected, "Result should match expected special indices."); +InspectorTest.expectEqual(actual, expected, "Result should match expected special indices."); } } }); @@ -103,7 +103,7 @@ for (let query of [" abcde", "abcde ", " abcde ", "a b c d e", "a b c d e"]) { let results = matcher.executeQuery(query); -InspectorTest.expectThat(results.length === 1, "Should match one result."); +InspectorTest.expectEqual(results.length, 1, "Should match one result."); } } }); @@ -193,7 +193,7 @@ let results = matcher.executeQuery(query); InspectorTest.assert(results.length === 1, "Should return exactly one match."); let actual = results.length ? results[0].__test_createMatchesMask() : null; -InspectorTest.expectThat(actual === expected, `Query "${query}" should match "${expected}" in "${filename}".`); +InspectorTest.expectEqual(actual, expected, `Query "${query}" should match "${expected}" in "${filename}".`); } } }); @@ -261,7 +261,7 @@ for (let queryPermutation of casePermutations(query)) { let results = matcher.executeQuery(queryPermutation); let actual = results.length === 1 ? results[0].__test_createMatchesMask() : ""; -InspectorTest.expectThat(expected === actual, `Permutation "${queryPermutation}".`); +InspectorTest.expectEqual(expected, actual, `Permutation "${queryPermutation}".`); } } } @@ -278,7 +278,7 @@ let query = "abcde"; let results = matcher.executeQuery(query); let resultFilenames = results.map((filename) => filename.resource.displayName); -InspectorTest.expectThat(Object.shallowEqual(resultFilenames, filenames), "Results should be ranked by descending relevancy."); +InspectorTest.expectShallowEqual(resultFilenames, filenames, "Results should be ranked by descending relevancy."); } }); @@ -293,7
[webkit-changes] [236843] trunk/Source/WebInspectorUI
Title: [236843] trunk/Source/WebInspectorUI Revision 236843 Author drou...@apple.com Date 2018-10-04 13:03:50 -0700 (Thu, 04 Oct 2018) Log Message Web Inspector: REGRESSION(r236783): Uncaught Exception: Can't find variable: sourceMapURL https://bugs.webkit.org/show_bug.cgi?id=190276 Reviewed by Joseph Pecoraro. * UserInterface/Controllers/NetworkManager.js: (WI.NetworkManager.prototype._sourceMapLoadAndParseFailed): Modified Paths trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/UserInterface/Controllers/NetworkManager.js Diff Modified: trunk/Source/WebInspectorUI/ChangeLog (236842 => 236843) --- trunk/Source/WebInspectorUI/ChangeLog 2018-10-04 19:32:14 UTC (rev 236842) +++ trunk/Source/WebInspectorUI/ChangeLog 2018-10-04 20:03:50 UTC (rev 236843) @@ -1,3 +1,13 @@ +2018-10-04 Devin Rousso + +Web Inspector: REGRESSION(r236783): Uncaught Exception: Can't find variable: sourceMapURL +https://bugs.webkit.org/show_bug.cgi?id=190276 + +Reviewed by Joseph Pecoraro. + +* UserInterface/Controllers/NetworkManager.js: +(WI.NetworkManager.prototype._sourceMapLoadAndParseFailed): + 2018-10-02 Devin Rousso Web Inspector: merge SourceMapManager into NetworkManager Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/NetworkManager.js (236842 => 236843) --- trunk/Source/WebInspectorUI/UserInterface/Controllers/NetworkManager.js 2018-10-04 19:32:14 UTC (rev 236842) +++ trunk/Source/WebInspectorUI/UserInterface/Controllers/NetworkManager.js 2018-10-04 20:03:50 UTC (rev 236843) @@ -864,7 +864,7 @@ NetworkAgent.loadResource(frameIdentifier, sourceMapURL, sourceMapLoaded); } -_sourceMapLoadAndParseFailed(ssourceMapLurceMapURL) +_sourceMapLoadAndParseFailed(sourceMapURL) { this._downloadingSourceMaps.delete(sourceMapURL); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [236842] trunk
Title: [236842] trunk Revision 236842 Author jiewen_...@apple.com Date 2018-10-04 12:32:14 -0700 (Thu, 04 Oct 2018) Log Message [WebAuthN] Move time out control from WebProcess to UIProcess https://bugs.webkit.org/show_bug.cgi?id=189642 Reviewed by Chris Dumez. Source/WebCore: Since now the control unit of WebAuthN has been moved to UI Process, i.e. AuthenticatorManager, the time out timer should move to UI Process as well. Tests: http/wpt/webauthn/public-key-credential-create-failure-local-silent.https.html http/wpt/webauthn/public-key-credential-get-failure-local-silent.https.html * Modules/webauthn/AuthenticatorCoordinator.cpp: (WebCore::AuthenticatorCoordinator::create const): (WebCore::AuthenticatorCoordinator::discoverFromExternalSource const): (WebCore::AuthenticatorCoordinatorInternal::initTimeoutTimer): Deleted. (WebCore::AuthenticatorCoordinatorInternal::didTimeoutTimerFire): Deleted. * Modules/webauthn/PublicKeyCredentialCreationOptions.h: (WebCore::PublicKeyCredentialCreationOptions::encode const): (WebCore::PublicKeyCredentialCreationOptions::decode): * Modules/webauthn/PublicKeyCredentialRequestOptions.h: (WebCore::PublicKeyCredentialRequestOptions::encode const): (WebCore::PublicKeyCredentialRequestOptions::decode): Source/WebKit: Besides adding a time out timer in the AuthenticatorManager, this patch also adds a new option in MockWebAuthenticationConfiguration to turn on silent failure which is the default policy of treating authenticators' error as suggested by spec. * UIProcess/API/C/WKWebsiteDataStoreRef.cpp: (WKWebsiteDataStoreSetWebAuthenticationMockConfiguration): * UIProcess/WebAuthentication/AuthenticatorManager.cpp: (WebKit::AuthenticatorManagerInternal::collectTransports): (WebKit::AuthenticatorManager::makeCredential): (WebKit::AuthenticatorManager::getAssertion): (WebKit::AuthenticatorManager::respondReceived): (WebKit::AuthenticatorManager::initTimeOutTimer): * UIProcess/WebAuthentication/AuthenticatorManager.h: (WebKit::AuthenticatorManager::requestTimeOutTimer): * UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp: (WebKit::MockAuthenticatorManager::respondReceivedInternal): * UIProcess/WebAuthentication/Mock/MockWebAuthenticationConfiguration.h: Tools: * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::setWebAuthenticationMockConfiguration): LayoutTests: This patch also fixes some flaky behaviours regarding to the dirty ASN.1 decoder. * http/wpt/webauthn/public-key-credential-create-failure-local-silent.https-expected.txt: Added. * http/wpt/webauthn/public-key-credential-create-failure-local-silent.https.html: Copied from LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local.https.html. * http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt: * http/wpt/webauthn/public-key-credential-create-failure-local.https.html: * http/wpt/webauthn/public-key-credential-create-failure.https-expected.txt: * http/wpt/webauthn/public-key-credential-create-failure.https.html: * http/wpt/webauthn/public-key-credential-get-failure-local-silent.https-expected.txt: Added. * http/wpt/webauthn/public-key-credential-get-failure-local-silent.https.html: Copied from LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-local.https.html. * http/wpt/webauthn/public-key-credential-get-failure-local.https-expected.txt: * http/wpt/webauthn/public-key-credential-get-failure-local.https.html: * http/wpt/webauthn/public-key-credential-get-failure.https-expected.txt: * http/wpt/webauthn/public-key-credential-get-failure.https.html: * http/wpt/webauthn/resources/util.js: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local.https.html trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure.https-expected.txt trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure.https.html trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-local.https-expected.txt trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-local.https.html trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-failure.https-expected.txt trunk/LayoutTests/http/wpt/webauthn/public-key-credential-get-failure.https.html trunk/LayoutTests/http/wpt/webauthn/resources/util.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.cpp trunk/Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.h trunk/Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.h trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h
[webkit-changes] [236841] trunk
Title: [236841] trunk Revision 236841 Author cdu...@apple.com Date 2018-10-04 12:31:15 -0700 (Thu, 04 Oct 2018) Log Message Regression(r236779): Crash when changing the input element type from inside an 'input' event listener https://bugs.webkit.org/show_bug.cgi?id=190252 Reviewed by Alex Christensen. Source/WebCore: Add a null check for element() after firing the 'input' event and before firing the 'change' event in case the input event listener changes the input type. Tests: fast/dom/HTMLInputElement/change-type-in-click-event-listener.html fast/dom/HTMLInputElement/change-type-in-input-event-listener.html * html/BaseCheckableInputType.cpp: (WebCore::BaseCheckableInputType::fireInputAndChangeEvents): LayoutTests: Add layout test coverage. * fast/dom/HTMLInputElement/change-type-in-click-event-listener-expected.txt: Added. * fast/dom/HTMLInputElement/change-type-in-click-event-listener.html: Added. * fast/dom/HTMLInputElement/change-type-in-input-event-listener-expected.txt: Added. * fast/dom/HTMLInputElement/change-type-in-input-event-listener.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/BaseCheckableInputType.cpp Added Paths trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener-expected.txt trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener.html trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-input-event-listener-expected.txt trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-input-event-listener.html Diff Modified: trunk/LayoutTests/ChangeLog (236840 => 236841) --- trunk/LayoutTests/ChangeLog 2018-10-04 19:27:10 UTC (rev 236840) +++ trunk/LayoutTests/ChangeLog 2018-10-04 19:31:15 UTC (rev 236841) @@ -1,3 +1,17 @@ +2018-10-04 Chris Dumez + +Regression(r236779): Crash when changing the input element type from inside an 'input' event listener +https://bugs.webkit.org/show_bug.cgi?id=190252 + +Reviewed by Alex Christensen. + +Add layout test coverage. + +* fast/dom/HTMLInputElement/change-type-in-click-event-listener-expected.txt: Added. +* fast/dom/HTMLInputElement/change-type-in-click-event-listener.html: Added. +* fast/dom/HTMLInputElement/change-type-in-input-event-listener-expected.txt: Added. +* fast/dom/HTMLInputElement/change-type-in-input-event-listener.html: Added. + 2018-10-04 YUHAN WU runtime flag and IDL for MediaRecorder Added: trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener-expected.txt (0 => 236841) --- trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener-expected.txt 2018-10-04 19:31:15 UTC (rev 236841) @@ -0,0 +1,10 @@ +Make sure we do not crash if the 'click' event listener changes the input type. + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Click event was fired +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener.html (0 => 236841) --- trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener.html (rev 0) +++ trunk/LayoutTests/fast/dom/HTMLInputElement/change-type-in-click-event-listener.html 2018-10-04 19:31:15 UTC (rev 236841) @@ -0,0 +1,28 @@ + + + + + +