WebKit-https.git
5 years agoCopy and paste action menu items don't work on the Mozilla Midas demo in WebKit1
timothy_horton@apple.com [Thu, 11 Dec 2014 06:32:58 +0000 (06:32 +0000)]
Copy and paste action menu items don't work on the Mozilla Midas demo in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=139529
<rdar://problem/19213620>

Reviewed by Beth Dakin.

* WebView/WebActionMenuController.mm:
(-[WebActionMenuController _copySelection:]):
(-[WebActionMenuController _paste:]):
Use the copy: and paste: methods on WebView so that we traverse subviews
when trying to respond, otherwise these actions don't work in subframes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177132 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWK1: Add initial support for immediate actions
bdakin@apple.com [Thu, 11 Dec 2014 06:24:01 +0000 (06:24 +0000)]
WK1: Add initial support for immediate actions
https://bugs.webkit.org/show_bug.cgi?id=139522

Reviewed by Dan Bernstein.

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac:

This basic implementation of the controller will use the delegate methods to
perform and cache a HitTest when relevant. Future patches will patch
_updateImmediateActionItem to use the HitTestResult to determine if there is any
immediate action that should be taken.
* WebView/WebImmediateActionController.h: Added.
* WebView/WebImmediateActionController.mm: Added.
(-[WebImmediateActionController webViewClosed]):
(-[WebImmediateActionController _clearImmediateActionState]):
(-[WebImmediateActionController performHitTestAtPoint:]):
(-[WebImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WebImmediateActionController immediateActionRecognizerWillBeginAnimation:]):
(-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
(-[WebImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):
(-[WebImmediateActionController _updateImmediateActionItem]):

New enum for immediate action types.
* WebView/WebUIDelegatePrivate.h:

Create an NSImmediateActionGestureRecognizer if possible and a controller.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _close]):
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(-[WebViewPrivate dealloc]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177131 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUse std::unique_ptr instead of OwnPtr in JSC - heap, jit, runtime, and parser directories
gyuyoung.kim@samsung.com [Thu, 11 Dec 2014 05:31:04 +0000 (05:31 +0000)]
Use std::unique_ptr instead of OwnPtr in JSC - heap, jit, runtime, and parser directories
https://bugs.webkit.org/show_bug.cgi?id=139351

Reviewed by Filip Pizlo.

As a step to use std::unique_ptr<>, this cleans up OwnPtr and PassOwnPtr.

* bytecode/SamplingTool.h:
(JSC::SamplingTool::SamplingTool):
* heap/CopiedBlock.h:
(JSC::CopiedBlock::didSurviveGC):
(JSC::CopiedBlock::pin):
* heap/CopiedBlockInlines.h:
(JSC::CopiedBlock::reportLiveBytes):
* heap/GCActivityCallback.h:
* heap/GCThread.cpp:
* heap/Heap.h:
* heap/HeapInlines.h:
(JSC::Heap::markListSet):
* jit/ExecutableAllocator.cpp:
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* jit/JIT.h:
* jit/JITThunks.cpp:
(JSC::JITThunks::JITThunks):
(JSC::JITThunks::clearHostFunctionStubs):
* jit/JITThunks.h:
* parser/Parser.cpp:
(JSC::Parser<LexerType>::Parser):
* parser/Parser.h:
(JSC::Scope::Scope):
(JSC::Scope::pushLabel):
* parser/ParserArena.cpp:
* parser/ParserArena.h:
(JSC::ParserArena::identifierArena):
* parser/SourceProviderCache.h:
* runtime/CodeCache.h:
* runtime/Executable.h:
* runtime/JSArray.cpp:
(JSC::JSArray::sortVector):
* runtime/JSGlobalObject.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177130 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] REGRESSION (r174642): Watchdog timer expiration reported as DumpRenderTree.app
dbates@webkit.org [Thu, 11 Dec 2014 03:54:28 +0000 (03:54 +0000)]
[iOS] REGRESSION (r174642): Watchdog timer expiration reported as DumpRenderTree.app
timeout instead of test failure
https://bugs.webkit.org/show_bug.cgi?id=139525

Reviewed by Zalan Bujtas.

Increase the default process timeout limit in run-webkit-tests to 80ms to prevent
run-webkit-tests from prematurely terminating DumpRenderTree.app before it dumps
output.

Following <http://trac.webkit.org/changeset/174642>, DumpRenderTree.app waits
for the WebThread to spin its run loop before dumping its output. A test that
calls testRunner.waitUntilDone() and does not subsequently call testRunner.notifyDone()
before DumpRenderTree.app's watchdog timer expires may be incorrectly reported
by run-webkit-tests as a DumpRenderTree.app timeout instead of a test failure
because run-webkit-tests may terminate a DumpRenderTree.app process when it
exceeds its process time limit (defaults to 35ms) regardless of whether such
a DumpRenderTree.app process was waiting for the WebThread to run so as to dump output.

* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.default_timeout_ms):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177129 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoContinuously repainting large parts of Huffington Post.
zalan@apple.com [Thu, 11 Dec 2014 03:29:29 +0000 (03:29 +0000)]
Continuously repainting large parts of Huffington Post.
https://bugs.webkit.org/show_bug.cgi?id=139468

Reviewed by Antti Koivisto.

This patch eliminates redundant repaint requests for inlines when neither the parent
block flow nor any of the inline children are dirty.
Previously,
1. simple line layout always recalculated inline content positions regardless of whether
the content needed relayout at all; as a result, it always triggered full repaint.
2. inline tree layout ignored the needslayout flag on the last line and treated it dirty
(unless it broke cleanly (<div>foo<br></div>)).
This was an ancient workaround for an editing/insert use case, but it seems not to be the case anymore.

Source/WebCore:

Tests: fast/repaint/implicitly-positioned-block-repaint-complex-line-layout.html
       fast/repaint/implicitly-positioned-block-repaint-simple-line-layout.html

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutInlineChildren):
(WebCore::RenderBlockFlow::layoutSimpleLines): Check if we need to trigger layout at all.
* rendering/RenderBlockFlow.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::determineStartPosition): Remove the last line dirty hack. If it
happens to introduce regression, we should fix it at the caller site to make the line dirty.

LayoutTests:

* fast/repaint/implicitly-positioned-block-repaint-complex-line-layout-expected.txt: Added.
* fast/repaint/implicitly-positioned-block-repaint-complex-line-layout.html: Added.
* fast/repaint/implicitly-positioned-block-repaint-simple-line-layout-expected.txt: Added.
* fast/repaint/implicitly-positioned-block-repaint-simple-line-layout.html: Added.
* platform/mac/fast/line-grid/line-align-right-edges-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177128 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUpdate Apple bot list.
lforschler@apple.com [Thu, 11 Dec 2014 03:04:58 +0000 (03:04 +0000)]
Update Apple bot list.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177127 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd an empty storage namespace provider
andersca@apple.com [Thu, 11 Dec 2014 02:35:06 +0000 (02:35 +0000)]
Add an empty storage namespace provider
https://bugs.webkit.org/show_bug.cgi?id=139520

Reviewed by Tim Horton.

* loader/EmptyClients.cpp:
(WebCore::fillWithEmptyClients):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177126 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[CMake] Fix build after WebStorageNamespaceProvider
ljaehun.lim@samsung.com [Thu, 11 Dec 2014 02:33:57 +0000 (02:33 +0000)]
[CMake] Fix build after WebStorageNamespaceProvider

Unreviewed, fix build.

* CMakeLists.txt: Add WebStorageNamespaceProvider.cpp to the source list.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177125 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSpeculative build fix.
bdakin@apple.com [Thu, 11 Dec 2014 02:30:46 +0000 (02:30 +0000)]
Speculative build fix.

* platform/spi/mac/NSImmediateActionGestureRecognizerSPI.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177124 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoBuild fix for EFL and GTK ports since r177104
gyuyoung.kim@samsung.com [Thu, 11 Dec 2014 02:11:08 +0000 (02:11 +0000)]
Build fix for EFL and GTK ports since r177104
https://bugs.webkit.org/show_bug.cgi?id=139513

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2014-12-10
Reviewed by Tim Horton.

Moved WebPageProxy::installViewStateChangeCompletionHandler in PLATFORM(MAC) macro.

* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177123 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRemove expectations that were incorrectly landed in http://trac.webkit.org/changeset...
ap@apple.com [Thu, 11 Dec 2014 01:59:00 +0000 (01:59 +0000)]
Remove expectations that were incorrectly landed in trac.webkit.org/changeset/176778

* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177122 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix a typo in the rpevious commit.
ap@apple.com [Thu, 11 Dec 2014 01:54:46 +0000 (01:54 +0000)]
Fix a typo in the rpevious commit.

* platform/mac-wk1/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177121 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix lint warnings on Mac TestExpectations.
ap@apple.com [Thu, 11 Dec 2014 01:51:38 +0000 (01:51 +0000)]
Fix lint warnings on Mac TestExpectations.

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

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177120 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUse the new storage namespace provider in WebKit1
andersca@apple.com [Thu, 11 Dec 2014 01:31:52 +0000 (01:31 +0000)]
Use the new storage namespace provider in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=139425

Reviewed by Tim Horton.

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
Set the storage namespace provider from the web page group.

Source/WebKit/win:

* WebView.cpp:
(localStorageDatabasePath):
Helper from getting the local storage database path given a WebPreferences instance.

(WebView::initWithFrame):
Create a storage namespace provider.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177119 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSwitch WebKit2 over to using the storage namespace provider
andersca@apple.com [Thu, 11 Dec 2014 01:18:14 +0000 (01:18 +0000)]
Switch WebKit2 over to using the storage namespace provider
https://bugs.webkit.org/show_bug.cgi?id=139509

Reviewed by Tim Horton.

* WebProcess/Storage/StorageNamespaceImpl.cpp:
(WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
(WebKit::StorageNamespaceImpl::~StorageNamespaceImpl):
(WebKit::localStorageNamespaceMap): Deleted.
Get rid of the storage namespace map - we have a map inside WebStorageNamespaceProvider now.

* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::createStorageStrategy):
(WebKit::WebPlatformStrategies::populatePluginCache): Deleted.
(WebKit::WebPlatformStrategies::localStorageNamespace): Deleted.
(WebKit::WebPlatformStrategies::transientLocalStorageNamespace): Deleted.
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:
Get rid of the storage strategy.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
Set a storage namespace provider.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177118 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago Follow-up build fix.
bdakin@apple.com [Thu, 11 Dec 2014 01:10:48 +0000 (01:10 +0000)]
 Follow-up build fix.

* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:context:configuration:webView:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177116 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoNull dereference performing a "TapAndAHalf" gesture in Google search field
jhoneycutt@apple.com [Thu, 11 Dec 2014 01:10:02 +0000 (01:10 +0000)]
Null dereference performing a "TapAndAHalf" gesture in Google search field

<https://bugs.webkit.org/show_bug.cgi?id=139506>
<rdar://problem/19028828>

Reviewed by Darin Adler.

.:

* ManualTests/ios/tap-and-a-half-gesture-in-empty-text-field.html: Added.

Source/WebKit2:

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::selectWithGesture):
Add a null check in the case that there is no word range for the
current position.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177115 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSpeculative build fix.
bdakin@apple.com [Thu, 11 Dec 2014 01:05:32 +0000 (01:05 +0000)]
Speculative build fix.

* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:context:configuration:webView:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177114 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWK2: Add initial support for immediate actions
bdakin@apple.com [Thu, 11 Dec 2014 00:14:21 +0000 (00:14 +0000)]
WK2: Add initial support for immediate actions
https://bugs.webkit.org/show_bug.cgi?id=139511

Reviewed by Tim Horton.

Source/WebCore:

SPI needed for immediate actions.
* WebCore.xcodeproj/project.pbxproj:
* platform/spi/mac/NSImmediateActionGestureRecognizerSPI.h: Added.

Source/WebKit2:

New enum to track immediate action types as we add them.
* Shared/API/c/WKImmediateActionTypes.h: Added.

Create an NSImmediateActionGestureRecognizer if possible and a controller.
* UIProcess/API/mac/WKView.mm:
(-[WKView dealloc]):
(-[WKView initWithFrame:context:configuration:webView:]):
(-[WKView _didPerformActionMenuHitTest:userData:]):

This basic implementation of the controller will use the delegate methods to
perform an ActionMenuHitTest when relevant. Future patches will patch
_updateImmediateActionItem to use the hit test result to determine if there is any
immediate action that should be taken.
* UIProcess/mac/WKImmediateActionController.h: Added.
* UIProcess/mac/WKImmediateActionController.mm: Added.
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController _clearImmediateActionState]):
(-[WKImmediateActionController didPerformActionMenuHitTest:userData:]):

Does much of the work done in Action Menu’s prepareForMenu.
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):

Does much of the work done in Action Menu’s menuNeedsUpdate.
(-[WKImmediateActionController immediateActionRecognizerWillBeginAnimation:]):

Does much of the work done in Action Menu’s didCloseMenu.
(-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]):

Does much of the work done in Action Menu’s willOpenMenu.
(-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):

To be filled in.
(-[WKImmediateActionController _updateImmediateActionItem]):
* WebKit2.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177113 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoMark more tests that fail on EWS bots with ATI graphics.
ap@apple.com [Wed, 10 Dec 2014 23:55:37 +0000 (23:55 +0000)]
Mark more tests that fail on EWS bots with ATI graphics.

* platform/mac/TestExpectations:

* platform/mac/fast/canvas/canvas-draw-canvas-on-canvas-shadow-expected.txt: Removed.
* platform/mac/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Removed.
These were expecting failure, but the tests pass on regular bots.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoShould have copy and paste items in all text menus
timothy_horton@apple.com [Wed, 10 Dec 2014 23:48:41 +0000 (23:48 +0000)]
Should have copy and paste items in all text menus
https://bugs.webkit.org/show_bug.cgi?id=139510
<rdar://problem/19198388>

Reviewed by Beth Dakin.

* UIProcess/mac/WKActionMenuController.mm:
(-[WKActionMenuController _defaultMenuItemsForText]):
Add a disabled paste menu item into the read-only text menu.

(-[WKActionMenuController _defaultMenuItemsForWhitespaceInEditableArea]):
Add a disabled copy menu item into the editable whitespace text menu.

* WebView/WebActionMenuController.mm:
(-[WebActionMenuController _defaultMenuItemsForText]):
Add a disabled paste menu item into the read-only text menu.

(-[WebActionMenuController _defaultMenuItemsForWhitespaceInEditableArea]):
Add a disabled copy menu item into the editable whitespace text menu.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177111 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] Add setting to ignore viewport scaling constraints
mhock@apple.com [Wed, 10 Dec 2014 23:42:51 +0000 (23:42 +0000)]
[iOS] Add setting to ignore viewport scaling constraints
https://bugs.webkit.org/show_bug.cgi?id=139466
<rdar://problem/19200328>

Reviewed by Benjamin Poulain.

Source/WebCore:

* WebCore.exp.in:
* page/Settings.in: Add setting to ignore viewport scaling constraints.
* page/ViewportConfiguration.cpp: Ignore viewport scaling constraints based on preference.
(WebCore::ViewportConfiguration::initialScale):
(WebCore::ViewportConfiguration::minimumScale):
(WebCore::ViewportConfiguration::allowsUserScaling):
* page/ViewportConfiguration.h:
(WebCore::ViewportConfiguration::setIgnoreScalingConstraints):
(WebCore::ViewportConfiguration::allowsUserScaling): Moved to cpp.

Source/WebKit2:

* Shared/WebPreferencesDefinitions.h: Add ignoreViewportScalingConstraints preference.
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetIgnoreViewportScalingConstraints):
(WKPreferencesGetIgnoreViewportScalingConstraints):
* UIProcess/API/C/WKPreferencesRef.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177110 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWeb Inspector: Hide Compositing Borders Button if backend returns an error that it...
joepeck@webkit.org [Wed, 10 Dec 2014 23:31:09 +0000 (23:31 +0000)]
Web Inspector: Hide Compositing Borders Button if backend returns an error that it is unsupported
https://bugs.webkit.org/show_bug.cgi?id=139307

Reviewed by Darin Adler.

* UserInterface/Views/DOMTreeContentView.js:
(WebInspector.DOMTreeContentView.prototype._updateCompositingBordersButtonToMatchPageSettings):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177108 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSpeculative fix for assertion "frame().view() == this"
akling@apple.com [Wed, 10 Dec 2014 23:19:41 +0000 (23:19 +0000)]
Speculative fix for assertion "frame().view() == this"
<rdar://problem/18419449>

Rubber-stamped by Anders Carlsson.

I have not reproduced this issue, but we can safely ignore animation
notifications for cached pages.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::newImageAnimationFrameAvailable):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177107 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix the build.
timothy_horton@apple.com [Wed, 10 Dec 2014 23:16:22 +0000 (23:16 +0000)]
Fix the build.

* UIProcess/API/mac/WKView.mm:
(-[WKView _targetWindowForMovePreparation]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177106 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRename layoutTestController to testRunner in TestExpectations.
ap@apple.com [Wed, 10 Dec 2014 23:07:50 +0000 (23:07 +0000)]
Rename layoutTestController to testRunner in TestExpectations.

* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/win-xp/TestExpectations:
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:
* platform/wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177105 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoProvide SPI to asynchronously move a WKView into a window and know when it has painted
timothy_horton@apple.com [Wed, 10 Dec 2014 23:00:13 +0000 (23:00 +0000)]
Provide SPI to asynchronously move a WKView into a window and know when it has painted
https://bugs.webkit.org/show_bug.cgi?id=139460
<rdar://problem/19135389>

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKViewPrivate.h:
Add _prepareForMoveToWindow:withCompletionHandler:, which internally
goes through the motions of being parented in that window and calls
the completion handler once painting is done and the view is ready
to be displayed (upon which we expect the view to actually move into the window).

* UIProcess/API/mac/WKView.mm:
(-[WKView viewWillMoveToWindow:]):
If we currently have a _targetWindowForMovePreparation (and are
pretending to be in that window), avoid performing viewWillMoveToWindow:
for a different window.

(-[WKView viewDidMoveToWindow]):
(-[WKView doWindowDidChangeScreen]):
(-[WKView _intrinsicDeviceScaleFactor]):
(-[WKView _colorSpace]):
(-[WKView _targetWindowForMovePreparation]):
If we have a _targetWindowForMovePreparation, use its properties instead
of self.window's.

(-[WKView _prepareForMoveToWindow:withCompletionHandler:]):
Simulate a move into the target window, but defer sending the view state update.
Then, send the view state update after registering the completion handler.

* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
Rename m_viewStateChangeWantsReply to m_viewStateChangeWantsSynchronousReply.

(WebKit::WebPageProxy::installViewStateChangeCompletionHandler):
Added. Allow installing a block that will be called the next time
we get a didUpdateViewState back from the WebProcess after pushing the
current view state changes.

(WebKit::WebPageProxy::viewStateDidChange):
Adapt to the aforementioned rename.

(WebKit::WebPageProxy::dispatchViewStateChange):
Adapt to the aforementioned rename.
Send the view state change callback IDs along with SetViewState.

(WebKit::WebPageProxy::updateViewState):
Adapt to the aforementioned rename.

* UIProcess/WebPageProxy.h:
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::activeWindow):
(WebKit::PageClientImpl::isViewWindowActive):
(WebKit::PageClientImpl::isViewVisible):
(WebKit::PageClientImpl::isViewVisibleOrOccluded):
(WebKit::PageClientImpl::isViewInWindow):
(WebKit::PageClientImpl::viewLayerHostingMode):
If we have a _targetWindowForMovePreparation, use its properties instead
of the WKView's window's.

* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::viewStateDidChange):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::reinitializeWebPage):
(WebKit::WebPage::setViewState):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::viewStateDidChange):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::viewStateDidChange):
Push the callback IDs to the WebProcess, and accumulate them in TiledCoreAnimationDrawingArea.

(WebKit::TiledCoreAnimationDrawingArea::didUpdateViewStateTimerFired):
Call all of the callbacks after one runloop cycle, just like DidUpdateViewState.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177104 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agomedia/video-controls-no-scripting.html is flaky
ap@apple.com [Wed, 10 Dec 2014 22:50:28 +0000 (22:50 +0000)]
media/video-controls-no-scripting.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=137368

* platform/mac/TestExpectations: Update expectations to expect flakiness on all
OS X versions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177103 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd session storage handling to StorageNamespaceProvider
andersca@apple.com [Wed, 10 Dec 2014 22:48:07 +0000 (22:48 +0000)]
Add session storage handling to StorageNamespaceProvider
https://bugs.webkit.org/show_bug.cgi?id=139507

Reviewed by Tim Horton.

Source/WebCore:

* page/Page.cpp:
(WebCore::Page::sessionStorage):
* storage/StorageNamespaceProvider.h:

Source/WebKit:

* Storage/WebStorageNamespaceProvider.cpp:
(WebStorageNamespaceProvider::createSessionStorageNamespace):
* Storage/WebStorageNamespaceProvider.h:

Source/WebKit2:

* WebProcess/Storage/StorageNamespaceImpl.cpp:
(WebKit::StorageNamespaceImpl::createSessionStorageNamespace):
* WebProcess/Storage/StorageNamespaceImpl.h:
* WebProcess/Storage/WebStorageNamespaceProvider.cpp:
(WebKit::WebStorageNamespaceProvider::createSessionStorageNamespace):
* WebProcess/Storage/WebStorageNamespaceProvider.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177102 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnreviewed. Follow-up patch to r177099.
roger_fong@apple.com [Wed, 10 Dec 2014 22:33:15 +0000 (22:33 +0000)]
Unreviewed. Follow-up patch to r177099.
https://bugs.webkit.org/show_bug.cgi?id=133634
<rdar://problem/15949588>
Enable GL_EXT_draw_buffers on iOS as well.
* platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::supportsExtension):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177101 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoImplement the rest of the transient local storage namespace code
andersca@apple.com [Wed, 10 Dec 2014 22:31:52 +0000 (22:31 +0000)]
Implement the rest of the transient local storage namespace code
https://bugs.webkit.org/show_bug.cgi?id=139505

Reviewed by Tim Horton.

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::TransientLocalStorageNamespace::create):
(WebKit::StorageManager::TransientLocalStorageNamespace::~TransientLocalStorageNamespace):
(WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea):
(WebKit::StorageManager::TransientLocalStorageNamespace::clearStorageAreasMatchingOrigin):
(WebKit::StorageManager::TransientLocalStorageNamespace::clearAllStorageAreas):
(WebKit::StorageManager::TransientLocalStorageNamespace::TransientLocalStorageNamespace):
Introduce a new TransientLocalStorageNamespace that's just a glorified SecurityOrigin -> StorageArea HashMap.

(WebKit::StorageManager::StorageArea::create):
Change the return type to RefPtr.

(WebKit::StorageManager::deleteEntriesForOrigin):
(WebKit::StorageManager::deleteAllEntries):
(WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince):
Use lambdas instead of bind. Delete the transient local storage as well.

(WebKit::StorageManager::createTransientLocalStorageMap):
Get a transient local storage namespace and ask it for a storage area.

(WebKit::StorageManager::getOrCreateTransientLocalStorageNamespace):
Look up the namespace from the map and create one if it doesn't exist.

(WebKit::StorageManager::deleteEntriesForOriginInternal): Deleted.
(WebKit::StorageManager::deleteAllEntriesInternal): Deleted.

* UIProcess/Storage/StorageManager.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177100 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoImplement Multiple Render Targets as WebGL 1 extension.
roger_fong@apple.com [Wed, 10 Dec 2014 22:12:35 +0000 (22:12 +0000)]
Implement Multiple Render Targets as WebGL 1 extension.
https://bugs.webkit.org/show_bug.cgi?id=133634.
<rdar://problem/15949588>
Reviewed by Brent Fulgham.
Tested by:
webgl/1.0.3/conformance/extensions/webgl-draw-buffers.html
Enable the implementation now that an underlying driver bug has been resolved.
Do not enable for desktop platforms older that OS X 10.10.
* html/canvas/WebGLDrawBuffers.cpp:
(WebCore::WebGLDrawBuffers::supported):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177099 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION(r164329): Input fields are not honoring the maxlength attribute
rniwa@webkit.org [Wed, 10 Dec 2014 22:10:23 +0000 (22:10 +0000)]
REGRESSION(r164329): Input fields are not honoring the maxlength attribute
https://bugs.webkit.org/show_bug.cgi?id=139447

Reviewed by Benjamin Poulain.

Source/WebCore:

The bug was caused by String::substring being called with the selection's end offset
in the second argument instead of the selection's length in handleBeforeTextInsertedEvent.

Fixed the bug by passing the right second argument to String::substring.

Test: fast/forms/input-maxlength-inserting-in-middle.html

* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):

LayoutTests:

Added regression tests.

* fast/forms/input-maxlength-inserting-in-middle-expected.txt: Added.
* fast/forms/input-maxlength-inserting-in-middle.html: Added.
* fast/forms/input-maxlength-paste-clusters-in-middle-expected.txt: Added.
* fast/forms/input-maxlength-paste-clusters-in-middle.html: Added.
* fast/forms/input-maxlength-paste-in-middle-expected.txt: Added.
* fast/forms/input-maxlength-paste-in-middle.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177098 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd a missing null check.
andersca@apple.com [Wed, 10 Dec 2014 21:20:23 +0000 (21:20 +0000)]
Add a missing null check.

* page/Page.cpp:
(WebCore::Page::~Page):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177092 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoPlease disable the webkitFirstVersionWithInitConstructorSupport check on Apple TV
ggaren@apple.com [Wed, 10 Dec 2014 21:10:48 +0000 (21:10 +0000)]
Please disable the webkitFirstVersionWithInitConstructorSupport check on Apple TV
https://bugs.webkit.org/show_bug.cgi?id=139501

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

NSVersionOfLinkTimeLibrary only works if you link directly against
JavaScriptCore, which is a bit awkward for our Apple TV client to do.

It's easy enough just to disable this check on Apple TV, since it has no
backwards compatibility requirement.

* API/JSWrapperMap.mm:
(supportsInitMethodConstructors):

Source/WTF:

Added a platform definition for APPLETV.

(It's not an OS because it's not mutually exclusive with other OS definitions.)

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoBegin fixing transient local storage handling
andersca@apple.com [Wed, 10 Dec 2014 21:00:09 +0000 (21:00 +0000)]
Begin fixing transient local storage handling
https://bugs.webkit.org/show_bug.cgi?id=139503

Reviewed by Sam Weinig.

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::createTransientLocalStorageMap):
* UIProcess/Storage/StorageManager.h:
Add empty stub implementation of createTransientLocalStorageMap.

* UIProcess/Storage/StorageManager.messages.in:
Add CreateTransientLocalStorageMap message.

* WebProcess/Storage/StorageAreaMap.cpp:
(WebKit::StorageAreaMap::StorageAreaMap):
If we have a local storage namespace with a non-null top-level origin, create a
transient local storage map.

* WebProcess/Storage/StorageNamespaceImpl.cpp:
(WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
Pass a null top-level origin to the StorageNamespaceImpl constructor.

(WebKit::StorageNamespaceImpl::createTransientLocalStorageNamespace):
Create a new StorageNamespaceImpl, passing the top-level origin to the constructor.

(WebKit::StorageNamespaceImpl::createSessionStorageNamespace):
Pass a null top-level origin to the StorageNamespaceImpl constructor.

(WebKit::StorageNamespaceImpl::StorageNamespaceImpl):
Add a top-level origin parameter.

* WebProcess/Storage/StorageNamespaceImpl.h:
(WebKit::StorageNamespaceImpl::topLevelOrigin):
Add top-level origin member and getter.

* WebProcess/Storage/WebStorageNamespaceProvider.cpp:
(WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace):
Call StorageNamespaceImpl::createTransientLocalStorageNamespace.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoCrash when creating CSSCalcBinaryOperation
antti@apple.com [Wed, 10 Dec 2014 20:46:15 +0000 (20:46 +0000)]
Crash when creating CSSCalcBinaryOperation
https://bugs.webkit.org/show_bug.cgi?id=134886
rdar://problem/17663561

Reviewed by Chris Dumez.

Source/WebCore:

Test: fast/css/calc-binary-operation-crash.html

* css/CSSCalculationValue.cpp:
(WebCore::determineCategory):

Ensure that both axis are within the addSubtractResult table.
Remove unneeded CalcOther test. The call site guarantees it doesn't happen and the normal cases would handle it anyway.
Also strengthen some asserts.

LayoutTests:

* fast/css/calc-binary-operation-crash-expected.txt: Added.
* fast/css/calc-binary-operation-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoBlur filter performance test doesn't provide results
dino@apple.com [Wed, 10 Dec 2014 20:43:18 +0000 (20:43 +0000)]
Blur filter performance test doesn't provide results
https://bugs.webkit.org/show_bug.cgi?id=139462

Reviewed by Sam Weinig.

This can't currently work under our performance test
infrastructure. Move it to a manual test to avoid
putting FAILures into the results.

* ManualTests/blur-filter-timing.html: Renamed from PerformanceTests/Interactive/blur-filter-timing.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd WebStorageNamespaceProvider::closeLocalStorage
andersca@apple.com [Wed, 10 Dec 2014 20:10:02 +0000 (20:10 +0000)]
Add WebStorageNamespaceProvider::closeLocalStorage
https://bugs.webkit.org/show_bug.cgi?id=139502

Reviewed by Tim Horton.

Source/WebCore:

* page/Page.cpp:
(WebCore::Page::~Page):
Call StorageNamespaceProvider::removePage.

* storage/StorageNamespaceProvider.h:
(WebCore::StorageNamespaceProvider::optionalLocalStorageNamespace):
Helper function that returns the local storage namespace if one exists.

Source/WebKit:

* Storage/WebStorageNamespaceProvider.cpp:
(storageNamespaceProviders):
(WebStorageNamespaceProvider::WebStorageNamespaceProvider):
(WebStorageNamespaceProvider::~WebStorageNamespaceProvider):
Keep track of all live storage namespace providers.

(WebStorageNamespaceProvider::closeLocalStorage):
Loop through all storage namespace providers and call close() on their local storage namespaces.

* Storage/WebStorageNamespaceProvider.h:

Source/WebKit/mac:

* WebView/WebView.mm:
(+[WebView _applicationWillTerminate]):
Call WebStorageNamespaceProvider::closeLocalStorage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAX: [ATK] MathML tokens with text fail to expose their text content via AtkText
jdiggs@igalia.com [Wed, 10 Dec 2014 19:57:33 +0000 (19:57 +0000)]
AX: [ATK] MathML tokens with text fail to expose their text content via AtkText
https://bugs.webkit.org/show_bug.cgi?id=139454

Reviewed by Chris Fleizach.

Source/WebCore:

Expose the text content of the element for non-anonymous RenderMathMLOperators.
This is needed because for ATK we expose the rendered element itself; not the
descendant text renderers. Also include MathML tokens as objects which should
implement AtkText.

Test: accessibility/math-text.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement):
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(getInterfaceMaskFromObject):

LayoutTests:

* accessibility/math-text.html: Added.
* platform/efl/accessibility/math-text-expected.txt: Added.
* platform/gtk/accessibility/math-text-expected.txt: Added.
* platform/mac/accessibility/math-text-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GStreamer] Use appsrcs instead of unconnected queues
commit-queue@webkit.org [Wed, 10 Dec 2014 19:43:00 +0000 (19:43 +0000)]
[GStreamer] Use appsrcs instead of unconnected queues
https://bugs.webkit.org/show_bug.cgi?id=139490

Patch by Sebastian Dröge <sebastian@centricular.com> on 2014-12-10
Reviewed by Philippe Normand.

* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webkit_web_audio_src_init):
(webKitWebAudioSrcConstructed):
(webKitWebAudioSrcFinalize):
(webKitWebAudioSrcSetProperty):
(webKitWebAudioSrcLoop):
(webKitWebAudioSrcChangeState):
Previously we directly chained buffers into unconnected queues,
which confused some code inside GStreamer and caused some harmless
warnings. Now we use appsrcs instead, which also allows us to remove
quite some code.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoImplement WebStorageNamespaceProvider::createLocalStorageNamespace
andersca@apple.com [Wed, 10 Dec 2014 19:41:37 +0000 (19:41 +0000)]
Implement WebStorageNamespaceProvider::createLocalStorageNamespace
https://bugs.webkit.org/show_bug.cgi?id=139498

Reviewed by Beth Dakin.

* WebProcess/Storage/StorageNamespaceImpl.cpp:
(WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
Add a new overload that takes an identifier + quota. Have the old overload call the new one.

* WebProcess/Storage/StorageNamespaceImpl.h:
Add new member.

* WebProcess/Storage/WebStorageNamespaceProvider.cpp:
(WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace):
Call StorageNamespaceImpl::createLocalStorageNamespace.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177084 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFixes operationPutByIds such that they check that the put didn't
mmirman@apple.com [Wed, 10 Dec 2014 19:36:32 +0000 (19:36 +0000)]
Fixes operationPutByIds such that they check that the put didn't
change the structure of the object who's property access is being
cached.
https://bugs.webkit.org/show_bug.cgi?id=139196

Reviewed by Filip Pizlo.

* jit/JITOperations.cpp:
(JSC::operationGetByIdOptimize): changed get to getPropertySlot
(JSC::operationPutByIdStrictBuildList): saved the structure before the put.
(JSC::operationPutByIdNonStrictBuildList): ditto.
(JSC::operationPutByIdDirectStrictBuildList): ditto.
(JSC::operationPutByIdDirectNonStrictBuildList): ditto.
* jit/Repatch.cpp:
(JSC::tryCachePutByID): fixed structure() to use the existant vm.
(JSC::tryBuildPutByIdList): Added a check that the old structure's id
is the same as the new.
(JSC::buildPutByIdList): Added an argument
* jit/Repatch.h:
(JSC::buildPutByIdList): Added an argument
* tests/stress/put-by-id-strict-build-list-order.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177083 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd a stubbed out WebStorageNamespaceProvider class to WebKit2
andersca@apple.com [Wed, 10 Dec 2014 19:25:42 +0000 (19:25 +0000)]
Add a stubbed out WebStorageNamespaceProvider class to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=139497

Reviewed by Beth Dakin.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Storage/WebStorageNamespaceProvider.cpp: Added.
(WebKit::storageNamespaceProviders):
(WebKit::WebStorageNamespaceProvider::getOrCreate):
(WebKit::WebStorageNamespaceProvider::WebStorageNamespaceProvider):
(WebKit::WebStorageNamespaceProvider::~WebStorageNamespaceProvider):
(WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace):
(WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace):
* WebProcess/Storage/WebStorageNamespaceProvider.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix iOS builders for 8.0
enrica@apple.com [Wed, 10 Dec 2014 19:25:11 +0000 (19:25 +0000)]
Fix iOS builders for 8.0
https://bugs.webkit.org/show_bug.cgi?id=139495

Reviewed by Eric Carlson.

Source/WebCore:

* WebCore.exp.in:
* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(-[WebVideoFullscreenController enterFullscreen:mode:]):
(-[WebVideoFullscreenController requestHideAndExitFullscreen]):
(-[WebVideoFullscreenController enterFullscreen:]): Deleted.
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

Source/WebKit2:

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _mayAutomaticallyShowVideoOptimized]):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::reattachToWebProcess):
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Curl] Cache entry is sometimes deleted when request receives a not modified response.
commit-queue@webkit.org [Wed, 10 Dec 2014 18:54:26 +0000 (18:54 +0000)]
[Curl] Cache entry is sometimes deleted when request receives a not modified response.
https://bugs.webkit.org/show_bug.cgi?id=139339

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-12-10
Reviewed by Alex Christensen.

Sometimes it happens that a request receives a not modified response,
but the cache entry has already been deleted by another request.
This can be avoided by locking a cache entry while there are pending
requests for the cache entry's url.

* platform/network/curl/CurlCacheEntry.h:
(WebCore::CurlCacheEntry::addClient):
(WebCore::CurlCacheEntry::removeClient):
(WebCore::CurlCacheEntry::hasClients):
* platform/network/curl/CurlCacheManager.cpp:
(WebCore::CurlCacheManager::didReceiveResponse):
(WebCore::CurlCacheManager::didFail):
(WebCore::CurlCacheManager::addCacheEntryClient):
(WebCore::CurlCacheManager::removeCacheEntryClient):
* platform/network/curl/CurlCacheManager.h:
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::isHttpNotModified):
(WebCore::headerCallback):
(WebCore::ResourceHandleManager::initializeHandle):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177080 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GStreamer] Use a buffer pool for allocations in the AudioDestination
philn@webkit.org [Wed, 10 Dec 2014 18:38:25 +0000 (18:38 +0000)]
[GStreamer] Use a buffer pool for allocations in the AudioDestination
https://bugs.webkit.org/show_bug.cgi?id=139487

Patch by Sebastian Dröge <sebastian@centricular.com> on 2014-12-10
Reviewed by Philippe Normand.

* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webKitWebAudioSrcLoop):
(webKitWebAudioSrcChangeState):
Use a buffer pool for the allocations instead of allocating a
new small buffer for every 128 samples we produce.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] Add support for text-decoration-skip
mrobinson@webkit.org [Wed, 10 Dec 2014 18:37:39 +0000 (18:37 +0000)]
[GTK] Add support for text-decoration-skip
https://bugs.webkit.org/show_bug.cgi?id=131540

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

No new tests. This is covered by existing layout tests.

* platform/graphics/cairo/FontCairo.cpp:
(WebCore::GlyphIterationState): Added this class, a modified version of the Mac
port's implementation.
(WebCore::Font::dashesForIntersectionsWithRect): Ditto.
* platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
(WebCore::Font::getGlyphsAndAdvancesForComplexText): Added an implementation for
HarfBuzz that just fills out the GlyphBuffer, but does not render it.
(WebCore::Font::drawComplexText): Use the new getGlyphsAndAdvancesForComplexText
in a similar way to the Mac port.
* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::HarfBuzzShaper::fillGlyphBufferFromHarfBuzzRun): We need to pass the current
character index to GlyphBuffer:add since it's used by dashesForIntersectionsWithRect
and otherwise it will be uninitialized when we try to access it.

Source/WTF:

* wtf/Platform.h: Enable text decoration skip by default.

LayoutTests:

* platform/gtk/TestExpectations: Unskip a test relying on text-decoration-skip
and skip a new test that has a newly exposed, but unrelated issue.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177078 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] Unreviewed GTK gardening.
clopez@igalia.com [Wed, 10 Dec 2014 18:15:13 +0000 (18:15 +0000)]
[GTK] Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Report and mark new failures.
* platform/gtk/accessibility/media-emits-object-replacement-expected.txt: Rebaseline after r177015.
* platform/gtk/fast/box-sizing/box-sizing-expected.txt: Rebaseline after 176978.
* platform/gtk/fast/forms/basic-selects-expected.txt: Rebaseline after r176978.
* platform/gtk/fast/forms/search-vertical-alignment-expected.txt: Rebaseline after 176978.
* platform/gtk/fast/forms/searchfield-heights-expected.txt: Rebaseline after r176978.
* platform/gtk/fast/forms/textfield-overflow-by-value-update-expected.txt: Rebaseline after r176978.
* platform/gtk/fast/hidpi/video-controls-in-hidpi-expected.txt: Rebaseline after r177015.
* platform/gtk/fast/layers/video-layer-expected.txt: Rebaseline after r177015.
* platform/gtk/fast/multicol/client-rects-expected.txt: Rebaseline after 176978.
* platform/gtk/fast/multicol/client-rects-spanners-complex-expected.txt: Rebaseline after 176978.
* platform/gtk/fast/multicol/client-rects-spanners-expected.txt: Rebaseline after 176978.
* platform/gtk/fast/multicol/layers-split-across-columns-expected.txt: Rebaseline after 176978.
* platform/gtk/fast/multicol/newmulticol/client-rects-expected.txt: Rebaseline after 176978.
* platform/gtk/http/tests/media/hls/video-controls-live-stream-expected.txt: Rebaseline after r177015.
* platform/gtk/media/audio-repaint-expected.txt: Rebaseline after r177015.
* platform/gtk/media/controls-without-preload-expected.txt: Rebaseline after r177015.
* platform/gtk/media/media-controls-clone-expected.txt: Rebaseline after r177015.
* platform/gtk/media/video-empty-source-expected.txt: Rebaseline after r177015
* platform/gtk/svg/zoom/page/zoom-foreignObject-expected.txt: Rebaseline after r175847.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177077 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[WK1] new http/tests/notifications/legacy/notification-request-permission-then-naviga...
cdumez@apple.com [Wed, 10 Dec 2014 18:08:29 +0000 (18:08 +0000)]
[WK1] new http/tests/notifications/legacy/notification-request-permission-then-navigate.html test is crashing
https://bugs.webkit.org/show_bug.cgi?id=139494

Reviewed by Alexey Proskuryakov.

Call window.open() after the page has been loaded because our test infrastructure
asserts that testRunner.waitUntilDone() must have been called *before* window.open()
is called. Since testRunner.waitUntilDone() is called is js-test-post.js, calling
window.open() after page load fixes the issue.

* http/tests/notifications/legacy/notification-request-permission-then-navigate.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177076 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] Enable depth 32 for the RedirectedXCompositeWindow
mrobinson@webkit.org [Wed, 10 Dec 2014 17:42:55 +0000 (17:42 +0000)]
[GTK] Enable depth 32 for the RedirectedXCompositeWindow
https://bugs.webkit.org/show_bug.cgi?id=139028

On gtk/X11, the layout compositing is done in the web process.
If one needs to handle alpha with the rest of the application
then it is not enough to make to browser's window as RGBA.
The shared redirected window needs to be RGBA as well.
(The shared X composite window between UIProcess and WebProcess).

This allows an end-to-end RGBA solution when the application
wants to interact with the alpha channel at compositing time.
For example for transparent Web UI.

Patch by Julien Isorce <j.isorce@samsung.com> on 2014-12-10
Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseRealize):
(webkitWebViewBaseConstructed):
(webkitWebViewRenderAcceleratedCompositingResults):
(webkitWebViewBaseUpdatePreferences):
(webkitWebViewBaseCreateWebPage):
* UIProcess/gtk/RedirectedXCompositeWindow.cpp:
(WebKit::RedirectedXCompositeWindow::create):
(WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow):
* UIProcess/gtk/RedirectedXCompositeWindow.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177075 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION(r177048) 11 failures on layout tests fast/selectors.
akling@apple.com [Wed, 10 Dec 2014 17:42:45 +0000 (17:42 +0000)]
REGRESSION(r177048) 11 failures on layout tests fast/selectors.
<https://webkit.org/b/139483>

Unreviewed fix for bots.

When rolling out the broken change, I accidentally also rolled out
a bug fix that Benjamin had made to sibling invalidation.
Restore his implementation of nodeOrItsAncestorNeedsStyleRecalc().

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::nodeOrItsAncestorNeedsStyleRecalc):
(WebCore::updateStyleIfNeededForNode):
(WebCore::ComputedStyleExtractor::propertyValue):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177074 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK][WK2] Add HTML5 Notifications support
gns@gnome.org [Wed, 10 Dec 2014 17:36:40 +0000 (17:36 +0000)]
[GTK][WK2] Add HTML5 Notifications support
https://bugs.webkit.org/show_bug.cgi?id=61140

.:

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2014-12-09
Reviewed by Carlos Garcia Campos.

* Source/cmake/FindLibNotify.cmake: Added.
* Source/cmake/OptionsGTK.cmake: add option to enable notifications, look for
libnotify and use it for a default implementation when found.

Source/WebKit2:

Patch by Claudio Saavedra  <csaavedra@igalia.com> and Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2014-12-09
Reviewed by Carlos Garcia Campos.

* PlatformGTK.cmake: add new files to the build.
* UIProcess/API/gtk/WebKitForwardDeclarations.h:
* UIProcess/API/gtk/WebKitNotification.cpp: Added. New GObject used to expose information about
the notification to the API.
(webkitNotificationGetProperty):
(webkit_notification_class_init):
(webkitNotificationCreate):
(webkit_notification_get_id):
(webkit_notification_get_title):
(webkit_notification_get_body):
* UIProcess/API/gtk/WebKitNotification.h: Added.
* UIProcess/API/gtk/WebKitNotificationPermissionRequest.cpp: Added. Permission request object
for notifications.
(webkitNotificationPermissionRequestAllow):
(webkitNotificationPermissionRequestDeny):
(webkit_permission_request_interface_init):
(webkitNotificationPermissionRequestDispose):
(webkit_notification_permission_request_class_init):
(webkitNotificationPermissionRequestCreate):
* UIProcess/API/gtk/WebKitNotificationPermissionRequest.h: Added.
* UIProcess/API/gtk/WebKitNotificationPermissionRequestPrivate.h: Added.
* UIProcess/API/gtk/WebKitNotificationPrivate.h: Added.
* UIProcess/API/gtk/WebKitNotificationProvider.cpp: Added. Notification provider that emits signals.
The C API allows overriding the notification providers and managers for customizing the handling of
notifications. We decided to go for a single manager and a single provider which provide more idiomatic
GObject API - signals.
(toNotificationProvider):
(showCallback):
(cancelCallback):
(WebKitNotificationProvider::~WebKitNotificationProvider):
(WebKitNotificationProvider::create):
(WebKitNotificationProvider::WebKitNotificationProvider):
(WebKitNotificationProvider::show):
(WebKitNotificationProvider::cancel):
* UIProcess/API/gtk/WebKitNotificationProvider.h: Added.
* UIProcess/API/gtk/WebKitUIClient.cpp: implemented decidePolicyForNotificationPermissionRequest.
* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkitWebContextConstructed): initialize the notification provider.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewShowNotification): default implementation for showing the notification, currently
using GNotification, about to be ported to libnotify.
(webkit_web_view_class_init): set the default implementation for the show-notification signal.
(webkitWebViewEmitCloseNotification): emit the close-notification signal.
(webkitWebViewEmitShowNotification): emit the show-notification signal.
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/WebKitWebViewPrivate.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: list new objects and methods.
* UIProcess/API/gtk/webkit2.h: include new headers.

Tools:

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2014-12-09
Reviewed by Carlos Garcia Campos.

* Scripts/webkitperl/FeatureList.pm: enable notifications for GTK+.
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewNotification):
(beforeAll):
* MiniBrowser/gtk/BrowserWindow.c: also handle notification permission requests.
(permissionRequestDialogCallback):
(webViewDecidePermissionRequest):
(geolocationRequestDialogCallback): Deleted.

LayoutTests:

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2014-12-09
Reviewed by Carlos Garcia Campos.

* platform/gtk/TestExpectations: unskip the HTTP tests for new-style notifications.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177073 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GStreamer] AudioSourceProvider support in the MediaPlayer
philn@webkit.org [Wed, 10 Dec 2014 16:00:45 +0000 (16:00 +0000)]
[GStreamer] AudioSourceProvider support in the MediaPlayer
https://bugs.webkit.org/show_bug.cgi?id=78883

Reviewed by Gustavo Noronha Silva.

GStreamer-based audio source provider for the GTK and EFL
ports. This new component gathers decoded raw audio data from the
MediaPlayer and pipes it to an AudioBus when required by the
User Agent.

* PlatformEfl.cmake: New files in the build.
* PlatformGTK.cmake: Ditto.
* platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp: Added.
(WebCore::onAppsinkNewBufferCallback): Function called when a new
buffer can be pulled from appsink.
(WebCore::onGStreamerDeinterleavePadAddedCallback): Function
called when a new source pad has been added to deinterleave.
(WebCore::onGStreamerDeinterleaveReadyCallback): Function called
when the deinterleave element completed the configuration of all
its source pads.
(WebCore::copyGstreamerBuffersToAudioChannel): Called for each
channel of the AudioBus that needs data as input.
(WebCore::AudioSourceProviderGStreamer::AudioSourceProviderGStreamer):
Create an audio bin that by default routes buffers only to
autoaudiosink. A new route is added if the provider has a client.
(WebCore::AudioSourceProviderGStreamer::~AudioSourceProviderGStreamer):
Clean buffer adapters and audio bin.
(WebCore::AudioSourceProviderGStreamer::configureAudioBin):
(WebCore::AudioSourceProviderGStreamer::provideInput): Transfer
data from the buffer adapters to the bus channels.
(WebCore::AudioSourceProviderGStreamer::handleAudioBuffer): Pull a
buffer from appsink and queue it to the buffer adapter.
(WebCore::AudioSourceProviderGStreamer::setClient): Complete the
construction of the audio bin by adding a new chain to the tee
element. This new chain will deinterleave the buffer stream to
planar audio channels and route them to an appsink per channel for
data extraction.
(WebCore::AudioSourceProviderGStreamer::handleNewDeinterleavePad):
A new appsink after a new source pad has been added to deinterleave.
(WebCore::AudioSourceProviderGStreamer::deinterleavePadsConfigured):
Configure the client Node format (number of channels and sample
rate) once the provider knows how many audio channels are managed
by the pipeline.
(WebCore::cleanUpElementsAfterDeinterleaveSourcePadCallback):
(WebCore::AudioSourceProviderGStreamer::cleanUpElementsAfterDeinterleaveSourcePad):
Remove the elements after the given deinterleave source pad.
(WebCore::AudioSourceProviderGStreamer::reset): Cleanup the
deinterleave source pads. This is especially needed before the
whole pipeline goes to NULL and later on prerolls again.
* platform/audio/gstreamer/AudioSourceProviderGStreamer.h: Added.
(WebCore::AudioSourceProviderGStreamer::create): Use this to
create the provider and get an OwnPtr of it.
(WebCore::AudioSourceProviderGStreamer::client): Provider client getter.
(WebCore::AudioSourceProviderGStreamer::getAudioBin): Audio bin
getter, used by the media player to configure its
playbin::audio-sink property.
* platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
Provider life cycle management and reset the audio provider before
going to NULL.
(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::handlePluginInstallerResult): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::cancelLoad): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::didEnd): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::createAudioSink): Configure
the audio source provider if needed.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
(WebCore::MediaPlayerPrivateGStreamer::audioSourceProvider):
Provider getter, used by MediaPlayer and MediaElement.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177058 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[EFL][[WK2] test_ewk2_text_checker is failed
g.czajkowski@samsung.com [Wed, 10 Dec 2014 13:00:05 +0000 (13:00 +0000)]
[EFL][[WK2] test_ewk2_text_checker is failed
https://bugs.webkit.org/show_bug.cgi?id=132982

Reviewed by Gyuyoung Kim.

Insert misspelled word to the input field using execCommand instead of
input.value attribute change which stops spell check, tracked by
https://bugs.webkit.org/show_bug.cgi?id=139473.

Since text checker API tests do not verify spellchecker itself (it's being
tested by LayoutTests/editing/spelling) but rather opportunity for overriding
its functionality this patch unskips those tests in order to API coverage.

* PlatformEfl.cmake:
Unskip test_ewk2_text_checker

* UIProcess/API/efl/tests/resources/spelling_test.html:
Use document.execCommand("InsertText", false, "aa ") instead of
input.value = "aa " to trigger spellchecker.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177057 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION(r177038): [SOUP] [GTK] Debug build broken
clopez@igalia.com [Wed, 10 Dec 2014 12:51:17 +0000 (12:51 +0000)]
REGRESSION(r177038): [SOUP] [GTK] Debug build broken
https://bugs.webkit.org/show_bug.cgi?id=139475

Reviewed by Martin Robinson.

* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::clearCacheForAllOrigins): Call clearDiskCache().
(WebKit::NetworkProcess::clearDiskCache): Implement this for SOUP.
SoupCache don't seems to have API for clearing a part of the cache,
so add a FIXME note regarding that.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177056 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoURTBF after r177030.
ossy@webkit.org [Wed, 10 Dec 2014 12:40:52 +0000 (12:40 +0000)]
URTBF after r177030.

Fix linking failure occured on ARM buildbots:
lib/libjavascriptcore_efl.so.1.11.0: undefined reference to `JSC::Structure::get(JSC::VM&, JSC::PropertyName, unsigned int&)'

* runtime/NullGetterFunction.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177055 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnskip more multipart tests
ap@apple.com [Wed, 10 Dec 2014 06:44:08 +0000 (06:44 +0000)]
Unskip more multipart tests
https://bugs.webkit.org/show_bug.cgi?id=139431

Reviewed by Darin Adler.

* http/tests/multipart/load-last-non-html-frame.php:
* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177054 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] Unskip some tests in LayoutTests/{fonts, html5lib, ietestcenter, imported,...
dbates@webkit.org [Wed, 10 Dec 2014 05:14:04 +0000 (05:14 +0000)]
[iOS] Unskip some tests in LayoutTests/{fonts, html5lib, ietestcenter, imported, indieui, inspector, jquery}

* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177053 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] Update expected results for LayoutTests/{compositing, css1, css2.1, css3, cssom}
dbates@webkit.org [Wed, 10 Dec 2014 04:01:17 +0000 (04:01 +0000)]
[iOS] Update expected results for LayoutTests/{compositing, css1, css2.1, css3, cssom}
https://bugs.webkit.org/show_bug.cgi?id=139467

Rubber-stamped by Zalan Bujtas.

* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator-wk2/compositing/absolute-inside-out-of-view-fixed-expected.txt: Copied from LayoutTests/platform/ios-simulator/compositing/absolute-inside-out-of-view-fixed-expected.txt.
* platform/ios-simulator-wk2/compositing/backing/backface-visibility-flip-expected.txt: Copied from LayoutTests/platform/ios-simulator/compositing/backing/backface-visibility-flip-expected.txt.
[...]

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177052 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd performance test related to font fallback
mmaxfield@apple.com [Wed, 10 Dec 2014 02:19:48 +0000 (02:19 +0000)]
Add performance test related to font fallback
https://bugs.webkit.org/show_bug.cgi?id=139332

Reviewed by Simon Fraser.

* Layout/font-fallback.html: Added.
* Layout/resources/font-fallback.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177051 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoScrolling to anchor tags does nothing in vertical-rl writing mode
mmaxfield@apple.com [Wed, 10 Dec 2014 01:02:29 +0000 (01:02 +0000)]
Scrolling to anchor tags does nothing in vertical-rl writing mode
https://bugs.webkit.org/show_bug.cgi?id=137838

Reviewed by David Hyatt.

Source/WebCore:

Scroll to a particular tag, and make sure the viewport is rendered as expected.

Tests: fast/events/scroll-to-anchor-vertical-lr-writing-mode.html
       fast/events/scroll-to-anchor-vertical-writing-mode-contained-2.html
       fast/events/scroll-to-anchor-vertical-writing-mode-contained.html
       fast/events/scroll-to-anchor-vertical-writing-mode.html

* page/FrameView.cpp:
(WebCore::FrameView::scrollToAnchor):
* rendering/ScrollBehavior.cpp:
* rendering/ScrollBehavior.h:

LayoutTests:

When we specify the behavior regarding scrolling to anchor tags, we previously had
only described behavior regarding horizontal text. When we have vertical text, we
need to switch the horizontal and vertical scrolling policies.

* fast/events/scroll-to-anchor-vertical-lr-writing-mode-expected.html: Added.
* fast/events/scroll-to-anchor-vertical-lr-writing-mode.html: Added.
* fast/events/scroll-to-anchor-vertical-writing-mode-contained-2-expected.html: Added.
* fast/events/scroll-to-anchor-vertical-writing-mode-contained-2.html: Added.
* fast/events/scroll-to-anchor-vertical-writing-mode-contained-expected.html: Added.
* fast/events/scroll-to-anchor-vertical-writing-mode-contained.html: Added.
* fast/events/scroll-to-anchor-vertical-writing-mode-expected.html: Added.
* fast/events/scroll-to-anchor-vertical-writing-mode.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177050 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION(r155906): Page content disappears on Tuaw article after loading
bjonesbe@adobe.com [Wed, 10 Dec 2014 00:57:10 +0000 (00:57 +0000)]
REGRESSION(r155906): Page content disappears on Tuaw article after loading
https://bugs.webkit.org/show_bug.cgi?id=138100

Reviewed by Simon Fraser.

.:

DRT causes an extra paint which makes it impossible to test this with
an automated test.

* ManualTests/float-layer-not-painting.html: Added.

Source/WebCore:

Test: ManualTests/float-layer-not-painting.html

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::insertFloatingObject): If a layout happens,
it can change whether the float's renderer has a self painting layer.
So in that case, we need to update the flag on the FloatingObject
instance for that float.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177049 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRoll out r165076.
akling@apple.com [Wed, 10 Dec 2014 00:47:51 +0000 (00:47 +0000)]
Roll out r165076.
<rdar://problem/18490587>

This change broke selection when editing Confluence wiki pages.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::nodeOrItsAncestorNeedsStyleRecalc):
(WebCore::ComputedStyleExtractor::propertyValue):
* dom/Document.cpp:
(WebCore::nodeOrItsAncestorNeedsStyleRecalc): Deleted.
(WebCore::Document::updateStyleIfNeededForNode): Deleted.
* dom/Document.h:
* editing/htmlediting.cpp:
(WebCore::isEditablePosition):
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::forwardEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177048 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnreviewed, rolling out r177037.
commit-queue@webkit.org [Wed, 10 Dec 2014 00:22:15 +0000 (00:22 +0000)]
Unreviewed, rolling out r177037.
https://bugs.webkit.org/show_bug.cgi?id=139464

broke ~50 API tests (Requested by thorton on #webkit).

Reverted changeset:

"Use the new storage namespace provider in WebKit1"
https://bugs.webkit.org/show_bug.cgi?id=139425
http://trac.webkit.org/changeset/177037

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177044 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoURTBF after r177032.
ossy@webkit.org [Wed, 10 Dec 2014 00:12:30 +0000 (00:12 +0000)]
URTBF after r177032.

* CMakeLists.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177043 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoMove mixed border color test image result to mac folder,
cavalcantii@gmail.com [Tue, 9 Dec 2014 23:26:14 +0000 (23:26 +0000)]
Move mixed border color test image result to mac folder,
should address yosemite case.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177042 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix iOS build after r177035.
mmaxfield@apple.com [Tue, 9 Dec 2014 23:05:19 +0000 (23:05 +0000)]
Fix iOS build after r177035.

Unreviewed.

I accidentally added my line to WebCore.exp.in inside an

* WebCore.exp.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177041 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoKotoeri sometimes doesn't correctly process the first chanaracter in a text field...
ap@apple.com [Tue, 9 Dec 2014 22:39:35 +0000 (22:39 +0000)]
Kotoeri sometimes doesn't correctly process the first chanaracter in a text field in Safari 7.1 or 6.2
https://bugs.webkit.org/show_bug.cgi?id=139459
rdar://problem/19017432
rdar://problem/19036869

Reviewed by Enrica Casucci.

When inputContext changes, notify the application. We already did this when the context
changed due to plug-ins, and this used to sort of make it work on on yahoo.co.jp,
which has plug-ins. But that was quite unreliable, as evidenced by the reproducible
cases where we didn't use an input method for the first keypress.

* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::editorStateChanged):
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::notifyApplicationAboutInputContextChange):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177040 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoEnable automatic optimized fullscreen mode.
commit-queue@webkit.org [Tue, 9 Dec 2014 21:54:44 +0000 (21:54 +0000)]
Enable automatic optimized fullscreen mode.
https://bugs.webkit.org/show_bug.cgi?id=139437

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-12-09
Source/WebCore:

Reviewed by Eric Carlson.

Anticipate transition to optimized video fullscreen mode when entering background.

* WebCore.exp.in:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::overrideBackgroundPlaybackRestriction): Add logic for automatic transition detection.
* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::mayAutomaticallyShowVideoOptimized): Add logic for automatic transition detection.

Source/WebKit2:

Reviewed by Simon Fraser.

Anticipate the automatic transition to optimized video fullscreen mode when deciding if the page is visible.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isShowingVideoOptimized]): Renamed. Test precondition.
(-[WKWebView _mayAutomaticallyShowVideoOptimized]): Added.
(-[WKWebView _isPlayingFullscreenOptimizedVideo]): Deleted.
* UIProcess/API/Cocoa/WKWebViewInternal.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::isViewVisible): Test for optimized modes even when not in a window.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177039 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd support for clearing the disk cache
andersca@apple.com [Tue, 9 Dec 2014 21:53:45 +0000 (21:53 +0000)]
Add support for clearing the disk cache
https://bugs.webkit.org/show_bug.cgi?id=139458

Reviewed by Antti Koivisto.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::deleteWebsiteData):
If we're asked to clear the disk cache, do so. Clearing the cache is asynchronous,
so we make sure not to call the completion handler right away in that case.

* NetworkProcess/NetworkProcess.h:
Add clearDiskCache member function.

* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::clearDiskCache):
Clear the disk cache, then call the completion handler.

* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::clearCacheForAllOrigins):
Call the new clearDiskCache function.

* Shared/WebsiteData/WebsiteDataTypes.h:
Add WebsiteDataTypeDiskCache.

* UIProcess/API/Cocoa/_WKWebsiteDataStore.h:
* UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
(toWebsiteDataTypes):
Handle WKWebsiteDataTypeDiskCache.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177038 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUse the new storage namespace provider in WebKit1
andersca@apple.com [Tue, 9 Dec 2014 21:49:30 +0000 (21:49 +0000)]
Use the new storage namespace provider in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=139425

Reviewed by Tim Horton.

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
Set the storage namespace provider from the web page group.

Source/WebKit/win:

* WebView.cpp:
(localStorageDatabasePath):
Helper from getting the local storage database path given a WebPreferences instance.

(WebView::initWithFrame):
Create a storage namespace provider.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177037 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix webkitpy test expectation
benjamin@webkit.org [Tue, 9 Dec 2014 21:45:51 +0000 (21:45 +0000)]
Fix webkitpy test expectation

Not sure what I messed up, but TOTAL_SKIPS was not right.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-12-09

* Scripts/webkitpy/port/test.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177036 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoDelete Node::boundingBox()
mmaxfield@apple.com [Tue, 9 Dec 2014 21:03:54 +0000 (21:03 +0000)]
Delete Node::boundingBox()
https://bugs.webkit.org/show_bug.cgi?id=139333

Source/WebCore:

Conceptually, boundingBox() should be on RenderInline. In addition,
Node::boundingBox() is completely broken for inline elements: it
makes a rect from the top left of the first inline child to the
bottom right of the last inline child, disregarding the intermediate
inline children. This breaks with vertical text and with line
breaks.

What makes this problem worse is that some functions actually rely
on this bad behavior. These functions are functions that use the
Node's so-called "bounding box" to scroll to an anchor tag.

This patch goes through all the call sites of Node::boundingBox(),
and segregates them into calls that expect the true bounding box
and calls that need this false bounding box. This patch then moves
this false bounding box into RenderElement, using the name
anchorRect(). Callers what want the correct bounding box have been
updated to use RenderElement::absoluteBoundingBoxRect().

Reviewed by Zalan Bujtas.

No new tests because there should be no behavior change.

* accessibility/AccessibilitySlider.cpp:
(WebCore::AccessibilitySliderThumb::elementRect): Use
RenderObject::absoluteBoundingBoxRect()
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::getUpperLeftCorner): Deleted.
(WebCore::ContainerNode::getLowerRightCorner): Deleted.
(WebCore::ContainerNode::boundingBox): Deleted.
* dom/ContainerNode.h:
* dom/Element.cpp:
(WebCore::Element::scrollIntoView): Use RenderElement::anchorRect().
(WebCore::Element::scrollIntoViewIfNeeded): Ditto.
(WebCore::Element::updateFocusAppearance): Ditto.
* dom/Node.cpp:
(WebCore::Node::boundingBox): Deleted.
* dom/Node.h:
(WebCore::Node::pixelSnappedBoundingBox): Deleted.
* html/ColorInputType.cpp:
(WebCore::ColorInputType::elementRectRelativeToRootView): Use
RenderObject::absoluteBoundingBoxRect()
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setupDateTimeChooserParameters): Ditto.
* html/ValidationMessage.cpp:
(WebCore::ValidationMessage::buildBubbleTree): Ditto.
* page/FrameView.cpp:
(WebCore::FrameView::scrollElementToRect): Use
RenderElement::anchorRect().
(WebCore::FrameView::scrollToAnchor): Ditto.
* page/SpatialNavigation.cpp:
(WebCore::nodeRectInAbsoluteCoordinates): Use
RenderObject::absoluteBoundingBoxRect()
* rendering/RenderElement.cpp:
(WebCore::RenderElement::getUpperLeftCorner): Moved from ContainerNode.
(WebCore::RenderElement::getLowerRightCorner): Moved from
ContainerNode.
(WebCore::RenderElement::anchorRect): Moved from ContainerNode.
* rendering/RenderObject.h:
* rendering/RenderText.cpp:
(WebCore::RenderText::topOfFirstText): Helper for
RenderElement::anchorRect()
* rendering/RenderText.h:

Source/WebKit/mac:

Reviewed by Zalan Bujtas.

* WebView/WebActionMenuController.mm:
(elementBoundingBoxInWindowCoordinatesFromNode): Use
RenderObject::absoluteBoundingBoxRect().

Source/WebKit2:

Reviewed by Zalan Bujtas.

* Shared/WebHitTestResult.cpp:
(WebKit::WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates):
Use RenderObject::absoluteBoundingBoxRect().
* WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp:
(WebKit::WebPage::findZoomableAreaForPoint): Use
RenderObject::absoluteBoundingBoxRect().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177035 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRemove virtual test support from webkitpy
benjamin@webkit.org [Tue, 9 Dec 2014 20:50:16 +0000 (20:50 +0000)]
Remove virtual test support from webkitpy
https://bugs.webkit.org/show_bug.cgi?id=139427

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-12-09
Reviewed by Alexey Proskuryakov.

It seems that the only concrete client of virtual tests is the unit tests :D

This patch tries to clean as much useless code as possible.

* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RunTest.test_tolerance):
(RunTest.test_virtual): Deleted.
* Scripts/webkitpy/layout_tests/views/printing.py:
(Printer._print_test_trace):
* Scripts/webkitpy/port/base.py:
(Port.expected_filename):
(Port.tests):
(Port.test_isfile):
(Port.test_isdir):
(Port.sample_process):
(Port.find_system_pid):
(Port.test_expectations_file_position):
(Port.virtual_test_suites): Deleted.
(Port): Deleted.
(Port.populated_virtual_test_suites): Deleted.
(Port._virtual_tests): Deleted.
(Port.lookup_virtual_test_base): Deleted.
(Port.lookup_virtual_test_args): Deleted.
(VirtualTestSuite): Deleted.
(VirtualTestSuite.__init__): Deleted.
(VirtualTestSuite.__repr__): Deleted.
* Scripts/webkitpy/port/base_unittest.py:
(PortTest.test_test_exists):
(PortTest.test_test_isfile):
(PortTest.test_test_isdir):
(PortTest.test_tests):
* Scripts/webkitpy/port/driver.py:
(DriverProxy.run_test): Deleted.
* Scripts/webkitpy/port/test.py:
(TestPort._skipped_tests_for_unsupported_features):
(TestPort.all_baseline_variants):
(TestPort.virtual_test_suites): Deleted.
* Scripts/webkitpy/tool/commands/queries.py:
(PrintBaselines.__init__):
(PrintBaselines.execute):
* Scripts/webkitpy/tool/commands/queries_unittest.py:
(PrintBaselinesTest.test_basic):
(PrintBaselinesTest.test_multiple):
(PrintBaselinesTest.test_csv):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177034 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[WK2] Crash when answering notification permission request after navigating
cdumez@apple.com [Tue, 9 Dec 2014 20:31:41 +0000 (20:31 +0000)]
[WK2] Crash when answering notification permission request after navigating
https://bugs.webkit.org/show_bug.cgi?id=139429
<rdar://problem/18921122>

Reviewed by Andreas Kling.

Source/WebKit2:

When requesting a notification permission, navigating away and then
answering the permission, WebKit2 would crash. This is because upon
navigating, the request is cancelled and removed from the HashMaps
in NotificationPermissionRequestManager. When
didReceiveNotificationPermissionDecision() is later called, it would
look for the request identifier in m_idToOriginMap HashMap. As the
request was cancelled, HashMap::take() call would return null for
the SecurityOrigin*. This security origin pointer is then removed
from m_originToIDMap, but the code was failing to do a null check
first. Calling HashMap::remove(nullptr) would then crash.

This patch adds the missing null check and a layout test to cover
this case.

Test: http/tests/notifications/legacy/notification-request-permission-then-navigate.html

* WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
(WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision):

LayoutTests:

Add layout test to cover the case where the notification permission is
requesting before navigating to a new URL and answered after the page
is navigated away.

* http/tests/notifications/legacy/notification-request-permission-then-navigate-expected.txt: Added.
* http/tests/notifications/legacy/notification-request-permission-then-navigate.html: Added.
* http/tests/notifications/legacy/resources/notify-opener-done.html: Added.
* http/tests/notifications/legacy/resources/request-permission-then-navigate.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177033 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoImplement clearing of cookies
andersca@apple.com [Tue, 9 Dec 2014 20:29:59 +0000 (20:29 +0000)]
Implement clearing of cookies
https://bugs.webkit.org/show_bug.cgi?id=139455

Reviewed by Andreas Kling.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::deleteWebsiteData):
Handle deleting cookies by finding the right network storage session and deleting the cookies from it.
Then, send a DidDeleteWebsiteData message back.

* NetworkProcess/NetworkProcess.h:
Add new members.

* NetworkProcess/NetworkProcess.messages.in:
Add new DeleteWebsiteData message.

* Shared/WebsiteData/WebsiteDataTypes.h:
Move the website data types enum to its own file so it can be shared.

* UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
(toWebsiteDataTypes):
Update now that WebsiteDataTypes is its own enum.

(-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]):
removeDataModifiedSince was renamed to removeData.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::generateCallbackID):
Helper function to create a callback ID.

(WebKit::NetworkProcessProxy::~NetworkProcessProxy):
Assert that we have no pending callbacks.

(WebKit::NetworkProcessProxy::deleteWebsiteData):
Put the completion handler in our map and message the network process.

(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
Call all completion handlers.

(WebKit::NetworkProcessProxy::didDeleteWebsiteData):
Grab the completion handler and call it.

* UIProcess/Network/NetworkProcessProxy.h:
Add new members.

* UIProcess/Network/NetworkProcessProxy.messages.in:
Add DidDeleteWebsiteData callback.

* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::computeNetworkProcessAccessType):
Helper function that computes the type of process access we'd need for the given mask of
website data types.

(WebKit::WebsiteDataStore::removeData):
Gather all the network processes and message them. Use a callback aggregator object to track callbacks
so we'll call the completion handler once all callbacks have been invoked.

* UIProcess/WebsiteData/WebsiteDataStore.h:
Move WebsiteDataTypes to its own file.

* WebKit2.xcodeproj/project.pbxproj:
Add new files.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177032 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION (r173272): When open PDF from Safari in iBooks, title is replaced to ...
antti@apple.com [Tue, 9 Dec 2014 20:06:57 +0000 (20:06 +0000)]
REGRESSION (r173272): When open PDF from Safari in iBooks, title is replaced to “QuickLookPDF-s72DbgAU-1”
https://bugs.webkit.org/show_bug.cgi?id=139453
rdar://problem/19052192

Reviewed by Pratik Solanki.

Pulling the suggested filename from the platform response returned null string on USE(CFNETWORK) code path
if it was the first thing needed from it.

* platform/network/cf/ResourceResponseCFNet.cpp:
(WebCore::ResourceResponse::platformSuggestedFilename): Use the lazy accessor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177031 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoDFG Tries using an inner object's getter/setter when one hasn't been defined
msaboff@apple.com [Tue, 9 Dec 2014 19:52:40 +0000 (19:52 +0000)]
DFG Tries using an inner object's getter/setter when one hasn't been defined
https://bugs.webkit.org/show_bug.cgi?id=139229

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Added a new NullGetterFunction singleton class to use for getters and setters that
haven't been set to a user defined value.  The NullGetterFunction callReturnUndefined()
and createReturnUndefined() methods return undefined.  Changed all null checks of the
getter and setter pointers to the newly added isGetterNull() and isSetterNull()
helper methods.

* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
Added NullGetterFunction.cpp & .h to build files.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
* runtime/PropertyDescriptor.cpp:
(JSC::PropertyDescriptor::setDescriptor):
(JSC::PropertyDescriptor::setAccessorDescriptor):
Changed checking getter and setter to null to use new isGetterNull() and isSetterNull()
helpers.

* inspector/JSInjectedScriptHostPrototype.cpp:
(Inspector::JSInjectedScriptHostPrototype::finishCreation):
* inspector/JSJavaScriptCallFramePrototype.cpp:
* jit/JITOperations.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* runtime/JSObject.cpp:
(JSC::JSObject::putIndexedDescriptor):
(JSC::putDescriptor):
(JSC::JSObject::defineOwnNonIndexProperty):
* runtime/MapPrototype.cpp:
(JSC::MapPrototype::finishCreation):
* runtime/SetPrototype.cpp:
(JSC::SetPrototype::finishCreation):
Updated calls to GetterSetter::create(), setGetter(), setSetter(), withGetter()
and withSetter() to provide a global object.

* runtime/GetterSetter.cpp:
(JSC::GetterSetter::withGetter):
(JSC::GetterSetter::withSetter):
(JSC::callGetter):
(JSC::callSetter):
* runtime/GetterSetter.h:
(JSC::GetterSetter::GetterSetter):
(JSC::GetterSetter::create):
(JSC::GetterSetter::isGetterNull):
(JSC::GetterSetter::isSetterNull):
(JSC::GetterSetter::setGetter):
(JSC::GetterSetter::setSetter):
Changed to use NullGetterFunction for unspecified getters / setters.

* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::createThrowTypeError):
(JSC::JSGlobalObject::visitChildren):
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::nullGetterFunction):
(JSC::JSGlobalObject::evalFunction):
Added m_nullGetterFunction singleton.  Updated calls to GetterSetter::create(),
setGetter() and setSetter() to provide a global object.

* runtime/NullGetterFunction.cpp: Added.
(JSC::callReturnUndefined):
(JSC::constructReturnUndefined):
(JSC::NullGetterFunction::getCallData):
(JSC::NullGetterFunction::getConstructData):
* runtime/NullGetterFunction.h: Added.
(JSC::NullGetterFunction::create):
(JSC::NullGetterFunction::createStructure):
(JSC::NullGetterFunction::NullGetterFunction):
New singleton class that returns undefined when called.

LayoutTests:

New regression test.

* js/regress-139229-expected.txt: Added.
* js/regress-139229.html: Added.
* js/script-tests/regress-139229.js: Added.
(InnerObjectNoGetter):
(InnerObjectNoGetter.prototype.set enabled):
(InnerObjectNoSetter):
(InnerObjectNoSetter.prototype.get enabled):
(OuterObject):
(OuterObject.prototype.get enabled):
(OuterObject.prototype.set enabled):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177030 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRe-enable function.arguments
ggaren@apple.com [Tue, 9 Dec 2014 19:39:29 +0000 (19:39 +0000)]
Re-enable function.arguments
https://bugs.webkit.org/show_bug.cgi?id=139452
Source/JavaScriptCore:

<rdar://problem/18848149>

Reviewed by Sam Weinig.

Disabling function.arguments broke a few websites, and we don't have
time right now to work through the details.

I'm re-enabling function.arguments but leaving in the infrastructure
to re-disable it, so we can try this experiment again in the future.

* runtime/Options.h:

LayoutTests:

Reviewed by Sam Weinig.

* TestExpectations: Re-enable these tests, since WebKit supports this
feature by default now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177029 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoBlink Merge: Remove 'http_lock' code from webkitpy
ossy@webkit.org [Tue, 9 Dec 2014 19:32:54 +0000 (19:32 +0000)]
Blink Merge: Remove 'http_lock' code from webkitpy
https://bugs.webkit.org/show_bug.cgi?id=136722

Reviewed by Alexey Proskuryakov.

Based on Blink commit by Dirk Pranke <dpranke@chromium.org>
https://chromium.googlesource.com/chromium/blink/+/196f8146a948275c2f1594b13e30ab19a6e6fd66

* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(LayoutTestRunner.__init__):
(LayoutTestRunner.run_tests):
(LayoutTestRunner.start_servers): Renamed from start_servers_with_lock.
(LayoutTestRunner.stop_servers): Renamed from stop_servers_with_lock.
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
(FakePrinter.flush):
(LayoutTestRunnerTests._runner):
(LayoutTestRunnerTests._run_tests):
(LayoutTestRunnerTests.test_servers_started):
(LockCheckingRunner): Deleted.
(LockCheckingRunner.__init__): Deleted.
(LockCheckingRunner.handle_finished_list): Deleted.
(LayoutTestRunnerTests.test_http_locking): Deleted.
* Scripts/webkitpy/port/base.py:
(Port.__init__):
(Port.to.http_server_supports_ipv6):
(Port.to.stop_websocket_server):
(Port.to.acquire_http_lock): Deleted.
(Port.to.release_http_lock): Deleted.
* Scripts/webkitpy/port/http_lock.py: Removed.
* Scripts/webkitpy/port/http_lock_unittest.py: Removed.
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.show_results_html_file):
(IOSSimulatorPort.acquire_http_lock): Deleted.
(IOSSimulatorPort): Deleted.
(IOSSimulatorPort.release_http_lock): Deleted.
* Scripts/webkitpy/port/mac.py:
(MacPort.show_results_html_file):
(MacPort): Deleted.
(MacPort.acquire_http_lock): Deleted.
(MacPort.release_http_lock): Deleted.
* Scripts/webkitpy/port/mock_drt.py:
(MockDRTPort.start_websocket_server):
(MockDRTPort.stop_websocket_server):
(MockDRTPort.acquire_http_lock): Deleted.
(MockDRTPort.release_http_lock): Deleted.
* Scripts/webkitpy/port/mock_drt_unittest.py:
(MockDRTPortTest.test_uses_apache):
(MockDRTPortTest.integration_test_http_lock): Deleted.
* Scripts/webkitpy/port/port_testcase.py:
(PortTestCase.assert_servers_are_up):
(PortTestCase.integration_test_http_lock): Deleted.
* Scripts/webkitpy/port/test.py:
(TestPort.start_websocket_server):
(TestPort.stop_websocket_server):
(TestPort.acquire_http_lock): Deleted.
(TestPort.release_http_lock): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177028 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSwitch from using PLATFORM_NAME to SDK selectors in ANGLE, bmalloc, gtest, JavaScript...
ddkilzer@apple.com [Tue, 9 Dec 2014 19:08:43 +0000 (19:08 +0000)]
Switch from using PLATFORM_NAME to SDK selectors in ANGLE, bmalloc, gtest, JavaScriptCore, WTF
<http://webkit.org/b/139212>

Reviewed by Joseph Pecoraro.

Source/bmalloc:

* Configurations/Base.xcconfig:
- Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
  on OS X.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:
- Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
  on OS X.
- Only set LLVM_LOCAL_HEADER_PATH and LLVM_SYSTEM_HEADER_PATH on
  OS X.
- Set JAVASCRIPTCORE_CONTENTS_DIR and
  JAVASCRIPTCORE_FRAMEWORKS_DIR separately for iOS and OS X.

* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.

* Configurations/JSC.xcconfig:
- Only set CODE_SIGN_ENTITLEMENTS for iOS hardware builds.

* Configurations/JavaScriptCore.xcconfig:
- Set OTHER_LDFLAGS separately for iOS and OS X.
- Set SECTORDER_FLAGS separately for iOS and OS X, but only for
  Production builds.
- Only set EXCLUDED_SOURCE_FILE_NAMES for iOS.

* Configurations/LLVMForJSC.xcconfig:
- Rename LLVM_LIBS_iphoneos to LLVM_LIBS_ios.
- Set LLVM_LIBRARY_PATHS and OTHER_LDFLAGS_LLVM_ENABLE_FTL_JIT
  separately for iOS hardware and OS X.
- Fix curly braces in LIBRARY_SEARCH_PATHS.
- Merge OTHER_LDFLAGS_BASE into OTHER_LDFLAGS. (Could have been
  done before this patch.)

* Configurations/ToolExecutable.xcconfig:
- Only set CODE_SIGN_ENTITLEMENTS for iOS, per target.
- Only set CLANG_ENABLE_OBJC_ARC for i386 on the iOS Simulator.
- Add missing newline.

* Configurations/Version.xcconfig:
- Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.

Source/ThirdParty:

* gtest/xcode/Config/General.xcconfig:
- Only set SDKROOT and TOOLCHAINS on OS X.

Source/ThirdParty/ANGLE:

* Configurations/Base.xcconfig:
- Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
  on OS X.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.

Source/WTF:

* Configurations/Base.xcconfig:
- Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
  on OS X.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177027 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoMark several hidpi compositing tests that fail on EWS bots with ATI graphics.
ap@apple.com [Tue, 9 Dec 2014 18:52:41 +0000 (18:52 +0000)]
Mark several hidpi compositing tests that fail on EWS bots with ATI graphics.

* platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177026 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAX: [ATK] MathML tokens, tables, and row-like elements are exposed with ATK_ROLE_UNKNOWN
jdiggs@igalia.com [Tue, 9 Dec 2014 18:31:53 +0000 (18:31 +0000)]
AX: [ATK] MathML tokens, tables, and row-like elements are exposed with ATK_ROLE_UNKNOWN
https://bugs.webkit.org/show_bug.cgi?id=139402

Reviewed by Chris Fleizach.

Source/WebCore:

Expose tables and their children using existing table AtkRole types,
token elements using the new ATK_ROLE_STATIC, and row-like elements
using ATK_ROLE_PANEL. Also expose <mlabeledtr> as a math table row
and <ms> as math text.

No new tests; instead, added MathML elements to roles-exposed.html.

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isMathToken):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isMathToken):
(WebCore::AccessibilityRenderObject::isMathText):
(WebCore::AccessibilityRenderObject::isMathTableRow):
* accessibility/AccessibilityRenderObject.h:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):
* css/mathml.css:
(ms, mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose):
(mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): Deleted.
* mathml/mathtags.in:

LayoutTests:

* accessibility/roles-exposed.html: Added MathML elements.
* platform/efl/accessibility/roles-exposed-expected.txt: Updated for added elements.
* platform/gtk/accessibility/roles-exposed-expected.txt: Updated for added elements.
* platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for added elements.
* platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for added elements.
* platform/mac/accessibility/roles-exposed-expected.txt: Updated for added elements.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177025 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Apple] Use Accelerate framework to speed-up FEGaussianBlur
dino@apple.com [Tue, 9 Dec 2014 18:31:04 +0000 (18:31 +0000)]
[Apple] Use Accelerate framework to speed-up FEGaussianBlur
https://bugs.webkit.org/show_bug.cgi?id=139310

Unreviewed followup, after comments by Andreas Kling.

It was pointed out that we already have a USE(ACCELERATE), so
we don't need a HAVE(ACCELERATE) :)

Source/WebCore:

* platform/graphics/filters/FEGaussianBlur.cpp:
(WebCore::FEGaussianBlur::platformApplyGeneric):
(WebCore::FEGaussianBlur::platformApply):

Source/WTF:

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177024 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUndefined Symbol build error "_objc_registerThreadWithCollector" when building WebKit...
berto@igalia.com [Tue, 9 Dec 2014 18:21:16 +0000 (18:21 +0000)]
Undefined Symbol build error "_objc_registerThreadWithCollector" when building WebKit GTK Mac OS X on Snow Leopard
https://bugs.webkit.org/show_bug.cgi?id=58737

Reviewed by Darin Adler.

Replace OS(MAC_OS_X) with PLATFORM(MAC) to prevent using
osx-specific code in WebKitGTK+ builds.

* wtf/ThreadingPthreads.cpp:
(WTF::initializeCurrentThreadInternal):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177023 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnreviewed. Style fix following r177019.
berto@igalia.com [Tue, 9 Dec 2014 17:53:31 +0000 (17:53 +0000)]
Unreviewed. Style fix following r177019.

Use nullptr instead of 0.

* bindings/gobject/ConvertToUTF8String.cpp:
(convertToUTF8String):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177022 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRefactor of rebuildFloatingObjectSetFromIntrudingFloats function after r176957.
jfernandez@igalia.com [Tue, 9 Dec 2014 17:44:40 +0000 (17:44 +0000)]
Refactor of rebuildFloatingObjectSetFromIntrudingFloats function after r176957.
https://bugs.webkit.org/show_bug.cgi?id=139445

Reviewed by Darin Adler.

The function rebuildFloatingObjectSetFromIntrudingFloats would be clearer if
we use a helper function to locate the previous sibling with overhanging floats.

These changes has been suggested as part of the patch review for bug #139150, which
landed in r176957.

No new tests, no behavior change.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::avoidsFloats):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::previousSiblingWithOverhangingFloats):
(WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats):
* rendering/RenderBlockFlow.h:
* rendering/RenderBox.h:
(WebCore::RenderBox::isGridItem):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177021 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoGive WebsiteDataStore a unique ID
andersca@apple.com [Tue, 9 Dec 2014 17:16:12 +0000 (17:16 +0000)]
Give WebsiteDataStore a unique ID
https://bugs.webkit.org/show_bug.cgi?id=139448

Reviewed by Andreas Kling.

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters):
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::generateIdentifier):
(WebKit::WebsiteDataStore::WebsiteDataStore):
* UIProcess/WebsiteData/WebsiteDataStore.h:
(WebKit::WebsiteDataStore::identifier):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177020 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoconvertToUTF8String converts null string to empty string
berto@igalia.com [Tue, 9 Dec 2014 17:11:18 +0000 (17:11 +0000)]
convertToUTF8String converts null string to empty string
https://bugs.webkit.org/show_bug.cgi?id=133904

Reviewed by Carlos Garcia Campos.

Source/WebCore:

Test added to Tools/TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp

Return 0 if the string is null.

* bindings/gobject/ConvertToUTF8String.cpp:
(convertToUTF8String):

Tools:

Test that trying to get the value of a non-existent attribute
returns 0 instead of an empty string.

* TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::testInsertion):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177019 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoBuild fix.
andersca@apple.com [Tue, 9 Dec 2014 15:57:55 +0000 (15:57 +0000)]
Build fix.

* UIProcess/API/Cocoa/_WKWebsiteDataStore.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177018 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWhen invalidating fullscreen, cancel instead of stop optimizedFullscfreen.
commit-queue@webkit.org [Tue, 9 Dec 2014 12:43:21 +0000 (12:43 +0000)]
When invalidating fullscreen, cancel instead of stop optimizedFullscfreen.
https://bugs.webkit.org/show_bug.cgi?id=139145

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-12-09
Reviewed by Eric Carlson.

* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::invalidate): call cancel instead of stop
* platform/spi/ios/AVKitSPI.h: add -cancelOptimizedFullscreen.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177017 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] LDFLAGS is ignored when running g-ir-scanner
commit-queue@webkit.org [Tue, 9 Dec 2014 10:20:27 +0000 (10:20 +0000)]
[GTK] LDFLAGS is ignored when running g-ir-scanner
https://bugs.webkit.org/show_bug.cgi?id=138832

Patch by Ting-Wei Lan <lantw44@gmail.com> on 2014-12-09
Reviewed by Carlos Garcia Campos.

GTK+ requires libintl on FreeBSD because there is no gettext
implementation in FreeBSD libc. In order to link to libintl, which is
not located in the default search path of the linker, we need to add
the required path via the linker command line. However, LDFLAGS is
ignored when running g-ir-scanner starting from r167873, so we have
to manually pick required flags from CMAKE_SHARED_LINKER_FLAGS and
put them in correct order to prevent g-ir-scanner from linking to
the installed version of libraries.

* PlatformGTK.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177016 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Media][GTK][EFL] Reduce style updates (painting) in controls
berto@igalia.com [Tue, 9 Dec 2014 10:04:02 +0000 (10:04 +0000)]
[Media][GTK][EFL] Reduce style updates (painting) in controls
https://bugs.webkit.org/show_bug.cgi?id=137773

Reviewed by Carlos Garcia Campos.

Don't update media controls if they are not visible, and
initialize slider to a zero value.

* Modules/mediacontrols/mediaControlsBase.js:
(Controller.prototype.createControls):
(Controller.prototype.handleDurationChange):
(Controller.prototype.updateProgress):
(Controller.prototype.updateTime):
* Modules/mediacontrols/mediaControlsGtk.js:
(ControllerGtk.prototype.updateTime):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177015 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GStreamer] Add video/mp2t as alternative mimetype for MPEG TS
commit-queue@webkit.org [Tue, 9 Dec 2014 09:51:34 +0000 (09:51 +0000)]
[GStreamer] Add video/mp2t as alternative mimetype for MPEG TS
https://bugs.webkit.org/show_bug.cgi?id=139433

Patch by Sebastian Dröge <sebastian@centricular.com> on 2014-12-09
Reviewed by Philippe Normand.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::mimeTypeCache):
It's used e.g. on http://www.jwplayer.com/html5/mediasource/ .

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177014 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] Bump minimum version of ATK used by jhbuild to at least 2.15.2
jdiggs@igalia.com [Tue, 9 Dec 2014 09:20:05 +0000 (09:20 +0000)]
[GTK] Bump minimum version of ATK used by jhbuild to at least 2.15.2
https://bugs.webkit.org/show_bug.cgi?id=139070

Reviewed by Carlos Garcia Campos.

Tools:

* gtk/jhbuild.modules:

LayoutTests:

* platform/gtk/accessibility/roles-exposed-expected.txt: Updated to reflect
the fact that the exposed role is STATIC and not UNKNOWN.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177013 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoEnable activating optimized fullscreen mode from standard fulscreen mode.
commit-queue@webkit.org [Tue, 9 Dec 2014 08:25:09 +0000 (08:25 +0000)]
Enable activating optimized fullscreen mode from standard fulscreen mode.
https://bugs.webkit.org/show_bug.cgi?id=139137

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-12-09
Source/WebCore:

Reviewed by Jer Noble.

Going from standard fullscreen mode to optimized fullscreen mode requires the ability to
update the fullscreen mode in HTMLMediaElement and a new standard-and-optimized-fullscreen mode.

This change KVO observes AVKit's optimizedFullscreenActive and forwards the change down to HTMLMediaElement so it can adjust behavior appropriately.
It also hides the standard fullscreen window when going into this mode.
When exiting fullscreen from standard-and-optimized, first exit fullscreen immediately, then stopOptimizedFullscreen, and notify of completion when
optimizedFullscreen goes inactive.

* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::fullscreenMode):
    Treat VideoFullscreenModeStandardAndOptimized as a kind of optimized mode.
* WebCore.exp.in: New export for WebVideoFullscreenModelVideoElement::fullscreenModeChanged
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::displayType):
    Treat VideoFullscreenModeStandardAndOptimized as a kind of optimized mode.
* html/HTMLMediaElement.h: Add new fullscreen mode.
(WebCore::HTMLMediaElement::fullscreenModeChanged): Update fullscreen mode so it does optimized fullscreen mode behaviors when applicable.
* platform/ios/WebVideoFullscreenInterfaceAVKit.h: Declare setOptimizedActive
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVVideoLayer setPlayerViewController:]): observe optimizedFullscreenActive
(-[WebAVVideoLayer observeValueForKeyPath:ofObject:change:context:]): respond to changes to optimizedFullscreenActive
(WebVideoFullscreenInterfaceAVKit::WebVideoFullscreenInterfaceAVKit): Init members.
(WebVideoFullscreenInterfaceAVKit::playerController):
    Give player controller a reference to the WebVideoFullscreenInterface so it can pass along mode change state.
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): Handle new fullscreen modes.
(WebVideoFullscreenInterfaceAVKit::exitFullscreen): ditto
(WebVideoFullscreenInterfaceAVKit::invalidate): ditto
(WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): ditto
(WebVideoFullscreenInterfaceAVKit::setOptimizedActive): Handle changes to fullscreen mode.
    Also handle the case that exiting fullscreen happend when optimized mode ends.
* platform/ios/WebVideoFullscreenModel.h: declare fullscreenModeChanged()
* platform/ios/WebVideoFullscreenModelVideoElement.h: declare fullscreenModeChanged()
* platform/ios/WebVideoFullscreenModelVideoElement.mm: add fullscreenModeChanged()
(WebVideoFullscreenModelVideoElement::WebVideoFullscreenModelVideoElement): Init members.
(WebVideoFullscreenModelVideoElement::fullscreenModeChanged): Added. Update video element fullscreen mode.

Source/WebKit2:

Reviewed by Simon Fraser.

Going from standard fullscreen mode to optimized fullscreen mode requires the ability to
update the fullscreen mode and a new standard-and-optimized-fullscreen mode.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isPlayingFullscreenOptimizedVideo]):
Treat new standard-and-optimized as a kind of optimized.
* UIProcess/ios/WebVideoFullscreenManagerProxy.h: IPC fullscreen mode changes
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm: ditto
(WebKit::WebVideoFullscreenManagerProxy::fullscreenModeChanged): dito
* WebProcess/ios/WebVideoFullscreenManager.h: ditto
* WebProcess/ios/WebVideoFullscreenManager.messages.in: ditto
* WebProcess/ios/WebVideoFullscreenManager.mm: dito
(WebKit::WebVideoFullscreenManager::WebVideoFullscreenManager): ditto
(WebKit::WebVideoFullscreenManager::setFullscreenModeChanged): ditto

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177012 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION (r158036): WebView cannot handle HTTP Basic Authentication challenge
ap@apple.com [Tue, 9 Dec 2014 07:26:42 +0000 (07:26 +0000)]
REGRESSION (r158036): WebView cannot handle HTTP Basic Authentication challenge
https://bugs.webkit.org/show_bug.cgi?id=138843
rdar://problem/18793695

Reviewed by Dan Bernstein.

* Panels/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel cancel:]):
(-[WebAuthenticationPanel logIn:]):
Don't close the panel before using panel.sheetParent, because the parent becomes nil.
In fact, we don't need to close it at all, it's enough to call orderOut:, and even
that only when using an old NSWindow API.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177011 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix EFL build fix since r177001
gyuyoung.kim@samsung.com [Tue, 9 Dec 2014 05:53:00 +0000 (05:53 +0000)]
Fix EFL build fix since r177001
https://bugs.webkit.org/show_bug.cgi?id=139428

Unreviewed, EFL build fix.

Do not inherit duplicated class. ExpressionNode is already
child of ParserArenaFreeable class.

* parser/Nodes.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177010 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix Build Warning in JavaScriptCore ControlFlowProfiler::dumpData() api.
commit-queue@webkit.org [Tue, 9 Dec 2014 05:24:34 +0000 (05:24 +0000)]
Fix Build Warning in JavaScriptCore ControlFlowProfiler::dumpData() api.
https://bugs.webkit.org/show_bug.cgi?id=139384

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-12-08
Reviewed by Mark Lam.

Fix Build Warning by using dataLog() function instead of dataLogF() function.

* runtime/ControlFlowProfiler.cpp:
(JSC::ControlFlowProfiler::dumpData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177009 268f45cc-cd09-0410-ab3c-d52691b4dbfc