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

2014-06-25 Thread roger_fong
Title: [170471] trunk/Source/WebKit2








Revision 170471
Author roger_f...@apple.com
Date 2014-06-25 23:45:17 -0700 (Wed, 25 Jun 2014)


Log Message
Don't allow sudden termination while writing to local storage.
https://bugs.webkit.org/show_bug.cgi?id=134254.
.

Reviewed by Darin Adler.

* UIProcess/Storage/LocalStorageDatabase.cpp:
(WebKit::LocalStorageDatabase::scheduleDatabaseUpdate):
Disable sudden termination when a database update is scheduled.
(WebKit::LocalStorageDatabase::updateDatabase):
Re-enable sudden termination when the update completes.
* UIProcess/Storage/LocalStorageDatabase.h:

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.cpp
trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.h




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170470 => 170471)

--- trunk/Source/WebKit2/ChangeLog	2014-06-26 06:41:34 UTC (rev 170470)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-26 06:45:17 UTC (rev 170471)
@@ -1,3 +1,18 @@
+2014-06-24  Roger Fong  
+
+Don't allow sudden termination while writing to local storage.
+https://bugs.webkit.org/show_bug.cgi?id=134254.
+.
+
+Reviewed by Darin Adler.
+
+* UIProcess/Storage/LocalStorageDatabase.cpp:
+(WebKit::LocalStorageDatabase::scheduleDatabaseUpdate):
+Disable sudden termination when a database update is scheduled.
+(WebKit::LocalStorageDatabase::updateDatabase):
+Re-enable sudden termination when the update completes.
+* UIProcess/Storage/LocalStorageDatabase.h:
+
 2014-06-25  Benjamin Poulain  
 
 [iOS][WK2] Update the long press interactions correctly when an overflow scroll view scrolls


Modified: trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.cpp (170470 => 170471)

--- trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.cpp	2014-06-26 06:41:34 UTC (rev 170470)
+++ trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.cpp	2014-06-26 06:45:17 UTC (rev 170471)
@@ -33,6 +33,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -240,6 +241,9 @@
 if (m_didScheduleDatabaseUpdate)
 return;
 
+if (!m_disableSuddenTerminationWhileWritingToLocalStorage)
+m_disableSuddenTerminationWhileWritingToLocalStorage = std::make_unique();
+
 m_didScheduleDatabaseUpdate = true;
 
 RefPtr localStorageDatabase(this);
@@ -260,6 +264,8 @@
 if (m_changedItems.size() <= maximumItemsToUpdate) {
 // There are few enough changed items that we can just always write all of them.
 m_changedItems.swap(changedItems);
+updateDatabaseWithChangedItems(changedItems);
+m_disableSuddenTerminationWhileWritingToLocalStorage = nullptr;
 } else {
 for (int i = 0; i < maximumItemsToUpdate; ++i) {
 auto it = m_changedItems.begin();
@@ -272,9 +278,8 @@
 
 // Reschedule the update for the remaining items.
 scheduleDatabaseUpdate();
+updateDatabaseWithChangedItems(changedItems);
 }
-
-updateDatabaseWithChangedItems(changedItems);
 }
 
 void LocalStorageDatabase::updateDatabaseWithChangedItems(const HashMap& changedItems)


Modified: trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.h (170470 => 170471)

--- trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.h	2014-06-26 06:41:34 UTC (rev 170470)
+++ trunk/Source/WebKit2/UIProcess/Storage/LocalStorageDatabase.h	2014-06-26 06:45:17 UTC (rev 170471)
@@ -37,6 +37,7 @@
 namespace WebCore {
 class SecurityOrigin;
 class StorageMap;
+class SuddenTerminationDisabler;
 }
 
 namespace WebKit {
@@ -91,6 +92,8 @@
 bool m_didScheduleDatabaseUpdate;
 bool m_shouldClearItems;
 HashMap m_changedItems;
+
+std::unique_ptr m_disableSuddenTerminationWhileWritingToLocalStorage;
 };
 
 






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


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

2014-06-25 Thread dino
Title: [170469] trunk/Source/WebCore








Revision 170469
Author d...@apple.com
Date 2014-06-25 23:35:24 -0700 (Wed, 25 Jun 2014)


Log Message
HIDGamepad should use CFIndex when looping
https://bugs.webkit.org/show_bug.cgi?id=134337

Reviewed by Dan Bernstein.

* platform/mac/HIDGamepad.cpp:
(WebCore::HIDGamepad::initElementsFromArray): Replace int with CFIndex, and use
a local variable for CFArrayCount.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mac/HIDGamepad.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (170468 => 170469)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 05:28:14 UTC (rev 170468)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 06:35:24 UTC (rev 170469)
@@ -1,3 +1,14 @@
+2014-06-25  Dean Jackson  
+
+HIDGamepad should use CFIndex when looping
+https://bugs.webkit.org/show_bug.cgi?id=134337
+
+Reviewed by Dan Bernstein.
+
+* platform/mac/HIDGamepad.cpp:
+(WebCore::HIDGamepad::initElementsFromArray): Replace int with CFIndex, and use
+a local variable for CFArrayCount.
+
 2014-06-25  Ryosuke Niwa  
 
 Build fix attempt after r170465.


Modified: trunk/Source/WebCore/platform/mac/HIDGamepad.cpp (170468 => 170469)

--- trunk/Source/WebCore/platform/mac/HIDGamepad.cpp	2014-06-26 05:28:14 UTC (rev 170468)
+++ trunk/Source/WebCore/platform/mac/HIDGamepad.cpp	2014-06-26 06:35:24 UTC (rev 170469)
@@ -75,7 +75,7 @@
 
 void HIDGamepad::initElementsFromArray(CFArrayRef elements)
 {
-for (int i = 0; i < CFArrayGetCount(elements); ++i) {
+for (CFIndex i = 0, count = CFArrayGetCount(elements); i < count; ++i) {
 IOHIDElementRef element = (IOHIDElementRef)CFArrayGetValueAtIndex(elements, i);
 if (CFGetTypeID(element) != IOHIDElementGetTypeID())
 continue;






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


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

2014-06-25 Thread rniwa
Title: [170468] trunk/Source/WebCore








Revision 170468
Author rn...@webkit.org
Date 2014-06-25 22:28:14 -0700 (Wed, 25 Jun 2014)


Log Message
Build fix attempt after r170465.

* platform/mac/HIDGamepad.cpp:
(WebCore::HIDGamepad::initElementsFromArray):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mac/HIDGamepad.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (170467 => 170468)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 05:25:32 UTC (rev 170467)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 05:28:14 UTC (rev 170468)
@@ -1,3 +1,10 @@
+2014-06-25  Ryosuke Niwa  
+
+Build fix attempt after r170465.
+
+* platform/mac/HIDGamepad.cpp:
+(WebCore::HIDGamepad::initElementsFromArray):
+
 2014-06-25  Dean Jackson  
 
 [Mac] Radio buttons and checkboxes vanish when redrawn


Modified: trunk/Source/WebCore/platform/mac/HIDGamepad.cpp (170467 => 170468)

--- trunk/Source/WebCore/platform/mac/HIDGamepad.cpp	2014-06-26 05:25:32 UTC (rev 170467)
+++ trunk/Source/WebCore/platform/mac/HIDGamepad.cpp	2014-06-26 05:28:14 UTC (rev 170468)
@@ -75,7 +75,7 @@
 
 void HIDGamepad::initElementsFromArray(CFArrayRef elements)
 {
-for (unsigned i = 0; i < CFArrayGetCount(elements); ++i) {
+for (int i = 0; i < CFArrayGetCount(elements); ++i) {
 IOHIDElementRef element = (IOHIDElementRef)CFArrayGetValueAtIndex(elements, i);
 if (CFGetTypeID(element) != IOHIDElementGetTypeID())
 continue;






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


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

2014-06-25 Thread dino
Title: [170467] trunk/Source/WebCore








Revision 170467
Author d...@apple.com
Date 2014-06-25 22:25:32 -0700 (Wed, 25 Jun 2014)


Log Message
[Mac] Radio buttons and checkboxes vanish when redrawn
https://bugs.webkit.org/show_bug.cgi?id=134335

Reviewed by Dan Bernstein.

I screwed up when landing r170343 by moving some code around
which broke the logic. We need to query the animation
state for controls after we draw (both statically and animated).

* platform/mac/ThemeMac.mm:
(WebCore::paintToggleButton): We need to check the state of animation again, after
we draw.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mac/ThemeMac.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (170466 => 170467)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 05:00:13 UTC (rev 170466)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 05:25:32 UTC (rev 170467)
@@ -1,3 +1,18 @@
+2014-06-25  Dean Jackson  
+
+[Mac] Radio buttons and checkboxes vanish when redrawn
+https://bugs.webkit.org/show_bug.cgi?id=134335
+
+Reviewed by Dan Bernstein.
+
+I screwed up when landing r170343 by moving some code around
+which broke the logic. We need to query the animation
+state for controls after we draw (both statically and animated).
+
+* platform/mac/ThemeMac.mm:
+(WebCore::paintToggleButton): We need to check the state of animation again, after
+we draw.
+
 2014-06-25  Brady Eidson  
 
 Add HID-based gamepad implementation for Mac


Modified: trunk/Source/WebCore/platform/mac/ThemeMac.mm (170466 => 170467)

--- trunk/Source/WebCore/platform/mac/ThemeMac.mm	2014-06-26 05:00:13 UTC (rev 170466)
+++ trunk/Source/WebCore/platform/mac/ThemeMac.mm	2014-06-26 05:25:32 UTC (rev 170467)
@@ -449,7 +449,9 @@
 needsRepaint = drawCellFocusRing(toggleButtonCell, inflatedRect, view);
 [toggleButtonCell setControlView:nil];
 
-needsRepaint |= isAnimating;
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 10100
+needsRepaint |= [toggleButtonCell _stateAnimationRunning];
+#endif
 controlStates->setNeedsRepaint(needsRepaint);
 if (needsRepaint)
 controlStates->setPlatformControl(toggleButtonCell);






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


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

2014-06-25 Thread benjamin
Title: [170466] trunk/Source/WebKit2








Revision 170466
Author benja...@webkit.org
Date 2014-06-25 22:00:13 -0700 (Wed, 25 Jun 2014)


Log Message
[iOS][WK2] Update the long press interactions correctly when an overflow scroll view scrolls
https://bugs.webkit.org/show_bug.cgi?id=134334

Patch by Benjamin Poulain  on 2014-06-25
Reviewed by Simon Fraser.

* UIProcess/PageClient.h:
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll):
* UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
* UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(-[WKOverflowScrollViewDelegate scrollViewWillBeginDragging:]):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::overflowScrollViewWillStartPanGesture):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewWillStartPanGesture): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::overflowScrollViewWillStartPanGesture):
(WebKit::PageClientImpl::overflowScrollViewDidScroll):
(WebKit::PageClientImpl::scrollViewWillStartPanGesture): Deleted.
* UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeWillStartPanGesture):
* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::overflowScrollViewWillStartPanGesture):
(WebKit::WebPageProxy::overflowScrollViewDidScroll):
(WebKit::WebPageProxy::scrollViewWillStartPanGesture): Deleted.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/PageClient.h
trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp
trunk/Source/WebKit2/UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h
trunk/Source/WebKit2/UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
trunk/Source/WebKit2/UIProcess/ios/PageClientImplIOS.h
trunk/Source/WebKit2/UIProcess/ios/PageClientImplIOS.mm
trunk/Source/WebKit2/UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm
trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h
trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170465 => 170466)

--- trunk/Source/WebKit2/ChangeLog	2014-06-26 04:49:34 UTC (rev 170465)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-26 05:00:13 UTC (rev 170466)
@@ -1,3 +1,32 @@
+2014-06-25  Benjamin Poulain  
+
+[iOS][WK2] Update the long press interactions correctly when an overflow scroll view scrolls
+https://bugs.webkit.org/show_bug.cgi?id=134334
+
+Reviewed by Simon Fraser.
+
+* UIProcess/PageClient.h:
+* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
+(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll):
+* UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
+* UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
+(-[WKOverflowScrollViewDelegate scrollViewWillBeginDragging:]):
+(WebKit::ScrollingTreeOverflowScrollingNodeIOS::overflowScrollViewWillStartPanGesture):
+(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewWillStartPanGesture): Deleted.
+* UIProcess/WebPageProxy.h:
+* UIProcess/ios/PageClientImplIOS.h:
+* UIProcess/ios/PageClientImplIOS.mm:
+(WebKit::PageClientImpl::overflowScrollViewWillStartPanGesture):
+(WebKit::PageClientImpl::overflowScrollViewDidScroll):
+(WebKit::PageClientImpl::scrollViewWillStartPanGesture): Deleted.
+* UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
+(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeWillStartPanGesture):
+* UIProcess/ios/WKContentViewInteraction.h:
+* UIProcess/ios/WebPageProxyIOS.mm:
+(WebKit::WebPageProxy::overflowScrollViewWillStartPanGesture):
+(WebKit::WebPageProxy::overflowScrollViewDidScroll):
+(WebKit::WebPageProxy::scrollViewWillStartPanGesture): Deleted.
+
 2014-06-25  Simon Fraser  
 
 [iOS WK2] Page jumps when rubber-banding on azuremagazine.com 


Modified: trunk/Source/WebKit2/UIProcess/PageClient.h (170465 => 170466)

--- trunk/Source/WebKit2/UIProcess/PageClient.h	2014-06-26 04:49:34 UTC (rev 170465)
+++ trunk/Source/WebKit2/UIProcess/PageClient.h	2014-06-26 05:00:13 UTC (rev 170466)
@@ -271,7 +271,8 @@
 virtual void setUsesMinimalUI(bool) = 0;
 virtual double minimumZoomScale() const = 0;
 virtual WebCore::FloatSize contentsSize() const = 0;
-virtual void scrollViewWillStartPanGesture() = 0;
+virtual void overflowScrollViewWillStartPanGesture() = 0;
+virtual void overflowScrollViewDidScroll() = 0;
 virtual void didFinishDrawingPagesToPDF(const IPC::DataReference&) = 0;
 
 #if ENABLE(INSPECTOR)


Modified: trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingC

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

2014-06-25 Thread rniwa
Title: [170464] trunk/Source/WebCore








Revision 170464
Author rn...@webkit.org
Date 2014-06-25 21:44:24 -0700 (Wed, 25 Jun 2014)


Log Message
WebProgressTracker updates progress too frequently
https://bugs.webkit.org/show_bug.cgi?id=134185

Reviewed by Tim Horton.

The old code throttled the progress update to when either 100ms has passed or the delta is at least 2%
but this was still not enough in pages that loaded in sub-seconds. The new code always throttles it at 200ms.

* loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::ProgressTracker):
(WebCore::ProgressTracker::incrementProgress):
* loader/ProgressTracker.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/ProgressTracker.cpp
trunk/Source/WebCore/loader/ProgressTracker.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (170463 => 170464)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 04:15:52 UTC (rev 170463)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 04:44:24 UTC (rev 170464)
@@ -1,3 +1,18 @@
+2014-06-25  Ryosuke Niwa  
+
+WebProgressTracker updates progress too frequently
+https://bugs.webkit.org/show_bug.cgi?id=134185
+
+Reviewed by Tim Horton.
+
+The old code throttled the progress update to when either 100ms has passed or the delta is at least 2%
+but this was still not enough in pages that loaded in sub-seconds. The new code always throttles it at 200ms.
+
+* loader/ProgressTracker.cpp:
+(WebCore::ProgressTracker::ProgressTracker):
+(WebCore::ProgressTracker::incrementProgress):
+* loader/ProgressTracker.h:
+
 2014-06-25  Simon Fraser  
 
 [iOS WK2] Fixed position elements jump around when zooming


Modified: trunk/Source/WebCore/loader/ProgressTracker.cpp (170463 => 170464)

--- trunk/Source/WebCore/loader/ProgressTracker.cpp	2014-06-26 04:15:52 UTC (rev 170463)
+++ trunk/Source/WebCore/loader/ProgressTracker.cpp	2014-06-26 04:44:24 UTC (rev 170464)
@@ -60,6 +60,8 @@
 // How many bytes are required between heartbeats to consider it progress.
 static const unsigned minumumBytesPerHeartbeatForProgress = 1024;
 
+static const std::chrono::milliseconds progressNotificationTimeInterval = std::chrono::milliseconds(200);
+
 struct ProgressItem {
 WTF_MAKE_NONCOPYABLE(ProgressItem); WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -80,8 +82,6 @@
 , m_totalPageAndResourceBytesToLoad(0)
 , m_totalBytesReceived(0)
 , m_lastNotifiedProgressValue(0)
-, m_progressNotificationInterval(0.02)
-, m_progressNotificationTimeInterval(std::chrono::milliseconds(100))
 , m_finalProgressChangedSent(false)
 , m_progressValue(0)
 , m_numProgressTrackedFrames(0)
@@ -257,10 +257,7 @@
 auto notifiedProgressTimeDelta = now - m_lastNotifiedProgressTime;
 
 LOG(Progress, "Progress incremented (%p) - value %f, tracked frames %d", this, m_progressValue, m_numProgressTrackedFrames);
-double notificationProgressDelta = m_progressValue - m_lastNotifiedProgressValue;
-if ((notificationProgressDelta >= m_progressNotificationInterval ||
- notifiedProgressTimeDelta >= m_progressNotificationTimeInterval) &&
-m_numProgressTrackedFrames > 0) {
+if ((notifiedProgressTimeDelta >= progressNotificationTimeInterval || m_progressValue == 1) && m_numProgressTrackedFrames > 0) {
 if (!m_finalProgressChangedSent) {
 if (m_progressValue == 1)
 m_finalProgressChangedSent = true;


Modified: trunk/Source/WebCore/loader/ProgressTracker.h (170463 => 170464)

--- trunk/Source/WebCore/loader/ProgressTracker.h	2014-06-26 04:15:52 UTC (rev 170463)
+++ trunk/Source/WebCore/loader/ProgressTracker.h	2014-06-26 04:44:24 UTC (rev 170464)
@@ -75,8 +75,6 @@
 long long m_totalBytesReceived;
 double m_lastNotifiedProgressValue;
 std::chrono::steady_clock::time_point m_lastNotifiedProgressTime;
-double m_progressNotificationInterval;
-std::chrono::milliseconds m_progressNotificationTimeInterval;
 bool m_finalProgressChangedSent;
 double m_progressValue;
 RefPtr m_originatingProgressFrame;






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


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

2014-06-25 Thread simon . fraser
Title: [170463] trunk/Source/WebKit2








Revision 170463
Author simon.fra...@apple.com
Date 2014-06-25 21:15:52 -0700 (Wed, 25 Jun 2014)


Log Message
[iOS WK2] Page jumps when rubber-banding on azuremagazine.com
https://bugs.webkit.org/show_bug.cgi?id=134238


Reviewed by Benjamin Poulain.

If the scroll view is in the process of rubber-banding when -setContentSize: is called,
it clamps the scroll offsets between zero and the max value, which visibly interrupts the
rubberband. This can easily happen now that we continually send scroll events to the page
on scrolling, especially when pages like azuremagazine.com do fake sticky by toggling
in-flow elements into position:fixed.

Fix by computing the amount of rubber-band before calling -setContentSize:, and then
restoring the contentOffset with the same amount of rubber-band even when the content size
is different, for top/left rubberbands.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:WebKit::]):
* UIProcess/ios/WKScrollView.h:
* UIProcess/ios/WKScrollView.mm:
(-[WKScrollView _currentTopLeftRubberbandAmount]):
(-[WKScrollView _restoreContentOffsetWithRubberbandAmount:]):
(-[WKScrollView _setContentSizePreservingContentOffsetDuringRubberband:]):

Modified Paths

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




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170462 => 170463)

--- trunk/Source/WebKit2/ChangeLog	2014-06-26 04:15:50 UTC (rev 170462)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-26 04:15:52 UTC (rev 170463)
@@ -1,5 +1,31 @@
 2014-06-25  Simon Fraser  
 
+[iOS WK2] Page jumps when rubber-banding on azuremagazine.com 
+https://bugs.webkit.org/show_bug.cgi?id=134238
+
+
+Reviewed by Benjamin Poulain.
+
+If the scroll view is in the process of rubber-banding when -setContentSize: is called,
+it clamps the scroll offsets between zero and the max value, which visibly interrupts the
+rubberband. This can easily happen now that we continually send scroll events to the page
+on scrolling, especially when pages like azuremagazine.com do fake sticky by toggling
+in-flow elements into position:fixed.
+
+Fix by computing the amount of rubber-band before calling -setContentSize:, and then
+restoring the contentOffset with the same amount of rubber-band even when the content size
+is different, for top/left rubberbands.
+
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _didCommitLayerTree:WebKit::]):
+* UIProcess/ios/WKScrollView.h:
+* UIProcess/ios/WKScrollView.mm:
+(-[WKScrollView _currentTopLeftRubberbandAmount]):
+(-[WKScrollView _restoreContentOffsetWithRubberbandAmount:]):
+(-[WKScrollView _setContentSizePreservingContentOffsetDuringRubberband:]):
+
+2014-06-25  Simon Fraser  
+
 [iOS WK2] Fixed position elements jump around when zooming
 https://bugs.webkit.org/show_bug.cgi?id=134328
 


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

--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2014-06-26 04:15:50 UTC (rev 170462)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2014-06-26 04:15:52 UTC (rev 170463)
@@ -774,7 +774,9 @@
 return;
 }
 
-[_scrollView setContentSize:roundScrollViewContentSize(*_page, [_contentView frame].size)];
+CGSize newContentSize = roundScrollViewContentSize(*_page, [_contentView frame].size);
+[_scrollView _setContentSizePreservingContentOffsetDuringRubberband:newContentSize];
+
 [_scrollView setMinimumZoomScale:layerTreeTransaction.minimumScaleFactor()];
 [_scrollView setMaximumZoomScale:layerTreeTransaction.maximumScaleFactor()];
 [_scrollView setZoomEnabled:layerTreeTransaction.allowsUserScaling()];


Modified: trunk/Source/WebKit2/UIProcess/ios/WKScrollView.h (170462 => 170463)

--- trunk/Source/WebKit2/UIProcess/ios/WKScrollView.h	2014-06-26 04:15:50 UTC (rev 170462)
+++ trunk/Source/WebKit2/UIProcess/ios/WKScrollView.h	2014-06-26 04:15:52 UTC (rev 170463)
@@ -33,6 +33,8 @@
 
 @property (nonatomic, assign) WKWebView  *internalDelegate;
 
+- (void)_setContentSizePreservingContentOffsetDuringRubberband:(CGSize)contentSize;
+
 @end
 
 #endif // PLATFORM(IOS)


Modified: trunk/Source/WebKit2/UIProcess/ios/WKScrollView.mm (170462 => 170463)

--- trunk/Source/WebKit2/UIProcess/ios/WKScrollView.mm	2014-06-26 04:15:50 UTC (rev 170462)
+++ trunk/Source/WebKit2/UIProcess/ios/WKScrollView.mm	2014-06-26 04:15:52 UTC (rev 170463)
@@ -198,6 +198,54 @@
 [_internalDelegate _updateVisibleContentRects];
 }
 
+// Fetch top/left rubberband amounts (as negative values).
+- (CGSize)_currentTopLeftRubberbandAmount
+{
+UIEdgeInsets edgeInsets = [self contentInset];
+
+CGSize rubberbandAmo

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

2014-06-25 Thread benjamin
Title: [170460] trunk/Source/WebKit2








Revision 170460
Author benja...@webkit.org
Date 2014-06-25 21:15:32 -0700 (Wed, 25 Jun 2014)


Log Message
REGRESSION (r170325): UI process crashes in lastCommittedLayerTreeTransactionID() when the Web Content process crashes
https://bugs.webkit.org/show_bug.cgi?id=134284

Patch by Benjamin Poulain  on 2014-06-25
Reviewed by Simon Fraser.

The crash was caused by the access to the Drawing Area after the crash.
This lead to discovering another bug: m_lastVisibleContentRectUpdate could have been updated after WebPageProxy::resetState(),
which in turn would prevent valid updates when a new WebProcess is created.

This patch fixes both issues by moving the VisibleContentRectUpdateInfo to be internal to WebPageProxy,
then early return if we get there in an invalid state.

* UIProcess/WebPageProxy.h:
* UIProcess/ios/WKContentView.mm:
(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::updateVisibleContentRects):

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
trunk/Source/WebKit2/UIProcess/ios/WKContentView.mm
trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170459 => 170460)

--- trunk/Source/WebKit2/ChangeLog	2014-06-26 03:59:10 UTC (rev 170459)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-26 04:15:32 UTC (rev 170460)
@@ -1,3 +1,23 @@
+2014-06-25  Benjamin Poulain  
+
+REGRESSION (r170325): UI process crashes in lastCommittedLayerTreeTransactionID() when the Web Content process crashes
+https://bugs.webkit.org/show_bug.cgi?id=134284
+
+Reviewed by Simon Fraser.
+
+The crash was caused by the access to the Drawing Area after the crash.
+This lead to discovering another bug: m_lastVisibleContentRectUpdate could have been updated after WebPageProxy::resetState(),
+which in turn would prevent valid updates when a new WebProcess is created.
+
+This patch fixes both issues by moving the VisibleContentRectUpdateInfo to be internal to WebPageProxy,
+then early return if we get there in an invalid state.
+
+* UIProcess/WebPageProxy.h:
+* UIProcess/ios/WKContentView.mm:
+(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):
+* UIProcess/ios/WebPageProxyIOS.mm:
+(WebKit::WebPageProxy::updateVisibleContentRects):
+
 2014-06-25  Brady Eidson  
 
 Add new platform gamepad abstractions


Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (170459 => 170460)

--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h	2014-06-26 03:59:10 UTC (rev 170459)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h	2014-06-26 04:15:32 UTC (rev 170460)
@@ -382,7 +382,7 @@
 const WebCore::FloatRect& exposedContentRect() const { return m_lastVisibleContentRectUpdate.exposedRect(); }
 const WebCore::FloatRect& unobscuredContentRect() const { return m_lastVisibleContentRectUpdate.unobscuredRect(); }
 
-bool updateVisibleContentRects(const VisibleContentRectUpdateInfo&);
+void updateVisibleContentRects(const WebCore::FloatRect& exposedRect, const WebCore::FloatRect& unobscuredRect, const WebCore::FloatRect& unobscuredRectInScrollViewCoordinates, const WebCore::FloatRect& customFixedPositionRect, double scale, bool inStableState, bool isChangingObscuredInsetsInteractively, double timestamp, double horizontalVelocity, double verticalVelocity, double scaleChangeRate);
 
 enum class UnobscuredRectConstraint { ConstrainedToDocumentRect, Unconstrained };
 WebCore::FloatRect computeCustomFixedPositionRect(const WebCore::FloatRect& unobscuredContentRect, double displayedContentScale, UnobscuredRectConstraint = UnobscuredRectConstraint::Unconstrained) const;


Modified: trunk/Source/WebKit2/UIProcess/ios/WKContentView.mm (170459 => 170460)

--- trunk/Source/WebKit2/UIProcess/ios/WKContentView.mm	2014-06-26 03:59:10 UTC (rev 170459)
+++ trunk/Source/WebKit2/UIProcess/ios/WKContentView.mm	2014-06-26 04:15:32 UTC (rev 170460)
@@ -564,8 +564,8 @@
 _historicalKinematicData.clear();
 
 FloatRect fixedPositionRectForLayout = _page->computeCustomFixedPositionRect(unobscuredRect, zoomScale, WebPageProxy::UnobscuredRectConstraint::ConstrainedToDocumentRect);
-_page->updateVisibleContentRects(VisibleContentRectUpdateInfo(visibleRect, unobscuredRect, unobscuredRectInScrollViewCoordinates, fixedPositionRectForLayout,
-zoomScale, isStableState, isChangingObscuredInsetsInteractively, timestamp, velocityData.horizontalVelocity, velocityData.verticalVelocity, velocityData.scaleChangeRate, toRemoteLayerTreeDrawingAreaProxy(_page->drawingArea())->lastCommittedLayerTreeTransactionID()));
+_page

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

2014-06-25 Thread simon . fraser
Title: [170461] trunk/Source/WebCore








Revision 170461
Author simon.fra...@apple.com
Date 2014-06-25 21:15:40 -0700 (Wed, 25 Jun 2014)


Log Message
[iOS WK2] Tweak the logic used to choose the scale at which position:fixed gets pushed out of view
https://bugs.webkit.org/show_bug.cgi?id=134323

Reviewed by Benjamin Poulain.

Previously we used a fixed scale (1.2x) at which we'd start pushing position:fixed elements
out of the viewport. This worked well on iPad, but terribly on iPhone. Instead, choose a scale
relative to how much of the page is visible width-wise, the threshold being 2/3 of the page width.
The width is clamped to get reasonable behavior on wide pages.

* page/FrameView.cpp:
(WebCore::FrameView::rectForViewportConstrainedObjects):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/FrameView.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (170460 => 170461)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 04:15:32 UTC (rev 170460)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 04:15:40 UTC (rev 170461)
@@ -1,3 +1,18 @@
+2014-06-25  Simon Fraser  
+
+[iOS WK2] Tweak the logic used to choose the scale at which position:fixed gets pushed out of view
+https://bugs.webkit.org/show_bug.cgi?id=134323
+
+Reviewed by Benjamin Poulain.
+
+Previously we used a fixed scale (1.2x) at which we'd start pushing position:fixed elements
+out of the viewport. This worked well on iPad, but terribly on iPhone. Instead, choose a scale
+relative to how much of the page is visible width-wise, the threshold being 2/3 of the page width.
+The width is clamped to get reasonable behavior on wide pages.
+
+* page/FrameView.cpp:
+(WebCore::FrameView::rectForViewportConstrainedObjects):
+
 2014-06-25  Brady Eidson  
 
 Add new platform gamepad abstractions


Modified: trunk/Source/WebCore/page/FrameView.cpp (170460 => 170461)

--- trunk/Source/WebCore/page/FrameView.cpp	2014-06-26 04:15:32 UTC (rev 170460)
+++ trunk/Source/WebCore/page/FrameView.cpp	2014-06-26 04:15:40 UTC (rev 170461)
@@ -1635,11 +1635,15 @@
 if (fixedElementsLayoutRelativeToFrame)
 return visibleContentRect;
 
+if (totalContentsSize.isEmpty())
+return visibleContentRect;
+
 // We impose an lower limit on the size (so an upper limit on the scale) of
 // the rect used to position fixed objects so that they don't crowd into the
 // center of the screen at larger scales.
-const float constraintThresholdScale = 1.2;
-
+const LayoutUnit maxContentWidthForZoomThreshold = LayoutUnit::fromPixel(1024);
+float zoomedOutScale = frameScaleFactor * visibleContentRect.width() / std::min(maxContentWidthForZoomThreshold, totalContentsSize.width());
+float constraintThresholdScale = 1.5 * zoomedOutScale;
 float maxPostionedObjectsRectScale = std::min(frameScaleFactor, constraintThresholdScale);
 
 LayoutRect viewportConstrainedObjectsRect = visibleContentRect;






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


[webkit-changes] [170462] trunk/Source

2014-06-25 Thread simon . fraser
Title: [170462] trunk/Source








Revision 170462
Author simon.fra...@apple.com
Date 2014-06-25 21:15:50 -0700 (Wed, 25 Jun 2014)


Log Message
[iOS WK2] Fixed position elements jump around when zooming
https://bugs.webkit.org/show_bug.cgi?id=134328


Reviewed by Zalan Bujtas.

If a given remote layer tree commit contains changes of layers for viewport-constrained
objects, then the associated scrolling tree also needs to show that the layers changed,
since we need to re-run the "viewport changed" logic in the UI process to get the
layers correctly positioned for the current zoom level.

The bug was that page scale changes resulted in small "pixel alignment" position
changes which touched layers, but we didn't commit any scrolling tree changes. So
the scrolling tree commit would result in visibly stale layer positions, with no scrolling tree
update to adjust them for the current transient zoom.

Fix by making use of the existing "alignment offset" field in the ViewportConstraints
data, and having RemoteScrollingCoordinatorProxy::connectStateNodeLayers() note that
fixed or sticky layers changed if any properties of fixed or sticky scrolling tree
nodes were updated.

Source/WebCore:
* page/scrolling/ScrollingConstraints.h:
(WebCore::StickyPositionViewportConstraints::operator==):
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::pixelAlignmentOffset):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateGeometry):
* platform/graphics/ca/GraphicsLayerCA.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeFixedViewportConstraints):
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints):

Source/WebKit2:
* UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h
trunk/Source/WebCore/platform/graphics/GraphicsLayer.h
trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp
trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h
trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (170461 => 170462)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 04:15:40 UTC (rev 170461)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 04:15:50 UTC (rev 170462)
@@ -1,5 +1,39 @@
 2014-06-25  Simon Fraser  
 
+[iOS WK2] Fixed position elements jump around when zooming
+https://bugs.webkit.org/show_bug.cgi?id=134328
+
+
+Reviewed by Zalan Bujtas.
+
+If a given remote layer tree commit contains changes of layers for viewport-constrained
+objects, then the associated scrolling tree also needs to show that the layers changed,
+since we need to re-run the "viewport changed" logic in the UI process to get the
+layers correctly positioned for the current zoom level.
+
+The bug was that page scale changes resulted in small "pixel alignment" position
+changes which touched layers, but we didn't commit any scrolling tree changes. So
+the scrolling tree commit would result in visibly stale layer positions, with no scrolling tree
+update to adjust them for the current transient zoom.
+
+Fix by making use of the existing "alignment offset" field in the ViewportConstraints
+data, and having RemoteScrollingCoordinatorProxy::connectStateNodeLayers() note that
+fixed or sticky layers changed if any properties of fixed or sticky scrolling tree
+nodes were updated.
+
+* page/scrolling/ScrollingConstraints.h:
+(WebCore::StickyPositionViewportConstraints::operator==):
+* platform/graphics/GraphicsLayer.h:
+(WebCore::GraphicsLayer::pixelAlignmentOffset):
+* platform/graphics/ca/GraphicsLayerCA.cpp:
+(WebCore::GraphicsLayerCA::updateGeometry):
+* platform/graphics/ca/GraphicsLayerCA.h:
+* rendering/RenderLayerCompositor.cpp:
+(WebCore::RenderLayerCompositor::computeFixedViewportConstraints):
+(WebCore::RenderLayerCompositor::computeStickyViewportConstraints):
+
+2014-06-25  Simon Fraser  
+
 [iOS WK2] Tweak the logic used to choose the scale at which position:fixed gets pushed out of view
 https://bugs.webkit.org/show_bug.cgi?id=134323
 


Modified: trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h (170461 => 170462)

--- trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h	2014-06-26 04:15:40 UTC (rev 170461)
+++ trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h	2014-06-26 04:15:50 UTC (rev 170462)
@@ -167,7 +167,9 @@
 
 bool operator==(const StickyPositionViewportConstraints& other) const
 {
-return m_leftOffset == other.m_leftOffset
+return m_alignmentOffset == other.m_

[webkit-changes] [170459] trunk/Source

2014-06-25 Thread beidson
Title: [170459] trunk/Source








Revision 170459
Author beid...@apple.com
Date 2014-06-25 20:59:10 -0700 (Wed, 25 Jun 2014)


Log Message
Add new platform gamepad abstractions
https://bugs.webkit.org/show_bug.cgi?id=134325

Reviewed by Dean Jackson.

Source/WebCore:
No new tests (Not yet a tested config)

- GamepadStrategy lets ports customize the 3 basic behaviors needed for a gamepad
  implementation to feed the API in WebCore.
- GamepadStrategyClient gives arbitrary objects in WebCore the ability to register
  for callbacks with the GamepadStrategy.
- PlatformGamepad is a platform-agnostic object that represents the data that
  feeds into the Gamepad object that is exposed to web content.

The code in this patch is dead as-is, but https://bugs.webkit.org/show_bug.cgi?id=134324
will contain an immediate follow-up patch that uses it.

Makes sense to review them separately.

* WebCore.xcodeproj/project.pbxproj:

* platform/GamepadStrategy.h: Added.
(WebCore::GamepadStrategy::~GamepadStrategy):

* platform/GamepadStrategyClient.h: Added.
(WebCore::GamepadStrategyClient::~GamepadStrategyClient):

* platform/PlatformGamepad.h: Added.
(WebCore::PlatformGamepad::~PlatformGamepad):
(WebCore::PlatformGamepad::id):
(WebCore::PlatformGamepad::lastUpdateTime):
(WebCore::PlatformGamepad::connectTime):
(WebCore::PlatformGamepad::PlatformGamepad):

* platform/PlatformStrategies.h:
(WebCore::PlatformStrategies::gamepadStrategy):
(WebCore::PlatformStrategies::PlatformStrategies):

Source/WebKit/mac:
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::createGamepadStrategy):
(WebPlatformStrategies::startMonitoringGamepads):
(WebPlatformStrategies::stopMonitoringGamepads):
(WebPlatformStrategies::platformGamepads):

Source/WebKit/win:
* WebCoreSupport/WebPlatformStrategies.cpp:
(WebPlatformStrategies::createGamepadStrategy):
* WebCoreSupport/WebPlatformStrategies.h:

Source/WebKit2:
* NetworkProcess/NetworkProcessPlatformStrategies.cpp:
(WebKit::NetworkProcessPlatformStrategies::createGamepadStrategy):
* NetworkProcess/NetworkProcessPlatformStrategies.h:

Actually return a GamepadStrategy in WK2 with no implementation for now:
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::createGamepadStrategy):
(WebKit::WebPlatformStrategies::startMonitoringGamepads):
(WebKit::WebPlatformStrategies::stopMonitoringGamepads):
(WebKit::WebPlatformStrategies::platformGamepads):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/platform/PlatformStrategies.h
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebCoreSupport/WebPlatformStrategies.h
trunk/Source/WebKit/mac/WebCoreSupport/WebPlatformStrategies.mm
trunk/Source/WebKit/win/ChangeLog
trunk/Source/WebKit/win/WebCoreSupport/WebPlatformStrategies.cpp
trunk/Source/WebKit/win/WebCoreSupport/WebPlatformStrategies.h
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/NetworkProcess/NetworkProcessPlatformStrategies.cpp
trunk/Source/WebKit2/NetworkProcess/NetworkProcessPlatformStrategies.h
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h


Added Paths

trunk/Source/WebCore/platform/GamepadStrategy.h
trunk/Source/WebCore/platform/GamepadStrategyClient.h
trunk/Source/WebCore/platform/PlatformGamepad.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (170458 => 170459)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 02:39:10 UTC (rev 170458)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 03:59:10 UTC (rev 170459)
@@ -1,3 +1,43 @@
+2014-06-25  Brady Eidson  
+
+Add new platform gamepad abstractions
+https://bugs.webkit.org/show_bug.cgi?id=134325
+
+Reviewed by Dean Jackson.
+
+No new tests (Not yet a tested config)
+
+- GamepadStrategy lets ports customize the 3 basic behaviors needed for a gamepad
+  implementation to feed the API in WebCore.
+- GamepadStrategyClient gives arbitrary objects in WebCore the ability to register
+  for callbacks with the GamepadStrategy.
+- PlatformGamepad is a platform-agnostic object that represents the data that
+  feeds into the Gamepad object that is exposed to web content.
+
+The code in this patch is dead as-is, but https://bugs.webkit.org/show_bug.cgi?id=134324
+will contain an immediate follow-up patch that uses it.
+
+Makes sense to review them separately.
+
+* WebCore.xcodeproj/project.pbxproj:
+
+* platform/GamepadStrategy.h: Added.
+(WebCore::GamepadStrategy::~GamepadStrategy):
+
+* platform/GamepadStrategyClient.h: Added.
+(WebCore::GamepadStrategyClient::~GamepadStrategyClient):
+
+* platform/PlatformGamepad.h: Added.
+(WebCore::PlatformGamepad::~PlatformGamepad):
+  

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

2014-06-25 Thread zalan
Title: [170458] trunk/Source/WebCore








Revision 170458
Author za...@apple.com
Date 2014-06-25 19:39:10 -0700 (Wed, 25 Jun 2014)


Log Message
Assertion failed: CGPathAddRoundedRect asserts on non-renderable rounded rectangle.
https://bugs.webkit.org/show_bug.cgi?id=134288

Reviewed by Simon Fraser.

Speculative fix. This changeset attempts to address a possible mantissa overflow of radius
when checking whether the rounded rectangle is renderable.
We convert both the radius and the rectangle values to CGFloat(float/double) to perform
this renderable check, instead of always using float.

* platform/graphics/FloatRoundedRect.cpp:
(WebCore::FloatRoundedRect::Radii::scale): Move scale(float, float) from RoundedRect to FloatRoundedRect.
(WebCore::FloatRoundedRect::isRenderable): Add check if radius is >= 0.
* platform/graphics/FloatRoundedRect.h:
* platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::Radii::scale):
(WebCore::RoundedRect::pixelSnappedRoundedRectForPainting): use FloatRoundeRect::Radii.
* platform/graphics/RoundedRect.h:
* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::platformAddPathForRoundedRect): use epsilon() to ensure width/height is always >= even with mantissa overflow.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/FloatRoundedRect.cpp
trunk/Source/WebCore/platform/graphics/FloatRoundedRect.h
trunk/Source/WebCore/platform/graphics/RoundedRect.cpp
trunk/Source/WebCore/platform/graphics/RoundedRect.h
trunk/Source/WebCore/platform/graphics/cg/PathCG.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (170457 => 170458)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 02:10:59 UTC (rev 170457)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 02:39:10 UTC (rev 170458)
@@ -1,3 +1,26 @@
+2014-06-25  Zalan Bujtas  
+
+Assertion failed: CGPathAddRoundedRect asserts on non-renderable rounded rectangle.
+https://bugs.webkit.org/show_bug.cgi?id=134288
+
+Reviewed by Simon Fraser.
+
+Speculative fix. This changeset attempts to address a possible mantissa overflow of radius
+when checking whether the rounded rectangle is renderable.
+We convert both the radius and the rectangle values to CGFloat(float/double) to perform
+this renderable check, instead of always using float.
+
+* platform/graphics/FloatRoundedRect.cpp:
+(WebCore::FloatRoundedRect::Radii::scale): Move scale(float, float) from RoundedRect to FloatRoundedRect.
+(WebCore::FloatRoundedRect::isRenderable): Add check if radius is >= 0.
+* platform/graphics/FloatRoundedRect.h:
+* platform/graphics/RoundedRect.cpp:
+(WebCore::RoundedRect::Radii::scale):
+(WebCore::RoundedRect::pixelSnappedRoundedRectForPainting): use FloatRoundeRect::Radii.
+* platform/graphics/RoundedRect.h:
+* platform/graphics/cg/PathCG.cpp:
+(WebCore::Path::platformAddPathForRoundedRect): use epsilon() to ensure width/height is always >= even with mantissa overflow. 
+
 2014-06-25  Jer Noble  
 
 [MSE] removeCodedFrames() can remove more than it should


Modified: trunk/Source/WebCore/platform/graphics/FloatRoundedRect.cpp (170457 => 170458)

--- trunk/Source/WebCore/platform/graphics/FloatRoundedRect.cpp	2014-06-26 02:10:59 UTC (rev 170457)
+++ trunk/Source/WebCore/platform/graphics/FloatRoundedRect.cpp	2014-06-26 02:39:10 UTC (rev 170458)
@@ -64,23 +64,27 @@
 
 void FloatRoundedRect::Radii::scale(float factor)
 {
-if (factor == 1)
+scale(factor, factor);
+}
+
+void FloatRoundedRect::Radii::scale(float horizontalFactor, float verticalFactor)
+{
+if (horizontalFactor == 1 && verticalFactor == 1)
 return;
 
 // If either radius on a corner becomes zero, reset both radii on that corner.
-m_topLeft.scale(factor);
+m_topLeft.scale(horizontalFactor, verticalFactor);
 if (!m_topLeft.width() || !m_topLeft.height())
 m_topLeft = FloatSize();
-m_topRight.scale(factor);
+m_topRight.scale(horizontalFactor, verticalFactor);
 if (!m_topRight.width() || !m_topRight.height())
 m_topRight = FloatSize();
-m_bottomLeft.scale(factor);
+m_bottomLeft.scale(horizontalFactor, verticalFactor);
 if (!m_bottomLeft.width() || !m_bottomLeft.height())
 m_bottomLeft = FloatSize();
-m_bottomRight.scale(factor);
+m_bottomRight.scale(horizontalFactor, verticalFactor);
 if (!m_bottomRight.width() || !m_bottomRight.height())
 m_bottomRight = FloatSize();
-
 }
 
 void FloatRoundedRect::Radii::expand(float topWidth, float bottomWidth, float leftWidth, float rightWidth)
@@ -145,7 +149,11 @@
 
 bool FloatRoundedRect::isRenderable() const
 {
-return m_radii.topLeft().width() + m_radii.topRight().width() <= m_rect.width()
+return m_radii.topLeft().width() >= 0 && m_radii.topLeft().height() >= 0
+&& m_radii.bottomLeft().width() >= 0 && m_radii.bottomLeft().height() >= 0
+&& m_radii.topRight().width

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

2014-06-25 Thread jonowells
Title: [170456] trunk/Source/WebInspectorUI








Revision 170456
Author jonowe...@apple.com
Date 2014-06-25 18:34:53 -0700 (Wed, 25 Jun 2014)


Log Message
Web Inspector: Rules panel's strikethrough gets confused at -webkit-align-items: flex-start;
https://bugs.webkit.org/show_bug.cgi?id=133515

Reviewed by Timothy Hatcher.

The CSS style declaration text editor uses the author's shortest instance of prefix whitespace
to create an indentation baseline for the style editor. This needs to consider the possibility
that there is no whitespace prefixing one of the rules. Also clarified a FIXME line.

* UserInterface/Views/CSSStyleDeclarationTextEditor.js: Account for zero-length whitespace.

Modified Paths

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




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (170455 => 170456)

--- trunk/Source/WebInspectorUI/ChangeLog	2014-06-26 01:22:08 UTC (rev 170455)
+++ trunk/Source/WebInspectorUI/ChangeLog	2014-06-26 01:34:53 UTC (rev 170456)
@@ -1,3 +1,16 @@
+2014-06-25  Jono Wells  
+
+Web Inspector: Rules panel's strikethrough gets confused at -webkit-align-items: flex-start;
+https://bugs.webkit.org/show_bug.cgi?id=133515
+
+Reviewed by Timothy Hatcher.
+
+The CSS style declaration text editor uses the author's shortest instance of prefix whitespace
+to create an indentation baseline for the style editor. This needs to consider the possibility
+that there is no whitespace prefixing one of the rules. Also clarified a FIXME line.
+
+* UserInterface/Views/CSSStyleDeclarationTextEditor.js: Account for zero-length whitespace.
+
 2014-06-25  Dana Burkart  
 
 Add support for 5-tuple versioning.


Modified: trunk/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js (170455 => 170456)

--- trunk/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js	2014-06-26 01:22:08 UTC (rev 170455)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js	2014-06-26 01:34:53 UTC (rev 170456)
@@ -867,19 +867,26 @@
 var lineCount = this._codeMirror.lineCount();
 for (var i = 0; i < lineCount; ++i) {
 var lineContent = this._codeMirror.getLine(i);
-
 var prefixWhitespaceMatch = lineContent.match(/^\s+/);
-if (!prefixWhitespaceMatch)
-continue;
 
+// If there is no prefix whitespace, then the prefix whitespace of all
+// other lines will be retained as is. Update markers and return.
+if (!prefixWhitespaceMatch) {
+this._linePrefixWhitespace = "";
+this._updateTextMarkers(true);
+return;
+}
+
 linesToStrip.push(i);
 
 // Only remember the shortest whitespace so we don't loose any of the
 // original author's whitespace if their indentation lengths differed.
 // Using the shortest also makes the adjustment work in _updateTextMarkers.
 
-// FIXME: This messes up if there is a mix of spaces and tabs. One tab
-// will be shorter than 4 or 8 spaces, but will look the same visually.
+// FIXME: This messes up if there is a mix of spaces and tabs. A tab
+// is treated the same as a space when prefix whitespace is omitted,
+// so if the shortest prefixed whitespace is, say, two tab characters,
+// lines that begin with four spaces will only have a two space indent.
 if (!this._linePrefixWhitespace || prefixWhitespaceMatch[0].length < this._linePrefixWhitespace.length)
 this._linePrefixWhitespace = prefixWhitespaceMatch[0];
 }






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


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

2014-06-25 Thread jer . noble
Title: [170455] trunk/Source/WebCore








Revision 170455
Author jer.no...@apple.com
Date 2014-06-25 18:22:08 -0700 (Wed, 25 Jun 2014)


Log Message
[MSE] removeCodedFrames() can remove more than it should
https://bugs.webkit.org/show_bug.cgi?id=134320

Reviewed by Geoff Garen.

removeCodedFrames() can remove more samples than it should because it compares an iterator
in presentation timespace to one in decode timespace. Clean up this code by removing frames
in decode order. Rename variables and add comments to make explicit which timespace defines
the iterators being used.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::removeCodedFrames):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (170454 => 170455)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 01:04:47 UTC (rev 170454)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 01:22:08 UTC (rev 170455)
@@ -1,3 +1,18 @@
+2014-06-25  Jer Noble  
+
+[MSE] removeCodedFrames() can remove more than it should
+https://bugs.webkit.org/show_bug.cgi?id=134320
+
+Reviewed by Geoff Garen.
+
+removeCodedFrames() can remove more samples than it should because it compares an iterator
+in presentation timespace to one in decode timespace. Clean up this code by removing frames
+in decode order. Rename variables and add comments to make explicit which timespace defines
+the iterators being used.
+
+* Modules/mediasource/SourceBuffer.cpp:
+(WebCore::SourceBuffer::removeCodedFrames):
+
 2014-06-25  Beth Dakin  
 
 Crash in ScrollingTree::isRubberBandInProgress()


Modified: trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp (170454 => 170455)

--- trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp	2014-06-26 01:04:47 UTC (rev 170454)
+++ trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp	2014-06-26 01:22:08 UTC (rev 170455)
@@ -557,19 +557,21 @@
 // 3. For each track buffer in this source buffer, run the following steps:
 for (auto iter : m_trackBufferMap) {
 TrackBuffer& trackBuffer = iter.value;
+
 // 3.1. Let remove end timestamp be the current value of duration
-SampleMap::iterator removeEnd = trackBuffer.samples.presentationEnd();
-
 // 3.2 If this track buffer has a random access point timestamp that is greater than or equal to end, then update
 // remove end timestamp to that random access point timestamp.
-SampleMap::iterator nextRandomAccessPoint = trackBuffer.samples.findSyncSampleAfterPresentationTime(end);
-if (nextRandomAccessPoint->first >= end)
-removeEnd = trackBuffer.samples.findSampleContainingPresentationTime(nextRandomAccessPoint->first);
+// NOTE: findSyncSampleAfterPresentationTime will return the next sync sample on or after the presentation time
+// or decodeEnd() if no sync sample exists after that presentation time.
+SampleMap::iterator removeDecodeEnd = trackBuffer.samples.findSyncSampleAfterPresentationTime(end);
 
 // 3.3 Remove all media data, from this track buffer, that contain starting timestamps greater than or equal to
 // start and less than the remove end timestamp.
-SampleMap::iterator removeStart = trackBuffer.samples.findSampleAfterPresentationTime(start);
-SampleMap::MapType erasedSamples(removeStart, removeEnd);
+// NOTE: frames must be removed in decode order, so that all dependant frames between the frame to be removed
+// and the next sync sample frame are removed.
+SampleMap::iterator removePresentaionStart = trackBuffer.samples.findSampleAfterPresentationTime(start);
+SampleMap::iterator removeDecodeStart = trackBuffer.samples.findSampleWithDecodeTime(removePresentaionStart->second->decodeTime());
+SampleMap::MapType erasedSamples(removeDecodeStart, removeDecodeEnd);
 RefPtr erasedRanges = TimeRanges::create();
 MediaTime microsecond(1, 100);
 for (auto erasedIt : erasedSamples) {






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


[webkit-changes] [170454] trunk/LayoutTests

2014-06-25 Thread mmaxfield
Title: [170454] trunk/LayoutTests








Revision 170454
Author mmaxfi...@apple.com
Date 2014-06-25 18:04:47 -0700 (Wed, 25 Jun 2014)


Log Message
compositing/visible-rect/iframe-no-layers.html is broken and confusing
https://bugs.webkit.org/show_bug.cgi?id=134317

Reviewed by Simon Fraser.

The test doesn't wait for scrolling to occur and has unnecessary style stanzas.

* compositing/visible-rect/iframe-no-layers.html:
* compositing/visible-rect/resources/subframe-with-layers.html:
* platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt:
* platform/ios-sim/compositing/visible-rect/iframe-no-layers-expected.txt:
* platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/compositing/visible-rect/iframe-no-layers.html
trunk/LayoutTests/compositing/visible-rect/resources/subframe-with-layers.html
trunk/LayoutTests/platform/ios-sim/compositing/visible-rect/iframe-no-layers-expected.txt
trunk/LayoutTests/platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt
trunk/LayoutTests/platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (170453 => 170454)

--- trunk/LayoutTests/ChangeLog	2014-06-26 00:55:29 UTC (rev 170453)
+++ trunk/LayoutTests/ChangeLog	2014-06-26 01:04:47 UTC (rev 170454)
@@ -1,3 +1,18 @@
+2014-06-25  Myles C. Maxfield  
+
+compositing/visible-rect/iframe-no-layers.html is broken and confusing
+https://bugs.webkit.org/show_bug.cgi?id=134317
+
+Reviewed by Simon Fraser.
+
+The test doesn't wait for scrolling to occur and has unnecessary style stanzas.
+
+* compositing/visible-rect/iframe-no-layers.html:
+* compositing/visible-rect/resources/subframe-with-layers.html:
+* platform/mac-wk2/compositing/visible-rect/iframe-no-layers-expected.txt:
+* platform/ios-sim/compositing/visible-rect/iframe-no-layers-expected.txt:
+* platform/mac/compositing/visible-rect/iframe-no-layers-expected.txt:
+
 2014-06-25  Geoffrey Garen  
 
 Unreviewed, rolling out r166876.


Modified: trunk/LayoutTests/compositing/visible-rect/iframe-no-layers.html (170453 => 170454)

--- trunk/LayoutTests/compositing/visible-rect/iframe-no-layers.html	2014-06-26 00:55:29 UTC (rev 170453)
+++ trunk/LayoutTests/compositing/visible-rect/iframe-no-layers.html	2014-06-26 01:04:47 UTC (rev 170454)
@@ -1,5 +1,4 @@
 
-
 
 
 
@@ -8,49 +7,44 @@
 width: 1500px;
 }
 
-.container {
-position: relative;
-height: 200px;
-width: 500px;
-border: 1px solid black;
-overflow: hidden;
-z-index: 0;
-}
-
-.box {
-width: 200px;
-height: 200px;
-background-color: blue;
-}
-
-.composited {
--webkit-transform: translateZ(1px);
-}
-
 iframe {
 margin: 10px;
 }
-
 
 
 if (window.testRunner)
 testRunner.dumpAsText();
 
-function dumpLayers()
+function scroll()
 {
 window.scrollTo(40, 40);
-if (window.internals) {
-// Dump the iframe's layers.
-var iframe = document.getElementById('iframe');
-document.getElementById('layers').innerText = internals.layerTreeAsText(iframe.contentDocument, internals.LAYER_TREE_INCLUDES_VISIBLE_RECTS)
+testIsDone();
+}
+
+// This function is called twice - once from this frame and once from the iframe.
+var scrollingCompleted = 0;
+function testIsDone()
+{
+scrollingCompleted++;
+if (scrollingCompleted == 2) {
+if (window.internals) {
+// Dump the iframe's layers.
+var iframe = document.getElementById('iframe');
+document.getElementById('layers').innerText = internals.layerTreeAsText(iframe.contentDocument, internals.LAYER_TREE_INCLUDES_VISIBLE_RECTS)
+}
+if (window.testRunner)
+testRunner.notifyDone();
 }
 }
-window.addEventListener('load', dumpLayers, false);
+window.addEventListener('load', scroll, false);
+
+if (window.testRunner)
+testRunner.waitUntilDone();
 
 
 
 
-
+ 
 L

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

2014-06-25 Thread timothy_horton
Title: [170453] trunk/Source/WebKit2








Revision 170453
Author timothy_hor...@apple.com
Date 2014-06-25 17:55:29 -0700 (Wed, 25 Jun 2014)


Log Message
[WK2] Shadow layer is in the wrong place while pinch-zooming
https://bugs.webkit.org/show_bug.cgi?id=134321

Reviewed by Dan Bernstein.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToLayers):
(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
The anchor point of the shadow layer changed, so we no longer need to shift our position to the center.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170452 => 170453)

--- trunk/Source/WebKit2/ChangeLog	2014-06-26 00:52:25 UTC (rev 170452)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-26 00:55:29 UTC (rev 170453)
@@ -1,3 +1,16 @@
+2014-06-25  Tim Horton  
+
+[WK2] Shadow layer is in the wrong place while pinch-zooming
+https://bugs.webkit.org/show_bug.cgi?id=134321
+
+Reviewed by Dan Bernstein.
+
+* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToLayers):
+(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
+(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
+The anchor point of the shadow layer changed, so we no longer need to shift our position to the center.
+
 2014-06-25  Dan Bernstein  
 
 Fixed crashes after r170450.


Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (170452 => 170453)

--- trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2014-06-26 00:52:25 UTC (rev 170452)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2014-06-26 00:55:29 UTC (rev 170453)
@@ -547,7 +547,7 @@
 shadowBounds.scale(scale);
 
 shadowLayer->setBounds(shadowBounds);
-shadowLayer->setPosition(origin + shadowBounds.center());
+shadowLayer->setPosition(origin);
 }
 
 m_transientZoomScale = scale;
@@ -639,7 +639,7 @@
 RetainPtr shadowBoundsAnimation = transientZoomSnapAnimationForKeyPath("bounds");
 [shadowBoundsAnimation setToValue:[NSValue valueWithRect:shadowBounds]];
 RetainPtr shadowPositionAnimation = transientZoomSnapAnimationForKeyPath("position");
-[shadowPositionAnimation setToValue:[NSValue valueWithPoint:constrainedOrigin + shadowBounds.center()]];
+[shadowPositionAnimation setToValue:[NSValue valueWithPoint:constrainedOrigin]];
 RetainPtr shadowPathAnimation = transientZoomSnapAnimationForKeyPath("shadowPath");
 [shadowPathAnimation setToValue:(id)shadowPath.get()];
 
@@ -663,7 +663,7 @@
 RenderView* renderView = m_webPage.mainFrameView()->renderView();
 IntRect overflowRect = renderView->pixelSnappedLayoutOverflowRect();
 shadowLayer->setBounds(IntRect(IntPoint(), toIntSize(overflowRect.maxXMaxYCorner(;
-shadowLayer->setPosition(shadowLayer->bounds().center());
+shadowLayer->setPosition(FloatPoint());
 }
 
 FloatPoint unscrolledOrigin(origin);






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


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

2014-06-25 Thread mitz
Title: [170452] trunk/Source/WebKit2








Revision 170452
Author m...@apple.com
Date 2014-06-25 17:52:25 -0700 (Wed, 25 Jun 2014)


Log Message
Fixed crashes after r170450.

Reviewed by Tim Horton.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::WebProcessProxy): Removed iOS platform #ifdef around
initialization of m_throttler.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170451 => 170452)

--- trunk/Source/WebKit2/ChangeLog	2014-06-26 00:51:05 UTC (rev 170451)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-26 00:52:25 UTC (rev 170452)
@@ -1,3 +1,13 @@
+2014-06-25  Dan Bernstein  
+
+Fixed crashes after r170450.
+
+Reviewed by Tim Horton.
+
+* UIProcess/WebProcessProxy.cpp:
+(WebKit::WebProcessProxy::WebProcessProxy): Removed iOS platform #ifdef around
+initialization of m_throttler.
+
 2014-06-25  Beth Dakin  
 
 Crash in ScrollingTree::isRubberBandInProgress()


Modified: trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp (170451 => 170452)

--- trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2014-06-26 00:51:05 UTC (rev 170451)
+++ trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2014-06-26 00:52:25 UTC (rev 170452)
@@ -97,9 +97,7 @@
 , m_processSuppressionEnabled(false)
 #endif
 , m_numberOfTimesSuddenTerminationWasDisabled(0)
-#if PLATFORM(IOS)
 , m_throttler(std::make_unique(this))
-#endif
 {
 connect();
 }






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


[webkit-changes] [170451] trunk/Source

2014-06-25 Thread bdakin
Title: [170451] trunk/Source








Revision 170451
Author bda...@apple.com
Date 2014-06-25 17:51:05 -0700 (Wed, 25 Jun 2014)


Log Message
Crash in ScrollingTree::isRubberBandInProgress()
https://bugs.webkit.org/show_bug.cgi?id=134316
-and corresponding-


Reviewed by Geoffrey Garen.


Source/WebCore: 
This crash appears to have been caused by http://trac.webkit.org/changeset/161276 
which moved the ScrollingNode creation code from ScrollingTree over to 
ScrollingCoordinator. This creates a thread safety issue. In the crashing case, we 
believe that the ScrollingCoordinator's ScrollingTree pointer had been null-ed out
even though the ScrollingTree was kept alive by the bind call to propagate 
commitNewTreeState() over to the scrolling thread. The fix is to move node 
creation back to the ScrollingTree and to use the this pointer to create new
nodes rather than the ScrollingCoordinator's ScrollingTree pointer.

Don't allow ScrollingCoordinator to handle ScrollingTreeNode creation.
* page/scrolling/AsyncScrollingCoordinator.h:

Re-name createNode to createScrollingTreeNode(). 
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::updateTreeFromStateNode):
* page/scrolling/ScrollingTree.h:

Remove this implementation of createNode that called into the 
ScrollingCoordinator.
* page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::createNode): Deleted.
* page/scrolling/ThreadedScrollingTree.h:

Don't allow ScrollingCoordinator to handle ScrollingTreeNode creation.
* page/scrolling/ios/ScrollingCoordinatorIOS.h:
* page/scrolling/ios/ScrollingCoordinatorIOS.mm:
(WebCore::ScrollingCoordinatorIOS::createScrollingTreeNode): Deleted.

Re-name createNode to createScrollingTreeNode, and actually create the nodes here.
* page/scrolling/ios/ScrollingTreeIOS.cpp:
(WebCore::ScrollingTreeIOS::createScrollingTreeNode):
(WebCore::ScrollingTreeIOS::createNode): Deleted.
* page/scrolling/ios/ScrollingTreeIOS.h:

Don't allow ScrollingCoordinator to handle ScrollingTreeNode creation.
* page/scrolling/mac/ScrollingCoordinatorMac.h:
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::createScrollingTreeNode): Deleted.

Add the implementation of createScrollingTreeNode() for the Mac to 
ScrollingTreeMac since it can create Mac-specific nodes.
* page/scrolling/mac/ScrollingTreeMac.cpp:
(ScrollingTreeMac::createScrollingTreeNode):
* page/scrolling/mac/ScrollingTreeMac.h:

Source/WebKit2: 
Move all ScrollingTreeNode creation from ScrollingCoordinator subclasses into 
ScrollingTree subclasses.

* UIProcess/Scrolling/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::createScrollingTreeNode):
(WebKit::RemoteScrollingTree::createNode): Deleted.
* UIProcess/Scrolling/RemoteScrollingTree.h:
* WebProcess/Scrolling/RemoteScrollingCoordinator.h:
* WebProcess/Scrolling/RemoteScrollingCoordinator.mm:
(WebKit::RemoteScrollingCoordinator::createScrollingTreeNode): Deleted.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.h
trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTree.h
trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.h
trunk/Source/WebCore/page/scrolling/ios/ScrollingCoordinatorIOS.h
trunk/Source/WebCore/page/scrolling/ios/ScrollingCoordinatorIOS.mm
trunk/Source/WebCore/page/scrolling/ios/ScrollingTreeIOS.cpp
trunk/Source/WebCore/page/scrolling/ios/ScrollingTreeIOS.h
trunk/Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h
trunk/Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.mm
trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeMac.cpp
trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeMac.h
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingTree.cpp
trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingTree.h
trunk/Source/WebKit2/WebProcess/Scrolling/RemoteScrollingCoordinator.h
trunk/Source/WebKit2/WebProcess/Scrolling/RemoteScrollingCoordinator.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (170450 => 170451)

--- trunk/Source/WebCore/ChangeLog	2014-06-26 00:34:58 UTC (rev 170450)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 00:51:05 UTC (rev 170451)
@@ -1,3 +1,57 @@
+2014-06-25  Beth Dakin  
+
+Crash in ScrollingTree::isRubberBandInProgress()
+https://bugs.webkit.org/show_bug.cgi?id=134316
+-and corresponding-
+
+
+Reviewed by Geoffrey Garen.
+
+This crash appears to have been caused by http://trac.webkit.org/changeset/161276 
+which moved the ScrollingNode creation code from ScrollingTree over to 
+ScrollingCoordinator. This creates a thread safety issue. In the crashing case, we 
+believe that the ScrollingCoordinator's ScrollingTree pointer had been null-ed out
+even though the ScrollingTree was kept alive by the bind call to propagate 
+   

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

2014-06-25 Thread enrica
Title: [170449] trunk/Source/WebCore








Revision 170449
Author enr...@apple.com
Date 2014-06-25 17:33:07 -0700 (Wed, 25 Jun 2014)


Log Message
iOS build fix after http://trac.webkit.org/changeset/170447.
Unreviewed.

* editing/mac/TextUndoInsertionMarkup.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/editing/mac/TextUndoInsertionMarkup.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (170448 => 170449)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 23:58:13 UTC (rev 170448)
+++ trunk/Source/WebCore/ChangeLog	2014-06-26 00:33:07 UTC (rev 170449)
@@ -1,3 +1,10 @@
+2014-06-25  Enrica Casucci  
+
+iOS build fix after http://trac.webkit.org/changeset/170447.
+Unreviewed.
+
+* editing/mac/TextUndoInsertionMarkup.h:
+
 2014-06-25  Chris Fleizach  
 
 Add an undo group for each dictated utterance in WebKit


Modified: trunk/Source/WebCore/editing/mac/TextUndoInsertionMarkup.h (170448 => 170449)

--- trunk/Source/WebCore/editing/mac/TextUndoInsertionMarkup.h	2014-06-25 23:58:13 UTC (rev 170448)
+++ trunk/Source/WebCore/editing/mac/TextUndoInsertionMarkup.h	2014-06-26 00:33:07 UTC (rev 170449)
@@ -26,8 +26,10 @@
 #ifndef TextUndoInsertionMarkup_h
 #define TextUndoInsertionMarkup_h
 
+#if !PLATFORM(IOS)
 #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 10100
 #define WTF_USE_INSERTION_UNDO_GROUPING 1
 #endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 10100
+#endif
 
 #endif






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


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

2014-06-25 Thread barraclough
Title: [170448] trunk/Source/WebKit/mac








Revision 170448
Author barraclo...@apple.com
Date 2014-06-25 16:58:13 -0700 (Wed, 25 Jun 2014)


Log Message
Should _updateVisibilityState on view hide/unhide.
https://bugs.webkit.org/show_bug.cgi?id=134314
rdar://17171803

Reviewed by Sam Weinig.

* WebView/WebView.mm:
(-[WebView viewDidHide]):
(-[WebView viewDidUnhide]):

Modified Paths

trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/WebView/WebView.mm




Diff

Modified: trunk/Source/WebKit/mac/ChangeLog (170447 => 170448)

--- trunk/Source/WebKit/mac/ChangeLog	2014-06-25 23:50:44 UTC (rev 170447)
+++ trunk/Source/WebKit/mac/ChangeLog	2014-06-25 23:58:13 UTC (rev 170448)
@@ -1,3 +1,15 @@
+2014-06-25  Gavin Barraclough  
+
+Should _updateVisibilityState on view hide/unhide.
+https://bugs.webkit.org/show_bug.cgi?id=134314
+rdar://17171803
+
+Reviewed by Sam Weinig.
+
+* WebView/WebView.mm:
+(-[WebView viewDidHide]):
+(-[WebView viewDidUnhide]):
+
 2014-06-25  Chris Fleizach  
 
 Add an undo group for each dictated utterance in WebKit


Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (170447 => 170448)

--- trunk/Source/WebKit/mac/WebView/WebView.mm	2014-06-25 23:50:44 UTC (rev 170447)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm	2014-06-25 23:58:13 UTC (rev 170448)
@@ -5298,6 +5298,16 @@
 [self _updateActiveState];
 }
 
+- (void)viewDidHide
+{
+[self _updateVisibilityState];
+}
+
+- (void)viewDidUnhide
+{
+[self _updateVisibilityState];
+}
+
 - (void)_windowWillOrderOnScreen:(NSNotification *)notification
 {
 if (![self shouldUpdateWhileOffscreen])






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


[webkit-changes] [170446] trunk/Websites/webkit.org

2014-06-25 Thread bfulgham
Title: [170446] trunk/Websites/webkit.org








Revision 170446
Author bfulg...@apple.com
Date 2014-06-25 16:41:19 -0700 (Wed, 25 Jun 2014)


Log Message
[Win] Whoops! DirectX SDK is still needed.

* building/tools.html: Put DirectX instruction back.

Modified Paths

trunk/Websites/webkit.org/ChangeLog
trunk/Websites/webkit.org/building/tools.html




Diff

Modified: trunk/Websites/webkit.org/ChangeLog (170445 => 170446)

--- trunk/Websites/webkit.org/ChangeLog	2014-06-25 23:13:24 UTC (rev 170445)
+++ trunk/Websites/webkit.org/ChangeLog	2014-06-25 23:41:19 UTC (rev 170446)
@@ -1,3 +1,9 @@
+2014-06-25  Brent Fulgham  
+
+[Win] Whoops! DirectX SDK is still needed.
+
+* building/tools.html: Put DirectX instruction back.
+
 2014-06-24  Brent Fulgham  
 
 [Win] Remove some out-of-date stuff from our instructions.


Modified: trunk/Websites/webkit.org/building/tools.html (170445 => 170446)

--- trunk/Websites/webkit.org/building/tools.html	2014-06-25 23:13:24 UTC (rev 170445)
+++ trunk/Websites/webkit.org/building/tools.html	2014-06-25 23:41:19 UTC (rev 170446)
@@ -59,6 +59,8 @@
 If you are behind a proxy you need to do the following to allow cygwin svn to get through the proxy (similar steps are available for your Windows svn):
 In bash (Cygwin) run: svn help. This will create in your cygwin home directory the file .subversion/servers.
 Edit the file mentioned above and follow the instructions in the file to set up your proxy settings.
+Install DirectX SDK
+Download the   This is needed for accelerated compositing.
 Install php, we use the following steps (you need this to run http layout tests):
 
 cd /usr/local/bin






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


[webkit-changes] [170444] trunk/Source

2014-06-25 Thread dburkart
Title: [170444] trunk/Source








Revision 170444
Author dburk...@apple.com
Date 2014-06-25 15:58:01 -0700 (Wed, 25 Jun 2014)


Log Message
Add support for 5-tuple versioning.

Reviewed by David Farler.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/Configurations/Version.xcconfig
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Configurations/Version.xcconfig
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/Configurations/Version.xcconfig
trunk/Source/WebKit/mac/ChangeLog
trunk/Source/WebKit/mac/Configurations/Version.xcconfig
trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/Configurations/Version.xcconfig




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (170443 => 170444)

--- trunk/Source/_javascript_Core/ChangeLog	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-06-25 22:58:01 UTC (rev 170444)
@@ -1,3 +1,11 @@
+2014-06-25  Dana Burkart  
+
+Add support for 5-tuple versioning.
+
+Reviewed by David Farler.
+
+* Configurations/Version.xcconfig:
+
 2014-06-25  Geoffrey Garen  
 
 Build fix.


Modified: trunk/Source/_javascript_Core/Configurations/Version.xcconfig (170443 => 170444)

--- trunk/Source/_javascript_Core/Configurations/Version.xcconfig	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/_javascript_Core/Configurations/Version.xcconfig	2014-06-25 22:58:01 UTC (rev 170444)
@@ -24,6 +24,8 @@
 MAJOR_VERSION = 538;
 MINOR_VERSION = 43;
 TINY_VERSION = 0;
+MICRO_VERSION = 0;
+NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: trunk/Source/WebCore/ChangeLog (170443 => 170444)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/WebCore/ChangeLog	2014-06-25 22:58:01 UTC (rev 170444)
@@ -1,3 +1,11 @@
+2014-06-25  Dana Burkart  
+
+Add support for 5-tuple versioning.
+
+Reviewed by David Farler.
+
+* Configurations/Version.xcconfig:
+
 2014-06-25  Jer Noble  
 
 [MSE][Mac] REGRESSION(r170336) - zero tolerance seeks are ignored.


Modified: trunk/Source/WebCore/Configurations/Version.xcconfig (170443 => 170444)

--- trunk/Source/WebCore/Configurations/Version.xcconfig	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/WebCore/Configurations/Version.xcconfig	2014-06-25 22:58:01 UTC (rev 170444)
@@ -24,6 +24,8 @@
 MAJOR_VERSION = 538;
 MINOR_VERSION = 43;
 TINY_VERSION = 0;
+MICRO_VERSION = 0;
+NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: trunk/Source/WebInspectorUI/ChangeLog (170443 => 170444)

--- trunk/Source/WebInspectorUI/ChangeLog	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/WebInspectorUI/ChangeLog	2014-06-25 22:58:01 UTC (rev 170444)
@@ -1,3 +1,11 @@
+2014-06-25  Dana Burkart  
+
+Add support for 5-tuple versioning.
+
+Reviewed by David Farler.
+
+* Configurations/Version.xcconfig:
+
 2014-06-24  Jono Wells  
 
 Web Inspector: clicking "Show All Nodes" button throws TypeError


Modified: trunk/Source/WebInspectorUI/Configurations/Version.xcconfig (170443 => 170444)

--- trunk/Source/WebInspectorUI/Configurations/Version.xcconfig	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/WebInspectorUI/Configurations/Version.xcconfig	2014-06-25 22:58:01 UTC (rev 170444)
@@ -1,6 +1,8 @@
 MAJOR_VERSION = 538;
 MINOR_VERSION = 43;
 TINY_VERSION = 0;
+MICRO_VERSION = 0;
+NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
 
 // The system version prefix is based on the current system version.


Modified: trunk/Source/WebKit/mac/ChangeLog (170443 => 170444)

--- trunk/Source/WebKit/mac/ChangeLog	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/WebKit/mac/ChangeLog	2014-06-25 22:58:01 UTC (rev 170444)
@@ -1,3 +1,11 @@
+2014-06-25  Dana Burkart  
+
+Add support for 5-tuple versioning.
+
+Reviewed by David Farler.
+
+* Configurations/Version.xcconfig:
+
 2014-06-25  Laszlo Gombos  
 
 Remove build guard for progress element


Modified: trunk/Source/WebKit/mac/Configurations/Version.xcconfig (170443 => 170444)

--- trunk/Source/WebKit/mac/Configurations/Version.xcconfig	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Source/WebKit/mac/Configurations/Version.xcconfig	2014-06-25 22:58:01 UTC (rev 170444)
@@ -24,6 +24,8 @@
 MAJOR_VERSION = 538;
 MINOR_VERSION = 43;
 TINY_VERSION = 0;
+MICRO_VERSION = 0;
+NANO_VERSION = 0;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: trunk/Source/WebKit2/ChangeLog (170443 => 170444)

--- trunk/Source/WebKit2/ChangeLog	2014-06-25 22:45:20 UTC (rev 170443)
+++ trunk/Sou

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

2014-06-25 Thread jer . noble
Title: [170443] trunk/Source/WebCore








Revision 170443
Author jer.no...@apple.com
Date 2014-06-25 15:45:20 -0700 (Wed, 25 Jun 2014)


Log Message
[MSE][Mac] REGRESSION(r170336) - zero tolerance seeks are ignored.
https://bugs.webkit.org/show_bug.cgi?id=134310

Reviewed by Brent Fulgham.

Tests for zero tolerance seeks were inadvertantly reversed in r170336.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (170442 => 170443)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 22:37:37 UTC (rev 170442)
+++ trunk/Source/WebCore/ChangeLog	2014-06-25 22:45:20 UTC (rev 170443)
@@ -1,5 +1,17 @@
 2014-06-25  Jer Noble  
 
+[MSE][Mac] REGRESSION(r170336) - zero tolerance seeks are ignored.
+https://bugs.webkit.org/show_bug.cgi?id=134310
+
+Reviewed by Brent Fulgham.
+
+Tests for zero tolerance seeks were inadvertantly reversed in r170336.
+
+* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
+
+2014-06-25  Jer Noble  
+
 [MSE][Mac] Pause playback when readyState drops below HAVE_FUTURE_DATA, and do not complete seek until it rises above HAVE_METADATA.
 https://bugs.webkit.org/show_bug.cgi?id=134306
 


Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm (170442 => 170443)

--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm	2014-06-25 22:37:37 UTC (rev 170442)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm	2014-06-25 22:45:20 UTC (rev 170443)
@@ -455,7 +455,7 @@
 return;
 
 MediaTime seekTime;
-if (pendingSeek->negativeThreshold != MediaTime::zeroTime() && pendingSeek->positiveThreshold != MediaTime::zeroTime())
+if (pendingSeek->negativeThreshold == MediaTime::zeroTime() && pendingSeek->positiveThreshold == MediaTime::zeroTime())
 seekTime = pendingSeek->targetTime;
 else
 seekTime = m_mediaSourcePrivate->fastSeekTimeForMediaTime(pendingSeek->targetTime, pendingSeek->positiveThreshold, pendingSeek->negativeThreshold);






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


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

2014-06-25 Thread mitz
Title: [170442] trunk/Source/WebKit2








Revision 170442
Author m...@apple.com
Date 2014-06-25 15:37:37 -0700 (Wed, 25 Jun 2014)


Log Message
 REGRESSION (r170254): Input methods don’t work
https://bugs.webkit.org/show_bug.cgi?id=134311

Reviewed by Tim Horton.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getSelectedRangeAsync): Removed code that accidentally put the
callback function into a throwaway EditingRangeCallback.

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170441 => 170442)

--- trunk/Source/WebKit2/ChangeLog	2014-06-25 21:59:54 UTC (rev 170441)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-25 22:37:37 UTC (rev 170442)
@@ -1,3 +1,14 @@
+2014-06-25  Dan Bernstein  
+
+ REGRESSION (r170254): Input methods don’t work
+https://bugs.webkit.org/show_bug.cgi?id=134311
+
+Reviewed by Tim Horton.
+
+* UIProcess/WebPageProxy.cpp:
+(WebKit::WebPageProxy::getSelectedRangeAsync): Removed code that accidentally put the
+callback function into a throwaway EditingRangeCallback.
+
 2014-06-25  Timothy Horton  
 
 [iOS][WK2] Rotating a zoomed PDF leads to weird scrolling behavior


Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (170441 => 170442)

--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2014-06-25 21:59:54 UTC (rev 170441)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2014-06-25 22:37:37 UTC (rev 170442)
@@ -4972,10 +4972,8 @@
 
 void WebPageProxy::getSelectedRangeAsync(std::function callbackFunction)
 {
-RefPtr callback = EditingRangeCallback::create(std::move(callbackFunction));
-
 if (!isValid()) {
-callback->invalidate();
+callbackFunction(EditingRange(), CallbackBase::Error::Unknown);
 return;
 }
 






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


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

2014-06-25 Thread ggaren
Title: [170441] trunk/Source/_javascript_Core








Revision 170441
Author gga...@apple.com
Date 2014-06-25 14:59:54 -0700 (Wed, 25 Jun 2014)


Log Message
2014-06-25  Geoffrey Garen  

Build fix.

Unreviewed.

* runtime/JSDateMath.cpp:
(JSC::parseDateFromNullTerminatedCharacters):
* runtime/VM.cpp:
(JSC::VM::resetDateCache): Use std::numeric_limits instead of QNaN
constant since that constant doesn't exist anymore.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/JSDateMath.cpp
trunk/Source/_javascript_Core/runtime/VM.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (170440 => 170441)

--- trunk/Source/_javascript_Core/ChangeLog	2014-06-25 21:51:45 UTC (rev 170440)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-06-25 21:59:54 UTC (rev 170441)
@@ -1,5 +1,17 @@
 2014-06-25  Geoffrey Garen  
 
+Build fix.
+
+Unreviewed.
+
+* runtime/JSDateMath.cpp:
+(JSC::parseDateFromNullTerminatedCharacters):
+* runtime/VM.cpp:
+(JSC::VM::resetDateCache): Use std::numeric_limits instead of QNaN
+constant since that constant doesn't exist anymore.
+
+2014-06-25  Geoffrey Garen  
+
 Unreviewed, rolling out r166876.
 
 Caused some ECMA test262 failures


Modified: trunk/Source/_javascript_Core/runtime/JSDateMath.cpp (170440 => 170441)

--- trunk/Source/_javascript_Core/runtime/JSDateMath.cpp	2014-06-25 21:51:45 UTC (rev 170440)
+++ trunk/Source/_javascript_Core/runtime/JSDateMath.cpp	2014-06-25 21:59:54 UTC (rev 170441)
@@ -228,7 +228,7 @@
 int offset;
 double ms = WTF::parseDateFromNullTerminatedCharacters(dateString, haveTZ, offset);
 if (std::isnan(ms))
-return QNaN;
+return std::numeric_limits::quiet_NaN();
 
 // fall back to local timezone
 if (!haveTZ)


Modified: trunk/Source/_javascript_Core/runtime/VM.cpp (170440 => 170441)

--- trunk/Source/_javascript_Core/runtime/VM.cpp	2014-06-25 21:51:45 UTC (rev 170440)
+++ trunk/Source/_javascript_Core/runtime/VM.cpp	2014-06-25 21:59:54 UTC (rev 170441)
@@ -496,7 +496,7 @@
 {
 localTimeOffsetCache.reset();
 cachedDateString = String();
-cachedDateStringValue = QNaN;
+cachedDateStringValue = std::numeric_limits::quiet_NaN();
 dateInstanceCache.reset();
 }
 






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


[webkit-changes] [170440] trunk

2014-06-25 Thread ggaren
Title: [170440] trunk








Revision 170440
Author gga...@apple.com
Date 2014-06-25 14:51:45 -0700 (Wed, 25 Jun 2014)


Log Message
Unreviewed, rolling out r166876.

Caused some ECMA test262 failures

Reverted changeset:

"Date object needs to check for ES5 15.9.1.14 TimeClip limit."
https://bugs.webkit.org/show_bug.cgi?id=131248
http://trac.webkit.org/changeset/166876

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/DateConstructor.cpp
trunk/Source/_javascript_Core/runtime/JSDateMath.cpp
trunk/Source/_javascript_Core/runtime/JSDateMath.h
trunk/Source/_javascript_Core/runtime/VM.cpp
trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/DateMath.cpp
trunk/Source/WTF/wtf/DateMath.h


Removed Paths

trunk/LayoutTests/js/regress-131248-expected.txt
trunk/LayoutTests/js/regress-131248.html
trunk/LayoutTests/js/script-tests/regress-131248.js




Diff

Modified: trunk/LayoutTests/ChangeLog (170439 => 170440)

--- trunk/LayoutTests/ChangeLog	2014-06-25 21:43:14 UTC (rev 170439)
+++ trunk/LayoutTests/ChangeLog	2014-06-25 21:51:45 UTC (rev 170440)
@@ -1,3 +1,15 @@
+2014-06-25  Geoffrey Garen  
+
+Unreviewed, rolling out r166876.
+
+Caused some ECMA test262 failures
+
+Reverted changeset:
+
+"Date object needs to check for ES5 15.9.1.14 TimeClip limit."
+https://bugs.webkit.org/show_bug.cgi?id=131248
+http://trac.webkit.org/changeset/166876
+
 2014-06-25  Dirk Schulze  
 
 Add all blend modes to feBlend


Deleted: trunk/LayoutTests/js/regress-131248-expected.txt (170439 => 170440)

--- trunk/LayoutTests/js/regress-131248-expected.txt	2014-06-25 21:43:14 UTC (rev 170439)
+++ trunk/LayoutTests/js/regress-131248-expected.txt	2014-06-25 21:51:45 UTC (rev 170440)
@@ -1,41 +0,0 @@
-This test checks date values at the limits set by the ES5 15.9.1.14 TimeClip specification and ensures that we don't crash on any assertions.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-(new Date(1396547803766)).setDate(1396549003769) ==> NaN ms, Invalid Date
-(new Date(1396547803766)).setDate(1) ==> NaN ms, Invalid Date
-(new Date(1396547803766)).setDate(99983840) ==> NaN ms, Invalid Date
-(new Date(1396547803766)).setDate(99983839) ==> 863978203766 ms, Fri Sep 12 275760
-(new Date(1396547803766)).setDate(1000) ==> 865396288603766 ms, Thu Apr 25 29393
-
-(new Date(0)).setTime(8641) ==> NaN ms, Invalid Date NaN ms
-(new Date(0)).setTime(8640) ==> 8640 ms, Sat, 13 Sep 275760 00:00:00 GMT 0 ms
-(new Date(0)).setTime(-8640) ==> -8640 ms, Tue, 20 Apr -271821 00:00:00 GMT 0 ms
-(new Date(0)).setTime(-8641) ==> NaN ms, Invalid Date NaN ms
-
-(new Date(13 Sep 275760 00:00:00 -0001) ==> NaN ms, Invalid Date NaN ms
-(new Date(13 Sep 275760 00:00:00 +) ==> 8640 ms, Sat, 13 Sep 275760 00:00:00 GMT 0 ms
-(new Date(13 Sep 275760 00:00:00 +0001) ==> 86399640 ms, Fri, 12 Sep 275760 23:00:00 GMT 0 ms
-(new Date(20 Apr -271821 00:00:00 -0001) ==> -86399640 ms, Tue, 20 Apr -271821 01:00:00 GMT 0 ms
-(new Date(20 Apr -271821 00:00:00 +) ==> -8640 ms, Tue, 20 Apr -271821 00:00:00 GMT 0 ms
-(new Date(20 Apr -271821 00:00:00 +0001) ==> NaN ms, Invalid Date NaN ms
-
-(new Date(19 Apr -271821 23:59:59) ==> NaN ms, Invalid Date NaN ms
-
-(new Date(275760-09-13T00:00:00.001) ==> NaN ms, Invalid Date NaN ms
-(new Date(275760-09-13T00:00:00.000) ==> 8640 ms, Sat, 13 Sep 275760 00:00:00 GMT 0 ms
-(new Date(-271821-04-20T00:00:00.) ==> -8640 ms, Tue, 20 Apr -271821 00:00:00 GMT 0 ms
-(new Date(-271821-04-19T23:59:59.999) ==> NaN ms, Invalid Date NaN ms
-
-(new Date(Sat, 13 Sep 275760 00:00:00 UTC-2) ==> NaN ms, Invalid Date NaN ms
-(new Date(Sat, 13 Sep 275760 00:00:00 UTC) ==> 8640 ms, Sat, 13 Sep 275760 00:00:00 GMT 0 ms
-(new Date(Sat, 13 Sep 275760 00:00:00 UTC+2) ==> 86399280 ms, Fri, 12 Sep 275760 22:00:00 GMT 0 ms
-(new Date(Tue, 20 Apr -271821 00:00:00 UTC-2) ==> -86399280 ms, Tue, 20 Apr -271821 02:00:00 GMT 0 ms
-(new Date(Tue, 20 Apr -271821 00:00:00 UTC) ==> -8640 ms, Tue, 20 Apr -271821 00:00:00 GMT 0 ms
-(new Date(Tue, 20 Apr -271821 00:00:00 UTC+2) ==> NaN ms, Invalid Date NaN ms
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-


Deleted: trunk/LayoutTests/js/regress-131248.html (170439 => 170440)

--- trunk/LayoutTests/js/regress-131248.html	2014-06-25 21:43:14 UTC (rev 170439)
+++ trunk/LayoutTests/js/regress-131248.html	2014-06-25 21:51:45 UTC (rev 170440)
@@ -1,10 +0,0 @@
-
-
-
-

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

2014-06-25 Thread timothy_horton
Title: [170439] trunk/Source/WebKit2








Revision 170439
Author timothy_hor...@apple.com
Date 2014-06-25 14:43:14 -0700 (Wed, 25 Jun 2014)


Log Message
[iOS][WK2] Rotating a zoomed PDF leads to weird scrolling behavior
https://bugs.webkit.org/show_bug.cgi?id=134286

Reviewed by Benjamin Poulain.

* UIProcess/ios/WKPDFView.mm:
(-[WKPDFView _computePageAndDocumentFrames]):
The WKPDFView frame and scroll view content size need to be scaled.

(-[WKPDFView web_setScrollView:]): Deleted.

(-[WKPDFView web_initWithFrame:webView:]):
Get rid of _documentFrame, and don't set it at initWithFrame: time (it's not useful yet).

Modified Paths

trunk/Source/WebKit2/ChangeLog
trunk/Source/WebKit2/UIProcess/ios/WKPDFView.mm




Diff

Modified: trunk/Source/WebKit2/ChangeLog (170438 => 170439)

--- trunk/Source/WebKit2/ChangeLog	2014-06-25 21:32:49 UTC (rev 170438)
+++ trunk/Source/WebKit2/ChangeLog	2014-06-25 21:43:14 UTC (rev 170439)
@@ -1,3 +1,19 @@
+2014-06-25  Timothy Horton  
+
+[iOS][WK2] Rotating a zoomed PDF leads to weird scrolling behavior
+https://bugs.webkit.org/show_bug.cgi?id=134286
+
+Reviewed by Benjamin Poulain.
+
+* UIProcess/ios/WKPDFView.mm:
+(-[WKPDFView _computePageAndDocumentFrames]):
+The WKPDFView frame and scroll view content size need to be scaled.
+
+(-[WKPDFView web_setScrollView:]): Deleted.
+
+(-[WKPDFView web_initWithFrame:webView:]):
+Get rid of _documentFrame, and don't set it at initWithFrame: time (it's not useful yet).
+
 2014-06-25  Laszlo Gombos  
 
 Remove build guard for progress element


Modified: trunk/Source/WebKit2/UIProcess/ios/WKPDFView.mm (170438 => 170439)

--- trunk/Source/WebKit2/UIProcess/ios/WKPDFView.mm	2014-06-25 21:32:49 UTC (rev 170438)
+++ trunk/Source/WebKit2/UIProcess/ios/WKPDFView.mm	2014-06-25 21:43:14 UTC (rev 170439)
@@ -57,7 +57,6 @@
 RetainPtr _pageNumberIndicator;
 
 Vector _pages;
-CGRect _documentFrame;
 unsigned _centerPageNumber;
 
 CGSize _minimumSize;
@@ -79,7 +78,6 @@
 _scrollView = webView.scrollView;
 [_scrollView setMinimumZoomScale:pdfMinimumZoomScale];
 [_scrollView setMaximumZoomScale:pdfMaximumZoomScale];
-[_scrollView setContentSize:_documentFrame.size];
 [_scrollView setBackgroundColor:[UIColor grayColor]];
 
 return self;
@@ -126,16 +124,6 @@
 [self _revalidateViews];
 }
 
-- (void)web_setScrollView:(UIScrollView *)scrollView
-{
-_scrollView = scrollView;
-
-[_scrollView setMinimumZoomScale:pdfMinimumZoomScale];
-[_scrollView setMaximumZoomScale:pdfMaximumZoomScale];
-[_scrollView setContentSize:_documentFrame.size];
-[_scrollView setBackgroundColor:[UIColor grayColor]];
-}
-
 - (void)scrollViewDidScroll:(UIScrollView *)scrollView
 {
 if (scrollView.isZoomBouncing)
@@ -247,12 +235,13 @@
 pageFrame.origin.y += pageFrame.size.height - pdfPageMargin;
 }
 
-_documentFrame = [self frame];
-_documentFrame.size.width = _minimumSize.width;
-_documentFrame.size.height = std::max(pageFrame.origin.y + pdfPageMargin, _minimumSize.height);
+CGFloat scale = _scrollView.zoomScale;
+CGRect newFrame = [self frame];
+newFrame.size.width = _minimumSize.width * scale;
+newFrame.size.height = std::max(pageFrame.origin.y + pdfPageMargin, _minimumSize.height) * scale;
 
-[self setFrame:_documentFrame];
-[_scrollView setContentSize:_documentFrame.size];
+[self setFrame:newFrame];
+[_scrollView setContentSize:newFrame.size];
 }
 
 @end






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


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

2014-06-25 Thread jer . noble
Title: [170438] trunk/Source/WebCore








Revision 170438
Author jer.no...@apple.com
Date 2014-06-25 14:32:49 -0700 (Wed, 25 Jun 2014)


Log Message
[MSE][Mac] Pause playback when readyState drops below HAVE_FUTURE_DATA, and do not complete seek until it rises above HAVE_METADATA.
https://bugs.webkit.org/show_bug.cgi?id=134306

Reviewed by Eric Carlson.

Pause the synchronizer before seeking, and do not resume the synchronizer until it both reports that the seek completed,
and that the readyState rises above HAVE_METADATA. In every other location where we change the rate of the synchronizer,
gate that rate change on the above.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC): Check shouldBePlaying().
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance): Unset m_seekCompleted.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal): Pause the synchronizer.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble): Check shouldBePlaying().
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::shouldBePlaying): Test m_seeking, !m_seekCompleted, and the readyState.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setReadyState): Set m_seekCompleted; check shouldBePlaying() and play if appropriate.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (170437 => 170438)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 21:31:35 UTC (rev 170437)
+++ trunk/Source/WebCore/ChangeLog	2014-06-25 21:32:49 UTC (rev 170438)
@@ -1,5 +1,26 @@
 2014-06-25  Jer Noble  
 
+[MSE][Mac] Pause playback when readyState drops below HAVE_FUTURE_DATA, and do not complete seek until it rises above HAVE_METADATA.
+https://bugs.webkit.org/show_bug.cgi?id=134306
+
+Reviewed by Eric Carlson.
+
+Pause the synchronizer before seeking, and do not resume the synchronizer until it both reports that the seek completed,
+and that the readyState rises above HAVE_METADATA. In every other location where we change the rate of the synchronizer,
+gate that rate change on the above.
+
+* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
+* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC): Check shouldBePlaying().
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal): Ditto.
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance): Unset m_seekCompleted.
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal): Pause the synchronizer.
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble): Check shouldBePlaying().
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::shouldBePlaying): Test m_seeking, !m_seekCompleted, and the readyState.
+(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setReadyState): Set m_seekCompleted; check shouldBePlaying() and play if appropriate.
+
+2014-06-25  Jer Noble  
+
 [MSE] Update monitorSourceBuffers to match recent spec changes
 https://bugs.webkit.org/show_bug.cgi?id=134305
 


Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h (170437 => 170438)

--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h	2014-06-25 21:31:35 UTC (rev 170437)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h	2014-06-25 21:32:49 UTC (rev 170438)
@@ -156,6 +156,7 @@
 
 void ensureLayer();
 void destroyLayer();
+bool shouldBePlaying() const;
 
 // MediaPlayer Factory Methods
 static PassOwnPtr create(MediaPlayer*);
@@ -194,6 +195,7 @@
 double m_rate;
 bool m_playing;
 bool m_seeking;
+bool m_seekCompleted;
 mutable bool m_loadingProgressed;
 bool m_hasAvailableVideoFrame;
 };


Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm (170437 => 170438)

--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm	2014-06-25 21:31:35 UTC (rev 170437)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm	2014-06-25 21:32:49 UTC (rev 170438)
@@ -139,6 +139,7 @@
 , m_rate(1)
 , m_playing(0)
 , m_seeking(false)
+, m_seekCompleted(true)
 , m_loadingProgressed(false)
 {
 CMTimebaseRef time

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

2014-06-25 Thread jer . noble
Title: [170437] trunk/Source/WebCore








Revision 170437
Author jer.no...@apple.com
Date 2014-06-25 14:31:35 -0700 (Wed, 25 Jun 2014)


Log Message
[MSE] Update monitorSourceBuffers to match recent spec changes
https://bugs.webkit.org/show_bug.cgi?id=134305

Reviewed by Eric Carlson.

In W3C bug #24347, the text for the third clause of Source Buffer Monitoring was updated. Update our
implementation to match the new text.

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::monitorSourceBuffers):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (170436 => 170437)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 21:15:37 UTC (rev 170436)
+++ trunk/Source/WebCore/ChangeLog	2014-06-25 21:31:35 UTC (rev 170437)
@@ -1,3 +1,16 @@
+2014-06-25  Jer Noble  
+
+[MSE] Update monitorSourceBuffers to match recent spec changes
+https://bugs.webkit.org/show_bug.cgi?id=134305
+
+Reviewed by Eric Carlson.
+
+In W3C bug #24347, the text for the third clause of Source Buffer Monitoring was updated. Update our
+implementation to match the new text.
+
+* Modules/mediasource/MediaSource.cpp:
+(WebCore::MediaSource::monitorSourceBuffers):
+
 2014-06-25  Alex Christensen  
 And pe...@outlook.com  
 


Modified: trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp (170436 => 170437)

--- trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp	2014-06-25 21:15:37 UTC (rev 170436)
+++ trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp	2014-06-25 21:31:35 UTC (rev 170437)
@@ -221,9 +221,9 @@
 return;
 }
 
-// ↳ If buffered for at least one object in activeSourceBuffers contains a TimeRange that includes
-// the current playback position but not enough data to ensure uninterrupted playback:
-if (std::any_of(begin, end, [](RefPtr& sourceBuffer) {
+// ↳ If buffered for all objects in activeSourceBuffers contain a TimeRange that includes
+// the current playback position and some time beyond the current playback position, then run the following steps:
+if (std::all_of(begin, end, [](RefPtr& sourceBuffer) {
 return sourceBuffer->hasFutureTime();
 })) {
 // 1. Set the HTMLMediaElement.readyState attribute to HAVE_FUTURE_DATA.






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


[webkit-changes] [170436] branches/ftlopt/Source/JavaScriptCore

2014-06-25 Thread mhahnenberg
Title: [170436] branches/ftlopt/Source/_javascript_Core








Revision 170436
Author mhahnenb...@apple.com
Date 2014-06-25 14:15:37 -0700 (Wed, 25 Jun 2014)


Log Message
Structure bit fields should have a consistent format
https://bugs.webkit.org/show_bug.cgi?id=134307

Reviewed by Filip Pizlo.

Currently we use C-style bit fields for a number of member variables in Structure to save space. 
This makes it difficult to load these fields in the JIT. We should instead use our own bitfield 
format to make it easy to load and test these variables in JIT code.

* runtime/JSObject.cpp:
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::reifyStaticFunctionsForDelete):
* runtime/Structure.cpp:
(JSC::StructureTransitionTable::contains):
(JSC::StructureTransitionTable::get):
(JSC::StructureTransitionTable::add):
(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::freezeTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::takePropertyTableOrCloneIfPinned):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::flattenDictionaryStructure):
(JSC::Structure::addPropertyWithoutTransition):
(JSC::Structure::pin):
(JSC::Structure::allocateRareData):
(JSC::Structure::cloneRareDataFrom):
(JSC::Structure::getConcurrently):
(JSC::Structure::putSpecificValue):
(JSC::Structure::getPropertyNamesFromStructure):
(JSC::Structure::visitChildren):
(JSC::Structure::checkConsistency):
* runtime/Structure.h:
(JSC::Structure::isExtensible):
(JSC::Structure::isDictionary):
(JSC::Structure::isUncacheableDictionary):
(JSC::Structure::propertyAccessesAreCacheable):
(JSC::Structure::previousID):
(JSC::Structure::setHasGetterSetterPropertiesWithProtoCheck):
(JSC::Structure::setContainsReadOnlyProperties):
(JSC::Structure::disableSpecificFunctionTracking):
(JSC::Structure::objectToStringValue):
(JSC::Structure::setObjectToStringValue):
(JSC::Structure::setPreviousID):
(JSC::Structure::clearPreviousID):
(JSC::Structure::previous):
(JSC::Structure::rareData):
(JSC::Structure::didTransition): Deleted.
(JSC::Structure::hasGetterSetterProperties): Deleted.
(JSC::Structure::hasReadOnlyOrGetterSetterPropertiesExcludingProto): Deleted.
(JSC::Structure::setHasGetterSetterProperties): Deleted.
(JSC::Structure::hasNonEnumerableProperties): Deleted.
(JSC::Structure::staticFunctionsReified): Deleted.
(JSC::Structure::setStaticFunctionsReified): Deleted.
* runtime/StructureInlines.h:
(JSC::Structure::setEnumerationCache):
(JSC::Structure::enumerationCache):
(JSC::Structure::checkOffsetConsistency):

Modified Paths

branches/ftlopt/Source/_javascript_Core/ChangeLog
branches/ftlopt/Source/_javascript_Core/runtime/JSObject.cpp
branches/ftlopt/Source/_javascript_Core/runtime/Structure.cpp
branches/ftlopt/Source/_javascript_Core/runtime/Structure.h
branches/ftlopt/Source/_javascript_Core/runtime/StructureInlines.h




Diff

Modified: branches/ftlopt/Source/_javascript_Core/ChangeLog (170435 => 170436)

--- branches/ftlopt/Source/_javascript_Core/ChangeLog	2014-06-25 21:04:17 UTC (rev 170435)
+++ branches/ftlopt/Source/_javascript_Core/ChangeLog	2014-06-25 21:15:37 UTC (rev 170436)
@@ -1,3 +1,67 @@
+2014-06-25  Mark Hahnenberg  
+
+Structure bit fields should have a consistent format
+https://bugs.webkit.org/show_bug.cgi?id=134307
+
+Reviewed by Filip Pizlo.
+
+Currently we use C-style bit fields for a number of member variables in Structure to save space. 
+This makes it difficult to load these fields in the JIT. We should instead use our own bitfield 
+format to make it easy to load and test these variables in JIT code.
+
+* runtime/JSObject.cpp:
+(JSC::JSObject::putDirectNonIndexAccessor):
+(JSC::JSObject::reifyStaticFunctionsForDelete):
+* runtime/Structure.cpp:
+(JSC::StructureTransitionTable::contains):
+(JSC::StructureTransitionTable::get):
+(JSC::StructureTransitionTable::add):
+(JSC::Structure::Structure):
+(JSC::Structure::materializePropertyMap):
+(JSC::Structure::addPropertyTransition):
+(JSC::Structure::despecifyFunctionTransition):
+(JSC::Structure::toDictionaryTransition):
+(JSC::Structure::freezeTransition):
+(JSC::Structure::preventExtensionsTransition):
+(JSC::Structure::takePropertyTableOrCloneIfPinned):
+(JSC::Structure::nonPropertyTransition):
+(JSC::Structure::flattenDictionaryStructure):
+(JSC::Structure::addPropertyWithoutTransition):
+(JSC::Structure::pin):
+(JSC::Structure::allocateRareData):
+(JSC::Structure::cloneRareDataFrom):
+(JSC::Structure::getConcurrently):
+(JSC::Structure::putSpecificValue):
+(JSC::Structure::getPropertyNamesFromStructure):
+(JSC::Structure::visitChildren):
+(JS

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

2014-06-25 Thread benjamin
Title: [170434] trunk/Source/WebCore








Revision 170434
Author benja...@webkit.org
Date 2014-06-25 13:42:23 -0700 (Wed, 25 Jun 2014)


Log Message
[Mac] Update the time base of event's timestamp when the system time changes
https://bugs.webkit.org/show_bug.cgi?id=134293

Reviewed by Anders Carlsson.

* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::cachedStartupTimeIntervalSince1970): Since events timestamps are absolute time, they also
need to be updated if the system clock changes.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (170433 => 170434)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 19:03:47 UTC (rev 170433)
+++ trunk/Source/WebCore/ChangeLog	2014-06-25 20:42:23 UTC (rev 170434)
@@ -1,3 +1,14 @@
+2014-06-25  Benjamin Poulain  
+
+[Mac] Update the time base of event's timestamp when the system time changes
+https://bugs.webkit.org/show_bug.cgi?id=134293
+
+Reviewed by Anders Carlsson.
+
+* platform/mac/PlatformEventFactoryMac.mm:
+(WebCore::cachedStartupTimeIntervalSince1970): Since events timestamps are absolute time, they also
+need to be updated if the system clock changes.
+
 2014-06-25  Dirk Schulze  
 
 Add all blend modes to feBlend


Modified: trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm (170433 => 170434)

--- trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm	2014-06-25 19:03:47 UTC (rev 170433)
+++ trunk/Source/WebCore/platform/mac/PlatformEventFactoryMac.mm	2014-06-25 20:42:23 UTC (rev 170434)
@@ -329,10 +329,17 @@
 {
 static dispatch_once_t once;
 dispatch_once(&once, ^{
+void (^updateBlock)(NSNotification *) = Block_copy(^(NSNotification *){ updateSystemStartupTimeIntervalSince1970(); });
 [[[NSWorkspace sharedWorkspace] notificationCenter] addObserverForName:NSWorkspaceDidWakeNotification
 object:nil
  queue:nil
-usingBlock:^(NSNotification *){ updateSystemStartupTimeIntervalSince1970(); }];
+usingBlock:updateBlock];
+[[NSNotificationCenter defaultCenter] addObserverForName:NSSystemClockDidChangeNotification
+  object:nil
+   queue:nil
+  usingBlock:updateBlock];
+Block_release(updateBlock);
+
 updateSystemStartupTimeIntervalSince1970();
 });
 return systemStartupTime;






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


[webkit-changes] [170432] trunk/Tools

2014-06-25 Thread msaboff
Title: [170432] trunk/Tools








Revision 170432
Author msab...@apple.com
Date 2014-06-25 10:34:52 -0700 (Wed, 25 Jun 2014)


Log Message
Provide _javascript_ aware backtrace script for lldb
https://bugs.webkit.org/show_bug.cgi?id=134276

Reviewed by Jer Noble.

* lldb/lldb_webkit.py:
(__lldb_init_module):
(btjs): New scripted command to display a backtrace that shows _javascript_ frames with details.

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/lldb/lldb_webkit.py




Diff

Modified: trunk/Tools/ChangeLog (170431 => 170432)

--- trunk/Tools/ChangeLog	2014-06-25 17:24:28 UTC (rev 170431)
+++ trunk/Tools/ChangeLog	2014-06-25 17:34:52 UTC (rev 170432)
@@ -1,3 +1,14 @@
+2014-06-25  Michael Saboff  
+
+Provide _javascript_ aware backtrace script for lldb
+https://bugs.webkit.org/show_bug.cgi?id=134276
+
+Reviewed by Jer Noble.
+
+* lldb/lldb_webkit.py:
+(__lldb_init_module):
+(btjs): New scripted command to display a backtrace that shows _javascript_ frames with details.
+
 2014-06-25  Michał Pakuła vel Rutka  
 
 REGRESSION (r170426) Broke two python tests


Modified: trunk/Tools/lldb/lldb_webkit.py (170431 => 170432)

--- trunk/Tools/lldb/lldb_webkit.py	2014-06-25 17:24:28 UTC (rev 170431)
+++ trunk/Tools/lldb/lldb_webkit.py	2014-06-25 17:34:52 UTC (rev 170432)
@@ -30,9 +30,11 @@
 """
 
 import lldb
+import string
 import struct
 
 def __lldb_init_module(debugger, dict):
+debugger.HandleCommand('command script add -f lldb_webkit.btjs btjs')
 debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFString_SummaryProvider WTF::String')
 debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFStringImpl_SummaryProvider WTF::StringImpl')
 debugger.HandleCommand('type summary add --expand -F lldb_webkit.WTFAtomicString_SummaryProvider WTF::AtomicString')
@@ -96,6 +98,43 @@
 provider = WebCoreLayoutPointProvider(valobj, dict)
 return "{ x = %s, y = %s }" % (provider.get_x(), provider.get_y())
 
+
+def btjs(debugger, command, result, internal_dict):
+'''Prints a stack trace of current thread with _javascript_ frames decoded.  Takes optional frame count argument'''
+
+target = debugger.GetSelectedTarget()
+addressFormat = '#0{width}x'.format(width=target.GetAddressByteSize() * 2 + 2)
+process = target.GetProcess()
+thread = process.GetSelectedThread()
+
+backtraceDepth = thread.GetNumFrames()
+
+if len(command) == 1:
+try:
+backtraceDepth = int(command)
+except ValueError:
+return
+
+threadFormat = '* thread #{num}: tid = {tid:#x}, {pcAddr:' + addressFormat + '}, queue = \'{queueName}, stop reason = {stopReason}'
+print threadFormat.format(num=thread.GetIndexID(), tid=thread.GetThreadID(), pcAddr=thread.GetFrameAtIndex(0).GetPC(), queueName=thread.GetQueueName(), stopReason=thread.GetStopDescription(30))
+
+for frame in thread:
+if backtraceDepth < 1:
+break
+
+backtraceDepth = backtraceDepth - 1
+
+function = frame.GetFunction()
+
+if not frame or not frame.GetSymbol() or frame.GetSymbol().GetName() == "llint_entry":
+callFrame = frame.GetSP()
+JSFrameDescription = frame.EvaluateExpression("((JSC::CallFrame*)0x%x)->describeFrame()" % frame.GetFP()).GetSummary()
+JSFrameDescription = string.strip(JSFrameDescription, '"')
+frameFormat = 'frame #{num}: {addr:' + addressFormat + '} {desc}'
+print frameFormat.format(num=frame.GetFrameID(), addr=frame.GetPC(), desc=JSFrameDescription)
+else:
+print '%s' % frame
+
 # FIXME: Provide support for the following types:
 # def WTFVector_SummaryProvider(valobj, dict):
 # def WTFCString_SummaryProvider(valobj, dict):






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


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

2014-06-25 Thread bfulgham
Title: [170431] trunk/Source/_javascript_Core








Revision 170431
Author bfulg...@apple.com
Date 2014-06-25 10:24:28 -0700 (Wed, 25 Jun 2014)


Log Message
[Win] Unreviewed gardening.

* _javascript_Core.vcxproj/_javascript_Core.vcxproj.filters: Update to
put various files in proper IDE categories.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (170430 => 170431)

--- trunk/Source/_javascript_Core/ChangeLog	2014-06-25 17:00:04 UTC (rev 170430)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-06-25 17:24:28 UTC (rev 170431)
@@ -1,3 +1,10 @@
+2014-06-25  Brent Fulgham  
+
+[Win] Unreviewed gardening.
+
+* _javascript_Core.vcxproj/_javascript_Core.vcxproj.filters: Update to
+put various files in proper IDE categories.
+
 2014-06-25  pe...@outlook.com  
 
 [Win64] ASM LLINT is not enabled.


Modified: trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters (170430 => 170431)

--- trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters	2014-06-25 17:00:04 UTC (rev 170430)
+++ trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters	2014-06-25 17:24:28 UTC (rev 170431)
@@ -1095,9 +1095,6 @@
 
   dfg
 
-
-  dfg
-
 
   dfg
 
@@ -1509,6 +1506,105 @@
 
   llvm
 
+
+  jit
+
+
+  inspector
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  bytecode
+
+
+  inspector
+
+
+  bytecode
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  bytecode
+
+
+  profiler
+
+
+  bytecode
+
+
+  jit
+
+
+  inspector
+
+
+  jit
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
   
   
 
@@ -2624,9 +2720,6 @@
 
   runtime
 
-
-  runtime
-
 
   runtime
 
@@ -3180,9 +3273,6 @@
 
   dfg
 
-
-  dfg
-
 
   dfg
 
@@ -3703,6 +3793,120 @@
 
   llvm
 
+
+  jit
+
+
+  assembler
+
+
+  inspector
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  dfg
+
+
+  bytecode
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  Derived Sources
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  runtime
+
+
+  bytecode
+
+
+  profiler
+
+
+  bytecode
+
+
+  inspector
+
+
+  jit
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
+
+  inspector
+
   
   
 
@@ -3713,7 +3917,9 @@
 
   
   
-
+
+  Derived Sources
+
 
   jit
 






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


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

2014-06-25 Thread zalan
Title: [170430] trunk/Source/WebCore








Revision 170430
Author za...@apple.com
Date 2014-06-25 10:00:04 -0700 (Wed, 25 Jun 2014)


Log Message
Unreviewed iOS build fix after r170425.

* accessibility/AccessibilityProgressIndicator.cpp:
* accessibility/AccessibilityProgressIndicator.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.cpp
trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (170429 => 170430)

--- trunk/Source/WebCore/ChangeLog	2014-06-25 16:56:42 UTC (rev 170429)
+++ trunk/Source/WebCore/ChangeLog	2014-06-25 17:00:04 UTC (rev 170430)
@@ -1,3 +1,10 @@
+2014-06-25  Zalan Bujtas  
+
+Unreviewed iOS build fix after r170425.
+
+* accessibility/AccessibilityProgressIndicator.cpp:
+* accessibility/AccessibilityProgressIndicator.h:
+
 2014-06-25  Chris Fleizach  
 
 AX: Crash at com.apple.WebCore: WebCore::AlternativeTextController::removeDictationAlternativesForMarker + 43


Modified: trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.cpp (170429 => 170430)

--- trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.cpp	2014-06-25 16:56:42 UTC (rev 170429)
+++ trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.cpp	2014-06-25 17:00:04 UTC (rev 170430)
@@ -21,7 +21,6 @@
 #include "config.h"
 #include "AccessibilityProgressIndicator.h"
 
-#if ENABLE(METER_ELEMENT)
 #include "FloatConversion.h"
 #include "HTMLMeterElement.h"
 #include "HTMLNames.h"
@@ -141,5 +140,3 @@
 
 } // namespace WebCore
 
-#endif // ENABLE(METER_ELEMENT)
-


Modified: trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.h (170429 => 170430)

--- trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.h	2014-06-25 16:56:42 UTC (rev 170429)
+++ trunk/Source/WebCore/accessibility/AccessibilityProgressIndicator.h	2014-06-25 17:00:04 UTC (rev 170430)
@@ -21,7 +21,6 @@
 #ifndef AccessibilityProgressIndicator_h
 #define AccessibilityProgressIndicator_h
 
-#if ENABLE(METER_ELEMENT)
 #include "AccessibilityRenderObject.h"
 
 namespace WebCore {
@@ -64,6 +63,4 @@
 
 } // namespace WebCore
 
-#endif // ENABLE(METER_ELEMENT)
-
 #endif // AccessibilityProgressIndicator_h






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


[webkit-changes] [170429] trunk

2014-06-25 Thread cfleizach
Title: [170429] trunk








Revision 170429
Author cfleiz...@apple.com
Date 2014-06-25 09:56:42 -0700 (Wed, 25 Jun 2014)


Log Message
AX: Crash at com.apple.WebCore: WebCore::AlternativeTextController::removeDictationAlternativesForMarker + 43
https://bugs.webkit.org/show_bug.cgi?id=134226

Reviewed by Enrica Casucci.

Source/WebCore:
Unchecked access of details pointer in the Document marker led to the crash.
It seems erroneous to allow creation of a DocumentMarker without details when one is expected, because it
carries the dictation context (not just the description).
Also, add in ASSERTs to catch scenarios where a nullptr might be passed in.

Test: platform/mac/editing/input/crash-for-empty-text-alternative.html

* dom/DocumentMarker.cpp:
(WebCore::DocumentMarker::DocumentMarker):
* editing/AlternativeTextController.cpp:
(WebCore::AlternativeTextController::removeDictationAlternativesForMarker):

LayoutTests:
* platform/mac-wk2/TestExpectations:
Skip test on wk2 because dictation related tests are not yet supported (89401)
* platform/mac/editing/input/crash-for-empty-text-alternative-expected.txt: Added.
* platform/mac/editing/input/crash-for-empty-text-alternative.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/DocumentMarker.cpp
trunk/Source/WebCore/editing/AlternativeTextController.cpp


Added Paths

trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative-expected.txt
trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative.html




Diff

Modified: trunk/LayoutTests/ChangeLog (170428 => 170429)

--- trunk/LayoutTests/ChangeLog	2014-06-25 16:37:19 UTC (rev 170428)
+++ trunk/LayoutTests/ChangeLog	2014-06-25 16:56:42 UTC (rev 170429)
@@ -1,3 +1,15 @@
+2014-06-25  Chris Fleizach  
+
+AX: Crash at com.apple.WebCore: WebCore::AlternativeTextController::removeDictationAlternativesForMarker + 43
+https://bugs.webkit.org/show_bug.cgi?id=134226
+
+Reviewed by Enrica Casucci.
+
+* platform/mac-wk2/TestExpectations:
+Skip test on wk2 because dictation related tests are not yet supported (89401)
+* platform/mac/editing/input/crash-for-empty-text-alternative-expected.txt: Added.
+* platform/mac/editing/input/crash-for-empty-text-alternative.html: Added.
+
 2014-06-25  Laszlo Gombos  
 
 Remove build guard for progress element


Added: trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative-expected.txt (0 => 170429)

--- trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative-expected.txt	(rev 0)
+++ trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative-expected.txt	2014-06-25 16:56:42 UTC (rev 170429)
@@ -0,0 +1,6 @@
+Ensure that a empty text alternative does not lead to a crash
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+tisatest
+TEST COMPLETE


Added: trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative.html (0 => 170429)

--- trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative.html	(rev 0)
+++ trunk/LayoutTests/platform/mac/editing/input/crash-for-empty-text-alternative.html	2014-06-25 16:56:42 UTC (rev 170429)
@@ -0,0 +1,47 @@
+
+
+
+
+body { margin: 0; padding: 0 }
+
+
+
+

+
thisisatest
+

+