Timeline
Jul 18, 2014:
- 10:25 PM Changeset in webkit [171259] by
-
- 2 edits in trunk/Source/WebCore
[iOS] ignore requests to set volume
https://bugs.webkit.org/show_bug.cgi?id=135081
Reviewed by Jer Noble.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVolume): Do nothing on iOS.
- 9:59 PM Changeset in webkit [171258] by
-
- 2 edits in trunk/Websites/perf.webkit.org
Perf dashboard shouldn't show the full git hash
https://bugs.webkit.org/show_bug.cgi?id=135083
Reviewed by Benjamin Poulain.
Detect Git/Mercurial hash by checking the length.
If it's a hash, use the first 8 characters in the label
while retaining the full length to be used in hyperlinks.
- public/js/helper-classes.js:
(.this.formattedRevisions):
(TestBuild):
- 6:30 PM Changeset in webkit [171257] by
-
- 2 edits in trunk/Source/WebKit2
We don't provide an extension to the temp file used for uploads
https://bugs.webkit.org/show_bug.cgi?id=135079
Reviewed by Sam Weinig.
Make sure didChooseFilesForOpenPanelWithDisplayStringAndIcon vends
extensions for the files passed to the content process.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChooseFilesForOpenPanelWithDisplayStringAndIcon):
- 5:52 PM Changeset in webkit [171256] by
-
- 2 edits in trunk/Source/WebKit2
ASSERTion failures in ViewGestureController indicating that we're copying WebBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=135080
<rdar://problem/17734714>
Reviewed by Sam Weinig.
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::canSwipeInDirection):
- 5:51 PM Changeset in webkit [171255] by
-
- 2 edits in trunk/Tools
Revert accidental commit to MiniBrowser to make everything layer backed.
- MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController windowDidLoad]):
- 5:47 PM Changeset in webkit [171254] by
-
- 3 edits2 copies in branches/safari-537.78-branch
Merge r169318.
- 5:21 PM Changeset in webkit [171253] by
-
- 2 edits in trunk/Source/WebKit2
_WKActivatedElementInfo.title should fallback to innerText if the link doesn't have title attribute.
https://bugs.webkit.org/show_bug.cgi?id=135077
When populate InteractionInformationAtPosition's title value, use a link element's innerText if it
doesn't have title attribute.
Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2014-07-18
Reviewed by Dan Bernstein.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getPositionInformation):
- 5:19 PM Changeset in webkit [171252] by
-
- 25 edits in trunk/Source
[iOS] Tapping "Allow Website" on a restricted page does not bring up the keypad
https://bugs.webkit.org/show_bug.cgi?id=135072
<rdar://problem/17528188>
Reviewed by David Kilzer.
Source/WebCore:
No new tests. Content filtering is not testable from WebKit.
- WebCore.exp.in: Exported necessary ContentFilter symbols.
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::finishedLoading): Called FrameLoaderClient::contentFilterDidBlockLoad().
(WebCore::DocumentLoader::responseReceived): Created a new ContentFilter.
(WebCore::DocumentLoader::dataReceived): Called FrameLoaderClient::contentFilterDidBlockLoad().
(WebCore::DocumentLoader::setContentFilterForBlockedLoad): Deleted.
(WebCore::DocumentLoader::handleContentFilterRequest): Deleted.
- loader/DocumentLoader.h:
- loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::contentFilterDidBlockLoad):
- loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy): Removed the check for unblock navigations, as this is now
handled at the WebKit layer.
- platform/ContentFilter.h: ContentFilter no longer needs to be RefCounted, so made various changes in order to
make it compatible with unique_ptr.
- platform/ios/ContentFilterIOS.mm:
(WebCore::scheme): Changed from a public member function to a static inline free function.
(WebCore::ContentFilter::handleUnblockRequestAndDispatchIfSuccessful): Renamed from requestUnblockAndDispatchIfSuccessful.
- platform/mac/ContentFilterMac.mm:
(WebCore::ContentFilter::ContentFilter): Added a default constructor for use during message decoding.
(WebCore::ContentFilter::addData): Removed calls to ref() and deref(). These were never actually needed since
we were dispatching the block synchronously.
(WebCore::ContentFilter::finishedAddingData): Ditto.
(WebCore::ContentFilter::encode): Encoded m_platformContentFilter to the NSKeyedArchiver if it conforms to NSSecureCoding.
(WebCore::ContentFilter::decode): Decoded m_platformContentFilter from the NSKeyedUnarchiver if it conforms to NSSecureCoding.
(WebCore::ContentFilter::create): Deleted.
Source/WebKit/mac:
- WebCoreSupport/WebFrameLoaderClient.h: Override contentFilterDidBlockLoad().
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidStartProvisionalLoad): Reset contentFilterForBlockedLoad to nullptr.
(WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Check if this is navigation represents an
unblock request and ignore if so.
- WebView/WebFrame.mm:
(-[WebFrame _contentFilterDidHandleNavigationAction:]): Called ContentFilter::handleUnblockRequestAndDispatchIfSuccessful().
If the unblock is successful, reload the main frame.
- WebView/WebFrameInternal.h:
Source/WebKit2:
- Shared/WebCoreArgumentCoders.h: Declared an ArgumentCoder for WebCore::ContentFilter.
- Shared/mac/WebCoreArgumentCodersMac.mm:
(IPC::ArgumentCoder<ContentFilter>::encode): Encoded the ContentFilter using a NSKeyedArchiver.
(IPC::ArgumentCoder<ContentFilter>::decode): Decoded the ContentFilter using a NSKeyedUnarchiver.
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::contentFilterDidBlockLoadForFrame): Called WebFrameProxy::setContentFilterForBlockedLoad().
- UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didStartProvisionalLoad): Reset m_contentFilterForBlockedLoad to nullptr.
(WebKit::WebFrameProxy::contentFilterDidHandleNavigationAction): Called ContentFilter::handleUnblockRequestAndDispatchIfSuccessful().
If the unblock is successful, reload the WebPageProxy.
- UIProcess/WebFrameProxy.h:
(WebKit::WebFrameProxy::setContentFilterForBlockedLoad):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction): Check if this is navigation represents an unblock
request and ignore if so.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in: Defined ContentFilterDidBlockLoadForFrame.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::contentFilterDidBlockLoad): Sent ContentFilterDidBlockLoadForFrame to the WebPageProxy.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
- 5:11 PM Changeset in webkit [171251] by
-
- 2 edits in branches/safari-537.78-branch/Source/JavaScriptCore
Merge patch for <rdar://problem/16589513>
- 5:00 PM Changeset in webkit [171250] by
-
- 5 edits3 adds in trunk
[iOS WK2] position:fixed in iframes with programmatic scroll could end up in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=135078
Source/WebCore:
<rdar://problem/17401823>
Reviewed by Tim Horton.
When the UI-side scrolling tree receives a requested scroll position update, it scrolls
the node (e.g. a frame) then traverses child nodes to update them, e.g. for fixed position.
However, we would always use a viewport rect for the main document (from the scrolling tree),
which is not appropriate for subframes. Subframes should just use their own visible
rect to position fixed children.
Test: platform/mac-wk2/tiled-drawing/scrolling/frames/fixed-inside-frame.html
- page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
Source/WebKit2:
<rdar://problem/17401823>
Reviewed by Tim Horton.
Fix the logging of requested scroll position and frame scale factor.
- Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(WebKit::RemoteScrollingTreeTextStream::dump):
LayoutTests:
Reviewed by Tim Horton.
Test with position:fixed inside an iframe that scrolls programmatically.
- platform/mac-wk2/tiled-drawing/scrolling/frames/fixed-inside-frame-expected.txt: Added.
- platform/mac-wk2/tiled-drawing/scrolling/frames/fixed-inside-frame.html: Added.
- platform/mac-wk2/tiled-drawing/scrolling/frames/resources/autoscrolling-frame-with-fixed.html: Added.
- 4:57 PM Changeset in webkit [171249] by
-
- 1 edit1 add in trunk
Add a manual test for r135044
<https://bugs.webkit.org/show_bug.cgi?id=135044>
Rubber-stamped by Andy Estes.
- ManualTests/ios/typing-in-field-that-clears-on-keyup.html: Added.
- 3:50 PM Changeset in webkit [171248] by
-
- 2 edits in tags/Safari-538.46.41/Source/WebCore
Merged r171215. <rdar://problem/17721209>
- 3:39 PM Changeset in webkit [171247] by
-
- 8 edits in trunk
Add a new 'analyze' target to the makefile. This will make use of a new
'PATH_TO_SCAN_BUILD' which, if set will wrap xcodebuild in the clang
static analyzer.
https://bugs.webkit.org/show_bug.cgi?id=135057
<rdar://problem/10193187>
Reviewed by David Kilzer.
- Makefile:
- Makefile.shared:
- Source/Makefile:
- 3:24 PM Changeset in webkit [171246] by
-
- 3 edits in trunk/Source/WebCore
Fixed position elements are misplaced when a WK1 view has contentInsets set
https://bugs.webkit.org/show_bug.cgi?id=135031
-and corresponding-
<rdar://problem/17682335>
Reviewed by Tim Horton.
[NSScrollView documentVisibleRect] includes content that is within the inset-area
of a view, but WebCore is interested in the content that is fully visible, so we
need to factor the inset sizes out of this rect.
Implement contract() to avoid the awkwardness of calling expand() with negative
values.
- platform/graphics/IntSize.h:
(WebCore::IntSize::contract):
Factor out insets
- platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::platformVisibleContentRect):
(WebCore::ScrollView::platformVisibleContentSize):
- 3:08 PM Changeset in webkit [171245] by
-
- 2 edits in trunk/Tools
Fix EFL+GTK.
- Scripts/run-jsc-stress-tests:
- 2:30 PM Changeset in webkit [171244] by
-
- 2 edits in tags/Safari-538.46.41/Source/WebCore
Rollout r171236. <rdar://problem/17721209>
- 2:26 PM Changeset in webkit [171243] by
-
- 5 edits in tags/Safari-538.46.41/Source
Versioning.
- 1:58 PM Changeset in webkit [171242] by
-
- 2 edits in trunk/LayoutTests
media/video-seek-with-negative-playback.html is flaky on Mac
https://bugs.webkit.org/show_bug.cgi?id=135071
- platform/mac/TestExpectations: Marked it as such.
- 1:54 PM Changeset in webkit [171241] by
-
- 5 edits in trunk
Exception fuzzing should work on iOS
https://bugs.webkit.org/show_bug.cgi?id=135070
Reviewed by Mark Hahnenberg.
Source/JavaScriptCore:
- tests/exceptionFuzz.yaml:
Tools:
- Scripts/jsc-stress-test-helpers/js-exception-fuzz:
(fail):
- Scripts/run-jsc-stress-tests:
- 1:50 PM Changeset in webkit [171240] by
-
- 3 edits in trunk/Source/WebKit2
[Cocoa] Use RetainPtr in _WKRemoteObjectInterface
https://bugs.webkit.org/show_bug.cgi?id=135062
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-07-18
Reviewed by Anders Carlsson.
Switch to RetainPtr instead of manual memory management of ivars.
- Shared/API/Cocoa/_WKRemoteObjectInterface.h:
- Shared/API/Cocoa/_WKRemoteObjectInterface.mm:
(-[_WKRemoteObjectInterface initWithProtocol:identifier:]):
(-[_WKRemoteObjectInterface identifier]):
(-[_WKRemoteObjectInterface description]):
(-[_WKRemoteObjectInterface dealloc]): Deleted.
- 1:34 PM Changeset in webkit [171239] by
-
- 15 edits in trunk/Source
Take navigation snapshots whenever the current back-forward item is going to change
https://bugs.webkit.org/show_bug.cgi?id=135058
<rdar://problem/17464515>
Reviewed by Dan Bernstein.
Instead of trying to have the UI process figure out when to take navigation snapshots by itself,
snapshot whenever the Web process says that the current back-forward item is going to change.
This fixes snapshotting timing with pushState, and lets us bottleneck snapshotting down to
just two places instead of 5.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::goForward):
(WebKit::WebPageProxy::goBack):
(WebKit::WebPageProxy::goToBackForwardItem):
(WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
We no longer need to special-case taking navigation snapshots
when the UI process changes the back forward item or upon
didStartProvisionalLoadForFrame, because we'll always snapshot
in willChangeCurrentHistoryItem in all of these cases.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willChangeCurrentHistoryItem):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
Add willChangeCurrentHistoryItem message, which comes from the Web process.
When it arrives, take a navigation snapshot.
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
Take the pre-swipe navigation snapshot before telling WebPageProxy that we're doing a swipe,
so that it doesn't bail from taking the snapshot because we have a snapshot up.
(WebKit::ViewGestureController::endSwipeGesture):
We no longer need to explicitly disable snapshotting while navigating, because
we will avoid taking the snapshot if there's a snapshot being displayed.
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::~ViewGestureController):
Remove the snapshot if it's still up when ViewGestureController is destroyed.
The Mac version of ViewGestureController is destroyed on Web process crashes
because it is a message receiver, so it is not guaranteed to have the same
lifetime as the WebPageProxy and friends.
(WebKit::ViewGestureController::trackSwipeGesture):
Make use of recordNavigationSnapshot.
(WebKit::ViewGestureController::endSwipeGesture):
Ditto from the Mac version.
- UIProcess/mac/ViewSnapshotStore.h:
(WebKit::ViewSnapshotStore::disableSnapshotting): Deleted.
(WebKit::ViewSnapshotStore::enableSnapshotting): Deleted.
- UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshotStore::ViewSnapshotStore):
(WebKit::ViewSnapshotStore::recordSnapshot):
Remove the snapshot disabling mechanism and bail from snapshotting if we're
showing a snapshot, as mentioned above.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::willChangeCurrentHistoryItem):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::willChangeCurrentHistoryItem):
- WebProcess/WebPage/WebPage.h:
Proxy willChangeCurrentHistoryItem from HistoryController to the UI process.
- loader/HistoryController.cpp:
(WebCore::HistoryController::updateForCommit):
(WebCore::HistoryController::recursiveUpdateForCommit):
(WebCore::HistoryController::recursiveUpdateForSameDocumentNavigation):
(WebCore::HistoryController::createItem):
Use setCurrentItem instead of duplicating the contents of it inside each of these functions.
(WebCore::HistoryController::setCurrentItem):
(WebCore::HistoryController::replaceCurrentItem):
When setting or replacing the current item, let the FrameLoaderClient know that we're going
to change which history item is "current".
- loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::willChangeCurrentHistoryItem): Added.
- 12:41 PM Changeset in webkit [171238] by
-
- 2 edits in trunk/Tools
run-jsc-stress-tests should be able to run helper-based tests in remote mode
https://bugs.webkit.org/show_bug.cgi?id=135064
Reviewed by Mark Hahnenberg.
- Scripts/run-jsc-stress-tests:
- 12:29 PM Changeset in webkit [171237] by
-
- 2 edits in trunk/Tools
run-jsc-stress-tests: rename $copy to $doNotMessWithVMPath
https://bugs.webkit.org/show_bug.cgi?id=135061
Rubber stamped by Mark Hahnenberg.
- Scripts/run-jsc-stress-tests:
- 12:17 PM Changeset in webkit [171236] by
-
- 2 edits in tags/Safari-538.46.41/Source/WebCore
Merged r171215. <rdar://problem/17721209>
- 12:15 PM Changeset in webkit [171235] by
-
- 2 edits in branches/safari-600.1-branch/Source/WebKit2
Merged r171209. <rdar://problem/17720696>
- 12:13 PM Changeset in webkit [171234] by
-
- 2 edits in tags/Safari-600.1.1.1/Source/WebKit2
Merged r171209. <rdar://problem/17720696>
- 12:13 PM Changeset in webkit [171233] by
-
- 2 edits in trunk/Tools
Refactor run-jsc-stress-tests VM copying code to remove some abstractions
https://bugs.webkit.org/show_bug.cgi?id=135059
Reviewed by Mark Lam.
This is meant to make it easier for me to extend the copying functionality to copy things other than
the framework.
- Scripts/run-jsc-stress-tests:
- 12:08 PM Changeset in webkit [171232] by
-
- 5 edits in tags/Safari-600.1.1.1/Source
Versioning.
- 11:58 AM Changeset in webkit [171231] by
-
- 1 copy in tags/Safari-600.1.1.1
New tag.
- 11:55 AM Changeset in webkit [171230] by
-
- 5 edits in tags/Safari-538.46.41/Source
Versioning.
- 11:50 AM Changeset in webkit [171229] by
-
- 1 copy in tags/Safari-538.46.41
New Tag.
- 11:41 AM Changeset in webkit [171228] by
-
- 4 edits in trunk
Fix cloop build.
Source/JavaScriptCore:
- jsc.cpp:
(jscmain):
Tools:
- Scripts/jsc-stress-test-helpers/js-exception-fuzz:
- 11:20 AM Changeset in webkit [171227] by
-
- 3 edits in trunk/Source/WebInspectorUI
Revert r169735 since it broke Timeline, and fix bug 129696 in a more targeted way.
REGRESSION (r169735): Web Inspector: Timeline tree outline missing data until collapse-expand.
https://bugs.webkit.org/show_bug.cgi?id=134845
Reviewed by Joseph Pecoraro.
- UserInterface/Views/DOMTreeElement.js:
(WebInspector.DOMTreeElement.prototype.adjustCollapsedRange): Use button isteand of assuming
item.listItemElement will be ready to use. The listItemElement node is lazily created.
- UserInterface/Views/TreeOutline.js:
(TreeOutline.prototype.appendChild): Don't attach unless _childrenListNode exists.
(TreeOutline.prototype.insertChild): Ditto.
- 11:01 AM Changeset in webkit [171226] by
-
- 2 edits in trunk/LayoutTests
Add timeout for transition end. Speculative layout test fix.
- fast/layers/no-clipping-overflow-hidden-added-after-transform.html:
- 10:21 AM Changeset in webkit [171225] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION: Crash when typing into text field that clears itself on iOS
<https://bugs.webkit.org/show_bug.cgi?id=135044>
<rdar://problem/17640443>
Reviewed by Darin Adler.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::requestAutocorrectionData):
wordRangeFromPosition() returns null in some cases; null check range
before dereferencing it. Moved some variable declarations around to
better match our style.
- 10:14 AM Changeset in webkit [171224] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, rolling out r171207.
https://bugs.webkit.org/show_bug.cgi?id=135056
Broke multiple tests on Yosemite (Requested by ap on #webkit).
Reverted changeset:
"Fixed position elements are misplaced when a WK1 view has
contentInsets set"
https://bugs.webkit.org/show_bug.cgi?id=135031
http://trac.webkit.org/changeset/171207
- 10:01 AM Changeset in webkit [171223] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed gardening. Removing failure expectations for tests now passing.
- platform/gtk/TestExpectations: Removed failure expectations.
- 9:53 AM Changeset in webkit [171222] by
-
- 9 edits2 deletes in trunk
Unreviewed, rolling out r171218.
https://bugs.webkit.org/show_bug.cgi?id=135055
Made fast/dom/HTMLObjectElement/beforeload-set-text-
crash.xhtml crash (Requested by ap on #webkit).
Reverted changeset:
"REGRESSION (r169105): Crash in selection"
https://bugs.webkit.org/show_bug.cgi?id=134303
http://trac.webkit.org/changeset/171218
- 8:23 AM Changeset in webkit [171221] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed GTK gardening. Tests passing after SVN r171001
- platform/gtk/TestExpectations: Removed tests that are now passing.
- 7:37 AM WebKitGTK/KeepingTheTreeGreen edited by
- (diff)
- 7:12 AM Changeset in webkit [171220] by
-
- 2 edits in trunk/Tools
Fix -vverbose option in sort-export-file script. https://bugs.webkit.org/show_bug.cgi?id=135043
Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-07-18
Reviewed by Tim Horton.
-vverbose option does not work. Option added to getOptionsResult. - Scripts/sort-export-file:
- 6:41 AM Changeset in webkit [171219] by
-
- 6 edits in trunk/Source/WebKit2
[WK2] Provide a mechanism to grab the back-forward list for gesture navigation purposes from another WKWebView
https://bugs.webkit.org/show_bug.cgi?id=134999
<rdar://problem/17238025>
Reviewed by Sam Weinig.
In some cases, clients may need to throw a WKWebView with no back-forward list over
another WKWebView, and want to participate in gesture swipe as if they were actually
the page being overlaid.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView setAllowsBackForwardNavigationGestures:]):
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration _alternateWebViewForNavigationGestures]):
(-[WKWebViewConfiguration _setAlternateWebViewForNavigationGestures:]):
- UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
Keep an "alternate" WKWebView "for navigation gestures", which ViewGestureController
will use as the real source of back-forward items, and the destination of the swipe navigation.
All swipe delegate callbacks will also fire from the alternate view, because it owns the items
and will be doing the navigation.
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::setAlternateBackForwardListSourceView):
(WebKit::ViewGestureController::beginSwipeGesture):
Send navigationGestureDidBegin via the alternate view's WebPageProxy if it exists.
Record a new snapshot on the current page, but copy it to the alternate view if necessary,
so that when swiping forward from the alternate view, it will have the "right" snapshot.
Get the target back forward item from the alternate view.
Send navigationGestureWillEnd via the alternate view's WebPageProxy if it exists.
(WebKit::ViewGestureController::canSwipeInDirection):
Determine if we can swipe in a direction by looking at the alternate view's back-forward list if necessary.
(WebKit::ViewGestureController::endSwipeGesture):
Send navigationGestureDidEnd via the alternate view's WebPageProxy if it exists.
Perform the navigation on the alternate view if necessary.
(WebKit::ViewGestureController::removeSwipeSnapshot):
Send navigationGestureSnapshotWasRemoved via the alternate view's WebPageProxy if it exists.
- UIProcess/mac/ViewGestureController.h:
- 2:50 AM Changeset in webkit [171218] by
-
- 9 edits2 adds in trunk
REGRESSION (r169105): Crash in selection
https://bugs.webkit.org/show_bug.cgi?id=134303
Patch by Radu Stavila <stavila@adobe.com> on 2014-07-18
Reviewed by Ryosuke Niwa.
Source/WebCore:
When splitting the selection between different subtrees, all subtrees must have their selection cleared before
starting to apply the new selection. Otherwise, when selecting objects in a named flow thread and going up
its containing block chain, we can end up in the view's selection root, which has not yet been updated and so
we get inconsistent data.
To achieve this goal, the selection update was split into a "clear" and an "apply" method. The updateSelectionForSubtrees
method first iterates through all subtrees and performs the "clear" method and then starts all over again
and performs the "apply" method.
Also, the selectionStart/End members in RenderView have been renamed to fix problems caused by the fact that
RenderView inherits SelectionSubtreeRoot, which also has the same selectionStart/End members.
Test: fast/regions/selection/crash-deselect.html
- WebCore.xcodeproj/project.pbxproj:
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::isSelectionRoot):
- rendering/RenderSelectionInfo.h:
- rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
(WebCore::RenderView::setSelection): Renamed m_selectionStart/End to m_unsplitSelectionStart/End
(WebCore::RenderView::splitSelectionBetweenSubtrees):
(WebCore::RenderView::updateSelectionForSubtrees): Added, clears and re-applies selection for all selection subtrees.
(WebCore::RenderView::clearSubtreeSelection): Added, clears selection and returns previously selected information.
(WebCore::RenderView::applySubtreeSelection): Added, updates the selection status of all objects inside the selection tree, compares old and new data and repaints accordingly.
(WebCore::RenderView::getSelection): Renamed m_selectionStart/End to m_unsplitSelectionStart/End
(WebCore::RenderView::setSubtreeSelection): Deleted.
- rendering/RenderView.h:
- rendering/SelectionSubtreeRoot.cpp:
(WebCore::SelectionSubtreeRoot::SelectionSubtreeRoot):
- rendering/SelectionSubtreeRoot.h:
(WebCore::SelectionSubtreeRoot::OldSelectionData::OldSelectionData):
LayoutTests:
Added test for the crash that occurred in some cases when selecting.
- fast/regions/selection/crash-deselect-expected.txt: Added.
- fast/regions/selection/crash-deselect.html: Added.
- 12:13 AM Changeset in webkit [171217] by
-
- 2 edits in trunk/Tools
Really remove dependency on ShellQuote.
- Scripts/jsc-stress-test-helpers/js-exception-fuzz:
- 12:11 AM Changeset in webkit [171216] by
-
- 3 edits in trunk/Tools
Unreviewed, fix build for platforms that don't have ShellQuote.
- Scripts/jsc-stress-test-helpers/js-exception-fuzz: Take a single argument that has the whole command string.
- Scripts/run-jsc-stress-tests: Do the escaping in Ruby.
Jul 17, 2014:
- 11:16 PM Changeset in webkit [171215] by
-
- 2 edits in trunk/Source/WebCore
[MSE] Re-enqueue after a removeCodedFrames() only if the removed frames overlap what may have possibly been enqueued but undisplayed.
https://bugs.webkit.org/show_bug.cgi?id=135039
Reviewed by Eric Carlson.
When a client calls removeCodedFrames(), we must re-enqueue those ranges if the removed samples overlap with
enqueued but possibly un-displayed samples. Otherwise, replacement samples may lead to decode errors as those
new samples dependencies are not met. But if we re-enqueue too frequently, this may cause subtle but noticible
display timing glitches, so only re-enqueue when removeCodedFrames have a possiblity of removing enqueued, but
not yet displayed samples.
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::removeCodedFrames):
- 10:55 PM Changeset in webkit [171214] by
-
- 3 edits2 adds in branches/ftlopt/Source/JavaScriptCore
[ftlopt] DFG Flush(SetLocal) store elimination is overzealous for captured variables in the presence of nodes that have no effects but may throw (merge trunk r171190)
https://bugs.webkit.org/show_bug.cgi?id=135019
Reviewed by Oliver Hunt.
Behaviorally, this is just a merge of trunk r171190, except that the relevant functionality
has moved to StrengthReductionPhase and is written in a different style. Same algorithm,
different code.
- dfg/DFGNodeType.h:
- dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
- tests/stress/capture-escape-and-throw.js: Added.
(foo.f):
(foo):
- tests/stress/new-array-with-size-throw-exception-and-tear-off-arguments.js: Added.
(foo):
(bar):
- 9:34 PM Changeset in webkit [171213] by
-
- 18 edits6 adds in trunk
Need ability to fuzz exception throwing
https://bugs.webkit.org/show_bug.cgi?id=134945
<rdar://problem/17722027>
Reviewed by Sam Weinig.
Source/JavaScriptCore:
Adds the ability to instrument exception checks, and to force some random
exception check to artificially throw an exception. Also adds new tests that
are suitable for testing this. Note that this is closely tied to the Tools
directory changes that are also part of this changeset.
This also fixes an activation tear-off bug that arises if we ever throw an
exception from operationOptimize, or if due to some other bug it's only due
to the operationOptimize exception check that we realize that there is an
exception to be thrown.
- dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::fastExceptionCheck):
- ftl/FTLIntrinsicRepository.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::callCheck):
- interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::callExceptionFuzz):
(JSC::AssemblyHelpers::emitExceptionCheck):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::emitExceptionCheck): Deleted.
- jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
- jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_enter):
- jit/JITOperations.cpp:
(JSC::numberOfExceptionFuzzChecks):
- jit/JITOperations.h:
- jsc.cpp:
(jscmain):
- runtime/Options.h:
- runtime/TestRunnerUtils.h:
- tests/exceptionFuzz.yaml: Added.
- tests/exceptionFuzz: Added.
- tests/exceptionFuzz/3d-cube.js: Added.
- tests/exceptionFuzz/date-format-xparb.js: Added.
- tests/exceptionFuzz/earley-boyer.js: Added.
Tools:
Adds a new script, js-exception-fuzz, which will run some jsc command-line using
exception fuzzing. This means that we will force exceptions to be thrown in random
places to see how the engine reacts. This is now integrated with the various test
drivers, so run-javascriptcore-tests will run some exception fuzzing tests by
default.
- Scripts/jsc-stress-test-helpers/js-exception-fuzz: Added.
(fail):
- Scripts/run-javascriptcore-tests:
- Scripts/run-jsc-stress-tests:
- 8:59 PM Changeset in webkit [171212] by
-
- 21 edits1 delete in trunk/Source
SECTORDER_FLAGS should be defined in target's xcconfig file, not Base.xcconfig
<http://webkit.org/b/135006>
Reviewed by Darin Adler.
Source/JavaScriptCore:
- Configurations/Base.xcconfig: Move SECTORDER_FLAGS to
JavaScriptCore.xcconfig.
- Configurations/CompileRuntimeToLLVMIR.xcconfig: Remove empty
SECTORDER_FLAGS definition.
- Configurations/DebugRelease.xcconfig: Ditto.
- Configurations/JavaScriptCore.xcconfig: Use $(CONFIGURATION)
so SECTORDER_FLAGS is only set on Production builds.
Source/WebCore:
- Configurations/Base.xcconfig: Move SECTORDER_FLAGS to
WebCore.xcconfig.
- Configurations/DebugRelease.xcconfig: Remove empty
SECTORDER_FLAGS definition.
- Configurations/WebCoreTestShim.xcconfig: Ditto.
- Configurations/WebCoreTestSupport.xcconfig: Ditto.
- Configurations/WebCore.xcconfig: Use $(CONFIGURATION) so
SECTORDER_FLAGS is only set on Production builds.
Source/WebKit:
- WebKit.xcodeproj/project.pbxproj: Remove references to unused
WebKit.xcconfig file.
Source/WebKit/mac:
- Configurations/Base.xcconfig: Move SECTORDER_FLAGS to
WebKitLegacy.xcconfig.
- Configurations/DebugRelease.xcconfig: Remove empty
SECTORDER_FLAGS definition.
- Configurations/WebKit.xcconfig: Removed. Unused.
- Configurations/WebKitLegacy.xcconfig: Use $(CONFIGURATION) so
SECTORDER_FLAGS is only set on Production builds.
Source/WebKit2:
- Configurations/Base.xcconfig: Move SECTORDER_FLAGS to
WebKit.xcconfig.
- Configurations/DebugRelease.xcconfig: Remove empty
SECTORDER_FLAGS definition.
- Configurations/WebKit.xcconfig: Use $(CONFIGURATION) so
SECTORDER_FLAGS is only set on Production builds.
- 7:16 PM Changeset in webkit [171211] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (r171167): LoaderClient processDidCrash call is made after load state changes
https://bugs.webkit.org/show_bug.cgi?id=135032
<rdar://problem/17716602>
Reviewed by Dan Bernstein.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::processDidCrash): Create a transaction, so that the nested
transaction in resetStateAfterProcessExited() wouldn't be committed.
(WebKit::WebPageProxy::resetStateAfterProcessExited): Don't use auto - it was hiding
the most important fact that this is a stack object that can't be simply moved to
a different function.
- 6:56 PM Changeset in webkit [171210] by
-
- 4 edits2 adds in trunk
Subpixel rendering: Embedded non-compositing rotate transform paints to wrong position.
https://bugs.webkit.org/show_bug.cgi?id=135028
Reviewed by Simon Fraser.
CTM always translates to where the layer's renderer() is going to paint.
It ensures that the pixel snapped renderer() always end up painting to (0, 0) which is
required to be able to position properly on transformed context.
Source/WebCore:
Test: fast/layers/hidpi-transform-on-child-content-is-mispositioned.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::beginTransparencyLayers):
(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::paintOverflowControlsForFragments):
(WebCore::RenderLayer::calculateClipRects):
- rendering/RenderLayer.h:
LayoutTests:
- fast/layers/hidpi-transform-on-child-content-is-mispositioned-expected.html: Added.
- fast/layers/hidpi-transform-on-child-content-is-mispositioned.html: Added.
- 6:16 PM Changeset in webkit [171209] by
-
- 2 edits in trunk/Source/WebKit2
[iOS][WK2] Fix the updateVisibleContentRects synchronization for load after r171154
https://bugs.webkit.org/show_bug.cgi?id=135036
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-07-17
Reviewed by Dan Bernstein.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::updateVisibleContentRects):
I forgot to update one of the condition after changing from lastTransaction to next transaction
in r171154.
- 4:59 PM Changeset in webkit [171208] by
-
- 2 edits in trunk/Source/JavaScriptCore
Disable live-out calculation for stackmap intrinsics.
https://bugs.webkit.org/show_bug.cgi?id=134366
The live-out variables are not required for the stackmaps, because we
don't care about preserving the state when we perform destructive
patching.
Patch by Juergen Ributzka <juergen@apple.com> on 2014-07-17
Reviewed by Filip Pizlo.
- llvm/library/LLVMExports.cpp:
(initializeAndGetJSCLLVMAPI):
- 4:49 PM Changeset in webkit [171207] by
-
- 3 edits in trunk/Source/WebCore
Fixed position elements are misplaced when a WK1 view has contentInsets set
https://bugs.webkit.org/show_bug.cgi?id=135031
-and corresponding-
<rdar://problem/17682335>
Reviewed by Tim Horton.
[NSScrollView documentVisibleRect] is not the rect that we are looking for when
this function is called. WebCore is interested in the rect that does not include
content that is within the inset region.
Implement contract() to avoid the awkwardness of calling expand() with negative
values.
- platform/graphics/IntSize.h:
(WebCore::IntSize::contract):
Use _insetBounds instead of documentVisibleRect, and when it’s necessary to use
the frame’s dimensions, extract the inset from that size.
- platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::platformVisibleContentRect):
(WebCore::ScrollView::platformVisibleContentSize):
- 4:39 PM Changeset in webkit [171206] by
-
- 6 edits in branches/safari-600.1-branch
Rollout of r171167. <rdar://problem/17716602>
- 4:37 PM Changeset in webkit [171205] by
-
- 6 edits in tags/Safari-600.1.1
Rollout r171167. <rdar://problem/17716602>
- 4:30 PM Changeset in webkit [171204] by
-
- 2 edits in trunk/Source/JavaScriptCore
Follow-up fix to r171195 to prevent ASSERT in fast/profiler/profile-with-no-title.html
Rubber-stamped by Alexey Proskuryakov.
Null / empty titles should be fine. Tests pass in release builds
which allowed empty titles, and it looks like the LegacyProfiler
stopProfiling handles empty titles as expected already.
- profiler/LegacyProfiler.cpp:
(JSC::LegacyProfiler::startProfiling):
- 3:46 PM Changeset in webkit [171203] by
-
- 7 edits in trunk/Source
[REGRESSION WK2]The menu bar does not show up when tapping on the caret.
https://bugs.webkit.org/show_bug.cgi?id=135023
<rdar://problem/17617282>
../WebCore:
Reviewed by Benjamin Poulain.
Adding some exports.
- WebCore.exp.in:
../WebKit2:
Reviewed by Benjamin Poulain and Ryosuke Niwa.
WKContentView needs to implement hasContent to correctly show
the appropriate menu bar content. The patch adds this information
to the EditorState.
- Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
- Shared/EditorState.h:
(WebKit::EditorState::EditorState):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView hasContent]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::editorState):
- 3:08 PM Changeset in webkit [171202] by
-
- 5 edits in branches/safari-537.78-branch/Source
Versioning.
- 3:08 PM Changeset in webkit [171201] by
-
- 3 edits in trunk/Source/WebKit2
[iOS][WK2] Add SPI to do a dynamic viewport update without showing any content
https://bugs.webkit.org/show_bug.cgi?id=135010
Reviewed by Darin Adler.
This patch add a new SPI, [WKWebView _resizeWhileHidingContentWithUpdates:] to perform all the work
of a dynamic viewport size update, but instead of animating the old content, it is hidden.
The patch is built on top of the animated resize mechanism. Instead of having an animation driving
the beginning and end, we let the content do that. The dynamic resize begins, it runs for as long as
the WebProcess needs, and it ends when first layer tree commit with the new content is processed.
The attribute "_isAnimatingResize" is generalized to support two modes of resizing: animated and
hiding content.
The attribute "_hasCommittedLoadForMainFrame" is rather silly. It is only needed because
[WKWebView _resizeWhileHidingContentWithUpdates:] is intended to be called a lot before the page
is initialized, and doing an animated resize would trash the WebProcess state.
I wish I had a better solution, this is not great.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _processDidExit]):
(-[WKWebView _didCommitLoadForMainFrame]):
(-[WKWebView _didCommitLayerTree:]):
This is the key to make this work properly. We want _resizeWhileHidingContentWithUpdates: to behave
exactly like an animated resize to avoid bugs. So we went to the whole update mechanism using
_resizeAnimationTransformAdjustments to accumulate the adjustments, now we need to restore a correct
view state.
Calling [WKWebView _endAnimatedResize] will do exactly that, but we need to make sure we do not hit
the synchronization path or we would be blocked there for a while, which is what we are trying to avoid.
After r171154, WebPageProxy keeps track of what stage of dynamic viewport update we are in. Since we are
executing the layer tree update stage, with the right transaction ID, WebPageProxy already knows we have
everything we need and does not use any synchronous messages.
(-[WKWebView _dynamicViewportUpdateChangedTargetToScale:position:nextValidLayerTreeTransactionID:]):
(-[WKWebView _restorePageStateToExposedRect:scale:]):
(-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
(-[WKWebView _scrollToContentOffset:]):
(-[WKWebView _frameOrBoundsChanged]):
(-[WKWebView _updateVisibleContentRects]):
(-[WKWebView _setMinimumLayoutSizeOverride:]):
(-[WKWebView _setMinimumLayoutSizeOverrideForMinimalUI:]):
(-[WKWebView _setInterfaceOrientationOverride:]):
(-[WKWebView _setMaximumUnobscuredSizeOverride:]):
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
(-[WKWebView _endAnimatedResize]):
(-[WKWebView _resizeWhileHidingContentWithUpdates:]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- 3:02 PM Changeset in webkit [171200] by
-
- 1 copy in branches/safari-537.78-branch
New Branch.
- 2:38 PM Changeset in webkit [171199] by
-
- 3 edits in trunk/Tools
Fix failing API tests.
- TestWebKitAPI/mac/PlatformWebViewMac.mm:
(-[ActiveOffscreenWindow isVisible]):
Override isVisible to make the NSWindows pretend they are visible.
- 2:33 PM Changeset in webkit [171198] by
-
- 3 edits in trunk/LayoutTests
fast/repaint/obscured-background-no-repaint.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=131477
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
Moved the expectation out of WK2, as this also happens with WK1 on some bots.
- 2:27 PM Changeset in webkit [171197] by
-
- 2 edits in trunk/Source/WebKit2
[Mac] Full screen video not always animating in the correct Space
https://bugs.webkit.org/show_bug.cgi?id=135020
<rdar://problem/17542310>
Reviewed by Dean Jackson.
The fullscreen window can "remember" the Space it was part of the first time you enter fullscreen
mode. Subsequent fullscreen transitions will always start from this Space, even if you move
the WebKit-hosted application to a different Space.
We can help the display system know when we've moved to a new Space by calling NSWindow's
'orderBack' method on the fullscreen window prior to starting the transition to fullscreen mode.
This method call hooks the window into the current Space so everything works properly.
- UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]): Add the
new fullscreen window to the current Space before starting transition to fullscreen.
- 2:27 PM Changeset in webkit [171196] by
-
- 3 edits in trunk/LayoutTests
Remove inspector-protocol/profiler tests from TestExpectations, now that they no
longer exist.
- platform/gtk/TestExpectations:
- platform/mac/TestExpectations:
- 2:16 PM Changeset in webkit [171195] by
-
- 27 edits1 add1 delete in trunk
Make console.profile record to the Timeline.
https://bugs.webkit.org/show_bug.cgi?id=134643
Reviewed by Joseph Pecoraro.
Source/WebCore:
Passes existing profiler tests in fast/profiler.
- bindings/js/ScriptState.cpp:
(WebCore::domWindowFromExecState):
(WebCore::frameFromExecState):
(WebCore::scriptExecutionContextFromExecState):
(WebCore::mainWorldExecState):
(WebCore::execStateFromNode):
- bindings/js/ScriptState.h:
- inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::profilerEnabled):
(WebCore::InspectorController::setProfilerEnabled):
- inspector/InspectorController.h:
- inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::startProfilingImpl):
(WebCore::InspectorInstrumentation::stopProfilingImpl):
- inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend):
(WebCore::InspectorTimelineAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::startProfiling):
(WebCore::stopProfiling):
(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::stopFromConsole):
(WebCore::InspectorTimelineAgent::didWriteHTML):
(WebCore::InspectorTimelineAgent::breakpointActionProbe):
(WebCore::toProtocol):
(WebCore::InspectorTimelineAgent::addRecordToTimeline):
(WebCore::InspectorTimelineAgent::didCompleteRecordEntry):
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::sendEvent):
(WebCore::InspectorTimelineAgent::createRecordEntry):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
- inspector/InspectorTimelineAgent.h:
(WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
- inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::reset):
- inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::persistentInspectorTimelineAgent):
(WebCore::InstrumentingAgents::setPersistentInspectorTimelineAgent):
- inspector/TimelineRecordFactory.cpp:
(WebCore::TimelineRecordFactory::createConsoleProfileData):
- inspector/TimelineRecordFactory.h:
- inspector/protocol/Timeline.json:
- page/PageConsole.cpp:
(WebCore::PageConsole::profileEnd):
Source/WebInspectorUI:
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager.prototype.startCapturing):
(WebInspector.TimelineManager.prototype.stopCapturing):
(WebInspector.TimelineManager.prototype.capturingStarted):
(WebInspector.TimelineManager.prototype.capturingStopped):
(WebInspector.TimelineManager.prototype.eventRecorded.processRecord):
(WebInspector.TimelineManager.prototype.eventRecorded):
- UserInterface/Images/TimelineRecordConsoleProfile.svg: Added.
- UserInterface/Models/ScriptTimelineRecord.js:
- UserInterface/Protocol/TimelineObserver.js:
(WebInspector.TimelineObserver.prototype.eventRecorded):
(WebInspector.TimelineObserver.prototype.recordingStarted):
(WebInspector.TimelineObserver.prototype.recordingStopped):
- UserInterface/Views/TimelineIcons.css:
(.console-profile-record .icon):
- UserInterface/Views/TimelineRecordTreeElement.js:
(WebInspector.TimelineRecordTreeElement):
Source/WebKit/mac:
- WebInspector/WebInspector.mm:
(-isProfilingJavaScript):
(-toggleProfilingJavaScript:):
(-startProfilingJavaScript:):
(-stopProfilingJavaScript:):
(-isJavaScriptProfilingEnabled):
(-setJavaScriptProfilingEnabled:):
Source/WebKit2:
- WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::setJavaScriptProfilingEnabled):
(WebKit::WebInspector::startJavaScriptProfiling):
(WebKit::WebInspector::stopJavaScriptProfiling):
LayoutTests:
- fast/profiler/profile-with-no-title-expected.txt:
- inspector-protocol/profiler/console-profile-expected.txt: Removed.
- inspector-protocol/profiler/console-profile.html: Removed.
- inspector-protocol/profiler/console-profileEnd-parameterless-expected.txt: Removed.
- inspector-protocol/profiler/console-profileEnd-parameterless.html: Removed.
Removed because console.profile does not go through the profiler protocol now.
- 2:04 PM Changeset in webkit [171194] by
-
- 2 edits in trunk/Source/WebKit2
Crash in ServicesOverlayController::~ServicesOverlayController.
<rdar://problem/17622172> and https://bugs.webkit.org/show_bug.cgi?id=135022
Reviewed by Tim Horton.
- WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::~ServicesOverlayController): Don’t need to uninstall the
PageOverlay as it has already been destroyed by this point in WebPage::~WebPage.
- 12:31 PM Changeset in webkit [171193] by
-
- 2 edits in trunk/Tools
Disable button animations in regression tests
https://bugs.webkit.org/show_bug.cgi?id=133647
<rdar://problem/16677530>
Reviewed by Dean Jackson.
- DumpRenderTree/mac/DumpRenderTree.mm: (setDefaultsToConsistentValuesForTesting):
We already did this for WebKit2, let's do it for WebKit1 too.
- 12:20 PM Changeset in webkit [171192] by
-
- 1 edit2 adds in trunk/LayoutTests
Add test for r169820.
Reviewed by Dean Jackson.
- platform/mac-wk2/plugins/snapshotting/autoplay-dominant-blank-plugin-moved-into-view-expected.txt: Added.
- plugins/snapshotting/autoplay-dominant-blank-plugin-moved-into-view.html: Added.
- 12:19 PM Changeset in webkit [171191] by
-
- 9 edits in trunk/Source/WebKit2
Sometimes purgeable (or empty!) tiles are shown on screen when resuming the app
https://bugs.webkit.org/show_bug.cgi?id=135018
<rdar://problem/17615038>
Reviewed by Simon Fraser.
- UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::hideContentUntilNextUpdate):
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::hideContentUntilNextUpdate):
- UIProcess/mac/RemoteLayerTreeHost.h:
- UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::detachRootLayer):
Add a mechanism to "hide" drawing area content until the next commit,
by detaching the root layer. RemoteLayerTreeHost will automatically reattach
it at the next commit.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::viewStateDidChange):
- UIProcess/WebPageProxy.h:
Add a parameter to viewStateDidChange specifying whether dispatching the change
to the Web process is deferrable or not. We will also automatically use "Immediate" if
the view is coming in-window, like we did before.
- UIProcess/ios/WKContentView.mm:
(-[WKContentView _applicationWillEnterForeground:]):
Make use of the aforementioned new mechanisms to ensure that we immediately dispatch
view state changes when coming into the foreground, and will have removed the root layer
if a commit didn't come in while waitForDidUpdateViewState blocks.
- 11:17 AM Changeset in webkit [171190] by
-
- 3 edits2 adds in trunk/Source/JavaScriptCore
DFG Flush(SetLocal) store elimination is overzealous for captured variables in the presence of nodes that have no effects but may throw
https://bugs.webkit.org/show_bug.cgi?id=134988
<rdar://problem/17706349>
Reviewed by Oliver Hunt.
Luckily, we also don't need this optimization to be super powerful: the only place
where it really matters is for getting rid of the redundancy between op_enter and
op_init_lazy_reg, and in that case, there is a small set of possible nodes between the
two things. This change updates the store eliminator to know about only that small,
obviously safe, set of nodes over which we can store-eliminate.
This shouldn't have any performance impact in the DFG because this optimization kicks
in relatively rarely already. And once we tier up into the FTL, we get a much better
store elimination over LLVM IR, so this really shouldn't matter at all.
The tricky part of this patch is that there is a close relative of this optimization,
for uncaptured variables that got flushed. This happens for arguments to inlined calls.
I make this work by splitting it into two different store eliminators.
Note that in the process of crafting the tests, I realized that we were incorrectly
DCEing NewArrayWithSize. That's not cool, since that can throw an exception for
negative array sizes. If we ever did want to DCE this node, we'd need to lower the node
to a check node followed by the actual allocation.
- dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::uncapturedSetLocalStoreElimination):
(JSC::DFG::CSEPhase::capturedSetLocalStoreElimination):
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::CSEPhase::SetLocalStoreEliminationResult::SetLocalStoreEliminationResult): Deleted.
- dfg/DFGNodeType.h:
- tests/stress/capture-escape-and-throw.js: Added.
(foo.f):
(foo):
- tests/stress/new-array-with-size-throw-exception-and-tear-off-arguments.js: Added.
(foo):
(bar):
- 10:43 AM Changeset in webkit [171189] by
-
- 1 edit2 deletes in branches/ftlopt/LayoutTests
sputnik/Implementation_Diagnostics/S12.6.4_D1.html depends on undefined behavior
https://bugs.webkit.org/show_bug.cgi?id=135007
Reviewed by Filip Pizlo.
EcmaScript 5.1 specifies that during for-in enumeration newly added properties may or may not be
visited during the current enumeration. Specifically, in section 12.6.4 the spec states:
"If new properties are added to the object being enumerated during enumeration, the newly added properties
are not guaranteed to be visited in the active enumeration."
The sputnik/Implementation_Diagnostics/S12.6.4_D1.html layout test is from before sputnik was added
to the test262 suite. I believe it has since been removed, so it would probably be okay to remove it
from our layout test suite.
- sputnik/Implementation_Diagnostics/S12.6.4_D1-expected.txt: Removed.
- sputnik/Implementation_Diagnostics/S12.6.4_D1.html: Removed.
- 10:35 AM Changeset in webkit [171188] by
-
- 6 edits1 add in trunk/Source/WebCore
Don't send geolocation permission requests when the page is not visible
<rdar://problem/17208715>
https://bugs.webkit.org/show_bug.cgi?id=134989
Reviewed by Darin Adler.
Instead of eagerly requesting geolocation permission for pages that aren't visible,
store a set of pending requests, and send them only once the page has become visible.
- Modules/geolocation/GeolocationController.cpp:
(WebCore::GeolocationController::GeolocationController):
(WebCore::GeolocationController::~GeolocationController):
(WebCore::GeolocationController::requestPermission):
(WebCore::GeolocationController::cancelPermissionRequest):
(WebCore::GeolocationController::viewStateDidChange):
(WebCore::provideGeolocationTo):
- Modules/geolocation/GeolocationController.h:
Store pending requests to be fired once the page is visible.
- WebCore.xcodeproj/project.pbxproj:
Add ViewStateChangeObserver.h
- page/Page.cpp:
(WebCore::Page::addViewStateChangeObserver):
(WebCore::Page::removeViewStateChangeObserver):
(WebCore::Page::setViewState):
- page/Page.h:
Add a set of registered view state observers, and notify them when the
view state changes.
- page/ViewStateChangeObserver.h: Added.
(WebCore::ViewStateChangeObserver::~ViewStateChangeObserver):
Add an observer that can register with the page for view state changes.
- 10:33 AM Changeset in webkit [171187] by
-
- 2 edits in trunk/LayoutTests
plugins/quicktime-plugin-replacement.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=135015
- platform/mac/TestExpectations: Marked as such.
- 10:26 AM Changeset in webkit [171186] by
-
- 6 edits in trunk/LayoutTests
Some inspector-protocol test expectations gardening.
Moved cross-platform expectations for inspector-protocol/debugger/setBreakpoint-dfg*
tests to a cross-platform file, and added a Mac expectation for
inspector-protocol/profiler/console-profile.html.
- TestExpectations:
- platform/efl/TestExpectations:
- platform/gtk/TestExpectations:
- platform/mac/TestExpectations:
- platform/win/TestExpectations:
- 10:07 AM Changeset in webkit [171185] by
-
- 2 edits in trunk/LayoutTests
Flaky Test: media/video-ended-event-negative-playback.html
https://bugs.webkit.org/show_bug.cgi?id=134490
- platform/mac/TestExpectations: Marking as such.
- 9:27 AM Changeset in webkit [171184] by
-
- 7 edits in trunk
Enable legacy fullscreen API in media controls
https://bugs.webkit.org/show_bug.cgi?id=134985
Reviewed by Eric Carlson.
Source/WebCore:
Allow clients who have not enabled HTML5 Fullscreen APIs to still use fullscreen mode
with <video> elements by using the legacy, video-element-specific fullscreen APIs in
the <video> media controls.
- Modules/mediacontrols/mediaControlsApple.js:
(Controller):
(Controller.prototype.handleReadyStateChange):
(Controller.prototype.isFullScreen):
(Controller.prototype.handlePlayButtonClicked):
(Controller.prototype.updateFullscreenButton):
(Controller.prototype.handleFullscreenButtonClicked):
LayoutTests:
Rebaseline expected results.
- platform/mac/fast/hidpi/video-controls-in-hidpi-expected.txt:
- platform/mac/fast/layers/video-layer-expected.txt:
- platform/mac/media/media-controls-clone-expected.txt:
- platform/mac/webarchive/loading/video-in-webarchive-expected.txt:
- 8:58 AM Changeset in webkit [171183] by
-
- 4 edits in trunk/LayoutTests
[CSS Grid Layout] Add element.style coverage for grid-auto-flow
https://bugs.webkit.org/show_bug.cgi?id=134966
Reviewed by Sergio Villar Senin.
As follow-up patch after r170996 we're adding new test cases for
grid-auto-flow to check the correct behavior of element.style.
- fast/css-grid-layout/grid-auto-flow-get-set-expected.txt: Updated
expectations accordingly.
- fast/css-grid-layout/grid-auto-flow-get-set.html: Updated test to add
checks for element.style.
- fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:
(checkGridAutoFlowSetCSSValue): Add new helper method to check
grid-auto-flow property.
(checkGridAutoFlowSetJSValue): Ditto.
- 3:55 AM Changeset in webkit [171182] by
-
- 7 edits in trunk/Source/WebKit2
[EFL][WK2] Add a "focus,notfound" signal.
https://bugs.webkit.org/show_bug.cgi?id=134674
Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2014-07-17
Reviewed by Gyuyoung Kim.
Add a "focus,notfound" signal to handover focus control to application
because there are no elements of webview to focus on the given direction.
Application can decide to move the focus to next widget of ewk_view or something else
by using this signal.
- UIProcess/API/efl/EwkViewCallbacks.h:
- UIProcess/API/efl/ewk_view.h:
- UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp: Added keyDown and keyUp function.
(EWK2UnitTest::EWK2UnitTestBase::waitUntilDirectionChanged):
(EWK2UnitTest::EWK2UnitTestBase::keyDown):
(EWK2UnitTest::EWK2UnitTestBase::keyUp):
- UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
- UIProcess/API/efl/tests/test_ewk2_view.cpp:
(EWK2ViewTest::FocusNotFoundCallback):
(TEST_F):
- UIProcess/efl/PageUIClientEfl.cpp: Removed unnecessary calls to evas_object_focus_set().
(WebKit::PageUIClientEfl::takeFocus):
- 2:29 AM Changeset in webkit [171181] by
-
- 8 edits in trunk/Source/WebCore
[GObject] StrictTypeChecking extended attribute fails for methods with sequence<T>.
https://bugs.webkit.org/show_bug.cgi?id=121698
Patch by Vineet Chaudhary <code.vineet@gmail.com> on 2014-07-17
Reviewed by Antonio Gomes.
GodeGenerator was including wrong heeaders as WebKitDOMlong[] for methods with
array parameters and StrictTypeChecking extended attribute.
No new tests. TestObj.idl covers the tests.
- bindings/scripts/CodeGenerator.pm:
(GetArrayOrSequenceType):
- bindings/scripts/CodeGeneratorGObject.pm:
(GenerateFunction):
- bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_strict_function_with_array):
- bindings/scripts/test/GObject/WebKitDOMTestObj.h:
- bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
(webkit_dom_test_typedefs_func):
(webkit_dom_test_typedefs_nullable_array_arg):
- bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
- bindings/scripts/test/TestObj.idl:
- 1:13 AM Changeset in webkit [171180] by
-
- 5 edits in branches/safari-600.1-branch/Source
Versioning.
- 1:11 AM Changeset in webkit [171179] by
-
- 1 copy in tags/Safari-600.1.1
New Tag.
- 1:10 AM Changeset in webkit [171178] by
-
- 10 edits in branches/safari-600.1-branch/Source
Merge patch from <rdar://problem/17675068>.
- 12:58 AM Changeset in webkit [171177] by
-
- 3 edits in trunk/Source/WebCore
CSS JIT: Clean up return path
https://bugs.webkit.org/show_bug.cgi?id=135011
Reviewed by Benjamin Poulain.
Clean up the existing CSS JIT return path before adding new early return path
for pseudo elements.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
- cssjit/StackAllocator.h:
(WebCore::StackAllocator::StackReference::StackReference):
(WebCore::StackAllocator::StackReference::isValid):
(WebCore::StackAllocator::popAndDiscard): Deleted.
- 12:55 AM Changeset in webkit [171176] by
-
- 5 edits in trunk/Source
Fix Versioning after r171175.
- 12:41 AM Changeset in webkit [171175] by
-
- 5 edits in trunk/Source
Versioning.
- 12:39 AM Changeset in webkit [171174] by
-
- 1 copy in branches/safari-600.1-branch
New Branch.
- 12:14 AM Changeset in webkit [171173] by
-
- 5 edits in trunk/Source
Fix Versioning after r171118.