[webkit-changes] [218381] trunk/Source

2017-06-15 Thread mark . lam
Title: [218381] trunk/Source








Revision 218381
Author mark@apple.com
Date 2017-06-15 21:38:35 -0700 (Thu, 15 Jun 2017)


Log Message
Add a JSRunLoopTimer registry in VM.
https://bugs.webkit.org/show_bug.cgi?id=173429


Reviewed by Filip Pizlo.

Source/_javascript_Core:

This way, we can be sure we've got every JSRunLoopTimer instance covered if we
need to change their run loop (e.g. when setting to the WebThread's run loop).

* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::setRunLoop): Deleted.
* heap/Heap.h:
(JSC::Heap::runLoop): Deleted.
* runtime/JSRunLoopTimer.cpp:
(JSC::JSRunLoopTimer::JSRunLoopTimer):
(JSC::JSRunLoopTimer::setRunLoop):
(JSC::JSRunLoopTimer::~JSRunLoopTimer):
* runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::registerRunLoopTimer):
(JSC::VM::unregisterRunLoopTimer):
(JSC::VM::setRunLoop):
* runtime/VM.h:
(JSC::VM::runLoop):

Source/WebCore:

No new tests needed because:
1. it's already covered: it was also originally discovered by our API tests while
   running on the iOS simulator. The test was intermittently failing on a debug
   build.
2. the issue is racy (it depends on a JSRunLoopTimer firing at the right time).
   Hence, it's non trivial to write a better test than the one we already have.

* bindings/js/CommonVM.cpp:
(WebCore::commonVMSlow):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/heap/Heap.cpp
trunk/Source/_javascript_Core/heap/Heap.h
trunk/Source/_javascript_Core/runtime/JSRunLoopTimer.cpp
trunk/Source/_javascript_Core/runtime/VM.cpp
trunk/Source/_javascript_Core/runtime/VM.h
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/bindings/js/CommonVM.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (218380 => 218381)

--- trunk/Source/_javascript_Core/ChangeLog	2017-06-16 04:06:04 UTC (rev 218380)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-06-16 04:38:35 UTC (rev 218381)
@@ -1,3 +1,31 @@
+2017-06-15  Mark Lam  
+
+Add a JSRunLoopTimer registry in VM.
+https://bugs.webkit.org/show_bug.cgi?id=173429
+
+
+Reviewed by Filip Pizlo.
+
+This way, we can be sure we've got every JSRunLoopTimer instance covered if we
+need to change their run loop (e.g. when setting to the WebThread's run loop).
+
+* heap/Heap.cpp:
+(JSC::Heap::Heap):
+(JSC::Heap::setRunLoop): Deleted.
+* heap/Heap.h:
+(JSC::Heap::runLoop): Deleted.
+* runtime/JSRunLoopTimer.cpp:
+(JSC::JSRunLoopTimer::JSRunLoopTimer):
+(JSC::JSRunLoopTimer::setRunLoop):
+(JSC::JSRunLoopTimer::~JSRunLoopTimer):
+* runtime/VM.cpp:
+(JSC::VM::VM):
+(JSC::VM::registerRunLoopTimer):
+(JSC::VM::unregisterRunLoopTimer):
+(JSC::VM::setRunLoop):
+* runtime/VM.h:
+(JSC::VM::runLoop):
+
 2017-06-15  Joseph Pecoraro  
 
 [Cocoa] Modernize some internal initializers to use instancetype instead of id


Modified: trunk/Source/_javascript_Core/heap/Heap.cpp (218380 => 218381)

--- trunk/Source/_javascript_Core/heap/Heap.cpp	2017-06-16 04:06:04 UTC (rev 218380)
+++ trunk/Source/_javascript_Core/heap/Heap.cpp	2017-06-16 04:38:35 UTC (rev 218381)
@@ -289,9 +289,6 @@
 // schedule the timer if we've never done a collection.
 , m_lastFullGCLength(0.01)
 , m_lastEdenGCLength(0.01)
-#if USE(CF)
-, m_runLoop(CFRunLoopGetCurrent())
-#endif // USE(CF)
 , m_fullActivityCallback(GCActivityCallback::createFullTimer(this))
 , m_edenActivityCallback(GCActivityCallback::createEdenTimer(this))
 , m_sweeper(adoptRef(new IncrementalSweeper(this)))
@@ -2589,16 +2586,6 @@
 #endif
 }
 
-#if USE(CF)
-void Heap::setRunLoop(CFRunLoopRef runLoop)
-{
-m_runLoop = runLoop;
-m_fullActivityCallback->setRunLoop(runLoop);
-m_edenActivityCallback->setRunLoop(runLoop);
-m_sweeper->setRunLoop(runLoop);
-}
-#endif // USE(CF)
-
 void Heap::addCoreConstraints()
 {
 m_constraintSet->add(


Modified: trunk/Source/_javascript_Core/heap/Heap.h (218380 => 218381)

--- trunk/Source/_javascript_Core/heap/Heap.h	2017-06-16 04:06:04 UTC (rev 218380)
+++ trunk/Source/_javascript_Core/heap/Heap.h	2017-06-16 04:38:35 UTC (rev 218381)
@@ -369,11 +369,6 @@
 
 size_t numOpaqueRoots() const { return m_opaqueRoots.size(); }
 
-#if USE(CF)
-CFRunLoopRef runLoop() const { return m_runLoop.get(); }
-JS_EXPORT_PRIVATE void setRunLoop(CFRunLoopRef);
-#endif // USE(CF)
-
 HeapVerifier* verifier() const { return m_verifier.get(); }
 
 void addHeapFinalizerCallback(const HeapFinalizerCallback&);
@@ -623,9 +618,6 @@
 Vector m_logicallyEmptyWeakBlocks;
 size_t m_indexOfNextLogicallyEmptyWeakBlockToSweep { WTF::notFound };
 
-#if USE(CF)
-RetainPtr m_runLoop;
-#endif // USE(CF)
 RefPtr m_fullActivityCallback;
 RefPtr m_edenActivityCallback;
 RefPtr m_sweeper;


Modified: 

[webkit-changes] [218380] trunk/Source/WebKit/mac

2017-06-15 Thread wenson_hsieh
Title: [218380] trunk/Source/WebKit/mac








Revision 218380
Author wenson_hs...@apple.com
Date 2017-06-15 21:06:04 -0700 (Thu, 15 Jun 2017)


Log Message
[iOS DnD] [WK1] Dropping links onto UIWebViews should not trigger navigation by default
https://bugs.webkit.org/show_bug.cgi?id=173454


Reviewed by Tim Horton.

Adds -webView:dragDestinationActionMaskForSession: as SPI to WebUIDelegate.
If unimplemented, the default UI delegate allows all actions except for URL loading.

* DefaultDelegates/WebDefaultUIDelegate.mm:
(-[WebDefaultUIDelegate webView:dragDestinationActionMaskForSession:]):
* WebView/WebUIDelegatePrivate.h:
* WebView/WebView.mm:
(-[WebView dragDestinationActionMaskForSession:]):

Modified Paths

trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.mm
trunk/Source/WebKit/mac/WebView/WebUIDelegatePrivate.h
trunk/Source/WebKit/mac/WebView/WebView.mm




Diff

Modified: trunk/Source/WebKit/mac/ChangeLog (218379 => 218380)

--- trunk/Source/WebKit/mac/ChangeLog	2017-06-16 03:55:43 UTC (rev 218379)
+++ trunk/Source/WebKit/mac/ChangeLog	2017-06-16 04:06:04 UTC (rev 218380)
@@ -1,5 +1,22 @@
 2017-06-15  Wenson Hsieh  
 
+[iOS DnD] [WK1] Dropping links onto UIWebViews should not trigger navigation by default
+https://bugs.webkit.org/show_bug.cgi?id=173454
+
+
+Reviewed by Tim Horton.
+
+Adds -webView:dragDestinationActionMaskForSession: as SPI to WebUIDelegate.
+If unimplemented, the default UI delegate allows all actions except for URL loading.
+
+* DefaultDelegates/WebDefaultUIDelegate.mm:
+(-[WebDefaultUIDelegate webView:dragDestinationActionMaskForSession:]):
+* WebView/WebUIDelegatePrivate.h:
+* WebView/WebView.mm:
+(-[WebView dragDestinationActionMaskForSession:]):
+
+2017-06-15  Wenson Hsieh  
+
 Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
 https://bugs.webkit.org/show_bug.cgi?id=173338
 


Modified: trunk/Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.mm (218379 => 218380)

--- trunk/Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.mm	2017-06-16 03:55:43 UTC (rev 218379)
+++ trunk/Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.mm	2017-06-16 04:06:04 UTC (rev 218380)
@@ -270,6 +270,13 @@
 - (void)webViewSupportedOrientationsUpdated:(WebView *)sender
 {
 }
+
+#if ENABLE(DRAG_SUPPORT)
+- (WebDragDestinationAction)webView:(WebView *)sender dragDestinationActionMaskForSession:(id )session
+{
+return WebDragDestinationActionAny & ~WebDragDestinationActionLoad;
+}
 #endif
+#endif
 
 @end


Modified: trunk/Source/WebKit/mac/WebView/WebUIDelegatePrivate.h (218379 => 218380)

--- trunk/Source/WebKit/mac/WebView/WebUIDelegatePrivate.h	2017-06-16 03:55:43 UTC (rev 218379)
+++ trunk/Source/WebKit/mac/WebView/WebUIDelegatePrivate.h	2017-06-16 04:06:04 UTC (rev 218380)
@@ -45,6 +45,10 @@
 #endif
 #endif
 
+#if TARGET_OS_IPHONE && __IPHONE_OS_VERSION_MIN_REQUIRED >= 11
+@protocol UIDropSession;
+#endif
+
 #define WEBMENUITEMTAG_WEBKIT_3_0_SPI_START 2000
 enum { 
 // FIXME: These should move to WebUIDelegate.h as part of the WebMenuItemTag enum there, when we're not in API freeze
@@ -290,7 +294,17 @@
 - (void)webViewSupportedOrientationsUpdated:(WebView *)sender;
 
 - (BOOL)webViewCanCheckGeolocationAuthorizationStatus:(WebView *)sender;
+
+#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 11
+/*!
+ @method webView:dragDestinationActionMaskForSession:
+ @param sender The WebView sending the delegate method
+ @param session The drop session which this destination action mask will affect
+ @abstract May be implemented to adjust which destination actions are allowed upon dropping the given session.
+ */
+- (WebDragDestinationAction)webView:(WebView *)sender dragDestinationActionMaskForSession:(id )session;
 #endif
+#endif
 
 - (NSData *)webCryptoMasterKeyForWebView:(WebView *)sender;
 


Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (218379 => 218380)

--- trunk/Source/WebKit/mac/WebView/WebView.mm	2017-06-16 03:55:43 UTC (rev 218379)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm	2017-06-16 04:06:04 UTC (rev 218380)
@@ -1898,6 +1898,11 @@
 return [previewImage retain];
 }
 
+- (WebDragDestinationAction)dragDestinationActionMaskForSession:(id )session
+{
+return [self._UIDelegateForwarder webView:self dragDestinationActionMaskForSession:session];
+}
+
 #if USE(APPLE_INTERNAL_SDK) && __has_include()
 #include 
 #endif






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218379] trunk/Source/JavaScriptCore

2017-06-15 Thread commit-queue
Title: [218379] trunk/Source/_javascript_Core








Revision 218379
Author commit-qu...@webkit.org
Date 2017-06-15 20:55:43 -0700 (Thu, 15 Jun 2017)


Log Message
[Cocoa] Modernize some internal initializers to use instancetype instead of id
https://bugs.webkit.org/show_bug.cgi?id=173112

Patch by Joseph Pecoraro  on 2017-06-15
Reviewed by Wenson Hsieh.

* API/JSContextInternal.h:
* API/JSWrapperMap.h:
* API/JSWrapperMap.mm:
(-[JSObjCClassInfo initForClass:]):
(-[JSWrapperMap initWithGlobalContextRef:]):

Modified Paths

trunk/Source/_javascript_Core/API/JSContextInternal.h
trunk/Source/_javascript_Core/API/JSWrapperMap.h
trunk/Source/_javascript_Core/API/JSWrapperMap.mm
trunk/Source/_javascript_Core/ChangeLog




Diff

Modified: trunk/Source/_javascript_Core/API/JSContextInternal.h (218378 => 218379)

--- trunk/Source/_javascript_Core/API/JSContextInternal.h	2017-06-16 03:26:55 UTC (rev 218378)
+++ trunk/Source/_javascript_Core/API/JSContextInternal.h	2017-06-16 03:55:43 UTC (rev 218379)
@@ -59,7 +59,7 @@
 
 @interface JSContext(Internal)
 
-- (id)initWithGlobalContextRef:(JSGlobalContextRef)context;
+- (instancetype)initWithGlobalContextRef:(JSGlobalContextRef)context;
 
 - (void)notifyException:(JSValueRef)exception;
 - (JSValue *)valueFromNotifyException:(JSValueRef)exception;


Modified: trunk/Source/_javascript_Core/API/JSWrapperMap.h (218378 => 218379)

--- trunk/Source/_javascript_Core/API/JSWrapperMap.h	2017-06-16 03:26:55 UTC (rev 218378)
+++ trunk/Source/_javascript_Core/API/JSWrapperMap.h	2017-06-16 03:55:43 UTC (rev 218379)
@@ -31,7 +31,7 @@
 
 @interface JSWrapperMap : NSObject
 
-- (id)initWithGlobalContextRef:(JSGlobalContextRef)context;
+- (instancetype)initWithGlobalContextRef:(JSGlobalContextRef)context;
 
 - (JSValue *)jsWrapperForObject:(id)object inContext:(JSContext *)context;
 


Modified: trunk/Source/_javascript_Core/API/JSWrapperMap.mm (218378 => 218379)

--- trunk/Source/_javascript_Core/API/JSWrapperMap.mm	2017-06-16 03:26:55 UTC (rev 218378)
+++ trunk/Source/_javascript_Core/API/JSWrapperMap.mm	2017-06-16 03:55:43 UTC (rev 218379)
@@ -371,7 +371,7 @@
 JSC::Weak m_constructor;
 }
 
-- (id)initForClass:(Class)cls;
+- (instancetype)initForClass:(Class)cls;
 - (JSC::JSObject *)wrapperForObject:(id)object inContext:(JSContext *)context;
 - (JSC::JSObject *)constructorInContext:(JSContext *)context;
 - (JSC::JSObject *)prototypeInContext:(JSContext *)context;
@@ -380,7 +380,7 @@
 
 @implementation JSObjCClassInfo
 
-- (id)initForClass:(Class)cls
+- (instancetype)initForClass:(Class)cls
 {
 self = [super init];
 if (!self)
@@ -552,7 +552,7 @@
 NSMapTable *m_cachedObjCWrappers;
 }
 
-- (id)initWithGlobalContextRef:(JSGlobalContextRef)context
+- (instancetype)initWithGlobalContextRef:(JSGlobalContextRef)context
 {
 self = [super init];
 if (!self)


Modified: trunk/Source/_javascript_Core/ChangeLog (218378 => 218379)

--- trunk/Source/_javascript_Core/ChangeLog	2017-06-16 03:26:55 UTC (rev 218378)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-06-16 03:55:43 UTC (rev 218379)
@@ -1,3 +1,16 @@
+2017-06-15  Joseph Pecoraro  
+
+[Cocoa] Modernize some internal initializers to use instancetype instead of id
+https://bugs.webkit.org/show_bug.cgi?id=173112
+
+Reviewed by Wenson Hsieh.
+
+* API/JSContextInternal.h:
+* API/JSWrapperMap.h:
+* API/JSWrapperMap.mm:
+(-[JSObjCClassInfo initForClass:]):
+(-[JSWrapperMap initWithGlobalContextRef:]):
+
 2017-06-15  Matt Baker  
 
 Web Inspector: Instrument 2D/WebGL canvas contexts in the backend






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218378] trunk/Source/WebKit2

2017-06-15 Thread timothy_horton
Title: [218378] trunk/Source/WebKit2








Revision 218378
Author timothy_hor...@apple.com
Date 2017-06-15 20:26:55 -0700 (Thu, 15 Jun 2017)


Log Message
Null deref under ViewGestureController::endSwipeGesture (navigationGestureDidEnd)
https://bugs.webkit.org/show_bug.cgi?id=173441


Reviewed by Simon Fraser.

This is a speculative fix for a crash that we don't have repro steps for.

In a few places, ViewGestureController looks itself up by pageID (in cases
where we're in an asynchronous callback), and then calls some
function on it (endSwipeGesture, or something that will get there).
However, if in the meantime an API client has turned the swipe gesture
on and off, the page's ViewGestureController will be a different one
than the one that originally started this process, with fresh state,
and nullptrs in all sorts of places, ripe for dereferencing.

To fix this, instead of just looking ViewGestureController up by 
pageID, also keep track of the current gestureID, process-wide (previously
the gestureID was per-ViewGestureController), and only return the
ViewGestureController if it's currently processing the same gesture
that started the asynchronous task.

* UIProcess/Cocoa/ViewGestureController.cpp:
(WebKit::ViewGestureController::controllerForGesture):
(WebKit::ViewGestureController::takeNextGestureID):
(WebKit::ViewGestureController::willBeginGesture):
(WebKit::ViewGestureController::didEndGesture):
(WebKit::ViewGestureController::gestureControllerForPage): Deleted.
* UIProcess/Cocoa/ViewGestureController.h:
Add helpers that set and reset activeGestureType and currentGestureID together.
Make gesture IDs process global, to avoid two ViewGestureControllers using the same IDs.

* UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::endSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):
* UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::didCollectGeometryForMagnificationGesture):
(WebKit::ViewGestureController::handleMagnificationGestureEvent):
(WebKit::ViewGestureController::endMagnificationGesture):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::forceRepaintIfNeeded):
(WebKit::ViewGestureController::removeSwipeSnapshot):
Adopt willBeginGesture/didEndGesture and controllerForGesture.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/Cocoa/ViewGestureController.cpp
trunk/Source/WebKit2/UIProcess/Cocoa/ViewGestureController.h
trunk/Source/WebKit2/UIProcess/ios/ViewGestureControllerIOS.mm
trunk/Source/WebKit2/UIProcess/mac/ViewGestureControllerMac.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218377 => 218378)

--- trunk/Source/WebKit2/ChangeLog	2017-06-16 03:08:33 UTC (rev 218377)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-16 03:26:55 UTC (rev 218378)
@@ -1,3 +1,50 @@
+2017-06-15  Tim Horton  
+
+Null deref under ViewGestureController::endSwipeGesture (navigationGestureDidEnd)
+https://bugs.webkit.org/show_bug.cgi?id=173441
+
+
+Reviewed by Simon Fraser.
+
+This is a speculative fix for a crash that we don't have repro steps for.
+
+In a few places, ViewGestureController looks itself up by pageID (in cases
+where we're in an asynchronous callback), and then calls some
+function on it (endSwipeGesture, or something that will get there).
+However, if in the meantime an API client has turned the swipe gesture
+on and off, the page's ViewGestureController will be a different one
+than the one that originally started this process, with fresh state,
+and nullptrs in all sorts of places, ripe for dereferencing.
+
+To fix this, instead of just looking ViewGestureController up by 
+pageID, also keep track of the current gestureID, process-wide (previously
+the gestureID was per-ViewGestureController), and only return the
+ViewGestureController if it's currently processing the same gesture
+that started the asynchronous task.
+
+* UIProcess/Cocoa/ViewGestureController.cpp:
+(WebKit::ViewGestureController::controllerForGesture):
+(WebKit::ViewGestureController::takeNextGestureID):
+(WebKit::ViewGestureController::willBeginGesture):
+(WebKit::ViewGestureController::didEndGesture):
+(WebKit::ViewGestureController::gestureControllerForPage): Deleted.
+* UIProcess/Cocoa/ViewGestureController.h:
+Add helpers that set and reset activeGestureType and currentGestureID together.
+Make gesture IDs process global, to avoid two ViewGestureControllers using the same IDs.
+
+* UIProcess/ios/ViewGestureControllerIOS.mm:
+(WebKit::ViewGestureController::beginSwipeGesture):
+(WebKit::ViewGestureController::endSwipeGesture):
+(WebKit::ViewGestureController::removeSwipeSnapshot):
+

[webkit-changes] [218377] trunk

2017-06-15 Thread commit-queue
Title: [218377] trunk








Revision 218377
Author commit-qu...@webkit.org
Date 2017-06-15 20:08:33 -0700 (Thu, 15 Jun 2017)


Log Message
REGRESSION: AirPlay button is incorrectly highlighted in inline and fullscreen
https://bugs.webkit.org/show_bug.cgi?id=173446

Patch by Antoine Quint  on 2017-06-15
Reviewed by Dean Jackson.

Source/WebCore:

A button's color should be applied to its  element, not the containing
 element.

* Modules/modern-media-controls/controls/airplay-button.css:
(button.airplay.on > picture):
(button.airplay.on): Deleted.

LayoutTests:

Update the test to explicitly check the color on the . We also make the test check
the color with a value depending on the platform, so we can use a single expectation file.

* media/modern-media-controls/airplay-button/airplay-button-on-expected.txt:
* media/modern-media-controls/airplay-button/airplay-button-on.html:
* platform/ios/media/modern-media-controls/airplay-button/airplay-button-on-expected.txt: Removed.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on-expected.txt
trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/modern-media-controls/controls/airplay-button.css


Removed Paths

trunk/LayoutTests/platform/ios/media/modern-media-controls/




Diff

Modified: trunk/LayoutTests/ChangeLog (218376 => 218377)

--- trunk/LayoutTests/ChangeLog	2017-06-16 02:55:37 UTC (rev 218376)
+++ trunk/LayoutTests/ChangeLog	2017-06-16 03:08:33 UTC (rev 218377)
@@ -1,3 +1,17 @@
+2017-06-15  Antoine Quint  
+
+REGRESSION: AirPlay button is incorrectly highlighted in inline and fullscreen
+https://bugs.webkit.org/show_bug.cgi?id=173446
+
+Reviewed by Dean Jackson.
+
+Update the test to explicitly check the color on the . We also make the test check
+the color with a value depending on the platform, so we can use a single expectation file.
+
+* media/modern-media-controls/airplay-button/airplay-button-on-expected.txt:
+* media/modern-media-controls/airplay-button/airplay-button-on.html:
+* platform/ios/media/modern-media-controls/airplay-button/airplay-button-on-expected.txt: Removed.
+
 2017-06-15  Matt Baker  
 
 Web Inspector: Instrument 2D/WebGL canvas contexts in the backend


Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on-expected.txt (218376 => 218377)

--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on-expected.txt	2017-06-16 02:55:37 UTC (rev 218376)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on-expected.txt	2017-06-16 03:08:33 UTC (rev 218377)
@@ -4,7 +4,8 @@
 
 
 PASS airplayButton.element.classList.contains("on") became true
-window.getComputedStyle(airplayButton.element).backgroundColor = rgb(27, 173, 248)
+PASS window.getComputedStyle(airplayButton.element).backgroundColor became "rgba(0, 0, 0, 0)"
+PASS window.getComputedStyle(airplayButton.image.element).backgroundColor became airplayColor
 PASS successfullyParsed is true
 
 TEST COMPLETE


Modified: trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html (218376 => 218377)

--- trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html	2017-06-16 02:55:37 UTC (rev 218376)
+++ trunk/LayoutTests/media/modern-media-controls/airplay-button/airplay-button-on.html	2017-06-16 03:08:33 UTC (rev 218377)
@@ -13,12 +13,21 @@
 
 document.body.appendChild(airplayButton.element);
 
+const airplayColor = window.navigator.platform === "MacIntel" ? "rgb(27, 173, 248)" : "rgb(0, 122, 255)";
+
 shouldBecomeEqual('airplayButton.element.classList.contains("on")', "true", () => {
-debug(`window.getComputedStyle(airplayButton.element).backgroundColor = ${window.getComputedStyle(airplayButton.element).backgroundColor}`);
+shouldBecomeEqualToString("window.getComputedStyle(airplayButton.element).backgroundColor", "rgba(0, 0, 0, 0)", () => {
+shouldBecomeEqual("window.getComputedStyle(airplayButton.image.element).backgroundColor", "airplayColor", () => {
+airplayButton.element.remove();
+finishMediaControlsTest();
+});
+});
+});
 
-airplayButton.element.remove();
+setTimeout(() => {
+debug(window.getComputedStyle(airplayButton.image.element).backgroundColor);
 finishMediaControlsTest();
-});
+}, 4000);
 
 
 

[webkit-changes] [218376] trunk

2017-06-15 Thread mattbaker
Title: [218376] trunk








Revision 218376
Author mattba...@apple.com
Date 2017-06-15 19:55:37 -0700 (Thu, 15 Jun 2017)


Log Message
Web Inspector: Instrument 2D/WebGL canvas contexts in the backend
https://bugs.webkit.org/show_bug.cgi?id=172623


Reviewed by Devin Rousso.

Source/_javascript_Core:

This patch adds a basic Canvas protocol. It includes Canvas and related
types and events for monitoring the lifetime of canvases in the page.

* CMakeLists.txt:
* DerivedSources.make:
* inspector/protocol/Canvas.json: Added.

* inspector/scripts/codegen/generator.py:
(Generator.stylized_name_for_enum_value):
Add special handling for Canvas.ContextType protocol enumeration,
so that "canvas-2d" and "webgl" map to `Canvas2D` and `WebGL`.

Source/WebCore:

Test: inspector/canvas/create-canvas-contexts.html

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:

* dom/Document.cpp:
(WebCore::Document::getCSSCanvasElement):
Instrument creation of CSS canvases. This merely registers the canvas
element with InspectorCanvasAgent and stores the name (identifier passed
to getCSSCanvasContext) for later use. It isn't until the context is
actually created that the frontend receives a notification.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getContext2d):
(WebCore::HTMLCanvasElement::getContextWebGL):
Instrument creation of 2D and WebGL canvas contexts.

* inspector/InspectorAllInOne.cpp:

* inspector/InspectorCanvasAgent.cpp: Added.
New backend agent for canvas inspection. Canvas creation and destruction
are continuously monitored by the agent, regardless of the presence of
a frontend. This is necessary since there is no way to retrieve the
rendering contexts for with a given frame once they've been created.

(WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
(WebCore::InspectorCanvasAgent::didCreateFrontendAndBackend):
(WebCore::InspectorCanvasAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorCanvasAgent::discardAgent):
Unregister canvas observers to prevent dangling agent pointer.
(WebCore::InspectorCanvasAgent::enable):
Dispatch events for existing canvases, now that the frontend exists.
(WebCore::InspectorCanvasAgent::disable):
(WebCore::InspectorCanvasAgent::frameNavigated):
(WebCore::InspectorCanvasAgent::didCreateCSSCanvas):
Register the name/identifier associated with the CSS canvas, so that it
can be retrieved and associated with the rendering context later.

(WebCore::InspectorCanvasAgent::didCreateCanvasRenderingContext):
(WebCore::InspectorCanvasAgent::canvasDestroyed):
Removes the canvas from the agent, and queues it for notifying the
frontend during the next event loop.

(WebCore::InspectorCanvasAgent::canvasDestroyedTimerFired):
(WebCore::InspectorCanvasAgent::clearCanvasData):
(WebCore::InspectorCanvasAgent::getCanvasEntry):
(WebCore::InspectorCanvasAgent::buildObjectForCanvas):
* inspector/InspectorCanvasAgent.h: Added.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):

* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::didCreateCSSCanvasImpl):
(WebCore::InspectorInstrumentation::didCreateCanvasRenderingContextImpl):

* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::didCreateCSSCanvas):
(WebCore::InspectorInstrumentation::didCreateCanvasRenderingContext):
These instrumentation points should not fast return when no frontend
is attached.

* inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::reset):

* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::inspectorCanvasAgent):
(WebCore::InstrumentingAgents::setInspectorCanvasAgent):
Plumbing for the new agent.

Source/WebInspectorUI:

* UserInterface/Base/Main.js:
(WebInspector.loaded):

* UserInterface/Controllers/CanvasManager.js: Added.
New frontend manager for the Canvas domain.
(WebInspector.CanvasManager):
(WebInspector.CanvasManager.prototype.get canvases):
(WebInspector.CanvasManager.prototype.canvasAdded):
(WebInspector.CanvasManager.prototype.canvasRemoved):
(WebInspector.CanvasManager.prototype._mainResourceDidChange):

* UserInterface/Main.html:
New files.

* UserInterface/Models/Canvas.js: Added.
(WebInspector.Canvas):
(WebInspector.Canvas.fromPayload):
(WebInspector.Canvas.displayNameForContextType):
Get displayable text "2D" or "WebGL" based on context type.
(WebInspector.Canvas.resetUniqueDisplayNameNumbers):
Called by CanvasManager when canvases are cleared.
(WebInspector.Canvas.prototype.get identifier):
(WebInspector.Canvas.prototype.get contextType):
(WebInspector.Canvas.prototype.get frame):
(WebInspector.Canvas.prototype.get cssCanvasName):
For CSS canvases, the identifier passed to getCSSCanvasContext.
(WebInspector.Canvas.prototype.get displayName):
Get displayable canvas name. The name depends on how the canvas was
created, and the information available:
  - getCSSCanvasContext: "CSS Canvas "
  - getContext: "Canvas #"
  - 

[webkit-changes] [218375] trunk

2017-06-15 Thread jer . noble
Title: [218375] trunk








Revision 218375
Author jer.no...@apple.com
Date 2017-06-15 19:49:38 -0700 (Thu, 15 Jun 2017)


Log Message
[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
https://bugs.webkit.org/show_bug.cgi?id=173398


Reviewed by Eric Carlson.

Source/WebCore:

API Test: Tests/WebKit2/MediaStreamTrackDetached.mm

Move the definition of a MediaStream as a MediaProducer from the stream itself to its constituent
MediaStreamTracks. This ensures that, even if a MediaStreamTrack is removed from its stream, the
document (and thus the clients) are notified that media capture is still occurring.

Though MediaStream is no longer a MediaProducer, it still uses the MediaProducer's state concept
to determine when to fire events. However it's mediaState() implementation will be moved into
MediaStreamTrack, and will instead simply bitwise-or together each of it's track's mediaState().

The MediaStream notifies the document that its state has changed asynchronously, so do the same
for MediaStreamTrack (which reduces the number of calls to the client when changes all occur
during a single run loop).

Because the MediaStreamTrackPrivate may be started externally (not by the MediaStreamTrack directly),
add a new client method that notifies observers when the track has been started, and the
MediaStreamTrack will use this notification to update the document with it's new mediaState().

* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::~MediaStream):
(WebCore::MediaStream::mediaState):
(WebCore::MediaStream::statusDidChange):
(WebCore::MediaStream::characteristicsChanged):
(WebCore::MediaStream::pageMutedStateDidChange): Deleted.
* Modules/mediastream/MediaStream.h:
* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack):
(WebCore::MediaStreamTrack::~MediaStreamTrack):
(WebCore::MediaStreamTrack::pageMutedStateDidChange):
(WebCore::MediaStreamTrack::mediaState):
(WebCore::MediaStreamTrack::trackStarted):
(WebCore::MediaStreamTrack::configureTrackRendering):
(WebCore::MediaStreamTrack::stop):
(WebCore::MediaStreamTrack::document):
* Modules/mediastream/MediaStreamTrack.h:
(WebCore::MediaStreamTrack::source):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
* platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::trackStarted):
* platform/mediastream/MediaStreamPrivate.h:
* platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::sourceStarted):
* platform/mediastream/MediaStreamTrackPrivate.h:
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::start):
* platform/mediastream/RealtimeMediaSource.h:

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
(-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStream.h
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.h
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.cpp
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj


Added Paths

trunk/Tools/TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm
trunk/Tools/TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html




Diff

Modified: trunk/Source/WebCore/ChangeLog (218374 => 218375)

--- trunk/Source/WebCore/ChangeLog	2017-06-16 01:43:27 UTC (rev 218374)
+++ trunk/Source/WebCore/ChangeLog	2017-06-16 02:49:38 UTC (rev 218375)
@@ -1,3 +1,59 @@
+2017-06-15  Jer Noble  
+
+[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
+https://bugs.webkit.org/show_bug.cgi?id=173398
+
+
+Reviewed by Eric Carlson.
+
+API Test: Tests/WebKit2/MediaStreamTrackDetached.mm
+
+Move the definition of a MediaStream as a MediaProducer from the stream itself to its constituent

[webkit-changes] [218374] trunk/Source/WebKit2

2017-06-15 Thread simon . fraser
Title: [218374] trunk/Source/WebKit2








Revision 218374
Author simon.fra...@apple.com
Date 2017-06-15 18:43:27 -0700 (Thu, 15 Jun 2017)


Log Message
[iOS WK2] YouTube videos flash at the wrong place at the end of rotation
https://bugs.webkit.org/show_bug.cgi?id=173445
rdar://problem/31584852

Reviewed by Tim Horton.

In MobileSafari where WKWebView rotation uses _dynamicViewportUpdateModes, we could do a
visibleContentRect update at the end of rotation which computed a bad layoutViewportRect,
because it used a m_baseLayoutViewportSize from the old orientation.

We have actually sent a new m_baseLayoutViewportSize to the UI process by this point in
a layer tree commit, but _didCommitLayerTree: ignored it because we had a _dynamicViewportUpdateMode.

Fix is to always update the layout viewport data from the web process, since during dynamic
viewport updates, we still need these data to compute rectangles sent back to the web process via
visible content rect updates.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:]):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::computeCustomFixedPositionRect):
(WebKit::WebPageProxy::updateLayoutViewportParameters): Cleanup.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218373 => 218374)

--- trunk/Source/WebKit2/ChangeLog	2017-06-16 01:39:31 UTC (rev 218373)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-16 01:43:27 UTC (rev 218374)
@@ -1,3 +1,28 @@
+2017-06-15  Simon Fraser  
+
+[iOS WK2] YouTube videos flash at the wrong place at the end of rotation
+https://bugs.webkit.org/show_bug.cgi?id=173445
+rdar://problem/31584852
+
+Reviewed by Tim Horton.
+
+In MobileSafari where WKWebView rotation uses _dynamicViewportUpdateModes, we could do a
+visibleContentRect update at the end of rotation which computed a bad layoutViewportRect,
+because it used a m_baseLayoutViewportSize from the old orientation.
+
+We have actually sent a new m_baseLayoutViewportSize to the UI process by this point in 
+a layer tree commit, but _didCommitLayerTree: ignored it because we had a _dynamicViewportUpdateMode.
+
+Fix is to always update the layout viewport data from the web process, since during dynamic
+viewport updates, we still need these data to compute rectangles sent back to the web process via
+visible content rect updates.
+
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _didCommitLayerTree:]):
+* UIProcess/ios/WebPageProxyIOS.mm:
+(WebKit::WebPageProxy::computeCustomFixedPositionRect):
+(WebKit::WebPageProxy::updateLayoutViewportParameters): Cleanup.
+
 2017-06-15  Wenson Hsieh  
 
 Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading


Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (218373 => 218374)

--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2017-06-16 01:39:31 UTC (rev 218373)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2017-06-16 01:43:27 UTC (rev 218374)
@@ -1478,6 +1478,8 @@
 
 LOG_WITH_STREAM(VisibleRects, stream << "-[WKWebView _didCommitLayerTree:] transactionID " <<  layerTreeTransaction.transactionID() << " _dynamicViewportUpdateMode " << (int)_dynamicViewportUpdateMode);
 
+BOOL needUpdateVisbleContentRects = _page->updateLayoutViewportParameters(layerTreeTransaction);
+
 if (_dynamicViewportUpdateMode != DynamicViewportUpdateMode::NotResizing) {
 if (_resizeAnimationTransformTransactionID && layerTreeTransaction.transactionID() >= _resizeAnimationTransformTransactionID.value()) {
 _resizeAnimationTransformTransactionID = std::nullopt;
@@ -1514,8 +1516,6 @@
 _stableStatePresentationUpdateCallbacks = nil;
 }
 
-BOOL needUpdateVisbleContentRects = _page->updateLayoutViewportParameters(layerTreeTransaction);
-
 if (![_contentView _mayDisableDoubleTapGesturesDuringSingleTap])
 [_contentView _setDoubleTapGesturesEnabled:self._allowsDoubleTapGestures];
 


Modified: trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm (218373 => 218374)

--- trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm	2017-06-16 01:39:31 UTC (rev 218373)
+++ trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm	2017-06-16 01:43:27 UTC (rev 218374)
@@ -259,7 +259,7 @@
 
 FloatSize constainedSize = isBelowMinimumScale ? constrainedUnobscuredRect.size() : unobscuredContentRect.size();
 FloatRect unobscuredContentRectForViewport = isBelowMinimumScale ? constrainedUnobscuredRect : unobscuredContentRectRespectingInputViewBounds;
-
+
 FloatRect layoutViewportRect = 

[webkit-changes] [218373] trunk/Source/WebCore

2017-06-15 Thread simon . fraser
Title: [218373] trunk/Source/WebCore








Revision 218373
Author simon.fra...@apple.com
Date 2017-06-15 18:39:31 -0700 (Thu, 15 Jun 2017)


Log Message
Use WTFLogAlways for debug logging so that it shows up in device system logs
https://bugs.webkit.org/show_bug.cgi?id=173450

Reviewed by Tim Horton.

If you want to showRenderTree() on-device, the result doesn't show in system log so you can't see it
Switch to WTFLogAlways to fix this, for all the debug logging in WebCore.

Also WKError () -> WKError() in the old WAK code, to allow for easier searching pending cleanup.

* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::~AudioContext):
* Modules/webaudio/AudioNode.cpp:
(WebCore::AudioNode::~AudioNode):
(WebCore::AudioNode::ref):
(WebCore::AudioNode::finishDeref):
(WebCore::AudioNode::printNodeCounts):
* bridge/objc/objc_instance.mm:
(ObjcInstance::invokeObjcMethod):
* bridge/objc/objc_utility.mm:
(JSC::Bindings::convertObjcValueToValue):
* css/StyleProperties.cpp:
(WebCore::StyleProperties::showStyle):
* dom/DocumentMarkerController.cpp:
(DocumentMarkerController::showMarkers):
* dom/Node.cpp:
(WebCore::Node::showNode):
(WebCore::Node::showNodePathForThis):
(WebCore::traverseTreeAndMark):
* dom/Position.cpp:
(WebCore::Position::debugPosition):
(WebCore::Position::showAnchorTypeAndOffset):
* dom/Range.cpp:
(showTree):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::debugRenderer):
* editing/VisiblePosition.cpp:
(WebCore::VisiblePosition::debugPosition):
* editing/VisibleSelection.cpp:
(WebCore::VisibleSelection::debugPosition):
* history/HistoryItem.cpp:
(WebCore::HistoryItem::showTreeWithIndent):
* html/parser/HTMLFormattingElementList.cpp:
(WebCore::HTMLFormattingElementList::show):
* inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::dumpMap):
* page/scrolling/ScrollingStateTree.cpp:
(showScrollingStateTree):
* platform/audio/ios/AudioDestinationIOS.cpp:
(WebCore::AudioDestinationIOS::frameSizeChangedProc):
* platform/graphics/GraphicsLayer.cpp:
(showGraphicsLayerTree):
* platform/graphics/displaylists/DisplayList.cpp:
(WebCore::DisplayList::DisplayList::dump):
* platform/ios/wak/WAKView.mm:
(+[WAKView _wrapperForViewRef:]):
(-[WAKView displayRect:]):
(-[WAKView displayRectIgnoringOpacity:inContext:]):
* platform/ios/wak/WKUtilities.c:
(WKRelease):
* platform/ios/wak/WKView.mm:
(_WKViewSetViewContext):
(WKViewGetBounds):
(WKViewGetFrame):
(_WKViewRecursivelyInvalidateGState):
(WKViewSetFrameOrigin):
(WKViewSetFrameSize):
(WKViewGetWindow):
(WKViewGetSubviews):
(WKViewAddSubview):
(WKViewRemoveFromSuperview):
(WKViewFirstChild):
(WKViewNextSibling):
(WKViewTraverseNext):
(WKViewGetVisibleRect):
(WKViewConvertRectToSuperview):
(WKViewConvertRectToBase):
(WKViewConvertPointToSuperview):
(WKViewConvertPointFromSuperview):
(WKViewConvertPointToBase):
(_WKViewGetAncestorViewsIncludingView):
(WKViewConvertPointFromBase):
(WKViewConvertRectFromSuperview):
(WKViewConvertRectFromBase):
(WKViewGetAutoresizingMask):
(WKViewSetAutoresizingMask):
* platform/text/TextEncodingRegistry.cpp:
(WebCore::dumpTextEncodingNameMap):
* rendering/CounterNode.cpp:
(WebCore::showTreeAndMark):
* rendering/InlineBox.cpp:
(WebCore::InlineBox::showLineBox):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::showLineBox):
* rendering/RenderCounter.cpp:
(showCounterRendererTree):
* rendering/RenderLayer.cpp:
(WebCore::showLayerTree):
* rendering/RenderObject.cpp:
(WebCore::showRenderTreeLegend):
(WebCore::RenderObject::showRegionsInformation):
(WebCore::RenderObject::showRenderObject):
(WebCore::printRenderTreeForLiveDocuments):
(WebCore::printLayerTreeForLiveDocuments):
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::printPrefix):
(WebCore::SimpleLineLayout::showLineLayoutForFlow):
* rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::dump):
* rendering/svg/SVGResourcesCycleSolver.cpp:
(WebCore::SVGResourcesCycleSolver::resolveCycles):
* rendering/svg/SVGTextLayoutAttributes.cpp:
(WebCore::dumpSVGCharacterDataMapValue):
(WebCore::SVGTextLayoutAttributes::dump):
* rendering/svg/SVGTextLayoutEngine.cpp:
(WebCore::dumpTextBoxes):
(WebCore::SVGTextLayoutEngine::finishLayout):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/webaudio/AudioContext.cpp
trunk/Source/WebCore/Modules/webaudio/AudioNode.cpp
trunk/Source/WebCore/bridge/objc/objc_instance.mm
trunk/Source/WebCore/bridge/objc/objc_utility.mm
trunk/Source/WebCore/css/StyleProperties.cpp
trunk/Source/WebCore/dom/DocumentMarkerController.cpp
trunk/Source/WebCore/dom/Node.cpp
trunk/Source/WebCore/dom/Position.cpp
trunk/Source/WebCore/dom/Range.cpp
trunk/Source/WebCore/editing/FrameSelection.cpp
trunk/Source/WebCore/editing/VisiblePosition.cpp
trunk/Source/WebCore/editing/VisibleSelection.cpp
trunk/Source/WebCore/history/HistoryItem.cpp
trunk/Source/WebCore/html/parser/HTMLFormattingElementList.cpp
trunk/Source/WebCore/inspector/DOMPatchSupport.cpp

[webkit-changes] [218372] trunk/Source/WebCore

2017-06-15 Thread mmaxfield
Title: [218372] trunk/Source/WebCore








Revision 218372
Author mmaxfi...@apple.com
Date 2017-06-15 18:07:59 -0700 (Thu, 15 Jun 2017)


Log Message
Removing stray whitespace after r218371
https://bugs.webkit.org/show_bug.cgi?id=173043

Unreviewed.

No new tests because there is no behavior change.

* platform/graphics/FontCascadeFonts.cpp:
(WebCore::shouldIgnoreRotation):
(WebCore::glyphDataForNonCJKCharacterWithGlyphOrientation):
* platform/graphics/FontDescription.cpp:
* platform/graphics/FontDescription.h:
* platform/graphics/FontFamilySpecificationNull.h:
* platform/graphics/cocoa/FontDescriptionCocoa.cpp:
(WebCore::SystemFontDatabase::systemFontCascadeList):
(WebCore::systemFontParameters):
* platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:
(WebCore::FontFamilySpecificationCoreText::fontRanges):
* platform/graphics/cocoa/FontFamilySpecificationCoreText.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp
trunk/Source/WebCore/platform/graphics/FontDescription.cpp
trunk/Source/WebCore/platform/graphics/FontDescription.h
trunk/Source/WebCore/platform/graphics/FontFamilySpecificationNull.h
trunk/Source/WebCore/platform/graphics/cocoa/FontDescriptionCocoa.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp
trunk/Source/WebCore/platform/graphics/cocoa/FontFamilySpecificationCoreText.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218371 => 218372)

--- trunk/Source/WebCore/ChangeLog	2017-06-16 00:56:44 UTC (rev 218371)
+++ trunk/Source/WebCore/ChangeLog	2017-06-16 01:07:59 UTC (rev 218372)
@@ -1,5 +1,27 @@
 2017-06-15  Myles C. Maxfield  
 
+Removing stray whitespace after r218371
+https://bugs.webkit.org/show_bug.cgi?id=173043
+
+Unreviewed.
+
+No new tests because there is no behavior change.
+
+* platform/graphics/FontCascadeFonts.cpp:
+(WebCore::shouldIgnoreRotation):
+(WebCore::glyphDataForNonCJKCharacterWithGlyphOrientation):
+* platform/graphics/FontDescription.cpp:
+* platform/graphics/FontDescription.h:
+* platform/graphics/FontFamilySpecificationNull.h:
+* platform/graphics/cocoa/FontDescriptionCocoa.cpp:
+(WebCore::SystemFontDatabase::systemFontCascadeList):
+(WebCore::systemFontParameters):
+* platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:
+(WebCore::FontFamilySpecificationCoreText::fontRanges):
+* platform/graphics/cocoa/FontFamilySpecificationCoreText.h:
+
+2017-06-15  Myles C. Maxfield  
+
 [Cocoa] Expand system-ui to include every item in the Core Text cascade list
 https://bugs.webkit.org/show_bug.cgi?id=173043
 


Modified: trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp (218371 => 218372)

--- trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp	2017-06-16 00:56:44 UTC (rev 218371)
+++ trunk/Source/WebCore/platform/graphics/FontCascadeFonts.cpp	2017-06-16 01:07:59 UTC (rev 218372)
@@ -222,7 +222,7 @@
 
 if (isInRange(character, 0x002E5, 0x002EB))
 return true;
-
+
 if (isInRange(character, 0x01100, 0x011FF) || isInRange(character, 0x01401, 0x0167F) || isInRange(character, 0x01800, 0x018FF))
 return true;
 
@@ -283,13 +283,13 @@
 || isInRange(character, 0x1D000, 0x1D1FF) || isInRange(character, 0x1D300, 0x1D37F)
 || isInRange(character, 0x1F000, 0x1F64F) || isInRange(character, 0x1F680, 0x1F77F))
 return true;
-
+
 if (isInRange(character, 0x2, 0x2FFFD) || isInRange(character, 0x3, 0x3FFFD))
 return true;
 
 return false;
 }
-
+
 static GlyphData glyphDataForNonCJKCharacterWithGlyphOrientation(UChar32 character, NonCJKGlyphOrientation orientation, const GlyphData& data)
 {
 bool syntheticOblique = data.font->platformData().syntheticOblique();
@@ -308,7 +308,7 @@
 return uprightData;
 } else if (orientation == NonCJKGlyphOrientation::Mixed) {
 GlyphData verticalRightData = data.font->verticalRightOrientationFont().glyphDataForCharacter(character);
-
+
 // If there is a baked-in rotated glyph, we will use it unless syntheticOblique is set. If
 // synthetic oblique is set, we fall back to the horizontal glyph. This guarantees that vertical
 // fonts without isTextOrientationFallback() set contain CJK characters only and thus we can get


Modified: trunk/Source/WebCore/platform/graphics/FontDescription.cpp (218371 => 218372)

--- trunk/Source/WebCore/platform/graphics/FontDescription.cpp	2017-06-16 00:56:44 UTC (rev 218371)
+++ trunk/Source/WebCore/platform/graphics/FontDescription.cpp	2017-06-16 01:07:59 UTC (rev 218372)
@@ -101,7 +101,7 @@
 void FontDescription::invalidateCaches()
 {
 }
-
+
 unsigned FontCascadeDescription::effectiveFamilyCount() const
 {
 return familyCount();


Modified: 

[webkit-changes] [218371] trunk

2017-06-15 Thread mmaxfield
Title: [218371] trunk








Revision 218371
Author mmaxfi...@apple.com
Date 2017-06-15 17:56:44 -0700 (Thu, 15 Jun 2017)


Log Message
[Cocoa] Expand system-ui to include every item in the Core Text cascade list
https://bugs.webkit.org/show_bug.cgi?id=173043


Reviewed by Simon Fraser.

Source/WebCore:

The concept of the system font on Cocoa platforms represents the entire Core Text cascade list.
However, previously, WebKit only represented system-ui by pulling out the first item in the Core
Text cascade list. Instead, we should make all text rendered with "system-ui" match what the
platform would natively render.

Previously, we walked through the strings in the font-family property and looked them up one by
one. However, now we want to abstract this idea of a font family to possibly hold a
CTFontDescriptorRef instead of a string. This way, we expand a font-family list of ["fontA",
"system-ui", "fontB"] to ["fontA", ... a bunch of CTFontDescriptorRefs ..., "FontB"]. We can
then modify the consumer of this object to have two codepaths: the old string-based codepath,
and a new, platform-specific codepath which simply embeds the CTFontDesriptorRefs inside a Font
object.

We don't want to simply pull out the family name from each item in the Core Text fallback list
because that is a lossy translation. There is more information in these font descriptors which
cannot be represented by CSS. Therefore, we must keep the descriptors alive and add the new
codepath for them.

We also don't want to run the CSS font matching algorithm on each member of the Core Text
fallback list because it may yield different results from Core Text's font matching algorithm.
Our goal is to draw text as closely as possible to the system APIs. If we ran it, we may find
a font which is closer to the requested traits, but it would look out of place on the system.

This new codepath is only enabled on macOS High Sierra and iOS 11, because enabling it on all
operating systems would make fixing https://bugs.webkit.org/show_bug.cgi?id=173300 impossible.

Tests: fast/text/system-font-fallback-emoji.html
   fast/text/system-font-fallback.html
   fast/text/system-font-zero-size.html

* WebCore.xcodeproj/project.pbxproj:
* page/MemoryRelease.cpp:
(WebCore::releaseNoncriticalMemory):
* platform/graphics/FontCascadeFonts.cpp:
(WebCore::realizeNextFallback): The consumer of our new data type. Now uses WTF::visit().
(WebCore::FontCascadeFonts::realizeFallbackRangesAt): Now that the number of items to test
against the current character is larger than the number of strings in the font-family list,
we need to update the existing code to use the correct value.
* platform/graphics/FontDescription.cpp: Default implementation for non-Cocoa ports.
(WebCore::FontDescription::invalidateCaches):
(WebCore::FontCascadeDescription::effectiveFamilyCount):
(WebCore::FontCascadeDescription::effectiveFamilyAt):
* platform/graphics/FontDescription.h: Our new data type is a Variant of AtomicString and a
platform-specific class. Cocoa uses a class that holds a CTFontDescriptorRef and other ports
use an empty non-constructable class.
* platform/graphics/FontFamilySpecificationNull.h: Added. The empty non-constructable
class.
(WebCore::FontFamilySpecificationNull::fontRanges):
* platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::fontCacheRegisteredFontsChangedNotificationCallback):
(WebCore::FontCache::platformInit): Changing the system language will change the system font
fallback list, so we need to listen to this notification. This also matters for
FontCache::systemFallbackForCharacters(), so we should build off the same callback we are
already using for font installation.
(WebCore::invalidateFontCache):
* platform/graphics/cocoa/FontDescriptionCocoa.cpp: Added. The platform-specific creation of
our CTFontDescriptorRefs. We hold them cached in a SystemFontDatabase.
(WebCore::SystemFontDatabase::CoreTextCascadeListParameters::CoreTextCascadeListParameters):
(WebCore::SystemFontDatabase::CoreTextCascadeListParameters::isHashTableDeletedValue):
(WebCore::SystemFontDatabase::CoreTextCascadeListParameters::operator==):
(WebCore::SystemFontDatabase::CoreTextCascadeListParameters::hash):
(WebCore::SystemFontDatabase::singleton):
(WebCore::SystemFontDatabase::systemFontCascadeList):
(WebCore::SystemFontDatabase::clear):
(WebCore::SystemFontDatabase::SystemFontDatabase):
(WebCore::SystemFontDatabase::applyWeightAndItalics):
(WebCore::SystemFontDatabase::removeCascadeList):
(WebCore::SystemFontDatabase::computeCascadeList):
(WebCore::SystemFontDatabase::CoreTextCascadeListParametersHash::hash):
(WebCore::SystemFontDatabase::CoreTextCascadeListParametersHash::equal):
(WebCore::isSystemFontString):
(WebCore::systemFontParameters):
(WebCore::FontDescription::invalidateCaches):
(WebCore::FontCascadeDescription::effectiveFamilyCount): We don't store the result of this
because it would probably be a bad idea to increase the size of every single FontCascade just
in 

[webkit-changes] [218370] trunk/Source/WebCore

2017-06-15 Thread ddkilzer
Title: [218370] trunk/Source/WebCore








Revision 218370
Author ddkil...@apple.com
Date 2017-06-15 17:45:13 -0700 (Thu, 15 Jun 2017)


Log Message
Revert: [iOS] Generate a simulated crash when the WebThread starts in MobileSafari



Revert r218347 and r218339 since we're going to take a different
approach to investigating a crash on the WebThread.

* WebCore.xcodeproj/project.pbxproj:
* platform/ios/CrashReporterSupportSoftLink.h: Remove.
* platform/ios/CrashReporterSupportSoftLink.mm: Remove.
* platform/ios/wak/WebCoreThread.mm:
(WebThreadEnable):
* platform/spi/ios/CrashReporterSupportSPI.h: Remove.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm


Removed Paths

trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.h
trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.mm
trunk/Source/WebCore/platform/spi/ios/CrashReporterSupportSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218369 => 218370)

--- trunk/Source/WebCore/ChangeLog	2017-06-16 00:16:36 UTC (rev 218369)
+++ trunk/Source/WebCore/ChangeLog	2017-06-16 00:45:13 UTC (rev 218370)
@@ -1,3 +1,19 @@
+2017-06-15  David Kilzer  
+
+Revert: [iOS] Generate a simulated crash when the WebThread starts in MobileSafari
+
+
+
+Revert r218347 and r218339 since we're going to take a different
+approach to investigating a crash on the WebThread.
+
+* WebCore.xcodeproj/project.pbxproj:
+* platform/ios/CrashReporterSupportSoftLink.h: Remove.
+* platform/ios/CrashReporterSupportSoftLink.mm: Remove.
+* platform/ios/wak/WebCoreThread.mm:
+(WebThreadEnable):
+* platform/spi/ios/CrashReporterSupportSPI.h: Remove.
+
 2017-06-15  Matt Lewis  
 
 Unreviewed, rolling out r218365.


Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (218369 => 218370)

--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2017-06-16 00:16:36 UTC (rev 218369)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2017-06-16 00:45:13 UTC (rev 218370)
@@ -1912,9 +1912,6 @@
 		44C991860F3D1EBE00586670 /* ScrollbarThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */; };
 		44C9919F0F3D210E00586670 /* ThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C9919D0F3D210E00586670 /* ThemeIOS.h */; };
 		44C991A00F3D210E00586670 /* ThemeIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44C9919E0F3D210E00586670 /* ThemeIOS.mm */; };
-		44CA12961EF23A4F00E4B3AD /* CrashReporterSupportSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 44CA12941EF23A2000E4B3AD /* CrashReporterSupportSoftLink.h */; };
-		44CA12981EF23A6900E4B3AD /* CrashReporterSupportSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 44CA12971EF23A6500E4B3AD /* CrashReporterSupportSPI.h */; };
-		44CA129B1EF2D9E800E4B3AD /* CrashReporterSupportSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44CA12951EF23A2000E4B3AD /* CrashReporterSupportSoftLink.mm */; };
 		44DAB5B115A623580097C1E4 /* Extensions3DOpenGLCommon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 44DAB5AF15A623580097C1E4 /* Extensions3DOpenGLCommon.cpp */; };
 		44DAB5B215A623580097C1E4 /* Extensions3DOpenGLCommon.h in Headers */ = {isa = PBXBuildFile; fileRef = 44DAB5B015A623580097C1E4 /* Extensions3DOpenGLCommon.h */; };
 		44DEF6431A6FF92700D45EEC /* IOReturnSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 44DEF6421A6FF92700D45EEC /* IOReturnSPI.h */; settings = {ATTRIBUTES = (Private, ); }; };
@@ -9639,9 +9636,6 @@
 		44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollbarThemeIOS.h; sourceTree = ""; };
 		44C9919D0F3D210E00586670 /* ThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThemeIOS.h; sourceTree = ""; };
 		44C9919E0F3D210E00586670 /* ThemeIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ThemeIOS.mm; sourceTree = ""; };
-		44CA12941EF23A2000E4B3AD /* CrashReporterSupportSoftLink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CrashReporterSupportSoftLink.h; sourceTree = ""; };
-		44CA12951EF23A2000E4B3AD /* CrashReporterSupportSoftLink.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CrashReporterSupportSoftLink.mm; sourceTree = ""; };
-		44CA12971EF23A6500E4B3AD /* CrashReporterSupportSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CrashReporterSupportSPI.h; sourceTree = ""; };
 		44D8DA98139545BE00337B75 /* SVGMPathElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SVGMPathElement.idl; 

[webkit-changes] [218369] trunk

2017-06-15 Thread jlewis3
Title: [218369] trunk








Revision 218369
Author jlew...@apple.com
Date 2017-06-15 17:16:36 -0700 (Thu, 15 Jun 2017)


Log Message
Unreviewed, rolling out r218365.

The revision caused API timeouts on all builds.

Reverted changeset:

"[WebRTC] Removing a MediaStreamTrack from a MediaStream
reports no recording to WebKit clients"
https://bugs.webkit.org/show_bug.cgi?id=173398
http://trac.webkit.org/changeset/218365

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStream.h
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.h
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.cpp
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj


Removed Paths

trunk/Tools/TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm
trunk/Tools/TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html




Diff

Modified: trunk/Source/WebCore/ChangeLog (218368 => 218369)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 23:49:12 UTC (rev 218368)
+++ trunk/Source/WebCore/ChangeLog	2017-06-16 00:16:36 UTC (rev 218369)
@@ -1,3 +1,16 @@
+2017-06-15  Matt Lewis  
+
+Unreviewed, rolling out r218365.
+
+The revision caused API timeouts on all builds.
+
+Reverted changeset:
+
+"[WebRTC] Removing a MediaStreamTrack from a MediaStream
+reports no recording to WebKit clients"
+https://bugs.webkit.org/show_bug.cgi?id=173398
+http://trac.webkit.org/changeset/218365
+
 2017-06-15  Simon Fraser  
 
 Allow use of Layout* TextStream operators in WebKit2


Modified: trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp (218368 => 218369)

--- trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp	2017-06-15 23:49:12 UTC (rev 218368)
+++ trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp	2017-06-16 00:16:36 UTC (rev 218369)
@@ -90,6 +90,7 @@
 setIsActive(m_private->active());
 m_private->addObserver(*this);
 MediaStreamRegistry::shared().registerStream(*this);
+document()->addAudioProducer(this);
 suspendIfNeeded();
 }
 
@@ -110,6 +111,7 @@
 track->addObserver(*this);
 m_trackSet.add(track->id(), WTFMove(track));
 }
+document()->addAudioProducer(this);
 suspendIfNeeded();
 }
 
@@ -123,6 +125,7 @@
 for (auto& track : m_trackSet.values())
 track->removeObserver(*this);
 if (Document* document = this->document()) {
+document->removeAudioProducer(this);
 if (m_isWaitingUntilMediaCanStart)
 document->removeMediaCanStartListener(this);
 }
@@ -319,16 +322,53 @@
 }
 }
 
+void MediaStream::pageMutedStateDidChange()
+{
+if (!m_isActive)
+return;
+
+Document* document = this->document();
+if (!document)
+return;
+
+m_private->setCaptureTracksMuted(document->page()->isMediaCaptureMuted());
+}
+
 MediaProducer::MediaStateFlags MediaStream::mediaState() const
 {
-MediaProducer::MediaStateFlags state = MediaProducer::IsNotPlaying;
+MediaStateFlags state = IsNotPlaying;
 
 if (!m_isActive || !document() || !document()->page())
 return state;
 
-for (const auto& track : m_trackSet.values())
-state |= track->mediaState();
+bool pageCaptureMuted = document()->page()->isMediaCaptureMuted();
+for (const auto& track : m_trackSet.values()) {
+if (!track->isCaptureTrack() || track->ended())
+continue;
 
+if (track->source().type() == RealtimeMediaSource::Type::Audio) {
+if (track->source().interrupted() && !pageCaptureMuted)
+state |= HasInterruptedAudioCaptureDevice;
+else if (track->muted())
+state |= HasMutedAudioCaptureDevice;
+else if (m_isProducingData && m_private->isProducingData()) {
+state |= HasActiveAudioCaptureDevice;
+ASSERT(!track->source().interrupted());
+ASSERT(!track->muted());
+}
+} else {
+if (track->source().interrupted() && !pageCaptureMuted)
+state |= HasInterruptedVideoCaptureDevice;
+else if (track->muted())
+state |= HasMutedVideoCaptureDevice;
+else if (m_isProducingData && m_private->isProducingData()) {
+state |= HasActiveVideoCaptureDevice;
+

[webkit-changes] [218368] trunk/Source/WebCore

2017-06-15 Thread simon . fraser
Title: [218368] trunk/Source/WebCore








Revision 218368
Author simon.fra...@apple.com
Date 2017-06-15 16:49:12 -0700 (Thu, 15 Jun 2017)


Log Message
Allow use of Layout* TextStream operators in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=173440

Reviewed by Zalan Bujtas.

Export TextStream& operator<< for LayoutPoint, LayoutSize and LayoutRect so that
WebKit2 can log them.

Use #pragma once in these geometry headers.

* platform/graphics/FloatPoint.h:
* platform/graphics/FloatRect.h:
* platform/graphics/FloatSize.h:
* platform/graphics/IntPoint.h:
* platform/graphics/IntRect.h:
* platform/graphics/IntSize.h:
* platform/graphics/LayoutPoint.h:
* platform/graphics/LayoutRect.h:
* platform/graphics/LayoutSize.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/FloatPoint.h
trunk/Source/WebCore/platform/graphics/FloatRect.h
trunk/Source/WebCore/platform/graphics/FloatSize.h
trunk/Source/WebCore/platform/graphics/IntPoint.h
trunk/Source/WebCore/platform/graphics/IntRect.h
trunk/Source/WebCore/platform/graphics/IntSize.h
trunk/Source/WebCore/platform/graphics/LayoutPoint.h
trunk/Source/WebCore/platform/graphics/LayoutRect.h
trunk/Source/WebCore/platform/graphics/LayoutSize.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218367 => 218368)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 23:34:15 UTC (rev 218367)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 23:49:12 UTC (rev 218368)
@@ -1,3 +1,25 @@
+2017-06-15  Simon Fraser  
+
+Allow use of Layout* TextStream operators in WebKit2
+https://bugs.webkit.org/show_bug.cgi?id=173440
+
+Reviewed by Zalan Bujtas.
+
+Export TextStream& operator<< for LayoutPoint, LayoutSize and LayoutRect so that
+WebKit2 can log them.
+
+Use #pragma once in these geometry headers.
+
+* platform/graphics/FloatPoint.h:
+* platform/graphics/FloatRect.h:
+* platform/graphics/FloatSize.h:
+* platform/graphics/IntPoint.h:
+* platform/graphics/IntRect.h:
+* platform/graphics/IntSize.h:
+* platform/graphics/LayoutPoint.h:
+* platform/graphics/LayoutRect.h:
+* platform/graphics/LayoutSize.h:
+
 2017-06-15  Antoine Quint  
 
 Modern media controls tests error in Button.js


Modified: trunk/Source/WebCore/platform/graphics/FloatPoint.h (218367 => 218368)

--- trunk/Source/WebCore/platform/graphics/FloatPoint.h	2017-06-15 23:34:15 UTC (rev 218367)
+++ trunk/Source/WebCore/platform/graphics/FloatPoint.h	2017-06-15 23:49:12 UTC (rev 218368)
@@ -24,8 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef FloatPoint_h
-#define FloatPoint_h
+#pragma once
 
 #include "FloatSize.h"
 #include "IntPoint.h"
@@ -289,4 +288,3 @@
 
 }
 
-#endif


Modified: trunk/Source/WebCore/platform/graphics/FloatRect.h (218367 => 218368)

--- trunk/Source/WebCore/platform/graphics/FloatRect.h	2017-06-15 23:34:15 UTC (rev 218367)
+++ trunk/Source/WebCore/platform/graphics/FloatRect.h	2017-06-15 23:49:12 UTC (rev 218368)
@@ -24,8 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef FloatRect_h
-#define FloatRect_h
+#pragma once
 
 #include "FloatPoint.h"
 
@@ -265,4 +264,3 @@
 
 }
 
-#endif


Modified: trunk/Source/WebCore/platform/graphics/FloatSize.h (218367 => 218368)

--- trunk/Source/WebCore/platform/graphics/FloatSize.h	2017-06-15 23:34:15 UTC (rev 218367)
+++ trunk/Source/WebCore/platform/graphics/FloatSize.h	2017-06-15 23:49:12 UTC (rev 218368)
@@ -25,8 +25,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef FloatSize_h
-#define FloatSize_h
+#pragma once
 
 #include "IntPoint.h"
 #include 
@@ -239,4 +238,3 @@
 
 } // namespace WebCore
 
-#endif // FloatSize_h


Modified: trunk/Source/WebCore/platform/graphics/IntPoint.h (218367 => 218368)

--- trunk/Source/WebCore/platform/graphics/IntPoint.h	2017-06-15 23:34:15 UTC (rev 218367)
+++ trunk/Source/WebCore/platform/graphics/IntPoint.h	2017-06-15 23:49:12 UTC (rev 218368)
@@ -23,8 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#ifndef IntPoint_h
-#define IntPoint_h
+#pragma once
 
 #include "IntSize.h"
 #include 
@@ -213,4 +212,3 @@
 
 } // namespace WebCore
 
-#endif // IntPoint_h


Modified: trunk/Source/WebCore/platform/graphics/IntRect.h (218367 => 218368)

--- trunk/Source/WebCore/platform/graphics/IntRect.h	2017-06-15 23:34:15 UTC (rev 218367)
+++ trunk/Source/WebCore/platform/graphics/IntRect.h	2017-06-15 23:49:12 UTC (rev 218368)
@@ -23,8 +23,7 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef IntRect_h
-#define IntRect_h
+#pragma once
 
 #include "IntPoint.h"
 #include "LayoutUnit.h"
@@ -249,4 +248,3 @@
 
 } // namespace WebCore
 
-#endif // IntRect_h


Modified: trunk/Source/WebCore/platform/graphics/IntSize.h (218367 => 218368)

--- 

[webkit-changes] [218367] trunk/Source/WebCore

2017-06-15 Thread commit-queue
Title: [218367] trunk/Source/WebCore








Revision 218367
Author commit-qu...@webkit.org
Date 2017-06-15 16:34:15 -0700 (Thu, 15 Jun 2017)


Log Message
Modern media controls tests error in Button.js
https://bugs.webkit.org/show_bug.cgi?id=173439

Patch by Antoine Quint  on 2017-06-15
Reviewed by Dean Jackson.

Tests would sometime yield an error when commit() would be called and the _imageSource
ivar hadn't been set. To more safely commit the mask image when it's loaded, we now use
a markDirtyProperty() call and a commitProperty() override to ensure that we cover the
case where we want to commit the mask image, and for other commits not to have to worry
about the mask image being defined.

* Modules/modern-media-controls/controls/button.js:
(Button.prototype.commitProperty):
(Button.prototype._updateImage):
(Button.prototype.commit): Deleted.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/modern-media-controls/controls/button.js




Diff

Modified: trunk/Source/WebCore/ChangeLog (218366 => 218367)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 22:54:03 UTC (rev 218366)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 23:34:15 UTC (rev 218367)
@@ -1,3 +1,21 @@
+2017-06-15  Antoine Quint  
+
+Modern media controls tests error in Button.js
+https://bugs.webkit.org/show_bug.cgi?id=173439
+
+Reviewed by Dean Jackson.
+
+Tests would sometime yield an error when commit() would be called and the _imageSource
+ivar hadn't been set. To more safely commit the mask image when it's loaded, we now use
+a markDirtyProperty() call and a commitProperty() override to ensure that we cover the
+case where we want to commit the mask image, and for other commits not to have to worry
+about the mask image being defined.
+
+* Modules/modern-media-controls/controls/button.js:
+(Button.prototype.commitProperty):
+(Button.prototype._updateImage):
+(Button.prototype.commit): Deleted.
+
 2017-06-15  Jer Noble  
 
 [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients


Modified: trunk/Source/WebCore/Modules/modern-media-controls/controls/button.js (218366 => 218367)

--- trunk/Source/WebCore/Modules/modern-media-controls/controls/button.js	2017-06-15 22:54:03 UTC (rev 218366)
+++ trunk/Source/WebCore/Modules/modern-media-controls/controls/button.js	2017-06-15 23:34:15 UTC (rev 218367)
@@ -148,11 +148,12 @@
 this._notifyDelegateOfActivation();
 }
 
-commit()
+commitProperty(propertyName)
 {
-super.commit();
-
-this.image.element.style.webkitMaskImage = `url(${this._imageSource.src})`;
+if (propertyName === "maskImage")
+this.image.element.style.webkitMaskImage = `url(${this._imageSource.src})`;
+else
+super.commitProperty(propertyName);
 }
 
 // Private
@@ -188,7 +189,7 @@
 
 _updateImage()
 {
-this.needsLayout = true;
+this.markDirtyProperty("maskImage");
 
 this._updateImageMetrics();
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218366] trunk/LayoutTests

2017-06-15 Thread jlewis3
Title: [218366] trunk/LayoutTests








Revision 218366
Author jlew...@apple.com
Date 2017-06-15 15:54:03 -0700 (Thu, 15 Jun 2017)


Log Message
Marked webrtc/video-unmute.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=172879

Unreviewed test gardening.

* platform/ios-simulator-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (218365 => 218366)

--- trunk/LayoutTests/ChangeLog	2017-06-15 22:48:46 UTC (rev 218365)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 22:54:03 UTC (rev 218366)
@@ -1,3 +1,12 @@
+2017-06-15  Matt Lewis  
+
+Marked webrtc/video-unmute.html as flaky.
+https://bugs.webkit.org/show_bug.cgi?id=172879
+
+Unreviewed test gardening.
+
+* platform/ios-simulator-wk2/TestExpectations:
+
 2017-06-15  Saam Barati  
 
 [iOS wk2] Layout Test perf/object-keys.html is flaky


Modified: trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations (218365 => 218366)

--- trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations	2017-06-15 22:48:46 UTC (rev 218365)
+++ trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations	2017-06-15 22:54:03 UTC (rev 218366)
@@ -29,3 +29,6 @@
 svg/custom/manually-parsed-svg-allowed-in-dashboard.html [ Failure ]
 svg/custom/svg-allowed-in-dashboard-object.html [ Failure ]
 http/tests/xmlhttprequest/svg-created-by-xhr-allowed-in-dashboard.html [ Failure ]
+
+webkit.org/b/172879 webrtc/video-unmute.html [ Pass Timeout ]
+






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218365] trunk

2017-06-15 Thread jer . noble
Title: [218365] trunk








Revision 218365
Author jer.no...@apple.com
Date 2017-06-15 15:48:46 -0700 (Thu, 15 Jun 2017)


Log Message
[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
https://bugs.webkit.org/show_bug.cgi?id=173398


Reviewed by Eric Carlson.

Source/WebCore:

API Test: Tests/WebKit2/MediaStreamTrackDetached.mm

Move the definition of a MediaStream as a MediaProducer from the stream itself to its constituent
MediaStreamTracks. This ensures that, even if a MediaStreamTrack is removed from its stream, the
document (and thus the clients) are notified that media capture is still occurring.

Though MediaStream is no longer a MediaProducer, it still uses the MediaProducer's state concept
to determine when to fire events. However it's mediaState() implementation will be moved into
MediaStreamTrack, and will instead simply bitwise-or together each of it's track's mediaState().

The MediaStream notifies the document that its state has changed asynchronously, so do the same
for MediaStreamTrack (which reduces the number of calls to the client when changes all occur
during a single run loop).

Because the MediaStreamTrackPrivate may be started externally (not by the MediaStreamTrack directly),
add a new client method that notifies observers when the track has been started, and the
MediaStreamTrack will use this notification to update the document with it's new mediaState().

* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::~MediaStream):
(WebCore::MediaStream::mediaState):
(WebCore::MediaStream::statusDidChange):
(WebCore::MediaStream::characteristicsChanged):
(WebCore::MediaStream::pageMutedStateDidChange): Deleted.
* Modules/mediastream/MediaStream.h:
* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack):
(WebCore::MediaStreamTrack::~MediaStreamTrack):
(WebCore::MediaStreamTrack::pageMutedStateDidChange):
(WebCore::MediaStreamTrack::mediaState):
(WebCore::MediaStreamTrack::trackStarted):
(WebCore::MediaStreamTrack::configureTrackRendering):
(WebCore::MediaStreamTrack::stop):
(WebCore::MediaStreamTrack::document):
* Modules/mediastream/MediaStreamTrack.h:
(WebCore::MediaStreamTrack::source):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
* platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::trackStarted):
* platform/mediastream/MediaStreamPrivate.h:
* platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::sourceStarted):
* platform/mediastream/MediaStreamTrackPrivate.h:
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::start):
* platform/mediastream/RealtimeMediaSource.h:

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
(-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/MediaStream.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStream.h
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.cpp
trunk/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.h
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.cpp
trunk/Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj


Added Paths

trunk/Tools/TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm
trunk/Tools/TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html




Diff

Modified: trunk/Source/WebCore/ChangeLog (218364 => 218365)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 22:26:42 UTC (rev 218364)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 22:48:46 UTC (rev 218365)
@@ -1,3 +1,59 @@
+2017-06-15  Jer Noble  
+
+[WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
+https://bugs.webkit.org/show_bug.cgi?id=173398
+
+
+Reviewed by Eric Carlson.
+
+API Test: Tests/WebKit2/MediaStreamTrackDetached.mm
+
+Move the definition of a MediaStream as a MediaProducer from the stream itself to its constituent

[webkit-changes] [218364] trunk/LayoutTests

2017-06-15 Thread sbarati
Title: [218364] trunk/LayoutTests








Revision 218364
Author sbar...@apple.com
Date 2017-06-15 15:26:42 -0700 (Thu, 15 Jun 2017)


Log Message
[iOS wk2] Layout Test perf/object-keys.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=171617


Reviewed by Mark Lam.

Increase the starting magnitude of the object-keys test to
remove variance from having objects with a very few number of keys.

* perf/object-keys.html:
* platform/ios-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/perf/object-keys.html
trunk/LayoutTests/platform/ios-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (218363 => 218364)

--- trunk/LayoutTests/ChangeLog	2017-06-15 22:24:29 UTC (rev 218363)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 22:26:42 UTC (rev 218364)
@@ -1,3 +1,17 @@
+2017-06-15  Saam Barati  
+
+[iOS wk2] Layout Test perf/object-keys.html is flaky
+https://bugs.webkit.org/show_bug.cgi?id=171617
+
+
+Reviewed by Mark Lam.
+
+Increase the starting magnitude of the object-keys test to
+remove variance from having objects with a very few number of keys.
+
+* perf/object-keys.html:
+* platform/ios-wk2/TestExpectations:
+
 2017-06-15  Matt Lewis  
 
 Marked webrtc/datachannel/basic.html as flaky.


Modified: trunk/LayoutTests/perf/object-keys.html (218363 => 218364)

--- trunk/LayoutTests/perf/object-keys.html	2017-06-15 22:24:29 UTC (rev 218363)
+++ trunk/LayoutTests/perf/object-keys.html	2017-06-15 22:26:42 UTC (rev 218364)
@@ -13,6 +13,9 @@
 Object.keys(obj);
 }
 
+Magnitude.initialMagnitude = 8;
+Magnitude.numPoints = 6;
+
 Magnitude.description("Tests that Object.keys is linear.");
 Magnitude.run(setupFunction, test, Magnitude.LINEAR);
 


Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (218363 => 218364)

--- trunk/LayoutTests/platform/ios-wk2/TestExpectations	2017-06-15 22:24:29 UTC (rev 218363)
+++ trunk/LayoutTests/platform/ios-wk2/TestExpectations	2017-06-15 22:26:42 UTC (rev 218364)
@@ -1929,8 +1929,6 @@
 
 webkit.org/b/171613 http/tests/xmlhttprequest/supported-xml-content-types.html [ Pass Timeout ]
 
-webkit.org/b/171617 [ Release ] perf/object-keys.html [ Pass Failure ]
-
 webkit.org/b/171331 http/tests/preload/single_download_preload.html [ Pass Failure ]
 
 webkit.org/b/170699 [ Release ] imported/w3c/web-platform-tests/html/webappapis/timers/negative-settimeout.html [ Pass Failure ]






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218363] tags/Safari-603.3.5/

2017-06-15 Thread matthew_hanson
Title: [218363] tags/Safari-603.3.5/








Revision 218363
Author matthew_han...@apple.com
Date 2017-06-15 15:24:29 -0700 (Thu, 15 Jun 2017)


Log Message
Tag Safari-603.3.5.

Added Paths

tags/Safari-603.3.5/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218362] tags/Safari-604.1.25.3.2/

2017-06-15 Thread matthew_hanson
Title: [218362] tags/Safari-604.1.25.3.2/








Revision 218362
Author matthew_han...@apple.com
Date 2017-06-15 15:23:26 -0700 (Thu, 15 Jun 2017)


Log Message
Tag Safari-604.1.25.3.2.

Added Paths

tags/Safari-604.1.25.3.2/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218361] tags/Safari-604.1.25.4.2/

2017-06-15 Thread matthew_hanson
Title: [218361] tags/Safari-604.1.25.4.2/








Revision 218361
Author matthew_han...@apple.com
Date 2017-06-15 15:20:20 -0700 (Thu, 15 Jun 2017)


Log Message
Tag Safari-604.1.25.4.2.

Added Paths

tags/Safari-604.1.25.4.2/




Diff




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218360] trunk/LayoutTests

2017-06-15 Thread jlewis3
Title: [218360] trunk/LayoutTests








Revision 218360
Author jlew...@apple.com
Date 2017-06-15 15:08:12 -0700 (Thu, 15 Jun 2017)


Log Message
Marked webrtc/datachannel/basic.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=172922

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:
* platform/wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk1/TestExpectations
trunk/LayoutTests/platform/wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (218359 => 218360)

--- trunk/LayoutTests/ChangeLog	2017-06-15 21:50:37 UTC (rev 218359)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 22:08:12 UTC (rev 218360)
@@ -1,5 +1,15 @@
 2017-06-15  Matt Lewis  
 
+Marked webrtc/datachannel/basic.html as flaky.
+https://bugs.webkit.org/show_bug.cgi?id=172922
+
+Unreviewed test gardening.
+
+* platform/mac-wk1/TestExpectations:
+* platform/wk2/TestExpectations:
+
+2017-06-15  Matt Lewis  
+
 REGRESSION (r218228): Layout Test editing/execCommand/strikethrough-uses-strike-tag.html is failing
 https://bugs.webkit.org/show_bug.cgi?id=173375
 


Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (218359 => 218360)

--- trunk/LayoutTests/platform/mac-wk1/TestExpectations	2017-06-15 21:50:37 UTC (rev 218359)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations	2017-06-15 22:08:12 UTC (rev 218360)
@@ -370,3 +370,6 @@
 webkit.org/b/172807 imported/w3c/web-platform-tests/css/selectors4/focus-within-display-none-001.html [ Pass Failure ]
 
 webkit.org/b/168409 media/modern-media-controls/airplay-button/airplay-button.html [ Pass Timeout ]
+
+webkit.org/b/172922 [ Debug ] webrtc/datachannel/basic.html [ Pass Timeout ]
+


Modified: trunk/LayoutTests/platform/wk2/TestExpectations (218359 => 218360)

--- trunk/LayoutTests/platform/wk2/TestExpectations	2017-06-15 21:50:37 UTC (rev 218359)
+++ trunk/LayoutTests/platform/wk2/TestExpectations	2017-06-15 22:08:12 UTC (rev 218360)
@@ -717,3 +717,7 @@
 ### (3) Unclassified failures
 ### (4) Features that are not supported in WebKit2 and likely never will be
 ### (5) Progressions, expected successes that are expected failures in WebKit1.
+
+
+webkit.org/b/172922 webrtc/datachannel/basic.html [ Pass Timeout ]
+






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218359] trunk/Source/WebInspectorUI

2017-06-15 Thread commit-queue
Title: [218359] trunk/Source/WebInspectorUI








Revision 218359
Author commit-qu...@webkit.org
Date 2017-06-15 14:50:37 -0700 (Thu, 15 Jun 2017)


Log Message
Web Inspector: Search highlight doesn't show up in resources when paused
https://bugs.webkit.org/show_bug.cgi?id=173438


Patch by Joseph Pecoraro  on 2017-06-15
Reviewed by Matt Baker.

* UserInterface/Views/TextEditor.js:
(WebInspector.TextEditor.prototype.revealPosition.revealAndHighlightLine):
Previously we were bailing if executionLineNumber was NaN, which means that when
we were paused we were incorrectly disabling highlights in any resource that does
not have the active callframe. Relax this and make it match the intended behavior
of only disabling highlights if the highlight line matches the execution line.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (218358 => 218359)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-06-15 21:38:49 UTC (rev 218358)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-06-15 21:50:37 UTC (rev 218359)
@@ -1,5 +1,20 @@
 2017-06-15  Joseph Pecoraro  
 
+Web Inspector: Search highlight doesn't show up in resources when paused
+https://bugs.webkit.org/show_bug.cgi?id=173438
+
+
+Reviewed by Matt Baker.
+
+* UserInterface/Views/TextEditor.js:
+(WebInspector.TextEditor.prototype.revealPosition.revealAndHighlightLine):
+Previously we were bailing if executionLineNumber was NaN, which means that when
+we were paused we were incorrectly disabling highlights in any resource that does
+not have the active callframe. Relax this and make it match the intended behavior
+of only disabling highlights if the highlight line matches the execution line.
+
+2017-06-15  Joseph Pecoraro  
+
 Uncaught Exception: TypeError: null is not an object (evaluating 'this.contentBrowser.contentViewForRepresentedObject')
 https://bugs.webkit.org/show_bug.cgi?id=173425
 


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js (218358 => 218359)

--- trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js	2017-06-15 21:38:49 UTC (rev 218358)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/TextEditor.js	2017-06-15 21:50:37 UTC (rev 218359)
@@ -519,7 +519,7 @@
 return;
 
 // Avoid highlighting the execution line while debugging.
-if (WebInspector.debuggerManager.paused && (!this._executionLineNumber || line === this._executionLineNumber))
+if (WebInspector.debuggerManager.paused && line === this._executionLineNumber)
 return;
 
 this._codeMirror.addLineClass(lineHandle, "wrap", WebInspector.TextEditor.HighlightedStyleClassName);






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218358] trunk/Source/WebKit/win

2017-06-15 Thread commit-queue
Title: [218358] trunk/Source/WebKit/win








Revision 218358
Author commit-qu...@webkit.org
Date 2017-06-15 14:38:49 -0700 (Thu, 15 Jun 2017)


Log Message
[Win] WebKit shouldn't include the forwarding header of WebKit itself
https://bugs.webkit.org/show_bug.cgi?id=173352

Patch by Fujii Hironori  on 2017-06-15
Reviewed by Alex Christensen.

* WebKitPrefix.h: Include WebKit.h of DerivedSources/WebKit instead of DerivedSources/ForwardingHeaders.

Modified Paths

trunk/Source/WebKit/win/ChangeLog
trunk/Source/WebKit/win/WebKitPrefix.h




Diff

Modified: trunk/Source/WebKit/win/ChangeLog (218357 => 218358)

--- trunk/Source/WebKit/win/ChangeLog	2017-06-15 21:35:57 UTC (rev 218357)
+++ trunk/Source/WebKit/win/ChangeLog	2017-06-15 21:38:49 UTC (rev 218358)
@@ -1,3 +1,12 @@
+2017-06-15  Fujii Hironori  
+
+[Win] WebKit shouldn't include the forwarding header of WebKit itself
+https://bugs.webkit.org/show_bug.cgi?id=173352
+
+Reviewed by Alex Christensen.
+
+* WebKitPrefix.h: Include WebKit.h of DerivedSources/WebKit instead of DerivedSources/ForwardingHeaders.
+
 2017-06-14  Per Arne Vollan  
 
 [Win] WebKit fails to paint the bottom lines of the window at 125% scale.


Modified: trunk/Source/WebKit/win/WebKitPrefix.h (218357 => 218358)

--- trunk/Source/WebKit/win/WebKitPrefix.h	2017-06-15 21:35:57 UTC (rev 218357)
+++ trunk/Source/WebKit/win/WebKitPrefix.h	2017-06-15 21:38:49 UTC (rev 218358)
@@ -40,7 +40,7 @@
 #endif
 
 #include 
-#include 
+#include 
 #include "config.h"
 
 // WebKit.dll is expected to export the symbols in WebCore that have been marked






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218356] trunk/Source/WebInspectorUI

2017-06-15 Thread commit-queue
Title: [218356] trunk/Source/WebInspectorUI








Revision 218356
Author commit-qu...@webkit.org
Date 2017-06-15 14:26:33 -0700 (Thu, 15 Jun 2017)


Log Message
Uncaught Exception: TypeError: null is not an object (evaluating 'this.contentBrowser.contentViewForRepresentedObject')
https://bugs.webkit.org/show_bug.cgi?id=173425


Patch by Joseph Pecoraro  on 2017-06-15
Reviewed by Devin Rousso.

* UserInterface/Views/ContentBrowserTabContentView.js:
(WebInspector.ContentBrowserTabContentView.prototype.shown):
Reorder slightly so the NavigationSidebar has its ContentBrowser set
before anyone tries to restore views in the sidebar.

* UserInterface/Views/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel.prototype.showDefaultContentView):
Try to select a script/resource content view instead of nothing.

(WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie):
When a resource is selected, save it using the normal path.

* UserInterface/Views/NetworkSidebarPanel.js:
(WebInspector.NetworkSidebarPanel.prototype.canShowDifferentContentView):
Remove a reference to an unused / stale member variable.

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowserTabContentView.js
trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js
trunk/Source/WebInspectorUI/UserInterface/Views/NetworkSidebarPanel.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (218355 => 218356)

--- trunk/Source/WebInspectorUI/ChangeLog	2017-06-15 21:19:08 UTC (rev 218355)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-06-15 21:26:33 UTC (rev 218356)
@@ -1,3 +1,27 @@
+2017-06-15  Joseph Pecoraro  
+
+Uncaught Exception: TypeError: null is not an object (evaluating 'this.contentBrowser.contentViewForRepresentedObject')
+https://bugs.webkit.org/show_bug.cgi?id=173425
+
+
+Reviewed by Devin Rousso.
+
+* UserInterface/Views/ContentBrowserTabContentView.js:
+(WebInspector.ContentBrowserTabContentView.prototype.shown):
+Reorder slightly so the NavigationSidebar has its ContentBrowser set
+before anyone tries to restore views in the sidebar.
+
+* UserInterface/Views/DebuggerSidebarPanel.js:
+(WebInspector.DebuggerSidebarPanel.prototype.showDefaultContentView):
+Try to select a script/resource content view instead of nothing.
+
+(WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie):
+When a resource is selected, save it using the normal path.
+
+* UserInterface/Views/NetworkSidebarPanel.js:
+(WebInspector.NetworkSidebarPanel.prototype.canShowDifferentContentView):
+Remove a reference to an unused / stale member variable.
+
 2017-06-14  Nikita Vasilyev  
 
 Web Inspector: Pretty print / type info / code coverage buttons disappear after switching tabs


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowserTabContentView.js (218355 => 218356)

--- trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowserTabContentView.js	2017-06-15 21:19:08 UTC (rev 218355)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ContentBrowserTabContentView.js	2017-06-15 21:26:33 UTC (rev 218356)
@@ -92,14 +92,16 @@
 
 shown()
 {
+if (this.navigationSidebarPanel) {
+if (!this.navigationSidebarPanel.contentBrowser)
+this.navigationSidebarPanel.contentBrowser = this._contentBrowser;
+}
+
 super.shown();
 
 this._contentBrowser.shown();
 
 if (this.navigationSidebarPanel) {
-if (!this.navigationSidebarPanel.contentBrowser)
-this.navigationSidebarPanel.contentBrowser = this._contentBrowser;
-
 if (!this._contentBrowser.currentContentView)
 this.navigationSidebarPanel.showDefaultContentView();
 }


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js (218355 => 218356)

--- trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js	2017-06-15 21:19:08 UTC (rev 218355)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js	2017-06-15 21:26:33 UTC (rev 218356)
@@ -280,7 +280,13 @@
 
 showDefaultContentView()
 {
-var currentTreeElement = this._contentTreeOutline.children[0];
+if (WebInspector.frameResourceManager.mainFrame) {
+let mainTreeElement = this._scriptsContentTreeOutline.findTreeElement(WebInspector.frameResourceManager.mainFrame.mainResource);
+if (mainTreeElement && this.showDefaultContentViewForTreeElement(mainTreeElement))
+return;
+}
+
+let currentTreeElement = this._scriptsContentTreeOutline.children[0];
 while (currentTreeElement && !currentTreeElement.root) {
 if (currentTreeElement instanceof WebInspector.ResourceTreeElement || 

[webkit-changes] [218354] branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in

2017-06-15 Thread matthew_hanson
Title: [218354] branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in








Revision 218354
Author matthew_han...@apple.com
Date 2017-06-15 13:25:01 -0700 (Thu, 15 Jun 2017)


Log Message
Follow-up fix for rdar://problem/32621736

Modified Paths

branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in




Diff

Modified: branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in (218353 => 218354)

--- branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in	2017-06-15 20:22:25 UTC (rev 218353)
+++ branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in	2017-06-15 20:25:01 UTC (rev 218354)
@@ -292,11 +292,7 @@
 
 langAttributeAwareFormControlUIEnabled initial=false
 
-#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED <= 11)
 subresourceIntegrityEnabled initial=false
-#else
-subresourceIntegrityEnabled initial=true
-#endif
 
 constantPropertiesEnabled initial=false
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218353] branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in

2017-06-15 Thread matthew_hanson
Title: [218353] branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in








Revision 218353
Author matthew_han...@apple.com
Date 2017-06-15 13:22:25 -0700 (Thu, 15 Jun 2017)


Log Message
Follow-up fix for rdar://problem/32621736

Modified Paths

branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in




Diff

Modified: branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in (218352 => 218353)

--- branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in	2017-06-15 20:15:23 UTC (rev 218352)
+++ branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in	2017-06-15 20:22:25 UTC (rev 218353)
@@ -292,11 +292,7 @@
 
 langAttributeAwareFormControlUIEnabled initial=false
 
-#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED <= 11)
 subresourceIntegrityEnabled initial=false
-#else
-subresourceIntegrityEnabled initial=true
-#endif
 
 constantPropertiesEnabled initial=false
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218352] trunk/Source/WebCore

2017-06-15 Thread jbedard
Title: [218352] trunk/Source/WebCore








Revision 218352
Author jbed...@apple.com
Date 2017-06-15 13:15:23 -0700 (Thu, 15 Jun 2017)


Log Message
Unreviewed build fix after r218336

* platform/spi/cocoa/PassKitSPI.h: Add missing #ifdefs for Internal builds.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218351 => 218352)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 20:08:07 UTC (rev 218351)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 20:15:23 UTC (rev 218352)
@@ -1,3 +1,9 @@
+2017-06-15  Jonathan Bedard  
+
+Unreviewed build fix after r218336
+
+* platform/spi/cocoa/PassKitSPI.h: Add missing #ifdefs for Internal builds.
+
 2017-06-15  Antoine Quint  
 
 Ensure we only log changes to the ScriptedAnimationController suspended state in debug builds


Modified: trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h (218351 => 218352)

--- trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h	2017-06-15 20:08:07 UTC (rev 218351)
+++ trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h	2017-06-15 20:15:23 UTC (rev 218352)
@@ -260,7 +260,7 @@
 };
 #endif
 
-#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300
+#if PLATFORM(MAC) && !USE(APPLE_INTERNAL_SDK) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300
 
 NS_ASSUME_NONNULL_BEGIN
 
@@ -299,8 +299,11 @@
 @property (nonatomic, strong) NSString *sourceApplicationSecondaryIdentifier;
 @property (nonatomic, strong) NSString *CTDataConnectionServiceType;
 
+#if !USE(APPLE_INTERNAL_SDK)
 - (void)setRequiredShippingContactFields:(nonnull NSSet *)contactInformation;
 - (void)setRequiredBillingContactFields:(nonnull NSSet *)contactInformation;
+#endif
+
 @end
 
 NS_ASSUME_NONNULL_END






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218351] trunk/Source/WebCore

2017-06-15 Thread commit-queue
Title: [218351] trunk/Source/WebCore








Revision 218351
Author commit-qu...@webkit.org
Date 2017-06-15 13:08:07 -0700 (Thu, 15 Jun 2017)


Log Message
Ensure we only log changes to the ScriptedAnimationController suspended state in debug builds
https://bugs.webkit.org/show_bug.cgi?id=173423

Patch by Antoine Quint  on 2017-06-15
Reviewed by Tim Horton.

We added logging for when the suspended state of the scripted animation controller would change in
webkit.org/b/173326. It was meant to only be enabled in debug builds and we actually did the wrong
thing and enabled it in non-debug builds.

We also added a setting that wasn't used and that we are removing here.

* dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::logSuspendCount):
* page/Settings.in:
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::resetToConsistentState):
(WebCore::InternalSettings::shouldLogScritedAnimationControllerSuspensionChange): Deleted.
(WebCore::InternalSettings::setShouldLogScritedAnimationControllerSuspensionChange): Deleted.
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/ScriptedAnimationController.cpp
trunk/Source/WebCore/page/Settings.in
trunk/Source/WebCore/testing/InternalSettings.cpp
trunk/Source/WebCore/testing/InternalSettings.h
trunk/Source/WebCore/testing/InternalSettings.idl




Diff

Modified: trunk/Source/WebCore/ChangeLog (218350 => 218351)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 20:02:22 UTC (rev 218350)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 20:08:07 UTC (rev 218351)
@@ -1,3 +1,26 @@
+2017-06-15  Antoine Quint  
+
+Ensure we only log changes to the ScriptedAnimationController suspended state in debug builds
+https://bugs.webkit.org/show_bug.cgi?id=173423
+
+Reviewed by Tim Horton.
+
+We added logging for when the suspended state of the scripted animation controller would change in
+webkit.org/b/173326. It was meant to only be enabled in debug builds and we actually did the wrong
+thing and enabled it in non-debug builds.
+
+We also added a setting that wasn't used and that we are removing here.
+
+* dom/ScriptedAnimationController.cpp:
+(WebCore::ScriptedAnimationController::logSuspendCount):
+* page/Settings.in:
+* testing/InternalSettings.cpp:
+(WebCore::InternalSettings::resetToConsistentState):
+(WebCore::InternalSettings::shouldLogScritedAnimationControllerSuspensionChange): Deleted.
+(WebCore::InternalSettings::setShouldLogScritedAnimationControllerSuspensionChange): Deleted.
+* testing/InternalSettings.h:
+* testing/InternalSettings.idl:
+
 2017-06-15  David Kilzer  
 
 Build fix: [iOS] Generate a simulated crash when the WebThread starts in MobileSafari


Modified: trunk/Source/WebCore/dom/ScriptedAnimationController.cpp (218350 => 218351)

--- trunk/Source/WebCore/dom/ScriptedAnimationController.cpp	2017-06-15 20:02:22 UTC (rev 218350)
+++ trunk/Source/WebCore/dom/ScriptedAnimationController.cpp	2017-06-15 20:08:07 UTC (rev 218351)
@@ -91,10 +91,7 @@
 
 void ScriptedAnimationController::logSuspendCount()
 {
-#if defined NDEBUG
-if (!m_document || !m_document->frame() || !m_document->frame()->settings().shouldLogScritedAnimationControllerSuspensionChange())
-return;
-
+#if !defined(NDEBUG)
 WTFLogAlways("ScriptedAnimationController::m_suspendCount = %d", m_suspendCount);
 WTFReportBacktrace();
 #endif


Modified: trunk/Source/WebCore/page/Settings.in (218350 => 218351)

--- trunk/Source/WebCore/page/Settings.in	2017-06-15 20:02:22 UTC (rev 218350)
+++ trunk/Source/WebCore/page/Settings.in	2017-06-15 20:08:07 UTC (rev 218351)
@@ -277,8 +277,6 @@
 
 inputEventsEnabled initial=true
 
-shouldLogScritedAnimationControllerSuspensionChange initial=true
-
 quickTimePluginReplacementEnabled initial=defaultQuickTimePluginReplacementEnabled
 youTubeFlashPluginReplacementEnabled initial=defaultYouTubeFlashPluginReplacementEnabled
 


Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (218350 => 218351)

--- trunk/Source/WebCore/testing/InternalSettings.cpp	2017-06-15 20:02:22 UTC (rev 218350)
+++ trunk/Source/WebCore/testing/InternalSettings.cpp	2017-06-15 20:08:07 UTC (rev 218351)
@@ -265,8 +265,6 @@
 m_page->mainFrame().setPageAndTextZoomFactors(1, 1);
 m_page->setCanStartMedia(true);
 
-settings().setShouldLogScritedAnimationControllerSuspensionChange(true);
-
 settings().setForcePendingWebGLPolicy(false);
 #if ENABLE(WIRELESS_PLAYBACK_TARGET)
 settings().setAllowsAirPlayForMediaPlayback(false);
@@ -732,16 +730,6 @@
 #endif
 }
 
-bool InternalSettings::shouldLogScritedAnimationControllerSuspensionChange()
-{
-return settings().shouldLogScritedAnimationControllerSuspensionChange();
-}
-
-void 

[webkit-changes] [218350] trunk/Source/JavaScriptCore

2017-06-15 Thread keith_miller
Title: [218350] trunk/Source/_javascript_Core








Revision 218350
Author keith_mil...@apple.com
Date 2017-06-15 13:02:22 -0700 (Thu, 15 Jun 2017)


Log Message
Add logging to MachineStackMarker to try to diagnose crashes in the wild
https://bugs.webkit.org/show_bug.cgi?id=173427

Reviewed by Mark Lam.

This patch adds some logging to the MachineStackMarker constructor
to help figure out where we are seeing crashes. Since macOS does
not support os_log_info my hope is that if we set all the callee
save registers before making any calls in the C++ code we can
figure out which calls is the source of the crash. We also, set
all the caller save registers before returning in case some
weirdness is happening in the Heap constructor.

This logging should not matter from a performance perspective. We
only create MachineStackMarkers when we are creating a new VM,
which is already expensive.

* heap/MachineStackMarker.cpp:
(JSC::MachineThreads::MachineThreads):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (218349 => 218350)

--- trunk/Source/_javascript_Core/ChangeLog	2017-06-15 19:49:40 UTC (rev 218349)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-06-15 20:02:22 UTC (rev 218350)
@@ -1,3 +1,25 @@
+2017-06-15  Keith Miller  
+
+Add logging to MachineStackMarker to try to diagnose crashes in the wild
+https://bugs.webkit.org/show_bug.cgi?id=173427
+
+Reviewed by Mark Lam.
+
+This patch adds some logging to the MachineStackMarker constructor
+to help figure out where we are seeing crashes. Since macOS does
+not support os_log_info my hope is that if we set all the callee
+save registers before making any calls in the C++ code we can
+figure out which calls is the source of the crash. We also, set
+all the caller save registers before returning in case some
+weirdness is happening in the Heap constructor.
+
+This logging should not matter from a performance perspective. We
+only create MachineStackMarkers when we are creating a new VM,
+which is already expensive.
+
+* heap/MachineStackMarker.cpp:
+(JSC::MachineThreads::MachineThreads):
+
 2017-06-15  Yusuke Suzuki  
 
 [JSC] Implement Object.assign in C++


Modified: trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp (218349 => 218350)

--- trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp	2017-06-15 19:49:40 UTC (rev 218349)
+++ trunk/Source/_javascript_Core/heap/MachineStackMarker.cpp	2017-06-15 20:02:22 UTC (rev 218350)
@@ -97,13 +97,49 @@
 });
 return *manager;
 }
-
+
+#if CPU(X86_64) && OS(DARWIN)
+#define FILL_CALLEE_SAVES_FOR_CRASH_INFO(number) \
+asm volatile(\
+"movq $0xc0defefe00" number ", %%rbx;" \
+"movq $0xc0defefe00" number ", %%r12;" \
+"movq $0xc0defefe00" number ", %%r13;" \
+"movq $0xc0defefe00" number ", %%r14;" \
+"movq $0xc0defefe00" number ", %%r15;" \
+:\
+:\
+: "%rbx", "%r12", "%r13", "%r14", "%r15" \
+);
+
+#define FILL_CALLER_SAVES_FOR_CRASH_INFO(number) \
+asm volatile(\
+"movq $0xc0defefe00" number ", %%rax;" \
+"movq $0xc0defefe00" number ", %%rdi;" \
+"movq $0xc0defefe00" number ", %%rsi;" \
+"movq $0xc0defefe00" number ", %%rdx;" \
+"movq $0xc0defefe00" number ", %%rcx;" \
+"movq $0xc0defefe00" number ", %%r8;"  \
+"movq $0xc0defefe00" number ", %%r9;"  \
+"movq $0xc0defefe00" number ", %%r10;" \
+"movq $0xc0defefe00" number ", %%r11;" \
+:\
+:\
+: "%rax", "%rdi", "%rsi", "%rdx", "%rcx", "%r8", "%r9", "%r10", "%r11" \
+);
+#else
+#define FILL_CALLEE_SAVES_FOR_CRASH_INFO(number)
+#define FILL_CALLER_SAVES_FOR_CRASH_INFO(number)
+#endif
+
 MachineThreads::MachineThreads()
 : m_registeredThreads()
 , m_threadSpecificForMachineThreads(0)
 {
+FILL_CALLEE_SAVES_FOR_CRASH_INFO("01");
 threadSpecificKeyCreate(_threadSpecificForMachineThreads, removeThread);
+FILL_CALLEE_SAVES_FOR_CRASH_INFO("02");
 activeMachineThreadsManager().add(this);
+FILL_CALLER_SAVES_FOR_CRASH_INFO("03");
 }
 
 MachineThreads::~MachineThreads()






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218349] trunk/Source/WTF

2017-06-15 Thread cdumez
Title: [218349] trunk/Source/WTF








Revision 218349
Author cdu...@apple.com
Date 2017-06-15 12:49:40 -0700 (Thu, 15 Jun 2017)


Log Message
Fix typo in XPCSPI.h
https://bugs.webkit.org/show_bug.cgi?id=173426

Reviewed by Alex Christensen.

We should check if xpc_release is defined before defining it,
not xpc_retain.

* wtf/spi/darwin/XPCSPI.h:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/spi/darwin/XPCSPI.h




Diff

Modified: trunk/Source/WTF/ChangeLog (218348 => 218349)

--- trunk/Source/WTF/ChangeLog	2017-06-15 19:37:21 UTC (rev 218348)
+++ trunk/Source/WTF/ChangeLog	2017-06-15 19:49:40 UTC (rev 218349)
@@ -1,3 +1,15 @@
+2017-06-15  Chris Dumez  
+
+Fix typo in XPCSPI.h
+https://bugs.webkit.org/show_bug.cgi?id=173426
+
+Reviewed by Alex Christensen.
+
+We should check if xpc_release is defined before defining it,
+not xpc_retain.
+
+* wtf/spi/darwin/XPCSPI.h:
+
 2017-06-15  Konstantin Tokarev  
 
 Implement FALLTHROUGH macro for compilers other than Clang


Modified: trunk/Source/WTF/wtf/spi/darwin/XPCSPI.h (218348 => 218349)

--- trunk/Source/WTF/wtf/spi/darwin/XPCSPI.h	2017-06-15 19:37:21 UTC (rev 218348)
+++ trunk/Source/WTF/wtf/spi/darwin/XPCSPI.h	2017-06-15 19:49:40 UTC (rev 218349)
@@ -152,7 +152,7 @@
 #endif
 
 #if OS_OBJECT_USE_OBJC_RETAIN_RELEASE
-#if !defined(xpc_retain)
+#if !defined(xpc_release)
 #define xpc_release(object) ({ xpc_object_t _o = (object); _xpc_object_validate(_o); [_o release]; })
 #endif
 #else






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218347] trunk/Source/WebCore

2017-06-15 Thread ddkilzer
Title: [218347] trunk/Source/WebCore








Revision 218347
Author ddkil...@apple.com
Date 2017-06-15 12:29:53 -0700 (Thu, 15 Jun 2017)


Log Message
Build fix: [iOS] Generate a simulated crash when the WebThread starts in MobileSafari



* platform/ios/CrashReporterSupportSoftLink.h:
* platform/ios/CrashReporterSupportSoftLink.mm:
* platform/ios/wak/WebCoreThread.mm:
(WebThreadEnable): Log to the console on iOS Simulator.
* platform/spi/ios/CrashReporterSupportSPI.h:
- CrashReporterSupport.h is not available on iOS Simulator, so
  restrict to iOS hardware only.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.h
trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.mm
trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm
trunk/Source/WebCore/platform/spi/ios/CrashReporterSupportSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218346 => 218347)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 19:00:29 UTC (rev 218346)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 19:29:53 UTC (rev 218347)
@@ -1,3 +1,17 @@
+2017-06-15  David Kilzer  
+
+Build fix: [iOS] Generate a simulated crash when the WebThread starts in MobileSafari
+
+
+
+* platform/ios/CrashReporterSupportSoftLink.h:
+* platform/ios/CrashReporterSupportSoftLink.mm:
+* platform/ios/wak/WebCoreThread.mm:
+(WebThreadEnable): Log to the console on iOS Simulator.
+* platform/spi/ios/CrashReporterSupportSPI.h:
+- CrashReporterSupport.h is not available on iOS Simulator, so
+  restrict to iOS hardware only.
+
 2017-06-15  Chris Dumez  
 
 Unreviewed, rolling out r218318.


Modified: trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.h (218346 => 218347)

--- trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.h	2017-06-15 19:00:29 UTC (rev 218346)
+++ trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.h	2017-06-15 19:29:53 UTC (rev 218347)
@@ -22,7 +22,7 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#if PLATFORM(IOS)
+#if PLATFORM(IOS) && !PLATFORM(IOS_SIMULATOR)
 
 #import "CrashReporterSupportSPI.h"
 #import "SoftLinking.h"
@@ -34,4 +34,4 @@
 
 using WebCore::softLink_CrashReporterSupport_SimulateCrash;
 
-#endif // PLATFORM(IOS)
+#endif // PLATFORM(IOS) && !PLATFORM(IOS_SIMULATOR)


Modified: trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.mm (218346 => 218347)

--- trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.mm	2017-06-15 19:00:29 UTC (rev 218346)
+++ trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.mm	2017-06-15 19:29:53 UTC (rev 218347)
@@ -24,7 +24,7 @@
 
 #import "config.h"
 
-#if PLATFORM(IOS)
+#if PLATFORM(IOS) && !PLATFORM(IOS_SIMULATOR)
 
 #import "CrashReporterSupportSPI.h"
 #import "SoftLinking.h"
@@ -33,4 +33,4 @@
 
 SOFT_LINK_FUNCTION_FOR_SOURCE(WebCore, CrashReporterSupport, SimulateCrash, BOOL, (pid_t pid, mach_exception_data_type_t exceptionCode, NSString *description), (pid, exceptionCode, description));
 
-#endif // PLATFORM(IOS)
+#endif // PLATFORM(IOS) && !PLATFORM(IOS_SIMULATOR)


Modified: trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm (218346 => 218347)

--- trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm	2017-06-15 19:00:29 UTC (rev 218346)
+++ trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm	2017-06-15 19:29:53 UTC (rev 218347)
@@ -1003,8 +1003,13 @@
 void WebThreadEnable(void)
 {
 if (WebCore::IOSApplication::isMobileSafari()) {
+NSString *message = @"MobileSafari should never run a WebThread";
+#if !PLATFORM(IOS_SIMULATOR)
 const mach_exception_data_type_t kExceptionCode = 0xbbadd0b1; // "Bad Dub 1" or Bad WK1.
-SimulateCrash(getpid(), kExceptionCode, @"MobileSafari should never run a WebThread");
+SimulateCrash(getpid(), kExceptionCode, message);
+#else
+NSLog(@"ERROR: %@\n%@", message, [NSThread callStackSymbols]);
+#endif
 }
 RELEASE_ASSERT_WITH_MESSAGE(!WebCore::IOSApplication::isWebProcess(), "The WebProcess should never run a WebThread");
 


Modified: trunk/Source/WebCore/platform/spi/ios/CrashReporterSupportSPI.h (218346 => 218347)

--- trunk/Source/WebCore/platform/spi/ios/CrashReporterSupportSPI.h	2017-06-15 19:00:29 UTC (rev 218346)
+++ trunk/Source/WebCore/platform/spi/ios/CrashReporterSupportSPI.h	2017-06-15 19:29:53 UTC (rev 218347)
@@ -26,6 +26,8 @@
 #import 
 #import 
 
+#if PLATFORM(IOS) && !PLATFORM(IOS_SIMULATOR)
+
 #if USE(APPLE_INTERNAL_SDK)
 
 WTF_EXTERN_C_BEGIN
@@ -37,3 +39,5 @@
 WTF_EXTERN_C_BEGIN
 BOOL SimulateCrash(pid_t pid, mach_exception_data_type_t exceptionCode, NSString *description);
 WTF_EXTERN_C_END
+
+#endif // PLATFORM(IOS) && !PLATFORM(IOS_SIMULATOR)






___
webkit-changes mailing list
webkit-changes@lists.webkit.org

[webkit-changes] [218346] trunk/LayoutTests

2017-06-15 Thread jlewis3
Title: [218346] trunk/LayoutTests








Revision 218346
Author jlew...@apple.com
Date 2017-06-15 12:00:29 -0700 (Thu, 15 Jun 2017)


Log Message
REGRESSION (r218228): Layout Test editing/execCommand/strikethrough-uses-strike-tag.html is failing
https://bugs.webkit.org/show_bug.cgi?id=173375

Unreviewed test gardening.

Reverted an incorrect baseline and skipped a test causing test failures.

* TestExpectations:
* platform/mac-wk1/editing/execCommand/strikethrough-uses-strike-tag-expected.txt: Removed.
* platform/win/editing/execCommand/strikethrough-uses-strike-tag-expected.txt: Removed.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations


Removed Paths

trunk/LayoutTests/platform/mac-wk1/editing/execCommand/strikethrough-uses-strike-tag-expected.txt
trunk/LayoutTests/platform/win/editing/execCommand/strikethrough-uses-strike-tag-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (218345 => 218346)

--- trunk/LayoutTests/ChangeLog	2017-06-15 18:59:28 UTC (rev 218345)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 19:00:29 UTC (rev 218346)
@@ -1,3 +1,16 @@
+2017-06-15  Matt Lewis  
+
+REGRESSION (r218228): Layout Test editing/execCommand/strikethrough-uses-strike-tag.html is failing
+https://bugs.webkit.org/show_bug.cgi?id=173375
+
+Unreviewed test gardening.
+
+Reverted an incorrect baseline and skipped a test causing test failures.
+
+* TestExpectations:
+* platform/mac-wk1/editing/execCommand/strikethrough-uses-strike-tag-expected.txt: Removed.
+* platform/win/editing/execCommand/strikethrough-uses-strike-tag-expected.txt: Removed.
+
 2017-06-15  Youenn Fablet  
 
 RTCPeerConnection returns RTCSessionDescription where RTCSessionDescriptionInit would be appropriate


Modified: trunk/LayoutTests/TestExpectations (218345 => 218346)

--- trunk/LayoutTests/TestExpectations	2017-06-15 18:59:28 UTC (rev 218345)
+++ trunk/LayoutTests/TestExpectations	2017-06-15 19:00:29 UTC (rev 218346)
@@ -38,7 +38,7 @@
 http/tests/preload/viewport [ Skip ]
 
 # window.showModalDialog is only tested in DumpRenderTree on Mac.
-[ Debug ] editing/execCommand/show-modal-dialog-during-execCommand.html [ Skip ]
+editing/execCommand/show-modal-dialog-during-execCommand.html [ Skip ]
 
 fast/shadow-dom/touch-event-on-text-assigned-to-slot.html [ Skip ]
 


Deleted: trunk/LayoutTests/platform/mac-wk1/editing/execCommand/strikethrough-uses-strike-tag-expected.txt (218345 => 218346)

--- trunk/LayoutTests/platform/mac-wk1/editing/execCommand/strikethrough-uses-strike-tag-expected.txt	2017-06-15 18:59:28 UTC (rev 218345)
+++ trunk/LayoutTests/platform/mac-wk1/editing/execCommand/strikethrough-uses-strike-tag-expected.txt	2017-06-15 19:00:29 UTC (rev 218346)
@@ -1,11 +0,0 @@
-Blocked access to external URL https://www.webkit.org/
-Ensuring we continue to use strike tags for legacy strikethrough execCommands, not s tags. See https://bugs.webkit.org/show_bug.cgi?id=53475
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS Strikethrough of "Don't change expected results for me!" yields "Don't change expected results for me!"
-PASS successfullyParsed is true
-
-TEST COMPLETE
-


Deleted: trunk/LayoutTests/platform/win/editing/execCommand/strikethrough-uses-strike-tag-expected.txt (218345 => 218346)

--- trunk/LayoutTests/platform/win/editing/execCommand/strikethrough-uses-strike-tag-expected.txt	2017-06-15 18:59:28 UTC (rev 218345)
+++ trunk/LayoutTests/platform/win/editing/execCommand/strikethrough-uses-strike-tag-expected.txt	2017-06-15 19:00:29 UTC (rev 218346)
@@ -1,11 +0,0 @@
-Blocked access to external URL https://www.webkit.org/
-Ensuring we continue to use strike tags for legacy strikethrough execCommands, not s tags. See https://bugs.webkit.org/show_bug.cgi?id=53475
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS Strikethrough of "Don't change expected results for me!" yields "Don't change expected results for me!"
-PASS successfullyParsed is true
-
-TEST COMPLETE
-






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218345] trunk/Source/WebCore

2017-06-15 Thread cdumez
Title: [218345] trunk/Source/WebCore








Revision 218345
Author cdu...@apple.com
Date 2017-06-15 11:59:28 -0700 (Thu, 15 Jun 2017)


Log Message
Unreviewed, rolling out r218318.

Seems to have caused an 11% PLT regression. Rolling out to
confirm.

Reverted changeset:

"Don't always recalc the style of display: contents elements."
https://bugs.webkit.org/show_bug.cgi?id=172753
http://trac.webkit.org/changeset/218318

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Element.cpp
trunk/Source/WebCore/dom/Element.h
trunk/Source/WebCore/style/RenderTreeUpdater.cpp
trunk/Source/WebCore/style/StyleTreeResolver.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (218344 => 218345)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 18:44:42 UTC (rev 218344)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 18:59:28 UTC (rev 218345)
@@ -1,3 +1,16 @@
+2017-06-15  Chris Dumez  
+
+Unreviewed, rolling out r218318.
+
+Seems to have caused an 11% PLT regression. Rolling out to
+confirm.
+
+Reverted changeset:
+
+"Don't always recalc the style of display: contents elements."
+https://bugs.webkit.org/show_bug.cgi?id=172753
+http://trac.webkit.org/changeset/218318
+
 2017-06-15  Wenson Hsieh  
 
 Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading


Modified: trunk/Source/WebCore/dom/Element.cpp (218344 => 218345)

--- trunk/Source/WebCore/dom/Element.cpp	2017-06-15 18:44:42 UTC (rev 218344)
+++ trunk/Source/WebCore/dom/Element.cpp	2017-06-15 18:59:28 UTC (rev 218345)
@@ -2663,7 +2663,7 @@
 }
 }
 
-const RenderStyle* Element::existingComputedStyle() const
+const RenderStyle* Element::existingComputedStyle()
 {
 if (auto* renderTreeStyle = renderStyle())
 return renderTreeStyle;


Modified: trunk/Source/WebCore/dom/Element.h (218344 => 218345)

--- trunk/Source/WebCore/dom/Element.h	2017-06-15 18:44:42 UTC (rev 218344)
+++ trunk/Source/WebCore/dom/Element.h	2017-06-15 18:59:28 UTC (rev 218345)
@@ -505,8 +505,6 @@
 
 LayoutRect absoluteEventHandlerBounds(bool& includesFixedPositionElements) override;
 
-const RenderStyle* existingComputedStyle() const;
-
 void setBeforePseudoElement(Ref&&);
 void setAfterPseudoElement(Ref&&);
 void clearBeforePseudoElement();
@@ -645,6 +643,7 @@
 
 void removeShadowRoot();
 
+const RenderStyle* existingComputedStyle();
 const RenderStyle& resolveComputedStyle();
 
 bool rareDataStyleAffectedByEmpty() const;


Modified: trunk/Source/WebCore/style/RenderTreeUpdater.cpp (218344 => 218345)

--- trunk/Source/WebCore/style/RenderTreeUpdater.cpp	2017-06-15 18:44:42 UTC (rev 218344)
+++ trunk/Source/WebCore/style/RenderTreeUpdater.cpp	2017-06-15 18:59:28 UTC (rev 218345)
@@ -157,8 +157,6 @@
 
 if (auto* renderer = node.renderer())
 renderTreePosition().invalidateNextSibling(*renderer);
-else if (is(node) && downcast(node).hasDisplayContents())
-renderTreePosition().invalidateNextSibling();
 
 if (is(node)) {
 auto& text = downcast(node);
@@ -172,16 +170,12 @@
 auto& element = downcast(node);
 
 auto* elementUpdate = m_styleUpdate->elementUpdate(element);
-
-// We hop through display: contents elements in findRenderingRoot, so
-// there may be other updates down the tree.
-if (!elementUpdate && !element.hasDisplayContents()) {
+if (!elementUpdate) {
 it.traverseNextSkippingChildren();
 continue;
 }
 
-if (elementUpdate)
-updateElementRenderer(element, *elementUpdate);
+updateElementRenderer(element, *elementUpdate);
 
 bool mayHaveRenderedDescendants = element.renderer() || (element.hasDisplayContents() && shouldCreateRenderer(element, renderTreePosition().parent()));
 if (!mayHaveRenderedDescendants) {
@@ -280,6 +274,8 @@
 element.resetComputedStyle();
 else
 element.storeDisplayContentsStyle(RenderStyle::clonePtr(*update.style));
+// Render tree position needs to be recomputed as rendering siblings may be found from the display:contents subtree.
+renderTreePosition().invalidateNextSibling();
 }
 
 bool shouldCreateNewRenderer = !element.renderer() && !hasDisplayContents;


Modified: trunk/Source/WebCore/style/StyleTreeResolver.cpp (218344 => 218345)

--- trunk/Source/WebCore/style/StyleTreeResolver.cpp	2017-06-15 18:44:42 UTC (rev 218344)
+++ trunk/Source/WebCore/style/StyleTreeResolver.cpp	2017-06-15 18:59:28 UTC (rev 218345)
@@ -179,7 +179,7 @@
 if (!affectsRenderedSubtree(element, *newStyle))
 return { };
 
-auto* existingStyle = element.existingComputedStyle();
+auto* existingStyle = element.renderStyle();
 
 if (m_didSeePendingStylesheet && (!existingStyle || existingStyle->isNotFinal())) 

[webkit-changes] [218343] trunk

2017-06-15 Thread wenson_hsieh
Title: [218343] trunk








Revision 218343
Author wenson_hs...@apple.com
Date 2017-06-15 11:11:52 -0700 (Thu, 15 Jun 2017)


Log Message
Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
https://bugs.webkit.org/show_bug.cgi?id=173338


Reviewed by Tim Horton.

Source/WebCore:

Currently, replacing the list of UIItemProviders right before a drop is handled results in
WebItemProviderPasteboard failing to load non-"public.content"-conformant items. This is because DragController
computes and sends to the UI process a list of UTIs to load (preferredTypeIdentifiers: one type identifier for
each item provider in WebItemProviderPasteboard). However, if the list of item providers changes immediately
before a drop is performed, WebItemProviderPasteboard will get into an inconsistent state where it has a
different number of preferred type identifiers to load than available item providers. This causes
WebItemProviderPasteboard to fail when choosing what type identifiers to load from each item provider.

To fix this, we instead have the web process propagate a list of supported type identifiers to the UI process,
which is a property of only the drop destination rather than both the destination and item providers. When
performing a drop, we then use the current item providers on WebItemProviderPasteboard to consult this list of
supported type identifiers to resolve our list of preferred type identifiers to load.

Globally renames updatePreferredTypeIdentifiers to updateSupportedTypeIdentifiers.

Tests:
DataInteractionTests.ExternalSourceOverrideDropFileUpload
DataInteractionTests.ExternalSourceOverrideDropInsertURL

* page/DragController.cpp:
(WebCore::DragController::dragEnteredOrUpdated):
(WebCore::DragController::updateSupportedTypeIdentifiersForDragHandlingMethod):
(WebCore::DragController::updatePreferredTypeIdentifiersForDragHandlingMethod): Deleted.
* page/DragController.h:
* page/mac/DragControllerMac.mm:
(WebCore::DragController::updateSupportedTypeIdentifiersForDragHandlingMethod):
(WebCore::DragController::updatePreferredTypeIdentifiersForDragHandlingMethod): Deleted.
* platform/DragData.h:
* platform/PasteboardStrategy.h:
* platform/PlatformPasteboard.h:
* platform/ios/AbstractPasteboard.h:
* platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::updateSupportedTypeIdentifiers):
(WebCore::PlatformPasteboard::updatePreferredTypeIdentifiers): Deleted.
* platform/ios/WebItemProviderPasteboard.mm:
(-[WebItemProviderPasteboard init]):
(-[WebItemProviderPasteboard updateSupportedTypeIdentifiers:]):
(-[WebItemProviderPasteboard setItemProviders:]):
(-[WebItemProviderPasteboard typeIsAppropriateForSupportedTypes:]):
(-[WebItemProviderPasteboard typeIdentifierToLoadForRegisteredTypeIdentfiers:]):

Add logic to resolve preferred type identifiers from an item providers list of registered type identifiers.
This formerly existed on DragData.

(-[WebItemProviderPasteboard doAfterLoadingProvidedContentIntoFileURLs:synchronousTimeout:]):
(-[WebItemProviderPasteboard updatePreferredTypeIdentifiers:]): Deleted.
* platform/mac/DragDataMac.mm:

Remove preferred type identifier resolution logic from DragData.

(WebCore::typeIsAppropriateForSupportedTypes): Deleted.
(WebCore::DragData::updatePreferredTypeIdentifiers): Deleted.

Source/WebKit/mac:

Rename updatePreferredTypeIdentifiers to updateSupportedTypeIdentifiers.

* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::updateSupportedTypeIdentifiers):
(WebPlatformStrategies::updatePreferredTypeIdentifiers): Deleted.

Source/WebKit2:

Rename updatePreferredTypeIdentifiers to updateSupportedTypeIdentifiers. Also, introduce
_webView:willPerformDropWithSession: as SPI on WKUIDelegate.

* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
* UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
(WebKit::WebPasteboardProxy::updateSupportedTypeIdentifiers):
(WebKit::WebPasteboardProxy::updatePreferredTypeIdentifiers): Deleted.
* UIProcess/WebPasteboardProxy.h:
* UIProcess/WebPasteboardProxy.messages.in:
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::updateSupportedTypeIdentifiers):
(WebKit::WebPlatformStrategies::updatePreferredTypeIdentifiers): Deleted.
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

Tools:

Adds new unit tests to ensure that -_webView:willPerformDropWithSession: can be used to filter out drag items
used by WebKit when handling a drop. These tests ensure that WebItemProviderPasteboard is still able to handle
these remaining items on drop.

* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/DataInteractionSimulator.h:
* TestWebKitAPI/ios/DataInteractionSimulator.mm:

Add -overridePerformDropBlock, which can be set to provide custom handling of dropped items.

(-[DataInteractionSimulator _webView:willPerformDropWithSession:]):

Modified Paths


[webkit-changes] [218340] branches/safari-604.1.25.4-branch/Source

2017-06-15 Thread matthew_hanson
Title: [218340] branches/safari-604.1.25.4-branch/Source








Revision 218340
Author matthew_han...@apple.com
Date 2017-06-15 10:05:26 -0700 (Thu, 15 Jun 2017)


Log Message
Versioning.

Modified Paths

branches/safari-604.1.25.4-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-604.1.25.4-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
branches/safari-604.1.25.4-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-604.1.25.4-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-604.1.25.4-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-604.1.25.4-branch/Source/WebKit/mac/Configurations/Version.xcconfig
branches/safari-604.1.25.4-branch/Source/WebKit2/Configurations/Version.xcconfig




Diff

Modified: branches/safari-604.1.25.4-branch/Source/_javascript_Core/Configurations/Version.xcconfig (218339 => 218340)

--- branches/safari-604.1.25.4-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-06-15 17:05:04 UTC (rev 218339)
+++ branches/safari-604.1.25.4-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2017-06-15 17:05:26 UTC (rev 218340)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 25;
 MICRO_VERSION = 4;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-604.1.25.4-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (218339 => 218340)

--- branches/safari-604.1.25.4-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2017-06-15 17:05:04 UTC (rev 218339)
+++ branches/safari-604.1.25.4-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2017-06-15 17:05:26 UTC (rev 218340)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 25;
 MICRO_VERSION = 4;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-604.1.25.4-branch/Source/WebCore/Configurations/Version.xcconfig (218339 => 218340)

--- branches/safari-604.1.25.4-branch/Source/WebCore/Configurations/Version.xcconfig	2017-06-15 17:05:04 UTC (rev 218339)
+++ branches/safari-604.1.25.4-branch/Source/WebCore/Configurations/Version.xcconfig	2017-06-15 17:05:26 UTC (rev 218340)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 25;
 MICRO_VERSION = 4;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-604.1.25.4-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (218339 => 218340)

--- branches/safari-604.1.25.4-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-06-15 17:05:04 UTC (rev 218339)
+++ branches/safari-604.1.25.4-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2017-06-15 17:05:26 UTC (rev 218340)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 25;
 MICRO_VERSION = 4;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-604.1.25.4-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (218339 => 218340)

--- branches/safari-604.1.25.4-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-06-15 17:05:04 UTC (rev 218339)
+++ branches/safari-604.1.25.4-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2017-06-15 17:05:26 UTC (rev 218340)
@@ -2,7 +2,7 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 25;
 MICRO_VERSION = 4;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The system version prefix is based on the current system version.


Modified: branches/safari-604.1.25.4-branch/Source/WebKit/mac/Configurations/Version.xcconfig (218339 => 218340)

--- branches/safari-604.1.25.4-branch/Source/WebKit/mac/Configurations/Version.xcconfig	2017-06-15 17:05:04 UTC (rev 218339)
+++ branches/safari-604.1.25.4-branch/Source/WebKit/mac/Configurations/Version.xcconfig	2017-06-15 17:05:26 UTC (rev 218340)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 1;
 TINY_VERSION = 25;
 MICRO_VERSION = 4;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.



[webkit-changes] [218341] branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in

2017-06-15 Thread matthew_hanson
Title: [218341] branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in








Revision 218341
Author matthew_han...@apple.com
Date 2017-06-15 10:05:30 -0700 (Thu, 15 Jun 2017)


Log Message
rdar://problem/32621736

Modified Paths

branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in




Diff

Modified: branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in (218340 => 218341)

--- branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in	2017-06-15 17:05:26 UTC (rev 218340)
+++ branches/safari-604.1.25.4-branch/Source/WebCore/page/Settings.in	2017-06-15 17:05:30 UTC (rev 218341)
@@ -292,7 +292,7 @@
 
 langAttributeAwareFormControlUIEnabled initial=false
 
-#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED > 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED > 11)
+#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED <= 11)
 subresourceIntegrityEnabled initial=false
 #else
 subresourceIntegrityEnabled initial=true






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218339] trunk/Source/WebCore

2017-06-15 Thread ddkilzer
Title: [218339] trunk/Source/WebCore








Revision 218339
Author ddkil...@apple.com
Date 2017-06-15 10:05:04 -0700 (Thu, 15 Jun 2017)


Log Message
[iOS] Generate a simulated crash when the WebThread starts in MobileSafari



Reviewed by Andy Estes.

* WebCore.xcodeproj/project.pbxproj: Add new files to project.
* platform/ios/CrashReporterSupportSoftLink.h: Add.  The using
statement is so that we don't have to write
WebCore::SimulateCrash() in WebCoreThread.mm since it's
functions are not defined inside a WebCore namespace.  I also
kept the 'pid' argument despite the style checker warning
because it matches the internal method definition.
* platform/ios/CrashReporterSupportSoftLink.mm: Add.
* platform/ios/wak/WebCoreThread.mm: Sort headers.  Soft link to
CrashReporterSupport.framework.
(WebThreadEnable): Generate a simulated crash log if the
WebThread ever starts in MobileSafari.
* platform/spi/ios/CrashReporterSupportSPI.h: Add.  The header
isn't safe to include in C++ source, so wrap the import in
extern "C" macros.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/platform/ios/wak/WebCoreThread.mm


Added Paths

trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.h
trunk/Source/WebCore/platform/ios/CrashReporterSupportSoftLink.mm
trunk/Source/WebCore/platform/spi/ios/CrashReporterSupportSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218338 => 218339)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 17:01:26 UTC (rev 218338)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 17:05:04 UTC (rev 218339)
@@ -1,3 +1,27 @@
+2017-06-14  David Kilzer  
+
+[iOS] Generate a simulated crash when the WebThread starts in MobileSafari
+
+
+
+Reviewed by Andy Estes.
+
+* WebCore.xcodeproj/project.pbxproj: Add new files to project.
+* platform/ios/CrashReporterSupportSoftLink.h: Add.  The using
+statement is so that we don't have to write
+WebCore::SimulateCrash() in WebCoreThread.mm since it's
+functions are not defined inside a WebCore namespace.  I also
+kept the 'pid' argument despite the style checker warning
+because it matches the internal method definition.
+* platform/ios/CrashReporterSupportSoftLink.mm: Add.
+* platform/ios/wak/WebCoreThread.mm: Sort headers.  Soft link to
+CrashReporterSupport.framework.
+(WebThreadEnable): Generate a simulated crash log if the
+WebThread ever starts in MobileSafari.
+* platform/spi/ios/CrashReporterSupportSPI.h: Add.  The header
+isn't safe to include in C++ source, so wrap the import in
+extern "C" macros.
+
 2017-06-15  Jonathan Bedard  
 
 Build WebKit with High Sierra (Seed 1)


Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (218338 => 218339)

--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2017-06-15 17:01:26 UTC (rev 218338)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2017-06-15 17:05:04 UTC (rev 218339)
@@ -1912,6 +1912,9 @@
 		44C991860F3D1EBE00586670 /* ScrollbarThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */; };
 		44C9919F0F3D210E00586670 /* ThemeIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 44C9919D0F3D210E00586670 /* ThemeIOS.h */; };
 		44C991A00F3D210E00586670 /* ThemeIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44C9919E0F3D210E00586670 /* ThemeIOS.mm */; };
+		44CA12961EF23A4F00E4B3AD /* CrashReporterSupportSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 44CA12941EF23A2000E4B3AD /* CrashReporterSupportSoftLink.h */; };
+		44CA12981EF23A6900E4B3AD /* CrashReporterSupportSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 44CA12971EF23A6500E4B3AD /* CrashReporterSupportSPI.h */; };
+		44CA129B1EF2D9E800E4B3AD /* CrashReporterSupportSoftLink.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44CA12951EF23A2000E4B3AD /* CrashReporterSupportSoftLink.mm */; };
 		44DAB5B115A623580097C1E4 /* Extensions3DOpenGLCommon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 44DAB5AF15A623580097C1E4 /* Extensions3DOpenGLCommon.cpp */; };
 		44DAB5B215A623580097C1E4 /* Extensions3DOpenGLCommon.h in Headers */ = {isa = PBXBuildFile; fileRef = 44DAB5B015A623580097C1E4 /* Extensions3DOpenGLCommon.h */; };
 		44DEF6431A6FF92700D45EEC /* IOReturnSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 44DEF6421A6FF92700D45EEC /* IOReturnSPI.h */; settings = {ATTRIBUTES = (Private, ); }; };
@@ -9636,6 +9639,9 @@
 		44C991850F3D1EBE00586670 /* ScrollbarThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollbarThemeIOS.h; sourceTree = ""; };
 		44C9919D0F3D210E00586670 /* ThemeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThemeIOS.h; sourceTree = ""; };
 		

[webkit-changes] [218337] trunk/Tools

2017-06-15 Thread pvollan
Title: [218337] trunk/Tools








Revision 218337
Author pvol...@apple.com
Date 2017-06-15 10:01:26 -0700 (Thu, 15 Jun 2017)


Log Message
[Win] Crash in accessibility layout test.
https://bugs.webkit.org/show_bug.cgi?id=173401

Reviewed by Brent Fulgham.

We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
member will be automatically released when the _variant_t object goes out of scope if the vt member
does not equal VT_UNKNOWN | VT_BYREF.
See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx.

* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::titleUIElement):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/win/AccessibilityUIElementWin.cpp




Diff

Modified: trunk/Tools/ChangeLog (218336 => 218337)

--- trunk/Tools/ChangeLog	2017-06-15 16:57:17 UTC (rev 218336)
+++ trunk/Tools/ChangeLog	2017-06-15 17:01:26 UTC (rev 218337)
@@ -1,3 +1,18 @@
+2017-06-15  Per Arne Vollan  
+
+[Win] Crash in accessibility layout test.
+https://bugs.webkit.org/show_bug.cgi?id=173401
+
+Reviewed by Brent Fulgham.
+
+We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
+member will be automatically released when the _variant_t object goes out of scope if the vt member
+does not equal VT_UNKNOWN | VT_BYREF.
+See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx. 
+
+* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
+(AccessibilityUIElement::titleUIElement):
+
 2017-06-15  Carlos Garcia Campos  
 
 [GTK] Add API to allow overriding popup menus


Modified: trunk/Tools/DumpRenderTree/win/AccessibilityUIElementWin.cpp (218336 => 218337)

--- trunk/Tools/DumpRenderTree/win/AccessibilityUIElementWin.cpp	2017-06-15 16:57:17 UTC (rev 218336)
+++ trunk/Tools/DumpRenderTree/win/AccessibilityUIElementWin.cpp	2017-06-15 17:01:26 UTC (rev 218337)
@@ -200,8 +200,6 @@
 return nullptr;
 
 COMPtr titleElement(Query, value.punkVal);
-if (value.punkVal)
-value.punkVal->Release();
 
 return titleElement;
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218338] branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in

2017-06-15 Thread matthew_hanson
Title: [218338] branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in








Revision 218338
Author matthew_han...@apple.com
Date 2017-06-15 10:01:26 -0700 (Thu, 15 Jun 2017)


Log Message
rdar://problem/32621736

Modified Paths

branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in




Diff

Modified: branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in (218337 => 218338)

--- branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in	2017-06-15 17:01:26 UTC (rev 218337)
+++ branches/safari-604.1.25.3-branch/Source/WebCore/page/Settings.in	2017-06-15 17:01:26 UTC (rev 218338)
@@ -292,7 +292,7 @@
 
 langAttributeAwareFormControlUIEnabled initial=false
 
-#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED > 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED > 11)
+#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101300) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED <= 11)
 subresourceIntegrityEnabled initial=false
 #else
 subresourceIntegrityEnabled initial=true






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218336] trunk/Source/WebCore

2017-06-15 Thread jbedard
Title: [218336] trunk/Source/WebCore








Revision 218336
Author jbed...@apple.com
Date 2017-06-15 09:57:17 -0700 (Thu, 15 Jun 2017)


Log Message
Build WebKit with High Sierra (Seed 1)
https://bugs.webkit.org/show_bug.cgi?id=173371

Reviewed by Andy Estes.

* crypto/CommonCryptoUtilities.h: Added ccRSAPSSPadding to CCAsymmetricPading enum.
* platform/spi/cocoa/AVKitSPI.h: Declare AVKit SPI used by WebKit in High Sierra.
(-[AVTouchBarPlaybackControlsControlling NS_ENUM]): Added AVTouchBarMediaSelectionOptionType
SPI used in WebPlaybackControlManager in High Sierra.
* platform/spi/cocoa/PassKitSPI.h: Declare PassKit SPI used by WebKit in High Sierra.
(NS_ERROR_ENUM): Added PKPaymentErrorCode used in WebPayment in High Sierra.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/crypto/CommonCryptoUtilities.h
trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h
trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (218335 => 218336)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 16:24:20 UTC (rev 218335)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 16:57:17 UTC (rev 218336)
@@ -1,3 +1,17 @@
+2017-06-15  Jonathan Bedard  
+
+Build WebKit with High Sierra (Seed 1)
+https://bugs.webkit.org/show_bug.cgi?id=173371
+
+Reviewed by Andy Estes.
+
+* crypto/CommonCryptoUtilities.h: Added ccRSAPSSPadding to CCAsymmetricPading enum.
+* platform/spi/cocoa/AVKitSPI.h: Declare AVKit SPI used by WebKit in High Sierra.
+(-[AVTouchBarPlaybackControlsControlling NS_ENUM]): Added AVTouchBarMediaSelectionOptionType
+SPI used in WebPlaybackControlManager in High Sierra.
+* platform/spi/cocoa/PassKitSPI.h: Declare PassKit SPI used by WebKit in High Sierra.
+(NS_ERROR_ENUM): Added PKPaymentErrorCode used in WebPayment in High Sierra.
+
 2017-06-15  Youenn Fablet  
 
 RTCPeerConnection returns RTCSessionDescription where RTCSessionDescriptionInit would be appropriate


Modified: trunk/Source/WebCore/crypto/CommonCryptoUtilities.h (218335 => 218336)

--- trunk/Source/WebCore/crypto/CommonCryptoUtilities.h	2017-06-15 16:24:20 UTC (rev 218335)
+++ trunk/Source/WebCore/crypto/CommonCryptoUtilities.h	2017-06-15 16:57:17 UTC (rev 218336)
@@ -59,7 +59,8 @@
 
 enum {
 ccPKCS1Padding = 1001,
-ccOAEPPadding = 1002
+ccOAEPPadding = 1002,
+ccRSAPSSPadding = 1005
 };
 typedef uint32_t CCAsymmetricPadding;
 


Modified: trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h (218335 => 218336)

--- trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h	2017-06-15 16:24:20 UTC (rev 218335)
+++ trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h	2017-06-15 16:57:17 UTC (rev 218336)
@@ -218,6 +218,13 @@
 @property (readonly, getter=isPictureInPictureActive) BOOL pictureInPictureActive;
 @property (readonly) BOOL canTogglePictureInPicture;
 - (void)togglePictureInPicture;
+
+typedef NS_ENUM(NSInteger, AVTouchBarMediaSelectionOptionType) {
+AVTouchBarMediaSelectionOptionTypeRegular,
+AVTouchBarMediaSelectionOptionTypeLegibleOff,
+AVTouchBarMediaSelectionOptionTypeLegibleAuto,
+};
+
 @end
 
 @interface AVTouchBarPlaybackControlsProvider : NSResponder
@@ -230,6 +237,10 @@
 @property BOOL canShowMediaSelectionButton;
 @end
 
+@interface AVTouchBarMediaSelectionOption : NSObject
+- (instancetype)initWithTitle:(nonnull NSString *)title type:(AVTouchBarMediaSelectionOptionType)type;
+@end
+
 @class AVThumbnail;
 
 #endif


Modified: trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h (218335 => 218336)

--- trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h	2017-06-15 16:24:20 UTC (rev 218335)
+++ trunk/Source/WebCore/platform/spi/cocoa/PassKitSPI.h	2017-06-15 16:57:17 UTC (rev 218336)
@@ -44,10 +44,21 @@
 NS_ASSUME_NONNULL_BEGIN
 
 #if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300
+
 @class PKPaymentAuthorizationResult;
+@class PKPaymentRequestUpdate;
 @class PKPaymentRequestPaymentMethodUpdate;
 @class PKPaymentRequestShippingMethodUpdate;
 @class PKPaymentRequestShippingContactUpdate;
+
+extern NSString * const PKPaymentErrorDomain;
+typedef NS_ERROR_ENUM(PKPaymentErrorDomain, PKPaymentErrorCode) {
+PKPaymentUnknownError = -1,
+PKPaymentShippingContactInvalidError = 1,
+PKPaymentBillingContactInvalidError,
+PKPaymentShippingAddressUnserviceableError,
+};
+
 #endif
 
 typedef NS_OPTIONS(NSUInteger, PKAddressField) {
@@ -188,7 +199,13 @@
 
 @protocol PKPaymentAuthorizationViewControllerDelegate 
 @required
+
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)controller didAuthorizePayment:(PKPayment *)payment handler:(void (^)(PKPaymentAuthorizationResult *result))completion;
+#else
 - (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)controller didAuthorizePayment:(PKPayment *)payment completion:(void 

[webkit-changes] [218335] trunk

2017-06-15 Thread commit-queue
Title: [218335] trunk








Revision 218335
Author commit-qu...@webkit.org
Date 2017-06-15 09:24:20 -0700 (Thu, 15 Jun 2017)


Log Message
RTCPeerConnection returns RTCSessionDescription where RTCSessionDescriptionInit would be appropriate
https://bugs.webkit.org/show_bug.cgi?id=173118


Patch by Youenn Fablet  on 2017-06-15
Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

* web-platform-tests/webrtc/RTCPeerConnection-createOffer-expected.txt:

Source/WebCore:

Test: webrtc/createOfferAnswer.html

Making the promise return a RTCSessionDescription::Init instead of a RTCSessionDescription.
This aligns with the spec and is more optimal.

* Modules/mediastream/PeerConnectionBackend.cpp:
(WebCore::PeerConnectionBackend::createOfferSucceeded):
(WebCore::PeerConnectionBackend::createAnswerSucceeded):
* Modules/mediastream/PeerConnectionBackend.h:
* Modules/mediastream/RTCSessionDescription.idl:

LayoutTests:

* fast/mediastream/RTCPeerConnection-setLocalDescription-offer-expected.txt:
* fast/mediastream/RTCPeerConnection-setRemoteDescription-offer-expected.txt:
* webrtc/createOfferAnswer-expected.txt: Added.
* webrtc/createOfferAnswer.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setLocalDescription-offer-expected.txt
trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setRemoteDescription-offer-expected.txt
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-createOffer-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediastream/PeerConnectionBackend.cpp
trunk/Source/WebCore/Modules/mediastream/PeerConnectionBackend.h
trunk/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl


Added Paths

trunk/LayoutTests/webrtc/createOfferAnswer-expected.txt
trunk/LayoutTests/webrtc/createOfferAnswer.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218334 => 218335)

--- trunk/LayoutTests/ChangeLog	2017-06-15 16:19:57 UTC (rev 218334)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 16:24:20 UTC (rev 218335)
@@ -1,3 +1,16 @@
+2017-06-15  Youenn Fablet  
+
+RTCPeerConnection returns RTCSessionDescription where RTCSessionDescriptionInit would be appropriate
+https://bugs.webkit.org/show_bug.cgi?id=173118
+
+
+Reviewed by Eric Carlson.
+
+* fast/mediastream/RTCPeerConnection-setLocalDescription-offer-expected.txt:
+* fast/mediastream/RTCPeerConnection-setRemoteDescription-offer-expected.txt:
+* webrtc/createOfferAnswer-expected.txt: Added.
+* webrtc/createOfferAnswer.html: Added.
+
 2017-06-15  Matt Lewis  
 
 Marked imported/w3c/web-platform-tests/dom/nodes/Document-constructor-svg.svg as skip.


Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setLocalDescription-offer-expected.txt (218334 => 218335)

--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setLocalDescription-offer-expected.txt	2017-06-15 16:19:57 UTC (rev 218334)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setLocalDescription-offer-expected.txt	2017-06-15 16:24:20 UTC (rev 218335)
@@ -19,8 +19,8 @@
 
 PASS firstOffer set as local description
 FAIL pc.signalingState should be have-local-offer. Was stable.
-FAIL pc.localDescription should be [object RTCSessionDescription]. Was null.
-FAIL pc.pendingLocalDescription should be [object RTCSessionDescription]. Was null.
+FAIL pc.localDescription should be [object Object]. Was null.
+FAIL pc.pendingLocalDescription should be [object Object]. Was null.
 PASS pc.currentLocalDescription is null
 FAIL Error caught in promise chain: TypeError: null is not an object (evaluating 'pc.localDescription.type')
 PASS successfullyParsed is true


Modified: trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setRemoteDescription-offer-expected.txt (218334 => 218335)

--- trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setRemoteDescription-offer-expected.txt	2017-06-15 16:19:57 UTC (rev 218334)
+++ trunk/LayoutTests/fast/mediastream/RTCPeerConnection-setRemoteDescription-offer-expected.txt	2017-06-15 16:24:20 UTC (rev 218335)
@@ -12,8 +12,8 @@
 
 PASS remoteOffer1 set as remote description
 FAIL pc.signalingState should be have-remote-offer. Was stable.
-FAIL pc.remoteDescription should be [object RTCSessionDescription]. Was null.
-FAIL pc.pendingRemoteDescription should be [object RTCSessionDescription]. Was null.
+FAIL pc.remoteDescription should be [object Object]. Was null.
+FAIL pc.pendingRemoteDescription should be [object Object]. Was null.
 PASS pc.currentRemoteDescription is null
 
 PASS remoteOffer1 set as remote description (again)
@@ -29,8 +29,8 @@
 
 PASS remoteOffer2 set as remote description
 FAIL pc.signalingState should be have-remote-offer. Was stable.
-FAIL pc.remoteDescription should be [object RTCSessionDescription]. Was null.
-FAIL pc.pendingRemoteDescription should be [object 

[webkit-changes] [218334] trunk/LayoutTests

2017-06-15 Thread jlewis3
Title: [218334] trunk/LayoutTests








Revision 218334
Author jlew...@apple.com
Date 2017-06-15 09:19:57 -0700 (Thu, 15 Jun 2017)


Log Message
Marked imported/w3c/web-platform-tests/dom/nodes/Document-constructor-svg.svg as skip.
https://bugs.webkit.org/show_bug.cgi?id=17

Unreviewed test gardening.

* TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (218333 => 218334)

--- trunk/LayoutTests/ChangeLog	2017-06-15 16:14:21 UTC (rev 218333)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 16:19:57 UTC (rev 218334)
@@ -1,3 +1,12 @@
+2017-06-15  Matt Lewis  
+
+Marked imported/w3c/web-platform-tests/dom/nodes/Document-constructor-svg.svg as skip.
+https://bugs.webkit.org/show_bug.cgi?id=17
+
+Unreviewed test gardening.
+
+* TestExpectations:
+
 2017-06-15  Miguel Gomez  
 
 Unreviewed GTK+ gardening. Update expectations of several tests failing after r218320.


Modified: trunk/LayoutTests/TestExpectations (218333 => 218334)

--- trunk/LayoutTests/TestExpectations	2017-06-15 16:14:21 UTC (rev 218333)
+++ trunk/LayoutTests/TestExpectations	2017-06-15 16:19:57 UTC (rev 218334)
@@ -1378,4 +1378,4 @@
 webkit.org/b/172827 webrtc/audio-peer-connection-webaudio.html [ Pass Failure ]
 webkit.org/b/172649 webrtc/peer-connection-audio-mute.html [ Pass Failure ]
 
-webkit.org/b/17 imported/w3c/web-platform-tests/dom/nodes/Document-constructor-svg.svg [ Timeout ]
+webkit.org/b/17 imported/w3c/web-platform-tests/dom/nodes/Document-constructor-svg.svg [ Skip ]






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218332] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218332] trunk/Source/WebKit2








Revision 218332
Author carlo...@webkit.org
Date 2017-06-15 08:40:20 -0700 (Thu, 15 Jun 2017)


Log Message
[GTK] Cleanup headers includes in GTK+ API files
https://bugs.webkit.org/show_bug.cgi?id=173415

Reviewed by Michael Catanzaro.

- Remove WTFGType.h from WebKitPrivate.h and include it in all other files instead of WebKitPrivate if needed.
- Stop including WebKitPrivate.h in all other private headers.
- Remove all C API includes.

* UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
* UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:
* UIProcess/API/gtk/WebKitAuthenticationRequestPrivate.h:
* UIProcess/API/gtk/WebKitAutomationSession.cpp:
* UIProcess/API/gtk/WebKitBackForwardList.cpp:
* UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
* UIProcess/API/gtk/WebKitColorChooser.h:
* UIProcess/API/gtk/WebKitColorChooserRequest.cpp:
* UIProcess/API/gtk/WebKitContextMenu.cpp:
* UIProcess/API/gtk/WebKitContextMenuItem.cpp:
* UIProcess/API/gtk/WebKitContextMenuItemPrivate.h:
* UIProcess/API/gtk/WebKitContextMenuPrivate.h:
* UIProcess/API/gtk/WebKitCookieManager.cpp:
* UIProcess/API/gtk/WebKitCookieManagerPrivate.h:
* UIProcess/API/gtk/WebKitCredentialPrivate.h:
* UIProcess/API/gtk/WebKitDownload.cpp:
* UIProcess/API/gtk/WebKitDownloadClient.cpp:
* UIProcess/API/gtk/WebKitDownloadPrivate.h:
* UIProcess/API/gtk/WebKitEditorState.cpp:
* UIProcess/API/gtk/WebKitEditorStatePrivate.h:
* UIProcess/API/gtk/WebKitError.cpp:
* UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
* UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
* UIProcess/API/gtk/WebKitFileChooserRequestPrivate.h:
* UIProcess/API/gtk/WebKitFindController.cpp:
* UIProcess/API/gtk/WebKitFormClient.cpp:
* UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
* UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h:
* UIProcess/API/gtk/WebKitGeolocationPermissionRequest.cpp:
* UIProcess/API/gtk/WebKitGeolocationPermissionRequestPrivate.h:
* UIProcess/API/gtk/WebKitHitTestResult.cpp:
* UIProcess/API/gtk/WebKitHitTestResultPrivate.h:
* UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.cpp:
* UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequestPrivate.h:
* UIProcess/API/gtk/WebKitJavascriptResult.cpp:
* UIProcess/API/gtk/WebKitJavascriptResultPrivate.h:
* UIProcess/API/gtk/WebKitMimeInfoPrivate.h:
* UIProcess/API/gtk/WebKitNavigationActionPrivate.h:
* UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
* UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitNetworkProxySettings.cpp:
* UIProcess/API/gtk/WebKitNetworkProxySettingsPrivate.h:
* UIProcess/API/gtk/WebKitNotification.cpp:
* UIProcess/API/gtk/WebKitNotificationPermissionRequest.cpp:
* UIProcess/API/gtk/WebKitNotificationPermissionRequestPrivate.h:
* UIProcess/API/gtk/WebKitNotificationPrivate.h:
* UIProcess/API/gtk/WebKitOptionMenu.cpp:
* UIProcess/API/gtk/WebKitPlugin.cpp:
* UIProcess/API/gtk/WebKitPluginPrivate.h:
* UIProcess/API/gtk/WebKitPolicyDecision.cpp:
* UIProcess/API/gtk/WebKitPolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitPrintCustomWidget.cpp:
* UIProcess/API/gtk/WebKitPrintCustomWidgetPrivate.h:
* UIProcess/API/gtk/WebKitPrintOperation.cpp:
* UIProcess/API/gtk/WebKitPrivate.h:
* UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
* UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitSecurityManager.cpp:
* UIProcess/API/gtk/WebKitSecurityOrigin.cpp:
* UIProcess/API/gtk/WebKitSecurityOriginPrivate.h:
* UIProcess/API/gtk/WebKitSettings.cpp:
* UIProcess/API/gtk/WebKitUIClient.cpp:
* UIProcess/API/gtk/WebKitURIRequest.cpp:
* UIProcess/API/gtk/WebKitURIResponse.cpp:
* UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
* UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
* UIProcess/API/gtk/WebKitUserContent.cpp:
* UIProcess/API/gtk/WebKitUserContentManager.cpp:
* UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp:
* UIProcess/API/gtk/WebKitUserMediaPermissionRequestPrivate.h:
* UIProcess/API/gtk/WebKitWebContext.cpp:
* UIProcess/API/gtk/WebKitWebContextPrivate.h:
* UIProcess/API/gtk/WebKitWebInspector.cpp:
* UIProcess/API/gtk/WebKitWebInspectorPrivate.h:
* UIProcess/API/gtk/WebKitWebResource.cpp:
* UIProcess/API/gtk/WebKitWebResourcePrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
* UIProcess/API/gtk/WebKitWebViewBaseAccessible.cpp:
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
* UIProcess/API/gtk/WebKitWebViewPrivate.h:
* UIProcess/API/gtk/WebKitWebsiteDataManager.cpp:
* UIProcess/API/gtk/WebKitWebsiteDataManagerPrivate.h:
* UIProcess/API/gtk/WebKitWebsiteDataPrivate.h:
* UIProcess/API/gtk/WebKitWindowProperties.cpp:
* UIProcess/API/gtk/WebKitWindowPropertiesPrivate.h:
* WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
* 

[webkit-changes] [218331] trunk

2017-06-15 Thread carlosgc
Title: [218331] trunk








Revision 218331
Author carlo...@webkit.org
Date 2017-06-15 08:37:31 -0700 (Thu, 15 Jun 2017)


Log Message
[GTK] Do not use the C API in WebGtkExtensionManager
https://bugs.webkit.org/show_bug.cgi?id=173408

Reviewed by Michael Catanzaro.

.:

Update exported symbol signature.

* Source/cmake/gtksymbols.filter:

Source/WebKit2:

Use the C++ API instead.

* WebProcess/gtk/WebGtkExtensionManager.cpp:
(WebKit::parseUserData):
(WebKit::WebGtkExtensionManager::initialize):
* WebProcess/gtk/WebGtkExtensionManager.h:
* WebProcess/gtk/WebGtkInjectedBundleMain.cpp:
(WKBundleInitialize):

Modified Paths

trunk/ChangeLog
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.cpp
trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.h
trunk/Source/WebKit2/WebProcess/gtk/WebGtkInjectedBundleMain.cpp
trunk/Source/cmake/gtksymbols.filter




Diff

Modified: trunk/ChangeLog (218330 => 218331)

--- trunk/ChangeLog	2017-06-15 15:15:03 UTC (rev 218330)
+++ trunk/ChangeLog	2017-06-15 15:37:31 UTC (rev 218331)
@@ -1,3 +1,14 @@
+2017-06-15  Carlos Garcia Campos  
+
+[GTK] Do not use the C API in WebGtkExtensionManager
+https://bugs.webkit.org/show_bug.cgi?id=173408
+
+Reviewed by Michael Catanzaro.
+
+Update exported symbol signature.
+
+* Source/cmake/gtksymbols.filter:
+
 2017-06-09  Zan Dobersek  
 
 [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds


Modified: trunk/Source/WebKit2/ChangeLog (218330 => 218331)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 15:15:03 UTC (rev 218330)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 15:37:31 UTC (rev 218331)
@@ -1,3 +1,19 @@
+2017-06-15  Carlos Garcia Campos  
+
+[GTK] Do not use the C API in WebGtkExtensionManager
+https://bugs.webkit.org/show_bug.cgi?id=173408
+
+Reviewed by Michael Catanzaro.
+
+Use the C++ API instead.
+
+* WebProcess/gtk/WebGtkExtensionManager.cpp:
+(WebKit::parseUserData):
+(WebKit::WebGtkExtensionManager::initialize):
+* WebProcess/gtk/WebGtkExtensionManager.h:
+* WebProcess/gtk/WebGtkInjectedBundleMain.cpp:
+(WKBundleInitialize):
+
 2017-06-15  Adrian Perez de Castro  
 
 [GTK] Stop using GtkAction in WebPopupMenuProxyGtk


Modified: trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.cpp (218330 => 218331)

--- trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.cpp	2017-06-15 15:15:03 UTC (rev 218330)
+++ trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.cpp	2017-06-15 15:37:31 UTC (rev 218331)
@@ -20,11 +20,8 @@
 #include "config.h"
 #include "WebGtkExtensionManager.h"
 
+#include "APIString.h"
 #include "InjectedBundle.h"
-#include "WKBundleAPICast.h"
-#include "WKDictionary.h"
-#include "WKString.h"
-#include "WKType.h"
 #include "WebKitWebExtensionPrivate.h"
 #include 
 #include 
@@ -51,12 +48,11 @@
 }
 }
 
-static void parseUserData(WKTypeRef userData, String& webExtensionsDirectory, GRefPtr& initializationUserData)
+static void parseUserData(API::Object* userData, String& webExtensionsDirectory, GRefPtr& initializationUserData)
 {
-ASSERT(userData);
-ASSERT(WKGetTypeID(userData) == WKStringGetTypeID());
+ASSERT(userData->type() == API::Object::Type::String);
 
-CString userDataString = toImpl(static_cast(userData))->string().utf8();
+CString userDataString = static_cast(userData)->string().utf8();
 GRefPtr variant = g_variant_parse(nullptr, userDataString.data(),
 userDataString.data() + userDataString.length(), nullptr, nullptr);
 
@@ -90,13 +86,15 @@
 return false;
 }
 
-void WebGtkExtensionManager::initialize(WKBundleRef bundle, WKTypeRef userDataString)
+void WebGtkExtensionManager::initialize(InjectedBundle* bundle, API::Object* userDataObject)
 {
-m_extension = adoptGRef(webkitWebExtensionCreate(toImpl(bundle)));
+ASSERT(bundle);
+ASSERT(userDataObject);
+m_extension = adoptGRef(webkitWebExtensionCreate(bundle));
 
 String webExtensionsDirectory;
 GRefPtr userData;
-parseUserData(userDataString, webExtensionsDirectory, userData);
+parseUserData(userDataObject, webExtensionsDirectory, userData);
 
 if (webExtensionsDirectory.isNull())
 return;


Modified: trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.h (218330 => 218331)

--- trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.h	2017-06-15 15:15:03 UTC (rev 218330)
+++ trunk/Source/WebKit2/WebProcess/gtk/WebGtkExtensionManager.h	2017-06-15 15:37:31 UTC (rev 218331)
@@ -17,11 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-#ifndef WebGtkExtensionManager_h
-#define WebGtkExtensionManager_h
+#pragma once
 
 #include "Module.h"
-#include "WKBundle.h"
 #include 
 #include 
 #include 
@@ -29,19 +27,21 @@
 
 typedef struct _WebKitWebExtension WebKitWebExtension;
 
-namespace 

[webkit-changes] [218330] branches/safari-603-branch

2017-06-15 Thread matthew_hanson
Title: [218330] branches/safari-603-branch








Revision 218330
Author matthew_han...@apple.com
Date 2017-06-15 08:15:03 -0700 (Thu, 15 Jun 2017)


Log Message
Cherry-pick r218300. rdar://problem/31971362

Modified Paths

branches/safari-603-branch/LayoutTests/ChangeLog
branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-expected.html
branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes.html
branches/safari-603-branch/Source/WebCore/ChangeLog
branches/safari-603-branch/Source/WebCore/rendering/RenderLayer.cpp
branches/safari-603-branch/Source/WebCore/rendering/RenderLayer.h


Added Paths

branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform-expected.html
branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform.html
branches/safari-603-branch/LayoutTests/http/tests/css/resources/references-external-green.html
branches/safari-603-branch/LayoutTests/http/tests/css/resources/references-external-red.html
branches/safari-603-branch/LayoutTests/http/tests/css/resources/solid-green.html


Removed Paths

branches/safari-603-branch/LayoutTests/http/tests/css/resources/references-external.html




Diff

Modified: branches/safari-603-branch/LayoutTests/ChangeLog (218329 => 218330)

--- branches/safari-603-branch/LayoutTests/ChangeLog	2017-06-15 14:03:03 UTC (rev 218329)
+++ branches/safari-603-branch/LayoutTests/ChangeLog	2017-06-15 15:15:03 UTC (rev 218330)
@@ -1,3 +1,27 @@
+2017-06-15  Matthew Hanson  
+
+Cherry-pick r218300. rdar://problem/31971362
+
+2017-06-14  Dean Jackson  
+
+Restrict filtered painting across cross-origin boundaries with transforms
+https://bugs.webkit.org/show_bug.cgi?id=173388
+
+
+Reviewed by Simon Fraser.
+
+New test that checks painting across a origin boundary when in
+a transformed container. Also clean up the existing test
+to make it smfr-compliant (green is good, red is bad).
+
+* http/tests/css/filters-on-iframes-expected.html:
+* http/tests/css/filters-on-iframes-transform-expected.html: Added.
+* http/tests/css/filters-on-iframes-transform.html: Added.
+* http/tests/css/filters-on-iframes.html:
+* http/tests/css/resources/references-external-green.html: Copied from LayoutTests/http/tests/css/resources/references-external.html.
+* http/tests/css/resources/references-external-red.html: Renamed from LayoutTests/http/tests/css/resources/references-external.html.
+* http/tests/css/resources/solid-green.html: Added.
+
 2017-06-05  Ryan Haddad  
 
 Merge r216126.


Modified: branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-expected.html (218329 => 218330)

--- branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-expected.html	2017-06-15 14:03:03 UTC (rev 218329)
+++ branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-expected.html	2017-06-15 15:15:03 UTC (rev 218330)
@@ -5,36 +5,60 @@
 }
 iframe {
 border: none;
+background-color: red;
 }
 div {
 display: inline-block;
 }
+.filtered {
+filter: url(#noop);
+}
+.wrapper {
+width: 300px;
+height: 150px;
+overflow: hidden;
+}
+.scroll {
+width: 50px;
+height: 50px;
+overflow: hidden;
+transform: scale(20);
+}
+svg {
+display: none;
+}
 
+Seeing green is ok. Seeing any red is bad.
 
+Same origin
 
-+ 
 
 
-+ 
 
 
 
+Cross origin (must have http server running)
 
-+ 
 
 
-+ 
 
 
 
+Same origin that then references cross origin (must have http server running)
 
-+ 
 
 
-+ 
+
+


Added: branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform-expected.html (0 => 218330)

--- branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform-expected.html	(rev 0)
+++ branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform-expected.html	2017-06-15 15:15:03 UTC (rev 218330)
@@ -0,0 +1,42 @@
+
+body {
+margin: 0;
+padding: 0;
+}
+iframe {
+border: none;
+background-color: red;
+}
+div {
+display: inline-block;
+}
+.filtered {
+filter: url(#noop);
+}
+.wrapper {
+width: 300px;
+height: 150px;
+overflow: hidden;
+}
+.scroll {
+width: 50px;
+height: 50px;
+overflow: hidden;
+transform: scale(20);
+}
+svg {
+display: none;
+}
+
+Cross origin with transform (must have http server running)
+
+
+
+
+
+
+
+
+


Added: branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform.html (0 => 218330)

--- branches/safari-603-branch/LayoutTests/http/tests/css/filters-on-iframes-transform.html	(rev 0)
+++ 

[webkit-changes] [218326] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218326] trunk/Source/WebKit2








Revision 218326
Author carlo...@webkit.org
Date 2017-06-15 02:49:18 -0700 (Thu, 15 Jun 2017)


Log Message
Unreviewed. Fix copy-paste error in GTK+ WEBKIT_JAVASCRIPT_ERROR definition.

The print one was copied there.

* UIProcess/API/gtk/WebKitError.h:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitError.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218325 => 218326)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 09:41:27 UTC (rev 218325)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 09:49:18 UTC (rev 218326)
@@ -1,5 +1,13 @@
 2017-06-15  Carlos Garcia Campos  
 
+Unreviewed. Fix copy-paste error in GTK+ WEBKIT_JAVASCRIPT_ERROR definition.
+
+The print one was copied there.
+
+* UIProcess/API/gtk/WebKitError.h:
+
+2017-06-15  Carlos Garcia Campos  
+
 [GTK] Add API to allow overriding popup menus
 https://bugs.webkit.org/show_bug.cgi?id=172905
 


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitError.h (218325 => 218326)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitError.h	2017-06-15 09:41:27 UTC (rev 218325)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitError.h	2017-06-15 09:49:18 UTC (rev 218326)
@@ -34,7 +34,7 @@
 #define WEBKIT_PLUGIN_ERROR webkit_plugin_error_quark ()
 #define WEBKIT_DOWNLOAD_ERROR   webkit_download_error_quark ()
 #define WEBKIT_PRINT_ERROR  webkit_print_error_quark ()
-#define WEBKIT_JAVASCRIPT_ERROR webkit_print_error_quark ()
+#define WEBKIT_JAVASCRIPT_ERROR webkit_javascript_error_quark ()
 #define WEBKIT_SNAPSHOT_ERROR   webkit_snapshot_error_quark ()
 
 /**






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218325] trunk

2017-06-15 Thread carlosgc
Title: [218325] trunk








Revision 218325
Author carlo...@webkit.org
Date 2017-06-15 02:41:27 -0700 (Thu, 15 Jun 2017)


Log Message
[GTK] Add API to allow overriding popup menus
https://bugs.webkit.org/show_bug.cgi?id=172905

Reviewed by Michael Catanzaro.

Source/WebKit2:

The GTK+ API uses GTK+ for the default implementation of several UI elements like the file chooser, print dialog,
color picker, context menu, etc. but in all those cases it allows to override the default implementation. It's
not possible to override the popup menu used for select elements. This patch adds WebKitOptionMenu to represent
a select dropdown menu. It's passed as an argument of the new signal WebKitWebView::show-option-menu, and
contains WebKitOptionMenuItem elements representing the items to be displayed.

* PlatformGTK.cmake:
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createPopupMenuProxy): Create a WebKitPopupMenu.
* UIProcess/API/gtk/WebKitOptionMenu.cpp: Added.
(webkitOptionMenuCreate):
(webkit_option_menu_get_n_items):
(webkit_option_menu_get_item):
(webkit_option_menu_select_item):
(webkit_option_menu_activate_item):
(webkit_option_menu_close):
* UIProcess/API/gtk/WebKitOptionMenu.h: Added.
* UIProcess/API/gtk/WebKitOptionMenuItem.cpp: Added.
(webkit_option_menu_item_copy):
(webkit_option_menu_item_free):
(webkit_option_menu_item_get_label):
(webkit_option_menu_item_get_tooltip):
(webkit_option_menu_item_is_group_label):
(webkit_option_menu_item_is_group_child):
(webkit_option_menu_item_is_enabled):
(webkit_option_menu_item_is_selected):
* UIProcess/API/gtk/WebKitOptionMenuItem.h: Added.
* UIProcess/API/gtk/WebKitOptionMenuItemPrivate.h: Added.
(_WebKitOptionMenuItem::_WebKitOptionMenuItem):
* UIProcess/API/gtk/WebKitOptionMenuPrivate.h: Added.
* UIProcess/API/gtk/WebKitPopupMenu.cpp: Added.
(WebKit::WebKitPopupMenu::WebKitPopupMenu):
(WebKit::menuCloseCallback):
(WebKit::WebKitPopupMenu::showPopupMenu): Call webkitWebViewShowOptionMenu() falling back to default
implementation if the user didn't handle the signal.
(WebKit::WebKitPopupMenu::hidePopupMenu):
(WebKit::WebKitPopupMenu::cancelTracking):
(WebKit::WebKitPopupMenu::selectItem):
(WebKit::WebKitPopupMenu::activateItem):
* UIProcess/API/gtk/WebKitPopupMenu.h: Added.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_class_init):
(webkitWebViewShowOptionMenu): Emit WebKitWebView::show-option-menu.
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/WebKitWebViewPrivate.h:
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
* UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add new get_type functions.
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new sections.
* UIProcess/API/gtk/webkit2.h: Add new public headers.
* UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
(WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk): Do not create the GtkMenu in constructor.
(WebKit::WebPopupMenuProxyGtk::showPopupMenu): Create the GtkMenu and connect to the signals here.
(WebKit::WebPopupMenuProxyGtk::hidePopupMenu): Return early if the Gtk hasn't been shown.
* UIProcess/gtk/WebPopupMenuProxyGtk.h: Make constructor and webview protected.

Tools:

Add a unit test to check the new API.

* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Added.
(OptionMenuTest::OptionMenuTest):
(OptionMenuTest::~OptionMenuTest):
(OptionMenuTest::destroyMenu):
(OptionMenuTest::showOptionMenuCallback):
(OptionMenuTest::menuCloseCallback):
(OptionMenuTest::showOptionMenu):
(OptionMenuTest::clickAtPositionAndWaitUntilOptionMenuShown):
(OptionMenuTest::close):
(OptionMenuTest::activateItem):
(OptionMenuTest::selectItem):
(testOptionMenuSimple):
(testOptionMenuGroups):
(testOptionMenuActivate):
(testOptionMenuSelect):
(beforeAll):
(afterAll):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/PlatformGTK.cmake
trunk/Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewPrivate.h
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-4.0.types
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-docs.sgml
trunk/Source/WebKit2/UIProcess/API/gtk/webkit2.h
trunk/Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp
trunk/Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.h
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt


Added Paths

trunk/Source/WebKit2/UIProcess/API/gtk/WebKitOptionMenu.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitOptionMenu.h
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitOptionMenuItem.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitOptionMenuItem.h
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitOptionMenuItemPrivate.h
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitOptionMenuPrivate.h

[webkit-changes] [218324] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218324] trunk/Source/WebKit2








Revision 218324
Author carlo...@webkit.org
Date 2017-06-15 02:19:50 -0700 (Thu, 15 Jun 2017)


Log Message
[GTK] Use API::InjectedBundle::ResourceLoadClient in WebKitWebPage
https://bugs.webkit.org/show_bug.cgi?id=173364

Reviewed by Michael Catanzaro.

Instead of the C API.

* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(webkitWebPageCreate):
(didInitiateLoadForResource): Deleted.
(willSendRequestForFrame): Deleted.
(didReceiveResponseForResource): Deleted.
(didReceiveContentLengthForResource): Deleted.
(didFinishLoadForResource): Deleted.
(didFailLoadForResource): Deleted.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218323 => 218324)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 09:10:09 UTC (rev 218323)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 09:19:50 UTC (rev 218324)
@@ -1,5 +1,23 @@
 2017-06-14  Carlos Garcia Campos  
 
+[GTK] Use API::InjectedBundle::ResourceLoadClient in WebKitWebPage
+https://bugs.webkit.org/show_bug.cgi?id=173364
+
+Reviewed by Michael Catanzaro.
+
+Instead of the C API.
+
+* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
+(webkitWebPageCreate):
+(didInitiateLoadForResource): Deleted.
+(willSendRequestForFrame): Deleted.
+(didReceiveResponseForResource): Deleted.
+(didReceiveContentLengthForResource): Deleted.
+(didFinishLoadForResource): Deleted.
+(didFailLoadForResource): Deleted.
+
+2017-06-14  Carlos Garcia Campos  
+
 [GTK] Use API::InjectedBundle::Client in WebKitWebExtension
 https://bugs.webkit.org/show_bug.cgi?id=173358
 


Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp (218323 => 218324)

--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp	2017-06-15 09:10:09 UTC (rev 218323)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp	2017-06-15 09:19:50 UTC (rev 218324)
@@ -24,8 +24,6 @@
 #include "APIDictionary.h"
 #include "ImageOptions.h"
 #include "InjectedBundle.h"
-#include "WKBundleAPICast.h"
-#include "WKBundleFrame.h"
 #include "WebContextMenuItem.h"
 #include "WebImage.h"
 #include "WebKitConsoleMessagePrivate.h"
@@ -207,102 +205,109 @@
 WebKitWebPage* m_webPage;
 };
 
-static void didInitiateLoadForResource(WKBundlePageRef page, WKBundleFrameRef frame, uint64_t identifier, WKURLRequestRef request, bool /* pageLoadIsProvisional */, const void*)
-{
-API::Dictionary::MapType message;
-message.set(String::fromUTF8("Page"), toImpl(page));
-message.set(String::fromUTF8("Frame"), toImpl(frame));
-message.set(String::fromUTF8("Identifier"), API::UInt64::create(identifier));
-message.set(String::fromUTF8("Request"), toImpl(request));
-WebProcess::singleton().injectedBundle()->postMessage(String::fromUTF8("WebPage.DidInitiateLoadForResource"), API::Dictionary::create(WTFMove(message)).ptr());
-}
 
-static WKURLRequestRef willSendRequestForFrame(WKBundlePageRef page, WKBundleFrameRef, uint64_t identifier, WKURLRequestRef wkRequest, WKURLResponseRef wkRedirectResponse, const void* clientInfo)
-{
-GRefPtr request = adoptGRef(webkitURIRequestCreateForResourceRequest(toImpl(wkRequest)->resourceRequest()));
-const ResourceResponse& redirectResourceResponse = toImpl(wkRedirectResponse)->resourceResponse();
-GRefPtr redirectResponse = !redirectResourceResponse.isNull() ? adoptGRef(webkitURIResponseCreateForResourceResponse(redirectResourceResponse)) : nullptr;
+class PageResourceLoadClient final : public API::InjectedBundle::ResourceLoadClient {
+public:
+explicit PageResourceLoadClient(WebKitWebPage* webPage)
+: m_webPage(webPage)
+{
+}
 
-gboolean returnValue;
-g_signal_emit(WEBKIT_WEB_PAGE(clientInfo), signals[SEND_REQUEST], 0, request.get(), redirectResponse.get(), );
-if (returnValue)
-return 0;
+private:
+void didInitiateLoadForResource(WebPage& page, WebFrame& frame, uint64_t identifier, const ResourceRequest& request, bool) override
+{
+API::Dictionary::MapType message;
+message.set(String::fromUTF8("Page"), );
+message.set(String::fromUTF8("Frame"), );
+message.set(String::fromUTF8("Identifier"), API::UInt64::create(identifier));
+message.set(String::fromUTF8("Request"), API::URLRequest::create(request));
+WebProcess::singleton().injectedBundle()->postMessage(String::fromUTF8("WebPage.DidInitiateLoadForResource"), API::Dictionary::create(WTFMove(message)).ptr());
+}
 
-ResourceRequest resourceRequest;
-webkitURIRequestGetResourceRequest(request.get(), resourceRequest);
-resourceRequest.setInitiatingPageID(toImpl(page)->pageID());
-Ref newRequest = API::URLRequest::create(resourceRequest);
+

[webkit-changes] [218323] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218323] trunk/Source/WebKit2








Revision 218323
Author carlo...@webkit.org
Date 2017-06-15 02:10:09 -0700 (Thu, 15 Jun 2017)


Log Message
[GTK] Use API::InjectedBundle::Client in WebKitWebExtension
https://bugs.webkit.org/show_bug.cgi?id=173358

Reviewed by Michael Catanzaro.

Instead of the C API.

* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
(webkitWebExtensionCreate):
(webkitWebExtensionPageCreated): Deleted.
(webkitWebExtensionPageDestroy): Deleted.
(webkitWebExtensionDidReceiveMessage): Deleted.
(didCreatePage): Deleted.
(willDestroyPage): Deleted.
(didReceiveMessage): Deleted.
(didReceiveMessageToPage): Deleted.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218322 => 218323)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 08:31:58 UTC (rev 218322)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 09:10:09 UTC (rev 218323)
@@ -1,3 +1,22 @@
+2017-06-14  Carlos Garcia Campos  
+
+[GTK] Use API::InjectedBundle::Client in WebKitWebExtension
+https://bugs.webkit.org/show_bug.cgi?id=173358
+
+Reviewed by Michael Catanzaro.
+
+Instead of the C API.
+
+* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
+(webkitWebExtensionCreate):
+(webkitWebExtensionPageCreated): Deleted.
+(webkitWebExtensionPageDestroy): Deleted.
+(webkitWebExtensionDidReceiveMessage): Deleted.
+(didCreatePage): Deleted.
+(willDestroyPage): Deleted.
+(didReceiveMessage): Deleted.
+(didReceiveMessageToPage): Deleted.
+
 2017-06-15  Carlos Garcia Campos  
 
 [GTK] Use API::NotificationProvider


Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp (218322 => 218323)

--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp	2017-06-15 08:31:58 UTC (rev 218322)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp	2017-06-15 09:10:09 UTC (rev 218323)
@@ -21,10 +21,8 @@
 #include "WebKitWebExtension.h"
 
 #include "APIDictionary.h"
+#include "APIInjectedBundleBundleClient.h"
 #include "APIString.h"
-#include "WKBundle.h"
-#include "WKBundleAPICast.h"
-#include "WKBundlePage.h"
 #include "WebKitPrivate.h"
 #include "WebKitWebExtensionPrivate.h"
 #include "WebKitWebPagePrivate.h"
@@ -146,67 +144,51 @@
 WEBKIT_TYPE_WEB_PAGE);
 }
 
-static void webkitWebExtensionPageCreated(WebKitWebExtension* extension, WebPage* page)
-{
-GRefPtr webPage = adoptGRef(webkitWebPageCreate(page));
-extension->priv->pages.add(page, webPage);
-g_signal_emit(extension, signals[PAGE_CREATED], 0, webPage.get());
-}
+class WebExtensionInjectedBundleClient final : public API::InjectedBundle::Client {
+public:
+explicit WebExtensionInjectedBundleClient(WebKitWebExtension* extension)
+: m_extension(extension)
+{
+}
 
-static void webkitWebExtensionPageDestroy(WebKitWebExtension* extension, WebPage* page)
-{
-extension->priv->pages.remove(page);
-}
+private:
+void didCreatePage(InjectedBundle&, WebPage& page) override
+{
+GRefPtr webPage = adoptGRef(webkitWebPageCreate());
+m_extension->priv->pages.add(, webPage);
+g_signal_emit(m_extension, signals[PAGE_CREATED], 0, webPage.get());
+}
 
-static void webkitWebExtensionDidReceiveMessage(WebKitWebExtension*, const String& messageName, API::Dictionary& message)
-{
-if (messageName == String::fromUTF8("PrefetchDNS")) {
-API::String* hostname = static_cast(message.get(String::fromUTF8("Hostname")));
-WebProcess::singleton().prefetchDNS(hostname->string());
-} else
-ASSERT_NOT_REACHED();
-}
+void willDestroyPage(InjectedBundle&, WebPage& page) override
+{
+m_extension->priv->pages.remove();
+}
 
-static void didCreatePage(WKBundleRef, WKBundlePageRef page, const void* clientInfo)
-{
-webkitWebExtensionPageCreated(WEBKIT_WEB_EXTENSION(clientInfo), toImpl(page));
-}
+void didReceiveMessage(InjectedBundle&, const String& messageName, API::Object* messageBody) override
+{
+ASSERT(messageBody->type() == API::Object::Type::Dictionary);
+API::Dictionary& message = *static_cast(messageBody);
+if (messageName == String::fromUTF8("PrefetchDNS")) {
+API::String* hostname = static_cast(message.get(String::fromUTF8("Hostname")));
+WebProcess::singleton().prefetchDNS(hostname->string());
+} else
+ASSERT_NOT_REACHED();
+}
 
-static void willDestroyPage(WKBundleRef, WKBundlePageRef page, const void* clientInfo)
-{
-webkitWebExtensionPageDestroy(WEBKIT_WEB_EXTENSION(clientInfo), toImpl(page));
-}
+void didReceiveMessageToPage(InjectedBundle&, WebPage& page, const String& messageName, 

[webkit-changes] [218322] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218322] trunk/Source/WebKit2








Revision 218322
Author carlo...@webkit.org
Date 2017-06-15 01:31:58 -0700 (Thu, 15 Jun 2017)


Log Message
[GTK] Use API::NotificationProvider
https://bugs.webkit.org/show_bug.cgi?id=173312

Reviewed by Žan Doberšek.

Also cleanup a bit the WebKitNotificationProvider implementation, it doesn't need to be refcounted.

* UIProcess/API/gtk/WebKitNotificationProvider.cpp:
(WebKitNotificationProvider::WebKitNotificationProvider):
(WebKitNotificationProvider::~WebKitNotificationProvider):
(WebKitNotificationProvider::show):
(WebKitNotificationProvider::clearNotifications):
(WebKitNotificationProvider::notificationPermissions):
(WebKitNotificationProvider::setNotificationPermissions):
* UIProcess/API/gtk/WebKitNotificationProvider.h:
* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkitWebContextConstructed):
(addOriginToMap):
(webkit_web_context_initialize_notification_permissions):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitNotificationProvider.cpp
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitNotificationProvider.h
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218321 => 218322)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 08:20:34 UTC (rev 218321)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 08:31:58 UTC (rev 218322)
@@ -1,3 +1,25 @@
+2017-06-15  Carlos Garcia Campos  
+
+[GTK] Use API::NotificationProvider
+https://bugs.webkit.org/show_bug.cgi?id=173312
+
+Reviewed by Žan Doberšek.
+
+Also cleanup a bit the WebKitNotificationProvider implementation, it doesn't need to be refcounted.
+
+* UIProcess/API/gtk/WebKitNotificationProvider.cpp:
+(WebKitNotificationProvider::WebKitNotificationProvider):
+(WebKitNotificationProvider::~WebKitNotificationProvider):
+(WebKitNotificationProvider::show):
+(WebKitNotificationProvider::clearNotifications):
+(WebKitNotificationProvider::notificationPermissions):
+(WebKitNotificationProvider::setNotificationPermissions):
+* UIProcess/API/gtk/WebKitNotificationProvider.h:
+* UIProcess/API/gtk/WebKitWebContext.cpp:
+(webkitWebContextConstructed):
+(addOriginToMap):
+(webkit_web_context_initialize_notification_permissions):
+
 2017-06-14  Carlos Garcia Campos  
 
 Add API::InjectedBundle::ResourceLoadClient


Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitNotificationProvider.cpp (218321 => 218322)

--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitNotificationProvider.cpp	2017-06-15 08:20:34 UTC (rev 218321)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitNotificationProvider.cpp	2017-06-15 08:31:58 UTC (rev 218322)
@@ -28,8 +28,7 @@
 #include "WebKitNotificationProvider.h"
 
 #include "APIArray.h"
-#include "APIDictionary.h"
-#include "WKNotificationManager.h"
+#include "APINotificationProvider.h"
 #include "WebKitNotificationPrivate.h"
 #include "WebKitWebContextPrivate.h"
 #include "WebKitWebViewPrivate.h"
@@ -39,61 +38,49 @@
 
 using namespace WebKit;
 
-static inline WebKitNotificationProvider* toNotificationProvider(const void* clientInfo)
-{
-return static_cast(const_cast(clientInfo));
-}
 
-static void showCallback(WKPageRef page, WKNotificationRef notification, const void* clientInfo)
-{
-toNotificationProvider(clientInfo)->show(toImpl(page), *toImpl(notification));
-}
+class NotificationProvider final : public API::NotificationProvider {
+public:
+explicit NotificationProvider(WebKitNotificationProvider& provider)
+: m_provider(provider)
+{
+}
 
-static void cancelCallback(WKNotificationRef notification, const void* clientInfo)
-{
-toNotificationProvider(clientInfo)->cancel(*toImpl(notification));
-}
+private:
+void show(WebPageProxy& page, WebNotification& notification) override
+{
+m_provider.show(page, notification);
+}
 
-static WKDictionaryRef notificationPermissionsCallback(const void* clientInfo)
-{
-return toAPI(toNotificationProvider(clientInfo)->notificationPermissions().leakRef());
-}
+void cancel(WebNotification& notification) override
+{
+m_provider.cancel(notification);
+}
 
-static void clearNotificationsCallback(WKArrayRef notificationIDs, const void* clientInfo)
-{
-toNotificationProvider(clientInfo)->clearNotifications(toImpl(notificationIDs));
-}
+void clearNotifications(const Vector& notificationIDs) override
+{
+m_provider.clearNotifications(notificationIDs);
+}
 
-WebKitNotificationProvider::~WebKitNotificationProvider()
-{
-}
+HashMap notificationPermissions() override
+{
+return m_provider.notificationPermissions();
+}
 
-Ref WebKitNotificationProvider::create(WebNotificationManagerProxy* notificationManager, WebKitWebContext* webContext)
-{

[webkit-changes] [218321] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218321] trunk/Source/WebKit2








Revision 218321
Author carlo...@webkit.org
Date 2017-06-15 01:20:34 -0700 (Thu, 15 Jun 2017)


Log Message
Add API::InjectedBundle::ResourceLoadClient
https://bugs.webkit.org/show_bug.cgi?id=173362

Reviewed by Alex Christensen.

It will be used by the GTK+ port instead of the C API.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/APIInjectedBundlePageResourceLoadClient.h: Copied from Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h.
(API::InjectedBundle::ResourceLoadClient::didInitiateLoadForResource):
(API::InjectedBundle::ResourceLoadClient::willSendRequestForFrame):
(API::InjectedBundle::ResourceLoadClient::didReceiveResponseForResource):
(API::InjectedBundle::ResourceLoadClient::didReceiveContentLengthForResource):
(API::InjectedBundle::ResourceLoadClient::didFinishLoadForResource):
(API::InjectedBundle::ResourceLoadClient::didFailLoadForResource):
(API::InjectedBundle::ResourceLoadClient::shouldCacheResponse):
(API::InjectedBundle::ResourceLoadClient::shouldUseCredentialStorage):
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetResourceLoadClient):
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(setUpResourceLoadClient):
(-[WKWebProcessPlugInBrowserContextController setLoadDelegate:]):
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
(WebKit::InjectedBundlePageResourceLoadClient::InjectedBundlePageResourceLoadClient):
(WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveResponseForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveContentLengthForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFinishLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFailLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::shouldCacheResponse):
(WebKit::InjectedBundlePageResourceLoadClient::shouldUseCredentialStorage):
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebKit::WebFrameLoaderClient::dispatchWillSendRequest):
(WebKit::WebFrameLoaderClient::shouldUseCredentialStorage):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebKit::WebFrameLoaderClient::dispatchDidFinishLoading):
(WebKit::WebFrameLoaderClient::dispatchDidFailLoading):
(WebKit::WebFrameLoaderClient::willCacheResponse):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setInjectedBundleResourceLoadClient):
(WebKit::WebPage::close):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::injectedBundleResourceLoadClient):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm
trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h


Added Paths

trunk/Source/WebKit2/WebProcess/InjectedBundle/API/APIInjectedBundlePageResourceLoadClient.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218320 => 218321)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 07:18:32 UTC (rev 218320)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 08:20:34 UTC (rev 218321)
@@ -1,5 +1,55 @@
 2017-06-14  Carlos Garcia Campos  
 
+Add API::InjectedBundle::ResourceLoadClient
+https://bugs.webkit.org/show_bug.cgi?id=173362
+
+Reviewed by Alex Christensen.
+
+It will be used by the GTK+ port instead of the C API.
+
+* WebKit2.xcodeproj/project.pbxproj:
+* WebProcess/InjectedBundle/API/APIInjectedBundlePageResourceLoadClient.h: Copied from Source/WebKit2/WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h.
+(API::InjectedBundle::ResourceLoadClient::didInitiateLoadForResource):
+(API::InjectedBundle::ResourceLoadClient::willSendRequestForFrame):
+(API::InjectedBundle::ResourceLoadClient::didReceiveResponseForResource):
+(API::InjectedBundle::ResourceLoadClient::didReceiveContentLengthForResource):
+(API::InjectedBundle::ResourceLoadClient::didFinishLoadForResource):
+(API::InjectedBundle::ResourceLoadClient::didFailLoadForResource):
+(API::InjectedBundle::ResourceLoadClient::shouldCacheResponse):
+

[webkit-changes] [218320] trunk/Tools

2017-06-15 Thread commit-queue
Title: [218320] trunk/Tools








Revision 218320
Author commit-qu...@webkit.org
Date 2017-06-15 00:18:32 -0700 (Thu, 15 Jun 2017)


Log Message
[WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
https://bugs.webkit.org/show_bug.cgi?id=173399

Patch by Fujii Hironori  on 2017-06-15
Reviewed by Per Arne Vollan.

OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
Curl port needs to do nothing because libcurl doesn't have disk cache.

* DumpRenderTree/win/DumpRenderTree.cpp:
(prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp




Diff

Modified: trunk/Tools/ChangeLog (218319 => 218320)

--- trunk/Tools/ChangeLog	2017-06-15 07:02:38 UTC (rev 218319)
+++ trunk/Tools/ChangeLog	2017-06-15 07:18:32 UTC (rev 218320)
@@ -1,3 +1,17 @@
+2017-06-15  Fujii Hironori  
+
+[WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
+https://bugs.webkit.org/show_bug.cgi?id=173399
+
+Reviewed by Per Arne Vollan.
+
+OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
+Curl port needs to do nothing because libcurl doesn't have disk cache.
+
+* DumpRenderTree/win/DumpRenderTree.cpp:
+(prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
+CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).
+
 2017-06-14  Tomas Popela  
 
 [GTK] integer _expression_ expected if running Tools/gtk/install-dependencies


Modified: trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp (218319 => 218320)

--- trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2017-06-15 07:02:38 UTC (rev 218319)
+++ trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp	2017-06-15 07:18:32 UTC (rev 218320)
@@ -1466,8 +1466,10 @@
 ASSERT(standardPreferencesPrivate);
 standardPreferences->setAutosaves(FALSE);
 
+#if USE(CFURLCONNECTION)
 auto newCache = adoptCF(CFURLCacheCreate(kCFAllocatorDefault, 1024 * 1024, 0, nullptr));
 CFURLCacheSetSharedURLCache(newCache.get());
+#endif
 
 COMPtr prefsPrivate4(Query, standardPreferences);
 prefsPrivate4->switchNetworkLoaderToNewTestingSession();






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [218319] trunk/Source/WebKit2

2017-06-15 Thread carlosgc
Title: [218319] trunk/Source/WebKit2








Revision 218319
Author carlo...@webkit.org
Date 2017-06-15 00:02:38 -0700 (Thu, 15 Jun 2017)


Log Message
Add API::InjectedBundle::Client
https://bugs.webkit.org/show_bug.cgi?id=173357

Reviewed by Alex Christensen.

It will be used by the GTK+ port instead of the C API.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/APIInjectedBundleBundleClient.h: Copied from Source/WebKit2/WebProcess/InjectedBundle/InjectedBundleClient.h.
(API::InjectedBundle::Client::didCreatePage):
(API::InjectedBundle::Client::willDestroyPage):
(API::InjectedBundle::Client::didInitializePageGroup):
(API::InjectedBundle::Client::didReceiveMessage):
(API::InjectedBundle::Client::didReceiveMessageToPage):
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetClient):
* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
(webkitWebExtensionPageCreated): Deleted.
(webkitWebExtensionPageDestroy): Deleted.
(webkitWebExtensionDidReceiveMessage): Deleted.
(didCreatePage): Deleted.
(willDestroyPage): Deleted.
(didReceiveMessage): Deleted.
(didReceiveMessageToPage): Deleted.
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setClient):
(WebKit::InjectedBundle::didCreatePage):
(WebKit::InjectedBundle::willDestroyPage):
(WebKit::InjectedBundle::didInitializePageGroup):
(WebKit::InjectedBundle::didReceiveMessage):
(WebKit::InjectedBundle::didReceiveMessageToPage):
* WebProcess/InjectedBundle/InjectedBundle.h:
* WebProcess/InjectedBundle/InjectedBundleClient.cpp:
(WebKit::InjectedBundleClient::InjectedBundleClient):
(WebKit::InjectedBundleClient::didCreatePage):
(WebKit::InjectedBundleClient::willDestroyPage):
(WebKit::InjectedBundleClient::didInitializePageGroup):
(WebKit::InjectedBundleClient::didReceiveMessage):
(WebKit::InjectedBundleClient::didReceiveMessageToPage):
* WebProcess/InjectedBundle/InjectedBundleClient.h:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm
trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h
trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundleClient.cpp
trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundleClient.h


Added Paths

trunk/Source/WebKit2/WebProcess/InjectedBundle/API/APIInjectedBundleBundleClient.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (218318 => 218319)

--- trunk/Source/WebKit2/ChangeLog	2017-06-15 06:58:02 UTC (rev 218318)
+++ trunk/Source/WebKit2/ChangeLog	2017-06-15 07:02:38 UTC (rev 218319)
@@ -1,5 +1,48 @@
 2017-06-14  Carlos Garcia Campos  
 
+Add API::InjectedBundle::Client
+https://bugs.webkit.org/show_bug.cgi?id=173357
+
+Reviewed by Alex Christensen.
+
+It will be used by the GTK+ port instead of the C API.
+
+* WebKit2.xcodeproj/project.pbxproj:
+* WebProcess/InjectedBundle/API/APIInjectedBundleBundleClient.h: Copied from Source/WebKit2/WebProcess/InjectedBundle/InjectedBundleClient.h.
+(API::InjectedBundle::Client::didCreatePage):
+(API::InjectedBundle::Client::willDestroyPage):
+(API::InjectedBundle::Client::didInitializePageGroup):
+(API::InjectedBundle::Client::didReceiveMessage):
+(API::InjectedBundle::Client::didReceiveMessageToPage):
+* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
+(WKBundleSetClient):
+* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
+(webkitWebExtensionPageCreated): Deleted.
+(webkitWebExtensionPageDestroy): Deleted.
+(webkitWebExtensionDidReceiveMessage): Deleted.
+(didCreatePage): Deleted.
+(willDestroyPage): Deleted.
+(didReceiveMessage): Deleted.
+(didReceiveMessageToPage): Deleted.
+* WebProcess/InjectedBundle/InjectedBundle.cpp:
+(WebKit::InjectedBundle::setClient):
+(WebKit::InjectedBundle::didCreatePage):
+(WebKit::InjectedBundle::willDestroyPage):
+(WebKit::InjectedBundle::didInitializePageGroup):
+(WebKit::InjectedBundle::didReceiveMessage):
+(WebKit::InjectedBundle::didReceiveMessageToPage):
+* WebProcess/InjectedBundle/InjectedBundle.h:
+* WebProcess/InjectedBundle/InjectedBundleClient.cpp:
+(WebKit::InjectedBundleClient::InjectedBundleClient):
+(WebKit::InjectedBundleClient::didCreatePage):
+(WebKit::InjectedBundleClient::willDestroyPage):
+(WebKit::InjectedBundleClient::didInitializePageGroup):
+(WebKit::InjectedBundleClient::didReceiveMessage):
+(WebKit::InjectedBundleClient::didReceiveMessageToPage):
+* WebProcess/InjectedBundle/InjectedBundleClient.h:

[webkit-changes] [218318] trunk/Source/WebCore

2017-06-15 Thread commit-queue
Title: [218318] trunk/Source/WebCore








Revision 218318
Author commit-qu...@webkit.org
Date 2017-06-14 23:58:02 -0700 (Wed, 14 Jun 2017)


Log Message
Don't always recalc the style of display: contents elements.
https://bugs.webkit.org/show_bug.cgi?id=172753

Patch by Emilio Cobos Álvarez  on 2017-06-15
Reviewed by Antti Koivisto.

No new tests (no functionality change). This only removes an
inefficiency.

* dom/Element.cpp:
(WebCore::Element::existingComputedStyle):
* dom/Element.h:
* style/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateRenderTree):
(WebCore::RenderTreeUpdater::updateElementRenderer):
* style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::resolveElement):
(WebCore::Style::TreeResolver::createAnimatedElementUpdate):
(WebCore::Style::shouldResolveElement):
(WebCore::Style::TreeResolver::resolveComposedTree):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Element.cpp
trunk/Source/WebCore/dom/Element.h
trunk/Source/WebCore/style/RenderTreeUpdater.cpp
trunk/Source/WebCore/style/StyleTreeResolver.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (218317 => 218318)

--- trunk/Source/WebCore/ChangeLog	2017-06-15 06:23:19 UTC (rev 218317)
+++ trunk/Source/WebCore/ChangeLog	2017-06-15 06:58:02 UTC (rev 218318)
@@ -1,3 +1,25 @@
+2017-06-15 Emilio Cobos Álvarez  
+
+Don't always recalc the style of display: contents elements.
+https://bugs.webkit.org/show_bug.cgi?id=172753
+
+Reviewed by Antti Koivisto.
+
+No new tests (no functionality change). This only removes an
+inefficiency.
+
+* dom/Element.cpp:
+(WebCore::Element::existingComputedStyle):
+* dom/Element.h:
+* style/RenderTreeUpdater.cpp:
+(WebCore::RenderTreeUpdater::updateRenderTree):
+(WebCore::RenderTreeUpdater::updateElementRenderer):
+* style/StyleTreeResolver.cpp:
+(WebCore::Style::TreeResolver::resolveElement):
+(WebCore::Style::TreeResolver::createAnimatedElementUpdate):
+(WebCore::Style::shouldResolveElement):
+(WebCore::Style::TreeResolver::resolveComposedTree):
+
 2017-06-14  Antoine Quint  
 
 Rebaseline media/modern-media-controls/media-documents


Modified: trunk/Source/WebCore/dom/Element.cpp (218317 => 218318)

--- trunk/Source/WebCore/dom/Element.cpp	2017-06-15 06:23:19 UTC (rev 218317)
+++ trunk/Source/WebCore/dom/Element.cpp	2017-06-15 06:58:02 UTC (rev 218318)
@@ -2663,7 +2663,7 @@
 }
 }
 
-const RenderStyle* Element::existingComputedStyle()
+const RenderStyle* Element::existingComputedStyle() const
 {
 if (auto* renderTreeStyle = renderStyle())
 return renderTreeStyle;


Modified: trunk/Source/WebCore/dom/Element.h (218317 => 218318)

--- trunk/Source/WebCore/dom/Element.h	2017-06-15 06:23:19 UTC (rev 218317)
+++ trunk/Source/WebCore/dom/Element.h	2017-06-15 06:58:02 UTC (rev 218318)
@@ -505,6 +505,8 @@
 
 LayoutRect absoluteEventHandlerBounds(bool& includesFixedPositionElements) override;
 
+const RenderStyle* existingComputedStyle() const;
+
 void setBeforePseudoElement(Ref&&);
 void setAfterPseudoElement(Ref&&);
 void clearBeforePseudoElement();
@@ -643,7 +645,6 @@
 
 void removeShadowRoot();
 
-const RenderStyle* existingComputedStyle();
 const RenderStyle& resolveComputedStyle();
 
 bool rareDataStyleAffectedByEmpty() const;


Modified: trunk/Source/WebCore/style/RenderTreeUpdater.cpp (218317 => 218318)

--- trunk/Source/WebCore/style/RenderTreeUpdater.cpp	2017-06-15 06:23:19 UTC (rev 218317)
+++ trunk/Source/WebCore/style/RenderTreeUpdater.cpp	2017-06-15 06:58:02 UTC (rev 218318)
@@ -157,6 +157,8 @@
 
 if (auto* renderer = node.renderer())
 renderTreePosition().invalidateNextSibling(*renderer);
+else if (is(node) && downcast(node).hasDisplayContents())
+renderTreePosition().invalidateNextSibling();
 
 if (is(node)) {
 auto& text = downcast(node);
@@ -170,12 +172,16 @@
 auto& element = downcast(node);
 
 auto* elementUpdate = m_styleUpdate->elementUpdate(element);
-if (!elementUpdate) {
+
+// We hop through display: contents elements in findRenderingRoot, so
+// there may be other updates down the tree.
+if (!elementUpdate && !element.hasDisplayContents()) {
 it.traverseNextSkippingChildren();
 continue;
 }
 
-updateElementRenderer(element, *elementUpdate);
+if (elementUpdate)
+updateElementRenderer(element, *elementUpdate);
 
 bool mayHaveRenderedDescendants = element.renderer() || (element.hasDisplayContents() && shouldCreateRenderer(element, renderTreePosition().parent()));
 if (!mayHaveRenderedDescendants) {
@@ -274,8 +280,6 @@
 element.resetComputedStyle();
 else
 

[webkit-changes] [218317] trunk/LayoutTests

2017-06-15 Thread ap
Title: [218317] trunk/LayoutTests








Revision 218317
Author a...@apple.com
Date 2017-06-14 23:23:19 -0700 (Wed, 14 Jun 2017)


Log Message
REGRESSION: trac.webkit.org/export returns Content-Type application/xhtml+xml for .html files
https://bugs.webkit.org/show_bug.cgi?id=173191

Add a MIME type to one test to check if this changes the behavior.

* http/tests/security/contentSecurityPolicy/allow-favicon.html: Added property svn:mime-type.

Modified Paths

trunk/LayoutTests/ChangeLog


Property Changed

trunk/LayoutTests/http/tests/security/contentSecurityPolicy/allow-favicon.html




Diff

Modified: trunk/LayoutTests/ChangeLog (218316 => 218317)

--- trunk/LayoutTests/ChangeLog	2017-06-15 05:57:27 UTC (rev 218316)
+++ trunk/LayoutTests/ChangeLog	2017-06-15 06:23:19 UTC (rev 218317)
@@ -1,3 +1,12 @@
+2017-06-14  Alexey Proskuryakov  
+
+REGRESSION: trac.webkit.org/export returns Content-Type application/xhtml+xml for .html files
+https://bugs.webkit.org/show_bug.cgi?id=173191
+
+Add a MIME type to one test to check if this changes the behavior.
+
+* http/tests/security/contentSecurityPolicy/allow-favicon.html: Added property svn:mime-type.
+
 2017-06-14  Antoine Quint  
 
 Rebaseline media/modern-media-controls/media-documents
Index: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/allow-favicon.html
===
--- trunk/LayoutTests/http/tests/security/contentSecurityPolicy/allow-favicon.html	2017-06-15 05:57:27 UTC (rev 218316)
+++ trunk/LayoutTests/http/tests/security/contentSecurityPolicy/allow-favicon.html	2017-06-15 06:23:19 UTC (rev 218317)


Property changes: trunk/LayoutTests/http/tests/security/contentSecurityPolicy/allow-favicon.html



Added: svn:mime-type
+text/html
\ No newline at end of property




___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes