WebKit-https.git
6 years agoRemove stale include, header was removed in r170101.
joepeck@webkit.org [Wed, 18 Jun 2014 19:14:51 +0000 (19:14 +0000)]
Remove stale include, header was removed in r170101.

Unreviewed build fix.

* Shared/API/Cocoa/WebKitPrivate.h:

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

6 years agoDFGGraph::m_doubleConstantMap will not map 0 values correctly.
mark.lam@apple.com [Wed, 18 Jun 2014 18:57:12 +0000 (18:57 +0000)]
DFGGraph::m_doubleConstantMap will not map 0 values correctly.
<https://webkit.org/b/133994>

Reviewed by Geoffrey Garen.

DFGGraph::m_doubleConstantsMap should not use a double as a key to its HashMap,
because it means two unfortunate things:
- It will probably break for zero.
- It will think that -0 is the same as +0 under some circumstances, size
  -0==+0 even though they are distinct values (for example 1/-0 != 1/+0).

The fix is to use std::unordered_map which does not require special empty
and deleted values, and to use the raw bits instead of the double value as
the key.

* dfg/DFGGraph.h:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::addressOfDoubleConstant):

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

6 years agoAdd CF type cast function templates and use them in KeyedDecoder in WebKit2
andersca@apple.com [Wed, 18 Jun 2014 18:03:16 +0000 (18:03 +0000)]
Add CF type cast function templates and use them in KeyedDecoder in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=134033

Reviewed by Sam Weinig.

Source/WebKit2:
* Shared/cf/KeyedDecoder.cpp:
(WebKit::KeyedDecoder::KeyedDecoder):
(WebKit::KeyedDecoder::decodeBytes):
(WebKit::KeyedDecoder::decodeBool):
(WebKit::KeyedDecoder::decodeInt32):
(WebKit::KeyedDecoder::decodeInt64):
(WebKit::KeyedDecoder::decodeFloat):
(WebKit::KeyedDecoder::decodeDouble):
(WebKit::KeyedDecoder::decodeString):
(WebKit::KeyedDecoder::beginObject):
(WebKit::KeyedDecoder::beginArray):
(WebKit::KeyedDecoder::beginArrayElement):

Source/WTF:
* WTF.xcodeproj/project.pbxproj:
* wtf/cf/TypeCasts.h: Added.
(WTF::dynamic_cf_cast):
Returns null if the given CFTypeRef object doesn't have the right type.

(WTF::checked_cf_cast):
ASSERTs (with security implication) if the given CFTypeRef object is null or doesn't have the right type.

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

6 years agoRemove duplicate code using sdiv.
achristensen@apple.com [Wed, 18 Jun 2014 17:58:28 +0000 (17:58 +0000)]
Remove duplicate code using sdiv.
https://bugs.webkit.org/show_bug.cgi?id=133764

Reviewed by Daniel Bates.

Source/JavaScriptCore:
* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::sdiv):
Make sdiv a template to match arm64.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArithDiv):
(JSC::DFG::SpeculativeJIT::compileArithMod):
Remove duplicate code that was identical except for sdiv not being a template.

Source/WebCore:
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::modulo):
Use template sdiv for apple armv7s and arm64.

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

6 years agoScriptExecutionContext::Task parameters should always be rvalue references
zandobersek@gmail.com [Wed, 18 Jun 2014 17:53:33 +0000 (17:53 +0000)]
ScriptExecutionContext::Task parameters should always be rvalue references
https://bugs.webkit.org/show_bug.cgi?id=133615

Reviewed by Darin Adler.

ScriptExecutionContext::Task parameters should be rvalue references as the
passed-in objects are always ScriptExecutionContext::Task rvalues that were
implicitly constructed from a lambda function or rvalues of objects that
derive from ScriptExecutionContext::Task.

This isn't really necessary since ScriptExecutionContext::Task is non-copyable
and we have to use move semantics anyway, but it makes it clear that these
objects are expiring rvalues that must be properly dealt with.

* dom/Document.cpp:
(WebCore::Document::postTask):
* dom/Document.h:
* dom/ScriptExecutionContext.h:
* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::postTaskToLoader):
(WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::postTask):
* workers/WorkerGlobalScope.h:
* workers/WorkerLoaderProxy.h:
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::postTaskToLoader):
(WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):
* workers/WorkerMessagingProxy.h:
* workers/WorkerRunLoop.cpp:
(WebCore::WorkerRunLoop::postTask):
(WebCore::WorkerRunLoop::postTaskAndTerminate):
(WebCore::WorkerRunLoop::postTaskForMode):
(WebCore::WorkerRunLoop::Task::create):
(WebCore::WorkerRunLoop::Task::Task):
* workers/WorkerRunLoop.h:

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

6 years ago[GTK] Bump the GLib and GTK+ dependencies in jhbuild-wayland.modules
zandobersek@gmail.com [Wed, 18 Jun 2014 17:48:25 +0000 (17:48 +0000)]
[GTK] Bump the GLib and GTK+ dependencies in jhbuild-wayland.modules
https://bugs.webkit.org/show_bug.cgi?id=133971

Reviewed by Martin Robinson.

* gtk/jhbuild-wayland.modules: Bump the GTK+ dependency that's required for
building for the Wayland target. The latest 3.12 version is required to match
the xdg_shell protocol version used in Weston 1.5. GLib dependency is bumped
as well due to GTK+ depending on a newer version.

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

6 years ago[WinCairo] Compile errors when trying to compile CA code.
commit-queue@webkit.org [Wed, 18 Jun 2014 17:20:39 +0000 (17:20 +0000)]
[WinCairo] Compile errors when trying to compile CA code.
https://bugs.webkit.org/show_bug.cgi?id=134030

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-06-18
Reviewed by Simon Fraser.

WinCairo does not USE(CA).

* WebCore.vcxproj/WebCore.vcxproj:
* platform/graphics/ca/TileController.h:

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

6 years agoUnreviewed, rolling out r170099.
commit-queue@webkit.org [Wed, 18 Jun 2014 17:08:10 +0000 (17:08 +0000)]
Unreviewed, rolling out r170099.
https://bugs.webkit.org/show_bug.cgi?id=134031

Introduced a layouttest failure to the mac bots (Requested by
bradeeoh on #webkit).

Reverted changeset:

"Mark mathml/wbr-in-mroot-crash.html as "Timeout Pass""
https://bugs.webkit.org/show_bug.cgi?id=130353
http://trac.webkit.org/changeset/170099

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

6 years agoRemove the unused _WKBackForwardListDidChangeNotification.
mitz@apple.com [Wed, 18 Jun 2014 17:02:18 +0000 (17:02 +0000)]
Remove the unused _WKBackForwardListDidChangeNotification.

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKBackForwardList.mm:
* UIProcess/API/Cocoa/WKBackForwardListInternal.h:
* UIProcess/API/Cocoa/WKBackForwardListPrivate.h: Removed.
* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::LoaderClient::didChangeBackForwardList): Deleted.
* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoSet main thread QoS policies after IPC initialization.
akling@apple.com [Wed, 18 Jun 2014 15:09:26 +0000 (15:09 +0000)]
Set main thread QoS policies after IPC initialization.
<https://webkit.org/b/134014>

Something was flipping the QoS level back to "unspecified" after
setting it in the ChildProcess initialization code. Pending a better
understanding of what really happens, move the code to a later stage,
after IPC channels are up and running. Now the priority sticks.

Reviewed by Anders Carlsson.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::initialize):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):

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

6 years agoMark mathml/wbr-in-mroot-crash.html as "Timeout Pass"
fred.wang@free.fr [Wed, 18 Jun 2014 07:45:50 +0000 (07:45 +0000)]
Mark mathml/wbr-in-mroot-crash.html as "Timeout Pass"
https://bugs.webkit.org/show_bug.cgi?id=130353

Unreviewed gardening.

* platform/efl/TestExpectations:
* platform/mac/TestExpectations:

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

6 years agoVersioning.
lforschler@apple.com [Wed, 18 Jun 2014 06:54:42 +0000 (06:54 +0000)]
Versioning.

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

6 years ago[EFL] Turn on NOSNIFF in FeatureList.pm
ryuan.choi@samsung.com [Wed, 18 Jun 2014 06:21:26 +0000 (06:21 +0000)]
[EFL] Turn on NOSNIFF in FeatureList.pm
https://bugs.webkit.org/show_bug.cgi?id=134010

Reviewed by Csaba Osztrogonác.

r164848 enabled NOSNIFF feature for EFL port but missed to change FeatureList.pm.

* Scripts/webkitperl/FeatureList.pm: Turn on NOSNIFF for the EFL port.

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

6 years agoMiniBrowser should show Web Content process pids in the window title
timothy_horton@apple.com [Wed, 18 Jun 2014 06:19:08 +0000 (06:19 +0000)]
MiniBrowser should show Web Content process pids in the window title
https://bugs.webkit.org/show_bug.cgi?id=134016

Reviewed by Sam Weinig.

* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController observeValueForKeyPath:ofObject:change:context:]):

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

6 years ago[Cocoa] WKWebView's _privateBrowsingEnabled property is unused
mitz@apple.com [Wed, 18 Jun 2014 04:27:41 +0000 (04:27 +0000)]
[Cocoa] WKWebView's _privateBrowsingEnabled property is unused
https://bugs.webkit.org/show_bug.cgi?id=134013

Reviewed by Sam Weinig.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _privateBrowsingEnabled]): Deleted.
(-[WKWebView _setPrivateBrowsingEnabled:]): Deleted.
* UIProcess/API/Cocoa/WKWebViewPrivate.h:

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

6 years agoFix 'lint-test-files' warnings on run-webkit-test -2
zalan@apple.com [Wed, 18 Jun 2014 02:48:54 +0000 (02:48 +0000)]
Fix 'lint-test-files' warnings on run-webkit-test -2
https://bugs.webkit.org/show_bug.cgi?id=134011

Unreviewed.

Remove entries referring to non-existing files from TestExpectations.

* platform/mac-wk2/TestExpectations:

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

6 years ago[iOS][wk2] Use ImageDocument to display subframe PDFs
timothy_horton@apple.com [Wed, 18 Jun 2014 01:35:32 +0000 (01:35 +0000)]
[iOS][wk2] Use ImageDocument to display subframe PDFs
https://bugs.webkit.org/show_bug.cgi?id=133944
<rdar://problem/17205983>

Reviewed by Dan Bates.

* dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::createDocument):
Make a ImageDocument to show our subframe PDF, if the setting is enabled.

* html/ImageDocument.cpp:
(WebCore::ImageDocument::finishedParsing):
(WebCore::ImageDocument::createDocumentStructure):
Set the ResourceResponse on the ImageElement upon creation, instead of
when the load finishes. This way, when the internal CachedImage creates
its Image, it can have the correct MIME type for the response, and can
make a PDFDocumentImage if necessary.

We never noticed this before because CachedImage falls back to making a
BitmapImage, and that was the only case that was normally used.

Throw an explicit white background behind PDF ImageDocuments; PDFDocumentImage
paints with a transparent background, but when used as an ImageDocument
it seems reasonable to assume that there should be a white page background
(similar to what PDFPlugin and friends do).

* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::createDocument):
Don't make a PDFDocument if we want to use an ImageDocument for this subframe PDF.

* page/Settings.in:

* platform/MIMETypeRegistry.cpp:
(WebCore::MIMETypeRegistry::isPDFMIMEType):
* platform/MIMETypeRegistry.h:
Expose the already implemented pdfMIMETypes table just like all the rest.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Always use ImageDocument for subframe PDFs in WebKit2 on iOS.

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

6 years agoUnreviewed build fix with ENABLE_NOSNIFF after r170021
ryuan.choi@samsung.com [Wed, 18 Jun 2014 00:32:03 +0000 (00:32 +0000)]
Unreviewed build fix with ENABLE_NOSNIFF after r170021

* loader/cache/CachedScript.cpp:
(WebCore::CachedScript::mimeTypeAllowedByNosniff):

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

6 years agoWeb Inspector: PrettyPrinting regression on "var a=1"
commit-queue@webkit.org [Wed, 18 Jun 2014 00:28:51 +0000 (00:28 +0000)]
Web Inspector: PrettyPrinting regression on "var a=1"
https://bugs.webkit.org/show_bug.cgi?id=134001

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-06-17
Reviewed by Timothy Hatcher.

Previously operators did not get a token type. After a CodeMirror
update they now have a token type of "operator".

* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* UserInterface/Views/CodeMirrorFormatters.js:

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

6 years agoMake it possible to use -[NSBundle classNamed:] to find WebKitLegacy classes
andersca@apple.com [Wed, 18 Jun 2014 00:17:37 +0000 (00:17 +0000)]
Make it possible to use -[NSBundle classNamed:] to find WebKitLegacy classes
https://bugs.webkit.org/show_bug.cgi?id=134008
<rdar://problem/17037600>

Reviewed by Dan Bernstein.

* UIProcess/API/Cocoa/LegacyBundleForClass.mm: Added.
* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoUnreviewed, rolling out r170082.
commit-queue@webkit.org [Wed, 18 Jun 2014 00:02:52 +0000 (00:02 +0000)]
Unreviewed, rolling out r170082.
https://bugs.webkit.org/show_bug.cgi?id=134006

Breaks build. (Requested by mlam on #webkit).

Reverted changeset:

"DFGGraph::m_doubleConstantMap will not map 0 values
correctly."
https://bugs.webkit.org/show_bug.cgi?id=133994
http://trac.webkit.org/changeset/170082

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

6 years agoAdded Jono Wells <jonowells@apple.com> to contributors.json file.
jonowells@apple.com [Wed, 18 Jun 2014 00:02:34 +0000 (00:02 +0000)]
Added Jono Wells <jonowells@apple.com> to contributors.json file.

* Scripts/webkitpy/common/config/contributors.json:

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

6 years agoExpose the location of website data
andersca@apple.com [Tue, 17 Jun 2014 23:36:45 +0000 (23:36 +0000)]
Expose the location of website data
https://bugs.webkit.org/show_bug.cgi?id=134000
<rdar://problem/17350498>

Reviewed by Dan Bernstein.

Also, remove the bundle ID from the website data path for containerized apps.

* Shared/mac/SandboxUtilities.cpp:
(WebKit::processIsAppSandboxed):
* Shared/mac/SandboxUtilities.h:
* UIProcess/API/Cocoa/WKProcessPool.mm:
(+[WKProcessPool _websiteDataURLForContainerWithURL:]):
(websiteDataDirectoryURL):
* UIProcess/API/Cocoa/WKProcessPoolPrivate.h:

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

6 years agoImprove enter and exit fullscreen transition by using two step transition.
commit-queue@webkit.org [Tue, 17 Jun 2014 23:33:16 +0000 (23:33 +0000)]
Improve enter and exit fullscreen transition by using two step transition.
https://bugs.webkit.org/show_bug.cgi?id=133706

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-17
Reviewed by Simon Fraser.

Source/WebCore:
setupFullscreen, creates the fullscreen views ready to receive the video layer.
Once they are in place, didSetupFullscreen will move the video layer into the
new view hierarchy and initiate enterFullscreen to animate.

Reverse process for exit fullscreen.

* WebCore.exp.in: Add exports.
* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(-[WebVideoFullscreenController enterFullscreen:]):
Refactor into didSetupFullscreen.
(-[WebVideoFullscreenController didSetupFullscreen]):
Move the video layer once fullscreen is ready to receive it.
(-[WebVideoFullscreenController didExitFullscreen]):
Move the video layer back into we the web page, and initiate cleanup.
(-[WebVideoFullscreenController didCleanupFullscreen]):
Refactord cleanup from didExitFullscreen.
* platform/ios/WebVideoFullscreenInterfaceAVKit.h: Add delcarations.
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::setupFullscreen):
Refactored from enterFullscreen. Builds views ready to receive video layer.
(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
Animates into fullscreen.
(WebVideoFullscreenInterfaceAVKit::exitFullscreen):
Animates from fullscreen. Cleanup is refactored into cleanupFullscreen()
(WebVideoFullscreenInterfaceAVKit::cleanupFullscreen):
Refactored from exitFullscreen(), removes views.

Source/WebKit2:
Add setupFullscreen()/didSetupFullscreen() and cleanupFullscreen()/didCleanupFullscreen()
to the proxies. And refactor enter/exit fullscreen to do some of the work in setup/cleanup.

* UIProcess/ios/WebVideoFullscreenManagerProxy.h:
Add four methods mentioned above.
* UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
Add Setup/Cleanup functions.
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): does what enterFullscreen used to do.
(WebKit::WebVideoFullscreenManagerProxy::didCleanupFullscreen): forward IPC.
(WebKit::WebVideoFullscreenManagerProxy::didSetupFullscreen): forward IPC.
(WebKit::WebVideoFullscreenManagerProxy::enterFullscreenWithID): changed to enterFullscreen
* WebProcess/ios/WebVideoFullscreenManager.h: Add didSetup/didCleanup
* WebProcess/ios/WebVideoFullscreenManager.messages.in: Add didSetup/didCleanup
* WebProcess/ios/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::enterFullscreenForNode): refactored,
some implementation moves to didSetupFullscreen.
(WebKit::WebVideoFullscreenManager::didSetupFullscreen):
Moves the video layer over to the hosted layer, and initiates fullscreen.
(WebKit::WebVideoFullscreenManager::didExitFullscreen): refactored,
some implementation moves to didCleanupFullscreen, and initiates cleanup.
(WebKit::WebVideoFullscreenManager::didCleanupFullscreen):
Final cleanup refactored from didExitFullscreen()

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

6 years agoDFGGraph::m_doubleConstantMap will not map 0 values correctly.
mark.lam@apple.com [Tue, 17 Jun 2014 23:05:48 +0000 (23:05 +0000)]
DFGGraph::m_doubleConstantMap will not map 0 values correctly.
<https://webkit.org/b/133994>

Reviewed by Geoffrey Garen.

DFGGraph::m_doubleConstantsMap should not use a double as a key to its HashMap,
because it means two unfortunate things:
- It will probably break for zero.
- It will think that -0 is the same as +0 under some circumstances, size
  -0==+0 even though they are distinct values (for example 1/-0 != 1/+0).

The fix is to use std::unordered_map which does not require special empty
and deleted values, and to use the raw bits instead of the double value as
the key.

* dfg/DFGGraph.h:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::addressOfDoubleConstant):

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

6 years agoMisused PLATFORM(MIDDLE_ENDIAN) and PLATFORM(BIG_ENDIAN).
tgergely.u-szeged@partner.samsung.com [Tue, 17 Jun 2014 22:35:21 +0000 (22:35 +0000)]
Misused PLATFORM(MIDDLE_ENDIAN) and PLATFORM(BIG_ENDIAN).
https://bugs.webkit.org/show_bug.cgi?id=128301

Reviewed by Daniel Bates.

Endianness is a CPU attribute, not a PLATFORM. PLATFORM() macro is replaced to CPU().

* wtf/text/ASCIIFastPath.h:
(WTF::copyLCharsFromUCharSource):

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

6 years agoWeb Inspector: Two lines in CSS rule are hidden until resize or click
jonowells@apple.com [Tue, 17 Jun 2014 22:35:07 +0000 (22:35 +0000)]
Web Inspector: Two lines in CSS rule are hidden until resize or click
https://bugs.webkit.org/show_bug.cgi?id=133951

Reviewed by Joseph Pecoraro.

Update to CodeMirror 4.2 fixed the issue.

* Tools/PrettyPrinting/codemirror.js:
* Tools/PrettyPrinting/css.js:
* Tools/PrettyPrinting/javascript.js:
* UserInterface/External/CodeMirror/clojure.js:
* UserInterface/External/CodeMirror/closebrackets.js:
* UserInterface/External/CodeMirror/codemirror.js:
* UserInterface/External/CodeMirror/coffeescript.js:
* UserInterface/External/CodeMirror/comment.js:
* UserInterface/External/CodeMirror/css.js:
* UserInterface/External/CodeMirror/htmlmixed.js:
* UserInterface/External/CodeMirror/javascript.js:
* UserInterface/External/CodeMirror/livescript.js:
* UserInterface/External/CodeMirror/matchbrackets.js:
* UserInterface/External/CodeMirror/overlay.js:
* UserInterface/External/CodeMirror/placeholder.js:
* UserInterface/External/CodeMirror/runmode.js:
* UserInterface/External/CodeMirror/sass.js:
* UserInterface/External/CodeMirror/searchcursor.js:
* UserInterface/External/CodeMirror/sql.js:
* UserInterface/External/CodeMirror/xml.js:
Update CodeMirror 4.1 to CodeMirror 4.2.0.

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

6 years agoFix error messages for incorrect hex literals
oliver@apple.com [Tue, 17 Jun 2014 22:29:56 +0000 (22:29 +0000)]
Fix error messages for incorrect hex literals
https://bugs.webkit.org/show_bug.cgi?id=133998

Reviewed by Mark Lam.

Source/JavaScriptCore:
Ensure that the error messages for bogus hex literals actually
make sense.

* parser/Lexer.cpp:
(JSC::Lexer<T>::lex):
* parser/ParserTokens.h:

LayoutTests:
Update tests for sane error messages.

* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T1-expected.txt:
* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T2-expected.txt:
* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T1-expected.txt:
* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T2-expected.txt:

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

6 years ago[GTK] Fix the handling of resize events after r169505.
commit-queue@webkit.org [Tue, 17 Jun 2014 22:27:16 +0000 (22:27 +0000)]
[GTK] Fix the handling of resize events after r169505.
https://bugs.webkit.org/show_bug.cgi?id=133517

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-17
Reviewed by Martin Robinson.

Tools:
* Scripts/webkitpy/port/xvfbdriver.py:
(XvfbDriver._start): Set the resolution of Xvfb to XGA (1024x768).
The tests css3/viewport-percentage-lengths/viewport-percentage-lengths-*.html
need at least 900x640 pixels to pass.
* Scripts/webkitpy/port/xvfbdriver_unittest.py:
(XvfbDriverTest.test_start_no_pixel_tests): Update resolution.
(XvfbDriverTest.test_start_pixel_tests): Update resolution.
(XvfbDriverTest.test_start_arbitrary_worker_number): Update resolution.
(XvfbDriverTest.test_start_next_worker): Update resolution.
* WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::PlatformWebView): gtk_widget_size_allocate should
be requested over the main widget instead of the window.
(WTR::PlatformWebView::resizeTo): Changed this to call setWindowFrame like
the Mac port.
(WTR::PlatformWebView::windowFrame): Remove legacy ifdef for GTK2.
(WTR::PlatformWebView::setWindowFrame): Set the size and position
of the Window and the web view.

LayoutTests:
* platform/gtk/TestExpectations: Remove the expectations for the
tests that now pass.
* platform/gtk/fast/dom/rtl-scroll-to-leftmost-and-resize-expected.txt:
Rebaseline results.

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

6 years agoWeb Inspector: style declaration editor: visual highlight doesn't match actual select...
jonowells@apple.com [Tue, 17 Jun 2014 22:26:15 +0000 (22:26 +0000)]
Web Inspector: style declaration editor: visual highlight doesn't match actual selected text
https://bugs.webkit.org/show_bug.cgi?id=133965

Reviewed by Joseph Pecoraro.

Update styles for css style editor to fix highlighting visual mismatch glitch.

* UserInterface/Views/CSSStyleDeclarationTextEditor.css:
(.css-style-text-editor > .CodeMirror .CodeMirror-placeholder):
(.css-style-text-editor > .CodeMirror pre):
(.css-style-text-editor.read-only > .CodeMirror pre):
Updated styles to eliminate highlight mismatch by adjusting the padding and
text-indent values.

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

6 years agoFixes bug where building JSC sometimes crashes at build-symbol-table-index.py. Also...
mmirman@apple.com [Tue, 17 Jun 2014 22:17:26 +0000 (22:17 +0000)]
Fixes bug where building JSC sometimes crashes at build-symbol-table-index.py. Also adds licenses.
https://bugs.webkit.org/show_bug.cgi?id=133814

Reviewed by Filip Pizlo.

Adds the "shopt -s nullglob" line necessary to prevent the loop in the shell
script from using "*.o" as a file when no other files in the directory exist.

* build-symbol-table-index.sh: Added license.
* copy-llvm-ir-to-derived-sources.sh: Added license and "shopt -s nullglob" line.

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

6 years ago[iOS] enable background audio in WK2
eric.carlson@apple.com [Tue, 17 Jun 2014 22:05:59 +0000 (22:05 +0000)]
[iOS] enable background audio in WK2
https://bugs.webkit.org/show_bug.cgi?id=133996

Reviewed by Jer Noble.

* WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Mark as
    allowed to play audio when in the background.
* WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: Ditto.

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

6 years agoRemove unnecessary Structure flags from generated bindings
weinig@apple.com [Tue, 17 Jun 2014 21:50:19 +0000 (21:50 +0000)]
Remove unnecessary Structure flags from generated bindings
https://bugs.webkit.org/show_bug.cgi?id=133992

Reviewed by Daniel Bates.

- Remove OverridesVisitChildren flag from DOM prototype objects. They never
  implement visitChildren.
- Remove OverridesGetOwnPropertySlot and ImplementsHasInstance from DOM constructor
  objects. getOwnPropertySlot is never implemented and ImplementsHasInstance is inherited
  automatically from DOMConstructorObject.
- If we are not changing any flags, we now don't emit StructureFlags at all for the class.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GeneratePrototypeDeclaration):
(GenerateConstructorDeclaration):
* bindings/scripts/test/JS/JSTestActiveDOMObject.h:
(WebCore::JSTestActiveDOMObjectPrototype::JSTestActiveDOMObjectPrototype):
(WebCore::JSTestActiveDOMObjectConstructor::createStructure):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
(WebCore::JSTestCustomNamedGetterPrototype::JSTestCustomNamedGetterPrototype):
(WebCore::JSTestCustomNamedGetterConstructor::createStructure):
* bindings/scripts/test/JS/JSTestEventConstructor.h:
(WebCore::JSTestEventConstructorPrototype::JSTestEventConstructorPrototype):
* bindings/scripts/test/JS/JSTestEventTarget.h:
(WebCore::JSTestEventTargetPrototype::JSTestEventTargetPrototype):
(WebCore::JSTestEventTargetConstructor::createStructure):
* bindings/scripts/test/JS/JSTestException.h:
(WebCore::JSTestExceptionPrototype::JSTestExceptionPrototype):
(WebCore::JSTestExceptionConstructor::createStructure):
* bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
(WebCore::JSTestGenerateIsReachablePrototype::JSTestGenerateIsReachablePrototype):
(WebCore::JSTestGenerateIsReachableConstructor::createStructure):
* bindings/scripts/test/JS/JSTestInterface.h:
(WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
(WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
* bindings/scripts/test/JS/JSTestNamedConstructor.h:
(WebCore::JSTestNamedConstructorPrototype::JSTestNamedConstructorPrototype):
(WebCore::JSTestNamedConstructorConstructor::createStructure):
* bindings/scripts/test/JS/JSTestNode.h:
(WebCore::JSTestNodePrototype::JSTestNodePrototype):
* bindings/scripts/test/JS/JSTestNondeterministic.h:
(WebCore::JSTestNondeterministicPrototype::JSTestNondeterministicPrototype):
(WebCore::JSTestNondeterministicConstructor::createStructure):
* bindings/scripts/test/JS/JSTestObj.h:
(WebCore::JSTestObjPrototype::JSTestObjPrototype):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
(WebCore::JSTestOverloadedConstructorsPrototype::JSTestOverloadedConstructorsPrototype):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
* bindings/scripts/test/JS/JSTestTypedefs.h:
(WebCore::JSTestTypedefsPrototype::JSTestTypedefsPrototype):
* bindings/scripts/test/JS/JSattribute.h:
(WebCore::JSattributePrototype::JSattributePrototype):
(WebCore::JSattributeConstructor::createStructure):
* bindings/scripts/test/JS/JSreadonly.h:
(WebCore::JSreadonlyPrototype::JSreadonlyPrototype):
(WebCore::JSreadonlyConstructor::createStructure):

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

6 years agoUnreviewed. Added self to list of committers.
mmirman@apple.com [Tue, 17 Jun 2014 21:48:06 +0000 (21:48 +0000)]
Unreviewed.  Added self to list of committers.

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

6 years ago[iOS] Input type=time elements styled with SVG fonts have 0 width
mmaxfield@apple.com [Tue, 17 Jun 2014 21:28:40 +0000 (21:28 +0000)]
[iOS] Input type=time elements styled with SVG fonts have 0 width
https://bugs.webkit.org/show_bug.cgi?id=133524

Reviewed by Simon Fraser.

Source/WebCore:
Refactor how the LocalizedDateCache returns maximum widths for input elements. Currently,
measuring the width of an SVG font requires a RenderObject for context, which the
LocalizedDateCache can't know about (it would be a platform violation). Instead, the
LocalizedDateCache can return the strings that it would use to measure the width, and the
caller can actually run the width computation.

Test: fast/forms/time-input-svg-font.html

* platform/text/PlatformLocale.h:
* platform/text/ios/LocalizedDateCache.h:
* platform/text/ios/LocalizedDateCache.mm:
(WebCore::LocalizedDateCache::maximumWidthForDateType): Take a delegate which can
measure text
(WebCore::LocalizedDateCache::calculateMaximumWidth): Perform maximum width
computation using delegate.
* platform/text/mac/LocaleMac.h:
* platform/text/mac/LocaleMac.mm:
(WebCore::LocaleMac::formatDateTime):
(WebCore::LocaleMac::maximumWidthForDateType): Deleted. Short-circuit this and go
directly to the LocalizedDateCache. This makes sense because we have to explicitly
insert computed values back into the cache in this new model.
* rendering/RenderThemeIOS.mm:
(WebCore::adjustInputElementButtonStyle): Create a delegate and pass it to the
LocalizedDateCache

LayoutTests:
Simply render a variety of input elements with SVG fonts, and make sure they have sane widths. Note that this
test is not platform-specific, even though the bug is.

* fast/forms/time-input-svg-font-expected.txt: Added.
* fast/forms/time-input-svg-font.html: Added.

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

6 years ago[UI-side compositing] fix reflections on composited layers
simon.fraser@apple.com [Tue, 17 Jun 2014 21:06:12 +0000 (21:06 +0000)]
[UI-side compositing] fix reflections on composited layers
https://bugs.webkit.org/show_bug.cgi?id=133942

Reviewed by Tim Horton.

Source/WebCore:

Fix reflections on composited layers. There are two main set of changes.

First, a PlatformCALayerRemote which is a clone has to track the layer
it is a clone of, so it knows where to grab the contents from in the UI process.
This layer may be told that its contents need updating out of order during
recursiveBuildTransaction(), so we need some small changes in RemoteLayerTreeContext
to allow a layer to add itself to the set of layers requiring commit.

In the UI process, a new step is added to RemoteLayerTreeHost::updateLayerTree()
to go through clones, and copy their contents from the origin layer.

The second set of changes makes platformCALayerLayerDidDisplay() work for
UI-side compositing by not taking a PlatformLayer*, but instead a PlatformCALayer*.
PlatformCALayer::setContentsChanged() changed to copyContentsFromLayer() so we know
what the origin layer is.

Test: compositing/reflections/repaint-with-reflection.html

* WebCore.exp.in:
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::layerDidDisplay): Deleted.
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::LayerClient::platformCALayerLayerDidDisplay): Deleted.
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::layerDidDisplay):
(WebCore::GraphicsLayerCA::findOrMakeClone):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/PlatformCALayerClient.h:
(WebCore::PlatformCALayerClient::platformCALayerLayerDidDisplay):
* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::copyContentsFromLayer):
(PlatformCALayerMac::superlayer):
(PlatformCALayerMac::setContentsChanged): Deleted.
* platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
(PlatformCALayerWinInternal::displayCallback):
* platform/graphics/mac/WebLayer.mm:
(-[WebSimpleLayer display]):

Source/WebKit2:

Fix reflections on composited layers. There are two main set of changes.

First, a PlatformCALayerRemote which is a clone has to track the layer
it is a clone of, so it knows where to grab the contents from in the UI process.
This layer may be told that its contents need updating out of order during
recursiveBuildTransaction(), so we need some small changes in RemoteLayerTreeContext
to allow a layer to add itself to the set of layers requiring commit.

In the UI process, a new step is added to RemoteLayerTreeHost::updateLayerTree()
to go through clones, and copy their contents from the origin layer.

The second set of changes makes platformCALayerLayerDidDisplay() work for
UI-side compositing by not taking a PlatformLayer*, but instead a PlatformCALayer*.
PlatformCALayer::setContentsChanged() changed to copyContentsFromLayer() so we know
what the origin layer is.

* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::display): Remove the early return so we can always
call platformCALayerLayerDidDisplay().
* Shared/mac/RemoteLayerTreeTransaction.h:
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::dumpChangedLayers):
* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::updateLayerTree):
* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::clone):
(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
(WebKit::PlatformCALayerRemote::copyContentsFromLayer):
(WebKit::PlatformCALayerRemote::setClonedLayer):
(WebKit::PlatformCALayerRemote::setContentsChanged): Deleted.
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
(WebKit::PlatformCALayerRemote::properties):
(WebKit::PlatformCALayerRemote::context):

LayoutTests:

Test with a reflected div, that repaints on a timer to test backing
store updating on the clone.

* compositing/reflections/repaint-with-reflection-expected.html: Added.
* compositing/reflections/repaint-with-reflection.html: Added.

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

6 years agoUse strongly typed enums for AnimationState and AnimationInputState
andersca@apple.com [Tue, 17 Jun 2014 20:19:11 +0000 (20:19 +0000)]
Use strongly typed enums for AnimationState and AnimationInputState
https://bugs.webkit.org/show_bug.cgi?id=133988

Reviewed by Tim Horton.

* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::AnimationBase):
(WebCore::nameForState):
(WebCore::AnimationBase::updateStateMachine):
(WebCore::AnimationBase::fireAnimationEventsIfNeeded):
(WebCore::AnimationBase::updatePlayState):
(WebCore::AnimationBase::timeToNextService):
(WebCore::AnimationBase::goIntoEndingOrLoopingState):
(WebCore::AnimationBase::freezeAtTime):
(WebCore::AnimationBase::beginAnimationUpdateTime):
* page/animation/AnimationBase.h:
(WebCore::AnimationBase::clear):
(WebCore::AnimationBase::onAnimationStartResponse):
(WebCore::AnimationBase::waitingToStart):
(WebCore::AnimationBase::preActive):
(WebCore::AnimationBase::postActive):
(WebCore::AnimationBase::fillingForwards):
(WebCore::AnimationBase::paused):
(WebCore::AnimationBase::inPausedState):
(WebCore::AnimationBase::isNew):
(WebCore::AnimationBase::waitingForStartTime):
(WebCore::AnimationBase::waitingForStyleAvailable):
(WebCore::AnimationBase::isAnimatingProperty):
(WebCore::AnimationBase::styleAvailable):
(WebCore::AnimationBase::compositeAnimation):
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::onAnimationEnd):
(WebCore::ImplicitAnimation::sendTransitionEvent):
(WebCore::ImplicitAnimation::reset):
(WebCore::ImplicitAnimation::setOverridden):
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::animate):
(WebCore::KeyframeAnimation::sendAnimationEvent):

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

6 years agoRemove session state methods from WKBrowsingContextController
andersca@apple.com [Tue, 17 Jun 2014 20:17:44 +0000 (20:17 +0000)]
Remove session state methods from WKBrowsingContextController
https://bugs.webkit.org/show_bug.cgi?id=133995

Reviewed by Dan Bernstein.

* UIProcess/API/Cocoa/WKBrowsingContextController.h:
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController sessionState]): Deleted.
(-[WKBrowsingContextController restoreFromSessionState:]): Deleted.

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

6 years agoUnreviewed, rolling out r170058.
commit-queue@webkit.org [Tue, 17 Jun 2014 19:53:13 +0000 (19:53 +0000)]
Unreviewed, rolling out r170058.
https://bugs.webkit.org/show_bug.cgi?id=133993

Caused 4 webkitpy failures on the bots (Requested by bradee-oh
on #webkit).

Reverted changeset:

"[GTK] Fix the handling of resize events after r169505."
https://bugs.webkit.org/show_bug.cgi?id=133517
http://trac.webkit.org/changeset/170058

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

6 years agoOnly show telephone number highlights if only one number is selected
beidson@apple.com [Tue, 17 Jun 2014 19:17:32 +0000 (19:17 +0000)]
Only show telephone number highlights if only one number is selected
<rdar://problem/16874568> and https://bugs.webkit.org/show_bug.cgi?id=133989

Reviewed by Tim Horton.

Add a flag to TelephoneNumberData to remember if it was hovered over:
* WebProcess/WebPage/TelephoneNumberOverlayController.h:
(WebKit::TelephoneNumberData::hovered):
(WebKit::TelephoneNumberData::setHovered):
(WebKit::TelephoneNumberData::TelephoneNumberData):

* WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:
(WebKit::TelephoneNumberOverlayController::drawRect): Only draw the highlight if one
  phone number is selected.
(WebKit::TelephoneNumberOverlayController::mouseEvent): Update the hover state of the
  current phone number, and setNeedsDisplay if the hover state changes.
(WebKit::TelephoneNumberOverlayController::clearHighlights):

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

6 years agoRemove WKContentView _setFindIndicator:fadeOut:animate:
timothy_horton@apple.com [Tue, 17 Jun 2014 19:04:40 +0000 (19:04 +0000)]
Remove WKContentView _setFindIndicator:fadeOut:animate:
https://bugs.webkit.org/show_bug.cgi?id=133976

Reviewed by Anders Carlsson.

Find indicators are totally internal to FindController on iOS,
we don't need to push them to the content view via PageClient,
so this code was unused.

* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::setFindIndicator):
* UIProcess/ios/WKContentView.h:
* UIProcess/ios/WKContentView.mm:
(-[WKContentView _setFindIndicator:WebKit::fadeOut:animate:]): Deleted.

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

6 years agoWeb process main thread priority is lower than some network process threads.
akling@apple.com [Tue, 17 Jun 2014 19:03:04 +0000 (19:03 +0000)]
Web process main thread priority is lower than some network process threads.
<https://webkit.org/b/133987>
<rdar://problem/17330300>

Source/WebKit2:
Mark the main thread as "user initiated" in process entry.

Reviewed by Maciej Stachowiak.

* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::initialize):

Source/WTF:
Bring all of our threads to the appropriate priority level by opting in to the
threading QoS APIs. By marking them "user initiated", they still yield to UI
interaction, but take priority over background tasks.

Reviewed by Maciej Stachowiak.

* wtf/Platform.h:
* wtf/Threading.cpp:
(WTF::setCurrentThreadIsUserInitiated):
* wtf/Threading.h:
* wtf/ThreadingPthreads.cpp:
(WTF::createThreadInternal):

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

6 years agoAvoid synchronous layout in window.scrollTo(0,0) when already at (0,0)
akling@apple.com [Tue, 17 Jun 2014 19:00:42 +0000 (19:00 +0000)]
Avoid synchronous layout in window.scrollTo(0,0) when already at (0,0)
<https://webkit.org/b/133893>

Going from 0,0 to 0,0 is a no-op since there is no way a layout will
affect the current scroll position.

We don't send scroll events when moving to the previous position,
so this change is not observable.

Reviewed by Anders Carlsson.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::scrollTo):

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

6 years agoUpdate import-w3c-tests to reflect current W3C test repo directory structure
commit-queue@webkit.org [Tue, 17 Jun 2014 18:02:08 +0000 (18:02 +0000)]
Update import-w3c-tests to reflect current W3C test repo directory structure
https://bugs.webkit.org/show_bug.cgi?id=133460

Patch by Rebecca Hauck <rhauck@adobe.com> on 2014-06-17
Reviewed by Bem Jones-Bey.

Removed all references to test status, which are no longer reflected in the
directory names in the W3C CSS test repo.  No tests are required for this
change, the existing tests pass.

* Scripts/webkitpy/w3c/test_importer.py:
(main):
(TestImporter.__init__):
(TestImporter.find_importable_tests):
(TestImporter.setup_destination_directory):
(TestImporter.write_import_log):
(TestImporter.update_test_status): Deleted.

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

6 years agoEnable css jit for armv7 on iOS.
achristensen@apple.com [Tue, 17 Jun 2014 17:59:17 +0000 (17:59 +0000)]
Enable css jit for armv7 on iOS.
https://bugs.webkit.org/show_bug.cgi?id=133961
<rdar://problem/17310631>

Reviewed by Andreas Kling.

* wtf/Platform.h:
Enable css jit for ARM thumb on iOS.

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

6 years agoFix css jit register usage on armv7.
achristensen@apple.com [Tue, 17 Jun 2014 17:49:36 +0000 (17:49 +0000)]
Fix css jit register usage on armv7.
https://bugs.webkit.org/show_bug.cgi?id=133952

Reviewed by Benjamin Poulain.

* cssjit/RegisterAllocator.h:
List r7 as a callee saved register, which it is.
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generatePrologue):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateEpilogue):
Save r6, which is used as a temporary register and must be preserved.

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

6 years ago[GTK] Fix the handling of resize events after r169505.
commit-queue@webkit.org [Tue, 17 Jun 2014 17:49:27 +0000 (17:49 +0000)]
[GTK] Fix the handling of resize events after r169505.
https://bugs.webkit.org/show_bug.cgi?id=133517

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-17
Reviewed by Martin Robinson.

Tools:
* Scripts/webkitpy/port/xvfbdriver.py:
(XvfbDriver._start): Set the resolution of Xvfb to XGA (1024x768).
The tests css3/viewport-percentage-lengths/viewport-percentage-lengths-*.html
need at least 900x640 pixels to pass.
* WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::PlatformWebView): gtk_widget_size_allocate should
be requested over the main widget instead of the window.
(WTR::PlatformWebView::resizeTo): Changed this to call setWindowFrame like
the Mac port.
(WTR::PlatformWebView::windowFrame): Remove legacy ifdef for GTK2.
(WTR::PlatformWebView::setWindowFrame): Set the size and position
of the Window and the web view.

LayoutTests:
* platform/gtk/TestExpectations: Remove the expectations for the tests
that now pass.
* platform/gtk/fast/dom/rtl-scroll-to-leftmost-and-resize-expected.txt:
Rebaseline results.

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

6 years agoUse references instead of pointers to RenderBlock in enclosingBoxModelObject()
commit-queue@webkit.org [Tue, 17 Jun 2014 17:29:44 +0000 (17:29 +0000)]
Use references instead of pointers to RenderBlock in enclosingBoxModelObject()
https://bugs.webkit.org/show_bug.cgi?id=133978

Patch by Miyoung Shin <myid.shin@samsung.com> on 2014-06-17
Reviewed by Andreas Kling.

Just a straightforward conversion from pointers to references.

No new tests, no behavior change.

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paint):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintObject):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::enclosingBoxModelObject):
* rendering/RenderObject.h:

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

6 years agoAdd SPI to get the NSURLRequest from a WKNavigationResponse
andersca@apple.com [Tue, 17 Jun 2014 17:23:23 +0000 (17:23 +0000)]
Add SPI to get the NSURLRequest from a WKNavigationResponse
https://bugs.webkit.org/show_bug.cgi?id=133984
<rdar://problem/17006399>

Reviewed by Dan Bernstein.

* UIProcess/API/Cocoa/WKNavigationResponse.mm:
(-[WKNavigationResponse _request]):
* UIProcess/API/Cocoa/WKNavigationResponseInternal.h:
* UIProcess/API/Cocoa/WKNavigationResponsePrivate.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::PolicyClient::decidePolicyForResponse):

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

6 years agoString::isolatedCopy doesn’t return an isolated copy when used on an rvalue reference
mitz@apple.com [Tue, 17 Jun 2014 16:16:38 +0000 (16:16 +0000)]
String::isolatedCopy doesn’t return an isolated copy when used on an rvalue reference
https://bugs.webkit.org/show_bug.cgi?id=133968

Reviewed by Anders Carlsson.

Source/WTF:
Made the rvalue reference overload of isolatedCopy() non-const, so that std::move(*this) is
an rvalue reference that can be moved, rather than copied, into the returned String.

* wtf/text/WTFString.cpp:
(WTF::String::isolatedCopy):
* wtf/text/WTFString.h:

Tools:
* TestWebKitAPI/Tests/WTF/WTFString.cpp:
(TestWebKitAPI::TEST): Added a test that an isolated copy of an rvalue reference doesn’t
share an impl() with the original.

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

6 years ago[EFL][WK2] Skip failing EFL API tests
gyuyoung.kim@samsung.com [Tue, 17 Jun 2014 13:29:53 +0000 (13:29 +0000)]
[EFL][WK2] Skip failing EFL API tests
https://bugs.webkit.org/show_bug.cgi?id=133981

Reviewed by Csaba Osztrogonác.

UserMessage, WillLoad and test_ewk2_view have been failed since r169784.

Source/WebKit2:
* PlatformEfl.cmake:

Tools:
* TestWebKitAPI/PlatformEfl.cmake:

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

6 years ago[EFL] Add expectations for three failing/flaky layout tests.
commit-queue@webkit.org [Tue, 17 Jun 2014 11:31:46 +0000 (11:31 +0000)]
[EFL] Add expectations for three failing/flaky layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133977

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-17

* platform/efl/TestExpectations:

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

6 years agoRemove the USE_GTK2=1 branch in OptionsGTK.cmake. This used to determine
zandobersek@gmail.com [Tue, 17 Jun 2014 09:58:20 +0000 (09:58 +0000)]
Remove the USE_GTK2=1 branch in OptionsGTK.cmake. This used to determine
GTK+ and GDK libraries and include directories for the GTK+ 2 dependency,
but we now only support GTK+ 3. The GTK+ 2 dependency is still required
by the plugin process, but it is searched and utilized separately.

Rubber-stamped by Carlos Garcia Campos.

* Source/cmake/OptionsGTK.cmake:

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

6 years agoCache the gst_query_get_n_buffering_ranges() return value for the for-loop conditional
zandobersek@gmail.com [Tue, 17 Jun 2014 07:49:10 +0000 (07:49 +0000)]
Cache the gst_query_get_n_buffering_ranges() return value for the for-loop conditional
https://bugs.webkit.org/show_bug.cgi?id=133953

Reviewed by Philippe Normand.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::buffered): Avoid the extra call in the for-loop
conditional expression by caching the return value of gst_query_get_n_buffering_ranges().

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

6 years agoAvoid Vector<char> copies in the OffsetBuffer constructor
zandobersek@gmail.com [Tue, 17 Jun 2014 07:47:27 +0000 (07:47 +0000)]
Avoid Vector<char> copies in the OffsetBuffer constructor
https://bugs.webkit.org/show_bug.cgi?id=133956

Reviewed by Andreas Kling.

* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::OffsetBuffer::OffsetBuffer): Take the Vector parameter by value and
move it into the member variable.
(WebCore::openFunc): Move the Vector object into the OffsetBuffer constructor.

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

6 years ago[MSE] Overwritten samples are removed from buffered ranges using decode times; added...
jer.noble@apple.com [Tue, 17 Jun 2014 07:43:53 +0000 (07:43 +0000)]
[MSE] Overwritten samples are removed from buffered ranges using decode times; added samples using presentation times
https://bugs.webkit.org/show_bug.cgi?id=133959

Reviewed by Eric Carlson.

Source/WebCore:
Test: media/media-source/media-source-overlapping-append-buffered.html

Explicitly call presentationTime() on removed samples, rather than implicitly asking for the iterator's "first"
member. When iterating over samples, "first" can either be presentation time, or decode time, depending on which
iteration method is called. In the case of removing samples, this was using the decode time incorrectly.

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

LayoutTests:
* media/media-source/media-source-overlapping-append-buffered-expected.txt: Added.
* media/media-source/media-source-overlapping-append-buffered.html: Added.

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

6 years agoUnreviewed build fix for the GTK+ port. Removing the *Callback::create() wrappings
zandobersek@gmail.com [Tue, 17 Jun 2014 07:42:32 +0000 (07:42 +0000)]
Unreviewed build fix for the GTK+ port. Removing the *Callback::create() wrappings
for lambda callbacks that aren't required anymore after the changes in r170041.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_can_execute_editing_command):
(webkit_web_view_run_javascript):
(resourcesStreamReadCallback):
(webkit_web_view_save):
(webkit_web_view_save_to_file):

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

6 years ago[CSS Regions] Move the overflow tests to a separate folder
mihnea@adobe.com [Tue, 17 Jun 2014 05:45:40 +0000 (05:45 +0000)]
[CSS Regions] Move the overflow tests to a separate folder
https://bugs.webkit.org/show_bug.cgi?id=130089

Reviewed by Andrei Bucur.

Move the overflow tests inside fast/regions/overflow folder.
Adjust tests paths and TestExpectations files accordingly.

* fast/regions/overflow/overflow-3dtransformed-region-expected.txt: Renamed from LayoutTests/fast/regions/overflow-3dtransformed-region-expected.txt.
* fast/regions/overflow/overflow-3dtransformed-region.html: Renamed from LayoutTests/fast/regions/overflow-3dtransformed-region.html.
* fast/regions/overflow/overflow-auto-after-float-expected.html: Renamed from LayoutTests/fast/regions/overflow-auto-after-float-expected.html.
* fast/regions/overflow/overflow-auto-after-float.html: Renamed from LayoutTests/fast/regions/overflow-auto-after-float.html.
* fast/regions/overflow/overflow-content-transform-rotate-expected.html: Renamed from LayoutTests/fast/regions/overflow-content-transform-rotate-expected.html.
* fast/regions/overflow/overflow-content-transform-rotate.html: Renamed from LayoutTests/fast/regions/overflow-content-transform-rotate.html.
* fast/regions/overflow/overflow-content-zero-height-region-expected.html: Renamed from LayoutTests/fast/regions/overflow-content-zero-height-region-expected.html.
* fast/regions/overflow/overflow-content-zero-height-region.html: Renamed from LayoutTests/fast/regions/overflow-content-zero-height-region.html.
* fast/regions/overflow/overflow-first-and-last-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-first-and-last-regions-expected.html.
* fast/regions/overflow/overflow-first-and-last-regions-in-container-hidden-expected.html: Renamed from LayoutTests/fast/regions/overflow-first-and-last-regions-in-container-hidden-expected.html.
* fast/regions/overflow/overflow-first-and-last-regions-in-container-hidden.html: Renamed from LayoutTests/fast/regions/overflow-first-and-last-regions-in-container-hidden.html.
* fast/regions/overflow/overflow-first-and-last-regions.html: Renamed from LayoutTests/fast/regions/overflow-first-and-last-regions.html.
* fast/regions/overflow/overflow-in-uniform-regions-dynamic-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-uniform-regions-dynamic-expected.html.
* fast/regions/overflow/overflow-in-uniform-regions-dynamic.html: Renamed from LayoutTests/fast/regions/overflow-in-uniform-regions-dynamic.html.
* fast/regions/overflow/overflow-in-uniform-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-uniform-regions-expected.html.
* fast/regions/overflow/overflow-in-uniform-regions.html: Renamed from LayoutTests/fast/regions/overflow-in-uniform-regions.html.
* fast/regions/overflow/overflow-in-variable-width-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-expected.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-bt-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-bt-expected.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-bt.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-bt.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-continuation-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-continuation-expected.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-continuation.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-continuation.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-expected.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-lr-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-lr-expected.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-lr.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-lr.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-rl-expected.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-rl-expected.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-rl.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline-rl.html.
* fast/regions/overflow/overflow-in-variable-width-regions-inline.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions-inline.html.
* fast/regions/overflow/overflow-in-variable-width-regions.html: Renamed from LayoutTests/fast/regions/overflow-in-variable-width-regions.html.
* fast/regions/overflow/overflow-last-region-horiz-bt-expected.html: Renamed from LayoutTests/fast/regions/overflow-last-region-horiz-bt-expected.html.
* fast/regions/overflow/overflow-last-region-horiz-bt.html: Renamed from LayoutTests/fast/regions/overflow-last-region-horiz-bt.html.
* fast/regions/overflow/overflow-last-region-vert-lr-expected.html: Renamed from LayoutTests/fast/regions/overflow-last-region-vert-lr-expected.html.
* fast/regions/overflow/overflow-last-region-vert-lr.html: Renamed from LayoutTests/fast/regions/overflow-last-region-vert-lr.html.
* fast/regions/overflow/overflow-last-region-vert-rl-expected.html: Renamed from LayoutTests/fast/regions/overflow-last-region-vert-rl-expected.html.
* fast/regions/overflow/overflow-last-region-vert-rl.html: Renamed from LayoutTests/fast/regions/overflow-last-region-vert-rl.html.
* fast/regions/overflow/overflow-moving-below-floats-in-variable-width-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.html.
* fast/regions/overflow/overflow-moving-below-floats-in-variable-width-regions.html: Renamed from LayoutTests/fast/regions/overflow-moving-below-floats-in-variable-width-regions.html.
* fast/regions/overflow/overflow-nested-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-nested-regions-expected.html.
* fast/regions/overflow/overflow-nested-regions.html: Renamed from LayoutTests/fast/regions/overflow-nested-regions.html.
* fast/regions/overflow/overflow-not-moving-below-floats-in-variable-width-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.html.
* fast/regions/overflow/overflow-not-moving-below-floats-in-variable-width-regions.html: Renamed from LayoutTests/fast/regions/overflow-not-moving-below-floats-in-variable-width-regions.html.
* fast/regions/overflow/overflow-region-float-expected.html: Renamed from LayoutTests/fast/regions/overflow-region-float-expected.html.
* fast/regions/overflow/overflow-region-float.html: Renamed from LayoutTests/fast/regions/overflow-region-float.html.
* fast/regions/overflow/overflow-region-inline-expected.html: Renamed from LayoutTests/fast/regions/overflow-region-inline-expected.html.
* fast/regions/overflow/overflow-region-inline.html: Renamed from LayoutTests/fast/regions/overflow-region-inline.html.
* fast/regions/overflow/overflow-region-transform-expected.html: Renamed from LayoutTests/fast/regions/overflow-region-transform-expected.html.
* fast/regions/overflow/overflow-region-transform.html: Renamed from LayoutTests/fast/regions/overflow-region-transform.html.
* fast/regions/overflow/overflow-rtl-in-variable-width-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-rtl-in-variable-width-regions-expected.html.
* fast/regions/overflow/overflow-rtl-in-variable-width-regions.html: Renamed from LayoutTests/fast/regions/overflow-rtl-in-variable-width-regions.html.
* fast/regions/overflow/overflow-scrollable-1-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-1-expected.html.
* fast/regions/overflow/overflow-scrollable-1.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-1.html.
* fast/regions/overflow/overflow-scrollable-2-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-2-expected.html.
* fast/regions/overflow/overflow-scrollable-2.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-2.html.
* fast/regions/overflow/overflow-scrollable-3-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-3-expected.html.
* fast/regions/overflow/overflow-scrollable-3.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-3.html.
* fast/regions/overflow/overflow-scrollable-fit-complex-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-fit-complex-expected.html.
* fast/regions/overflow/overflow-scrollable-fit-complex.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-fit-complex.html.
* fast/regions/overflow/overflow-scrollable-fit-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-fit-expected.html.
* fast/regions/overflow/overflow-scrollable-fit.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-fit.html.
* fast/regions/overflow/overflow-scrollable-nested-expected.txt: Renamed from LayoutTests/fast/regions/overflow-scrollable-nested-expected.txt.
* fast/regions/overflow/overflow-scrollable-nested.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-nested.html.
* fast/regions/overflow/overflow-scrollable-rel-pos-fragment-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-rel-pos-fragment-expected.html.
* fast/regions/overflow/overflow-scrollable-rel-pos-fragment.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-rel-pos-fragment.html.
* fast/regions/overflow/overflow-scrollable-rotated-fragment-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-rotated-fragment-expected.html.
* fast/regions/overflow/overflow-scrollable-rotated-fragment.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-rotated-fragment.html.
* fast/regions/overflow/overflow-scrollable-unsplittable-fragment-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-unsplittable-fragment-expected.html.
* fast/regions/overflow/overflow-scrollable-unsplittable-fragment.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-unsplittable-fragment.html.
* fast/regions/overflow/overflow-scrollable-varying-width-1-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-varying-width-1-expected.html.
* fast/regions/overflow/overflow-scrollable-varying-width-1.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-varying-width-1.html.
* fast/regions/overflow/overflow-scrollable-varying-width-2-expected.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-varying-width-2-expected.html.
* fast/regions/overflow/overflow-scrollable-varying-width-2.html: Renamed from LayoutTests/fast/regions/overflow-scrollable-varying-width-2.html.
* fast/regions/overflow/overflow-size-change-in-variable-width-regions-expected.html: Renamed from LayoutTests/fast/regions/overflow-size-change-in-variable-width-regions-expected.html.
* fast/regions/overflow/overflow-size-change-in-variable-width-regions.html: Renamed from LayoutTests/fast/regions/overflow-size-change-in-variable-width-regions.html.
* fast/regions/overflow/overflow-size-change-with-stacking-context-expected.html: Renamed from LayoutTests/fast/regions/overflow-size-change-with-stacking-context-expected.html.
* fast/regions/overflow/overflow-size-change-with-stacking-context-rtl-expected.html: Renamed from LayoutTests/fast/regions/overflow-size-change-with-stacking-context-rtl-expected.html.
* fast/regions/overflow/overflow-size-change-with-stacking-context-rtl.html: Renamed from LayoutTests/fast/regions/overflow-size-change-with-stacking-context-rtl.html.
* fast/regions/overflow/overflow-size-change-with-stacking-context.html: Renamed from LayoutTests/fast/regions/overflow-size-change-with-stacking-context.html.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/win/TestExpectations:

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

6 years agoUnreviewed build fix when MHTML is enabled after r170041
ljaehun.lim@samsung.com [Tue, 17 Jun 2014 05:39:50 +0000 (05:39 +0000)]
Unreviewed build fix when MHTML is enabled after r170041

* UIProcess/API/C/WKPage.cpp:
(WKPageGetContentsAsMHTMLData):

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

6 years ago[CSSRegions] Region with border radius and overflow:hidden does not clip content
mihnea@adobe.com [Tue, 17 Jun 2014 05:35:42 +0000 (05:35 +0000)]
[CSSRegions] Region with border radius and overflow:hidden does not clip content
https://bugs.webkit.org/show_bug.cgi?id=133476

Reviewed by Andrei Bucur.

Source/WebCore:
When setting the clip before painting the named flow content,
use the region's foreground rect to take the region's border radius
into account if needed.

Test: fast/regions/region-border-radius-overflow-clip.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintFlowThreadIfRegionForFragments):

LayoutTests:
* fast/regions/region-border-radius-overflow-clip-expected.html: Added.
* fast/regions/region-border-radius-overflow-clip.html: Added.

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

6 years agoExtract prototype declaration generation into a helper function
weinig@apple.com [Tue, 17 Jun 2014 04:59:04 +0000 (04:59 +0000)]
Extract prototype declaration generation into a helper function
https://bugs.webkit.org/show_bug.cgi?id=133969

Reviewed by Dan Bernstein.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GeneratePrototypeDeclaration):

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

6 years ago[EFL][WK2] Remove workaround for icon display bug in MiniBrowser
ryuan.choi@samsung.com [Tue, 17 Jun 2014 04:43:31 +0000 (04:43 +0000)]
[EFL][WK2] Remove workaround for icon display bug in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=133962

Reviewed by Gyuyoung Kim.

Since we bumped EFL to 1.9, this workaround is unnecessary.

* MiniBrowser/efl/main.c:
(update_view_favicon):

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

6 years agoMove forward declaration of bindings static functions into their implementation files
weinig@apple.com [Tue, 17 Jun 2014 03:55:14 +0000 (03:55 +0000)]
Move forward declaration of bindings static functions into their implementation files
https://bugs.webkit.org/show_bug.cgi?id=133943

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:
* runtime/CommonIdentifiers.h:
Add a few identifiers that are needed by the DOM.

Source/WebCore:
- Moves the forward declaration of static functions for generated files to the implementation.
- Adds a new extended attribute, ForwardDeclareInHeader, for functions that still need a
  forward declaration in the header.

* bindings/js/JSDOMBinding.h:
(WebCore::nonCachingStaticFunctionGetter):
Move this helper here from JSDOMWindowCustom.cpp.

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
Switch to comparing the property name directly rather than looking up in the static table and
comparing function pointers.

* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::getOwnPropertySlotDelegate):
Switch to comparing the property name directly rather than looking up in the static table and
comparing function pointers and start using the nonCachingStaticFunctionGetter<> helper.

* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::putDelegate):
Switch to comparing the property name directly rather than looking up in the static table and
comparing function pointers and start using the nonCachingStaticFunctionGetter<> helper.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
Move forward declaration creation to the implementation file where possible.

* bindings/scripts/IDLAttributes.txt:
Add ForwardDeclareInHeader.

* page/DOMWindow.idl:
* page/History.idl:
* page/Location.idl:
Add ForwardDeclareInHeader where necessary.

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

6 years agoPart 2 of: Change GenericCallback<> function parameters into std::function<>
mitz@apple.com [Tue, 17 Jun 2014 03:52:21 +0000 (03:52 +0000)]
Part 2 of: Change GenericCallback<> function parameters into std::function<>
https://bugs.webkit.org/show_bug.cgi?id=133927

Reviewed by Sam Weinig.

* UIProcess/API/C/WKPage.cpp:
(WKPageRunJavaScriptInMainFrame):
(WKPageRenderTreeExternalRepresentation):
(WKPageGetSourceForFrame):
(WKPageGetContentsAsString):
(WKPageGetBytecodeProfile):
(WKPageGetSelectionAsWebArchiveData):
(WKPageValidateCommand):
* UIProcess/API/C/WKPluginSiteDataManager.cpp:
(WKPluginSiteDataManagerClearSiteData):
(WKPluginSiteDataManagerClearAllSiteData):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):
* UIProcess/API/mac/WKView.mm:
(-[WKView validateUserInterfaceItem:]):
(-[WKView startSpeaking:]):
(-[WKView selectedRangeWithCompletionHandler:]):
(-[WKView markedRangeWithCompletionHandler:]):
(-[WKView hasMarkedTextWithCompletionHandler:]):
(-[WKView firstRectForCharacterRange:completionHandler:]):
(-[WKView characterIndexForPoint:completionHandler:]):
* UIProcess/Plugins/WebPluginSiteDataManager.cpp:
(WebKit::WebPluginSiteDataManager::clearSiteData):
* UIProcess/Plugins/WebPluginSiteDataManager.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::validateCommand):
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
(WebKit::WebPageProxy::getSourceForFrame):
(WebKit::WebPageProxy::getContentsAsString):
(WebKit::WebPageProxy::getBytecodeProfile):
(WebKit::WebPageProxy::getContentsAsMHTMLData):
(WebKit::WebPageProxy::getSelectionOrContentsAsString):
(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit::WebPageProxy::getMarkedRangeAsync):
(WebKit::WebPageProxy::getSelectedRangeAsync):
(WebKit::WebPageProxy::characterIndexForPointAsync):
(WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
(WebKit::WebPageProxy::takeSnapshot):
* UIProcess/WebPageProxy.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _define:]):
(-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:]):
(-[WKContentView requestAutocorrectionRectsForString:withCompletionHandler:]):
(-[WKContentView requestDictationContext:]):
(-[WKContentView applyAutocorrection:toString:withCompletionHandler:]):
(-[WKContentView requestAutocorrectionContextWithCompletionHandler:]):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::updateSelectionWithTouches):
(WebKit::WebPageProxy::requestAutocorrectionData):
(WebKit::WebPageProxy::applyAutocorrection):
(WebKit::WebPageProxy::requestDictationContext):
(WebKit::WebPageProxy::requestAutocorrectionContext):

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

6 years ago[GTK] Add llvmpipe (Mesa) to the JHBuild moduleset and force it when running layout...
yoon@igalia.com [Tue, 17 Jun 2014 02:26:36 +0000 (02:26 +0000)]
[GTK] Add llvmpipe (Mesa) to the JHBuild moduleset and force it when running layout tests
https://bugs.webkit.org/show_bug.cgi?id=131472

Reviewed by Martin Robinson.

This patch reapplies r167510 with fixes to add llvm as a dependency for llvmpipe.

* Scripts/webkitpy/port/xvfbdriver.py:
(XvfbDriver._start): Use the LLVMPIPE_LIBGL_PATH to set the LD_LIBRARY_PATH
when running WebKitTestRunner with the Xvfb driver.
* gtk/install-dependencies: Add LLVM as a dependency to build llvmpipe.
* gtk/jhbuild.modules: Add Mesa to the modulelist so that the llvmpipe libGL is build, but not
installed.
* gtk/jhbuildrc: Set the LLVMPIPE_LIBGL_PATH environment variable so that the test driver knows
how to properly set the LD_LIBRARY_PATH variable. We do this because it is much easier to
calculate the path in the jhbuildrc than in the test driver code. This simplifies things a great
deal.

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

6 years agoRemove deprecated API warnings in WebKit/Tools/MiniBrowser/efl/main.c
commit-queue@webkit.org [Tue, 17 Jun 2014 02:17:56 +0000 (02:17 +0000)]
Remove deprecated API warnings in WebKit/Tools/MiniBrowser/efl/main.c
https://bugs.webkit.org/show_bug.cgi?id=133792

Patch by Tanay C <tanay.c@samsung.com> on 2014-06-16
Reviewed by Gyuyoung Kim.

* MiniBrowser/efl/main.c: replaced the deprecated API's with the latest ones
(show_file_entry_dialog):
(window_create):

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

6 years agoUnreviewed build fix after r170029
ljaehun.lim@samsung.com [Tue, 17 Jun 2014 01:23:44 +0000 (01:23 +0000)]
Unreviewed build fix after r170029

Use String() instead of AtomicString().

Source/WebCore:
* platform/network/HTTPParsers.cpp:
(WebCore::parseHTTPHeader):
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupMessageHeaders):
* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::toSoupMessage):

Source/WebKit2:
* UIProcess/InspectorServer/HTTPRequest.cpp:
(WebKit::HTTPRequest::parseHeaders):

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

6 years ago[Win] Use TileController on Windows
bfulgham@apple.com [Mon, 16 Jun 2014 23:56:50 +0000 (23:56 +0000)]
[Win] Use TileController on Windows
https://bugs.webkit.org/show_bug.cgi?id=133895

Reviewed by Tim Horton.

../WebCore:
* WebCore.vcxproj/WebCore.vcxproj: Add Tiled Drawing files.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* platform/graphics/TiledBacking.h: No longer Cocoa-only.
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Windows
now uses the same layer type as Mac.
* platform/graphics/ca/LayerPool.cpp:
(WebCore::LayerPool::takeLayerWithSize): Use nullptr
rather than nil for C++ code.
* platform/graphics/ca/PlatformCALayer.cpp:
* platform/graphics/ca/PlatformCALayer.h: Expose necessary
drawing functions for Windows port.
* platform/graphics/ca/TileController.cpp: Remove unneeded
header include for WebLayer.
* platform/graphics/ca/TileCoverageMap.cpp: Correct #includes.
* platform/graphics/ca/TileGrid.h: Not just for Cococa.
* platform/graphics/ca/mac/PlatformCALayerMac.mm: Remove
extra whitespace.
* platform/graphics/ca/mac/PlatformCALayerMac.h: Remove
unneeded overload.
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayer::collectRectsToPaint): Added stub.
(PlatformCALayer::drawLayerContents): Added.
(PlatformCALayer::frameForLayer): Added.
(PlatformCALayerWin::PlatformCALayerWin): Remove unneeded
assert now that we support these types. Add TileController
support.
(PlatformCALayerWin::setEdgeAntialiasingMask): Added.
(printLayer): Add newly-supported tile types.
(PlatformCALayerWin::tiledBacking): Added.
* platform/graphics/ca/win/PlatformCALayerWin.h: Update to
support Tiled Drawing.
* platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
(PlatformCALayerWinInternal::PlatformCALayerWinInternal): Update to
recognize newly-supported layer types.
(PlatformCALayerWinInternal::setNeedsDisplay): Ditto.
(PlatformCALayerWinInternal::setSublayers): Ditto.
(PlatformCALayerWinInternal::getSublayers): Ditto.
(PlatformCALayerWinInternal::removeAllSublayers): Ditto.
(PlatformCALayerWinInternal::insertSublayer): Ditto.
(PlatformCALayerWinInternal::sublayerCount): Ditto.
(PlatformCALayerWinInternal::indexOfSublayer): Ditto.
(PlatformCALayerWinInternal::sublayerAtIndex): Ditto.
(PlatformCALayerWinInternal::setBounds): Ditto.
(PlatformCALayerWinInternal::setFrame): Ditto.
(PlatformCALayerWinInternal::drawTile): Ditto.
(PlatformCALayerWinInternal::createTileController): Ditto.
(PlatformCALayerWinInternal::tiledBacking): Ditto.
* platform/graphics/ca/win/PlatformCALayerWinInternal.h: Update to use
TileController.

../WebKit2:
* WebProcess/WebPage/mac/PlatformCALayerRemote.h: Remove
unneeded overload.

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

6 years ago[iOS][wk2] Swipe snapshots are removed too quickly if there is no saved render tree...
timothy_horton@apple.com [Mon, 16 Jun 2014 23:48:13 +0000 (23:48 +0000)]
[iOS][wk2] Swipe snapshots are removed too quickly if there is no saved render tree size
https://bugs.webkit.org/show_bug.cgi?id=133891

Reviewed by Simon Fraser.

* UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::endSwipeGesture):
(WebKit::ViewGestureController::setRenderTreeSize):
If we don't know the target render tree size, wait until the first layer tree commit
that comes in, instead of removing the snapshot when the gesture ends.

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

6 years ago[iOS][wk2] Swiping back briefly shows the previous page before loading the new one
timothy_horton@apple.com [Mon, 16 Jun 2014 23:45:27 +0000 (23:45 +0000)]
[iOS][wk2] Swiping back briefly shows the previous page before loading the new one
https://bugs.webkit.org/show_bug.cgi?id=133885

Reviewed by Simon Fraser.

Remove a race between the UI and Web processes when removing the swipe snapshot.
Previously, it was possible to get a commit from the Web process with layer content
(and render tree size) from the previous page *after* sending the navigation request
to the page, because of the asynchronicity of layer tree commits. This could cause
the snapshot to be removed early (if the previous fully-loaded page had a sufficiently
large render tree size), revealing the old tiles underneath the snapshot.

* Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::transactionID):
(WebKit::RemoteLayerTreeTransaction::setTransactionID):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::lastVisibleTransactionID):
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::coreAnimationDidCommitLayers):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
(WebKit::RemoteLayerTreeDrawingArea::didUpdate):
Keep track of an ever-increasing transaction ID in RemoteLayerTreeDrawingArea(Proxy).
It increments in the UI process at didUpdate time, because the Web process cannot
have started on a new layer tree commit until didUpdate is sent.
It increments in the Web process at commit time.

* UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::endSwipeGesture):
(WebKit::ViewGestureController::setRenderTreeSize):
* UIProcess/mac/ViewGestureController.h:
Adopt transaction IDs; don't remove the snapshot until the commit
that includes the navigation arrives.

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

6 years agoParser statementDepth accounting needs to account for when a function body excludes...
mark.lam@apple.com [Mon, 16 Jun 2014 23:19:29 +0000 (23:19 +0000)]
Parser statementDepth accounting needs to account for when a function body excludes its braces.
<https://webkit.org/b/133832>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:
In some cases (e.g. when a Function object is instantiated from a string), the
function body source may not include its braces.  The parser needs to account
for this when calculating its statementDepth.

* bytecode/UnlinkedCodeBlock.cpp:
(JSC::generateFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::codeBlockFor):
* bytecode/UnlinkedCodeBlock.h:
* parser/Parser.cpp:
(JSC::Parser<LexerType>::parseStatement):
- Also fixed the error message for declaring nested functions in strict mode
  to be more accurate.
* parser/Parser.h:
(JSC::Parser<LexerType>::parse):
(JSC::parse):
* runtime/Executable.cpp:
(JSC::ScriptExecutable::newCodeBlockFor):

LayoutTests:
* js/parser-syntax-check-expected.txt:
* js/script-tests/parser-syntax-check.js:
  - Added cases for declaring functions in strict mode.
  - Added caught error to the test result logging if it's not a SyntaxError.
    This helps catch the issue in this bug which was erroneously throwing
    RangeErrors.

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

6 years agoRemove unnecessary style invalidation in RenderTextControl::styleDidChange().
akling@apple.com [Mon, 16 Jun 2014 22:57:28 +0000 (22:57 +0000)]
Remove unnecessary style invalidation in RenderTextControl::styleDidChange().
<https://webkit.org/b/133949>

This explicit invalidation of the text control's inner text element
was hacked in to fix an editing test back in 2011, long before lazy
render tree construction.

It should be safe to remove, since doing so doesn't affect any tests.

Reviewed by Antti Koivisto.

* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::styleDidChange):

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

6 years ago<rdar://problem/17327707> [Cocoa] Expose WebPreferences::storageBlockingPolicy
mitz@apple.com [Mon, 16 Jun 2014 22:57:16 +0000 (22:57 +0000)]
<rdar://problem/17327707> [Cocoa] Expose WebPreferences::storageBlockingPolicy
https://bugs.webkit.org/show_bug.cgi?id=133958

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKPreferences.mm:
(toStorageBlockingPolicy): Added this helper conversion function.
(toAPI): Ditto.
(-[WKPreferences _storageBlockingPolicy]): Added this getter.
(-[WKPreferences _setStorageBlockingPolicy:]): Added this setter.
* UIProcess/API/Cocoa/WKPreferencesPrivate.h: Declared new _storageBlockingPolicy property
and _WKStorageBlockingPolicy enum.

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

6 years agoFix iOS build.
andersca@apple.com [Mon, 16 Jun 2014 22:46:58 +0000 (22:46 +0000)]
Fix iOS build.

* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::setHeaderFields):

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

6 years agoAccept-Ranges is not specific to GStreamer.
andersca@apple.com [Mon, 16 Jun 2014 22:42:31 +0000 (22:42 +0000)]
Accept-Ranges is not specific to GStreamer.

* platform/network/HTTPHeaderNames.in:

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

6 years agoDon't use AtomicString in HTTPHeaderMap
andersca@apple.com [Mon, 16 Jun 2014 22:28:18 +0000 (22:28 +0000)]
Don't use AtomicString in HTTPHeaderMap
https://bugs.webkit.org/show_bug.cgi?id=133957
<rdar://problem/15256572>

Reviewed by Andreas Kling.

Source/WebCore:
Use the string data that comes from the generated HTTPHeaderNames.cpp file
for sharing header name data instead. In the future we can do something more fancy where
we'll hash the HTTPHeaderName enum directly, but this is good enough for now.

* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::readHTTPHeaders):
* WebCore.exp.in:
* inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForHeaders):
* loader/CrossOriginPreflightResultCache.cpp:
(WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::parseHeader):
* loader/cache/CachedResource.cpp:
(WebCore::shouldUpdateHeaderAfterRevalidation):
* platform/network/HTTPHeaderMap.cpp:
(WebCore::HTTPHeaderMap::copyData):
(WebCore::internHTTPHeaderNameString):
(WebCore::HTTPHeaderMap::get):
(WebCore::HTTPHeaderMap::set):
(WebCore::HTTPHeaderMap::add):
(WebCore::CaseFoldingCStringTranslator::hash): Deleted.
(WebCore::CaseFoldingCStringTranslator::equal): Deleted.
(WebCore::CaseFoldingCStringTranslator::translate): Deleted.
* platform/network/HTTPHeaderMap.h:
* platform/network/HTTPHeaderNames.in:
* platform/network/HTTPParsers.cpp:
(WebCore::parseHTTPHeader):
* platform/network/HTTPParsers.h:
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::httpHeaderField):
(WebCore::ResourceRequestBase::setHTTPHeaderField):
(WebCore::ResourceRequestBase::addHTTPHeaderField):
* platform/network/ResourceRequestBase.h:
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::httpHeaderField):
(WebCore::ResourceResponseBase::setHTTPHeaderField):
(WebCore::ResourceResponseBase::addHTTPHeaderField):
* platform/network/ResourceResponseBase.h:
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):
* platform/network/mac/ResourceResponseMac.mm:
(WebCore::ResourceResponse::platformLazyInit):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::setRequestHeader):
(WebCore::XMLHttpRequest::setRequestHeaderInternal):
(WebCore::XMLHttpRequest::getRequestHeader):
(WebCore::XMLHttpRequest::getResponseHeader):
* xml/XMLHttpRequest.h:

Source/WebKit2:
Update for WebCore changes.

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<HTTPHeaderMap>::decode):

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

6 years agoAX: Safari crashed once in WebCore::AccessibilityObject::ariaIsHidden
cfleizach@apple.com [Mon, 16 Jun 2014 21:44:16 +0000 (21:44 +0000)]
AX: Safari crashed once in WebCore::AccessibilityObject::ariaIsHidden
https://bugs.webkit.org/show_bug.cgi?id=133825

Reviewed by Enrica Casucci.

Sometimes asking accessibilityIsIgnored() will cause a newObject to be detached immediately after its created.
The creation function holds a reference with RefPtr as long as it lives, but when that method returns, the object goes away.

With that out of the way, I saw the same backtrace lead to updateLayoutIgnorePendingStylesheets being called while still inLayout.

I tried my best but could not create a reproducible layout test.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::getOrCreate):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::updateBackingStore):

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

6 years agoUnreviewed. Add more GStreamer-specific header names that are required
zandobersek@gmail.com [Mon, 16 Jun 2014 21:22:41 +0000 (21:22 +0000)]
Unreviewed. Add more GStreamer-specific header names that are required
after changes in r170021, fixing the build for ports using GStreamer.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(StreamingClient::handleResponseReceived):
* platform/network/HTTPHeaderNames.in:

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

6 years agoAX: Crash at WebCore::AXObjectCache::textChanged
cfleizach@apple.com [Mon, 16 Jun 2014 21:01:35 +0000 (21:01 +0000)]
AX: Crash at WebCore::AXObjectCache::textChanged
https://bugs.webkit.org/show_bug.cgi?id=133873

Reviewed by Enrica Casucci.

This looks like a very similar problem to
https://bugs.webkit.org/show_bug.cgi?id=133825

The object is being created and deallocated almost right away because calling accessibilityIsIgnored triggers
a deferred layout that invalidates the associated render element.

Despite my best efforts, I could not come up with a way to reproduce this in a layout test.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::getOrCreate):

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

6 years agoChange ResourceRequestBase::addHTTPHeaderFields to setHTTPHeaderFields instead
andersca@apple.com [Mon, 16 Jun 2014 20:33:46 +0000 (20:33 +0000)]
Change ResourceRequestBase::addHTTPHeaderFields to setHTTPHeaderFields instead
https://bugs.webkit.org/show_bug.cgi?id=133925

Reviewed by Sam Weinig.

Source/WebCore:
* WebCore.exp.in:
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::setHTTPHeaderFields):
(WebCore::ResourceRequestBase::addHTTPHeaderFields): Deleted.
* platform/network/ResourceRequestBase.h:
* plugins/PluginView.cpp:
(WebCore::PluginView::handlePost):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createRequest):

Source/WebKit2:
* PluginProcess/PluginControllerProxy.h:
* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ResourceRequest>::decode):
* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_PostURL):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::loadURL):
* WebProcess/Plugins/PluginView.h:

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

6 years agoUse references instead of pointers to RenderBlock in RenderObject::enclosingBox().
commit-queue@webkit.org [Mon, 16 Jun 2014 19:52:21 +0000 (19:52 +0000)]
Use references instead of pointers to RenderBlock in RenderObject::enclosingBox().
https://bugs.webkit.org/show_bug.cgi?id=133902

Patch by Jeongeun Kim <je_julie.kim@samsung.com> on 2014-06-16
Reviewed by Andreas Kling.

Just a straightforward conversion from pointers to references.

No new tests, no behavior change.

* bindings/objc/DOMUIKitExtensions.mm:
(-[DOMHTMLElement structuralComplexityContribution]):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForRendererFragments):
* page/EventHandler.cpp:
(WebCore::scrollNode):
(WebCore::EventHandler::scrollOverflow):
(WebCore::EventHandler::logicalScrollOverflow):
* page/FrameView.cpp:
(WebCore::FrameView::layout):
* rendering/RenderBox.cpp:
(WebCore::computeInlineStaticDistance):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::computedRegionRangeForBox):
(WebCore::RenderFlowThread::objectShouldFragmentInFlowRegion):
(WebCore::RenderFlowThread::objectInFlowRegion):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::enclosingBox): Removed FIXME comment
* rendering/RenderObject.h:
* rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::owningRenderer):

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

6 years agoUse HTTPHeaderName in more places
andersca@apple.com [Mon, 16 Jun 2014 19:46:36 +0000 (19:46 +0000)]
Use HTTPHeaderName in more places
https://bugs.webkit.org/show_bug.cgi?id=133948

Reviewed by Andreas Kling.

* loader/cache/CachedRawResource.cpp:
(WebCore::shouldIgnoreHeaderForCacheReuse):
* platform/network/HTTPHeaderNames.in:
* xml/XMLHttpRequest.cpp:
(WebCore::isSetCookieHeader):
(WebCore::isForbiddenRequestHeader):
(WebCore::XMLHttpRequest::isAllowedHTTPHeader):
(WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData): Deleted.
(WebCore::staticData): Deleted.

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

6 years agoChange the order of the alias analysis passes to align with the opt pipeline of LLVM
commit-queue@webkit.org [Mon, 16 Jun 2014 19:27:46 +0000 (19:27 +0000)]
Change the order of the alias analysis passes to align with the opt pipeline of LLVM
https://bugs.webkit.org/show_bug.cgi?id=133753

Patch by Juergen Ributzka <juergen@apple.com> on 2014-06-16
Reviewed by Geoffrey Garen.

The order in which the alias analysis passes are added affects also the
order in which they are utilized. Change the order to align with the
one use by LLVM itself. The last alias analysis pass added will be
evaluated first. With this change we first perform a basic alias
analysis and then use the type-based alias analysis (if required).

* ftl/FTLCompile.cpp:
(JSC::FTL::compile):

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

6 years agoAdd HTTPHeaderName overloads on ResourceResponseBase
andersca@apple.com [Mon, 16 Jun 2014 19:26:49 +0000 (19:26 +0000)]
Add HTTPHeaderName overloads on ResourceResponseBase
https://bugs.webkit.org/show_bug.cgi?id=133946

Reviewed by Andreas Kling.

Source/WebCore:
* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::lastModified):
* loader/CrossOriginAccessControl.cpp:
(WebCore::passesAccessControlCheck):
* loader/CrossOriginPreflightResultCache.cpp:
(WebCore::CrossOriginPreflightResultCacheItem::parse):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::receivedFirstData):
(WebCore::FrameLoader::didBeginDocument):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::createResourceHandle):
* loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::canUseSheet):
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::load):
* loader/cache/CachedScript.cpp:
(WebCore::CachedScript::mimeType):
* platform/network/HTTPHeaderNames.in:
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::httpHeaderField):
(WebCore::ResourceResponseBase::setHTTPHeaderField):
* platform/network/ResourceResponseBase.h:
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::getAllResponseHeaders):
(WebCore::XMLHttpRequest::getResponseHeader):
(WebCore::XMLHttpRequest::responseMIMEType):
(WebCore::XMLHttpRequest::didReceiveResponse):

Source/WebKit2:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::buildHTTPHeaders):

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

6 years agoFix the arguments passed to the LLVM dylib
commit-queue@webkit.org [Mon, 16 Jun 2014 19:26:05 +0000 (19:26 +0000)]
Fix the arguments passed to the LLVM dylib
https://bugs.webkit.org/show_bug.cgi?id=133757

Patch by Juergen Ributzka <juergen@apple.com> on 2014-06-16
Reviewed by Geoffrey Garen.

The LLVM command line argument parser assumes that the first argument
is the program name. We need to add a fake program name, otherwise the
first argument will be parsed as program name and ignored.

* llvm/library/LLVMExports.cpp:
(initializeAndGetJSCLLVMAPI):

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

6 years agoFixed a typo in the last change.
mitz@apple.com [Mon, 16 Jun 2014 19:04:55 +0000 (19:04 +0000)]
Fixed a typo in the last change.

* UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences init]):

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

6 years ago[Cocoa] Remove WKPreferences persistence in user defaults
mitz@apple.com [Mon, 16 Jun 2014 19:00:35 +0000 (19:00 +0000)]
[Cocoa] Remove WKPreferences persistence in user defaults
https://bugs.webkit.org/show_bug.cgi?id=133945

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKPreferences.h: Removed userDefaultsKeyPrefix property and
initializer with userDefaultsKeyPrefix parameter.
* UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences init]): Changed to initialize an instance with an empty identifier, which
means that it won’t persist to user defaults.
(-[WKPreferences initWithUserDefaultsKeyPrefix:]): Deleted.
(-[WKPreferences userDefaultsKeyPrefix]): Deleted.

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

6 years ago"nullable" sequence support is incomplete (i.e. sequence<NativeType>?) https://bugs...
tonikitoo@webkit.org [Mon, 16 Jun 2014 17:41:40 +0000 (17:41 +0000)]
"nullable" sequence support is incomplete (i.e. sequence<NativeType>?) https://bugs.webkit.org/show_bug.cgi?id=131240

eeviewed by Darin Adler.
Patch by Antonio Gomes <a1.gomes@sisa.samsung.com>

Nullable sequences are not fully supported in WebKit's
code generator machinery. Although the generated code
does add "is nullable" check to the evaluation condition
(i.e. if (arg.isNull() || ...)), when the JSValue
that holds a "null" JSObject is actually to be "converted"
to a native Vector<T>, it fails.

The reason for the failure is in JSDOMBindings::toNativeArray.
This method verifies that JSValue does not hold a "non-null"
object, and it bails out.
Analogly, the "ref ptr" variant of this method (toRefPtrNativeArray)
does support nullables.

Patch fixes it be checking for a "null" JSValue check before hand.

Tests: Binding tests updated.

* bindings/js/JSDOMBinding.h:
(WebCore::toNativeArray):
* bindings/scripts/CodeGeneratorJS.pm:
(JSValueToNative):
* Modules/websocket/WebSocket.idl:
Removed one overload ctor now that
we can use nullable sequences.

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

6 years ago[MSE][Mac] Occasional image corruption after seeking
jer.noble@apple.com [Mon, 16 Jun 2014 17:23:49 +0000 (17:23 +0000)]
[MSE][Mac] Occasional image corruption after seeking
https://bugs.webkit.org/show_bug.cgi?id=133879

Reviewed by Eric Carlson.

Change the order of operations for seeks: change the current time of the AVSampleBufferRenderSynchronizer
before flushing and appending non-displaying samples.

Rather than having a single function which retrieves the fast seek time and then seeks, split this out
into two functions: one which gets the fast seek time, and one which seeks. (The later of course already
exists: seekToTime()).

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::fastSeekTimeForMediaTime): Renamed from seekToTime()
(WebCore::MediaSourcePrivateAVFObjC::seekToTime): Deleted.

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

6 years agoHave ScriptExecutionContext::Task functions take in a ScriptExecutionContext reference
zandobersek@gmail.com [Mon, 16 Jun 2014 16:45:59 +0000 (16:45 +0000)]
Have ScriptExecutionContext::Task functions take in a ScriptExecutionContext reference
https://bugs.webkit.org/show_bug.cgi?id=133795

Reviewed by Andreas Kling.

The pointer to the ScriptExecutionContext object that is passed to the C++11 lambdas or
helper functions wrapped in ScriptExecutionContext::Task is never null, so that parameter
should be a reference instead.

* Modules/webdatabase/Database.cpp:
(WebCore::Database::~Database):
(WebCore::Database::runTransaction):
(WebCore::Database::scheduleTransactionCallback):
* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseManager::openDatabase):
* Modules/webdatabase/SQLCallbackWrapper.h:
(WebCore::SQLCallbackWrapper::clear):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasksCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks): Dereference the
member variable that holds a never-null pointer to the ScriptExecutionContext. This should
similarly be a reference.
(WebCore::ThreadableWebSocketChannelClientWrapper::didConnectCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshakeCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::didCloseCallback):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageErrorCallback):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
* Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
(WebCore::workerGlobalScopeDidSend):
(WebCore::workerGlobalScopeDidGetBufferedAmount):
(WebCore::workerGlobalScopeDidConnect):
(WebCore::workerGlobalScopeDidReceiveMessage):
(WebCore::workerGlobalScopeDidReceiveBinaryData):
(WebCore::workerGlobalScopeDidUpdateBufferedAmount):
(WebCore::workerGlobalScopeDidStartClosingHandshake):
(WebCore::workerGlobalScopeDidClose):
(WebCore::workerGlobalScopeDidReceiveMessageError):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadConnect):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadSend):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadSendArrayBuffer):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadSendBlob):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadBufferedAmount):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadClose):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadFail):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadDestroy):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadSuspend):
(WebCore::WorkerThreadableWebSocketChannel::mainThreadResume):
* Modules/websockets/WorkerThreadableWebSocketChannel.h:
* bindings/js/JSCallbackData.h:
(WebCore::DeleteCallbackDataTask::DeleteCallbackDataTask):
* bindings/js/JSDOMGlobalObjectTask.cpp:
(WebCore::JSGlobalObjectTask::JSGlobalObjectTask):
* dom/Document.cpp:
(WebCore::Document::postTask):
(WebCore::Document::pendingTasksTimerFired):
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::processMessagePortMessagesSoon):
* dom/ScriptExecutionContext.h:
(WebCore::ScriptExecutionContext::Task::performTask):
(WebCore::ScriptExecutionContext::AddConsoleMessageTask::AddConsoleMessageTask):
* dom/StringCallback.cpp:
(WebCore::StringCallback::scheduleCallback):
* fileapi/FileReader.cpp:
(WebCore::delayedAbort):
(WebCore::FileReader::abort):
(WebCore::FileReader::doAbort): Deleted.
* loader/WorkerThreadableLoader.cpp:
(WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
(WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadDestroy):
(WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCancel):
(WebCore::workerGlobalScopeDidSendData):
(WebCore::workerGlobalScopeDidReceiveResponse):
(WebCore::workerGlobalScopeDidReceiveData):
(WebCore::workerGlobalScopeDidFinishLoading):
(WebCore::workerGlobalScopeDidFail):
(WebCore::workerGlobalScopeDidFailAccessControlCheck):
(WebCore::workerGlobalScopeDidFailRedirectCheck):
* loader/WorkerThreadableLoader.h:
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::postListenerTask):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::crossThreadRemoveRequestFromCache):
(WebCore::MemoryCache::crossThreadRemoveRequestFromSessionCaches):
* loader/cache/MemoryCache.h:
* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
(WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
(WebCore::SharedWorkerConnectTask::SharedWorkerConnectTask):
* workers/WorkerEventQueue.cpp:
(WebCore::WorkerEventQueue::enqueueEvent):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::close):
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
(WebCore::WorkerMessagingProxy::postExceptionToWorkerObject):
(WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::workerObjectDestroyed):
(WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
(WebCore::WorkerMessagingProxy::connectToInspector):
(WebCore::WorkerMessagingProxy::disconnectFromInspector):
(WebCore::WorkerMessagingProxy::sendMessageToInspector):
(WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyed):
(WebCore::WorkerMessagingProxy::workerGlobalScopeClosed):
(WebCore::WorkerMessagingProxy::postMessageToPageInspector):
(WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
(WebCore::WorkerMessagingProxy::reportPendingActivity):
* workers/WorkerRunLoop.cpp:
(WebCore::WorkerRunLoop::Task::performTask):
* workers/WorkerScriptLoader.cpp:
* workers/WorkerThread.cpp:
(WebCore::WorkerThread::stop):
(WebCore::WorkerThread::releaseFastMallocFreeMemoryInAllThreads):

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

6 years agoPage::findStringMatchingRanges() should take Vector<RefPtr<Range>> by reference inste...
zandobersek@gmail.com [Mon, 16 Jun 2014 16:42:31 +0000 (16:42 +0000)]
Page::findStringMatchingRanges() should take Vector<RefPtr<Range>> by reference instead of pointer
https://bugs.webkit.org/show_bug.cgi?id=133677

Reviewed by Anders Carlsson.

Source/WebCore:
* WebCore.exp.in: Update the changed symbol.
* page/Page.cpp:
(WebCore::Page::findStringMatchingRanges): The method expects the matchRanges parameter to be non-null,
so it should take in that parameter by reference instead of pointer.
* page/Page.h:

Source/WebKit2:
* WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::findString): Update the call to Page::findStringMatchingRanges() to pass
in a Vector<RefPtr<Range>> reference instead of a pointer.
(WebKit::FindController::findStringMatches): Ditto.

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

6 years agoConvert ASSERT in inlineFunctionForCapabilityLevel to early return
msaboff@apple.com [Mon, 16 Jun 2014 16:40:56 +0000 (16:40 +0000)]
Convert ASSERT in inlineFunctionForCapabilityLevel to early return
https://bugs.webkit.org/show_bug.cgi?id=133903

Reviewed by Mark Hahnenberg.

Hardened code by Converting ASSERT to return CannotCompile.

* dfg/DFGCapabilities.h:
(JSC::DFG::inlineFunctionForCapabilityLevel):

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

6 years agoREGRESSION (r168046): Incorrect layout for multicol spanners when moving from one...
stavila@adobe.com [Mon, 16 Jun 2014 16:33:27 +0000 (16:33 +0000)]
REGRESSION (r168046): Incorrect layout for multicol spanners when moving from one thread to another
https://bugs.webkit.org/show_bug.cgi?id=133589

Reviewed by Antti Koivisto.

Source/WebCore:
When a spanner is moved from a multicol thread to another, its placeholder
must be properly repositioned.

Test: fast/multicol/newmulticol/spanner-crash.html

* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::flowThreadDescendantInserted):

LayoutTests:
* fast/multicol/newmulticol/spanner-crash-expected.txt: Added.
* fast/multicol/newmulticol/spanner-crash.html: Added.

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

6 years ago[ATK] Missing 'selection-changed' signal when navigating a combo box with keyboard
mario.prada@samsung.com [Mon, 16 Jun 2014 15:01:06 +0000 (15:01 +0000)]
[ATK] Missing 'selection-changed' signal when navigating a combo box with keyboard
https://bugs.webkit.org/show_bug.cgi?id=133512

Reviewed by Chris Fleizach.

Source/WebCore:
Make sure that AccessibilityMenuList objects update their active
option when it changes, which will send a platform-dependent
accessibility-related notification when needed.

Test: accessibility/combo-box-collapsed-selection-changed.html

* rendering/RenderMenuList.cpp:
(RenderMenuList::didUpdateActiveOption): Keep the out-of-bounds
check for the index passed but don't avoid updating the option for
the associated AccessibilityMenuList object if the selected list
item does not have a renderer, because that could be the case for
cases where the popup (and its elements) would be rendered in the
UI Process (e.g. GTK+ port uses GtkMenu and GtkMenuItem for that).

* accessibility/AccessibilityMenuList.cpp:
(WebCore::AccessibilityMenuList::didUpdateActiveOption): Ensure
that the AccessibilityMenuListPopup object for a given menu list
has accessibility children before updating its active option.

Tools:
Added support for connecting to AtkSelection's 'selection-changed'
signal, and print it out as AXSelectedChildrenChanged in the tests.

Also removed some dead code, that became useless after r169487.

* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks): Updated.

LayoutTests:
Re-implemented test for combo boxes in terms of addNotificationListener()
instead of using the (already deprecated) logAccessibilityEvents method,
and made the test cross platform (as the fix is not platform specific).

* accessibility/combo-box-collapsed-selection-changed.html:
Implemented based on the former gtk-only test, and made it cross-platform.
* accessibility/combo-box-collapsed-selection-changed-expected.txt: New.
* platform/gtk/accessibility/combo-box-collapsed-selection-changed.html: Removed.
* platform/gtk/accessibility/combo-box-collapsed-selection-changed-expected.txt: Removed.

Updated expectation for test that checks that a notification is
sent when navigating through a multiselection list box, now that
we are actually printing such a notification.

* accessibility/multiselect-list-reports-active-option-expected.txt: Updated.

Removed two expected failures from TestExpectations for tests that
are now passing, one for the combo box test mentioned above and
another one for a test that is passing as well now, after applying
this fix: accessibility/menu-list-sends-change-notification.html

* platform/gtk/TestExpectations: Removed two 'failure' expectations.

* platform/mac/TestExpectations: Skip accessiblity test timing out, probably because
those kind of notifications while navigating a combo box are not needed in the Mac.

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

6 years agoUnreviewed, rolling out r170003.
commit-queue@webkit.org [Mon, 16 Jun 2014 12:17:10 +0000 (12:17 +0000)]
Unreviewed, rolling out r170003.
https://bugs.webkit.org/show_bug.cgi?id=133938

This patch broke GTK build (Requested by kczech on #webkit).

Reverted changeset:

"[EFL] Platform support for WebSpeech feature."
https://bugs.webkit.org/show_bug.cgi?id=116438
http://trac.webkit.org/changeset/170003

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

6 years agoDraw radicals with glyphs for better rendering.
fred.wang@free.fr [Mon, 16 Jun 2014 11:31:38 +0000 (11:31 +0000)]
Draw radicals with glyphs for better rendering.
https://bugs.webkit.org/show_bug.cgi?id=119038

Unreviewed ASSERT fix.

* rendering/mathml/RenderMathMLRoot.h:

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

6 years agoDraw radicals with glyphs for better rendering
fred.wang@free.fr [Mon, 16 Jun 2014 10:07:32 +0000 (10:07 +0000)]
Draw radicals with glyphs for better rendering
https://bugs.webkit.org/show_bug.cgi?id=119038

Reviewed by Chris Fleizach.

Source/WebCore:
We rewrite RenderMathMLRoot in order to fix bugs with SVG transforms and dynamic modification of children and allow drawing with an OpenType MATH table.
The drawing of the radical sign (without the top bar) is now moved to a RenderMathMLRadicalOperator class inheriting from RenderMathMLOperator.
This class fallbacks to the original drawing with graphic primitives if an OpenType MATH table is not available.

Tests: mathml/opentype/roots-LatinModern.html
       mathml/presentation/mroot-transform.html

* CMakeLists.txt: add files to build system.
* WebCore.vcxproj/WebCore.vcxproj: ditto.
* WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto
* css/mathml.css: remove rules for msqrt/mroot. The "script level" in mroot is not incremented by 2 as specified in the spec.
(math, mrow, mfenced, merror, mphantom, mstyle, menclose):
(mroot > *:last-child):
(math, mrow, mfenced, msqrt, mroot, merror, mphantom, mstyle, menclose): Deleted.
(msqrt > *): Deleted.
(mroot): Deleted. This rule was causing bug 126516.
(mroot > * + *): Deleted.
* rendering/RenderObject.h: Add two new isRenderMathML* functions for dynamic casting.
(WebCore::RenderObject::isRenderMathMLRadicalOperator):
(WebCore::RenderObject::isRenderMathMLRootWrapper):
* rendering/mathml/RenderMathMLOperator.cpp: Accept a set of operator dictionary flags, all disabled by default. This is to allow anonymous radicas, which don't have any flag.
isFencedOperator() is now replaced with the more general isAnonymous() since we allow anonymous radical operator fors msqrt/mroot.
(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::setOperatorFlagFromAttribute):
(WebCore::RenderMathMLOperator::setOperatorPropertiesFromOpDictEntry):
(WebCore::RenderMathMLOperator::SetOperatorProperties):
(WebCore::RenderMathMLOperator::updateTokenContent):
* rendering/mathml/RenderMathMLOperator.h: Allow class to be overriden, redefine the anonymous constructor, remove isFencedOperator().
* rendering/mathml/RenderMathMLRadicalOperator.cpp: Added.
(WebCore::RenderMathMLRadicalOperator::RenderMathMLRadicalOperator):
(WebCore::RenderMathMLRadicalOperator::stretchTo):
(WebCore::RenderMathMLRadicalOperator::SetOperatorProperties):
(WebCore::RenderMathMLRadicalOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLRadicalOperator::computeLogicalHeight):
(WebCore::RenderMathMLRadicalOperator::paint):
(WebCore::RenderMathMLRadicalOperator::trailingSpaceError):
* rendering/mathml/RenderMathMLRadicalOperator.h: Added.
* rendering/mathml/RenderMathMLRoot.cpp: Rewritten. Some parts to use graphic primitives are moved to RenderMathMLRadicalOperator.cpp.
(WebCore::RenderMathMLRoot::RenderMathMLRoot):
(WebCore::RenderMathMLRoot::baseWrapper):
(WebCore::RenderMathMLRoot::radicalWrapper):
(WebCore::RenderMathMLRoot::indexWrapper):
(WebCore::RenderMathMLRoot::radicalOperator):
(WebCore::RenderMathMLRoot::restructureWrappers):
(WebCore::RenderMathMLRoot::addChild):
(WebCore::RenderMathMLRoot::styleDidChange):
(WebCore::RenderMathMLRoot::updateFromElement):
(WebCore::RenderMathMLRoot::updateStyle):
(WebCore::RenderMathMLRoot::firstLineBaseline):
(WebCore::RenderMathMLRoot::layout):
(WebCore::RenderMathMLRoot::paint):
(WebCore::RenderMathMLRootWrapper::createAnonymousWrapper):
(WebCore::RenderMathMLRootWrapper::removeChildWithoutRestructuring):
(WebCore::RenderMathMLRootWrapper::removeChild):
(WebCore::RenderMathMLRoot::paddingTop): Deleted.
(WebCore::RenderMathMLRoot::paddingBottom): Deleted.
(WebCore::RenderMathMLRoot::paddingLeft): Deleted.
(WebCore::RenderMathMLRoot::paddingRight): Deleted.
(WebCore::RenderMathMLRoot::paddingBefore): Deleted.
(WebCore::RenderMathMLRoot::paddingAfter): Deleted.
(WebCore::RenderMathMLRoot::paddingStart): Deleted.
(WebCore::RenderMathMLRoot::paddingEnd): Deleted.
(WebCore::RenderMathMLRoot::index): Deleted.
* rendering/mathml/RenderMathMLRoot.h: Rewritten.
(WebCore::RenderMathMLRootWrapper::RenderMathMLRootWrapper):

LayoutTests:
We update the reference for some tests with radicals and update the expectation of tests for addition/removal of children in an msqrt/mroot element.
We also add a test for bug 126516 (SVG transforms not applied to mroot) and a new test for radical drawing using an OpenType MATH table.

* TestExpectations: enable the tests for addition/removal of children.
* mathml/opentype/roots-LatinModern.html: Added.
* mathml/presentation/mroot-transform-expected.html: Added.
* mathml/presentation/mroot-transform.html: Added.
* platform/efl/TestExpectations: mark failures for bad references.
* platform/efl/mathml/opentype/roots-LatinModern-expected.txt: Added.
* platform/gtk/mathml/opentype/roots-LatinModern-expected.png: Added.
* platform/gtk/mathml/opentype/roots-LatinModern-expected.txt: Added.
* platform/gtk/mathml/presentation/mo-stretch-expected.png: update reference.
* platform/gtk/mathml/presentation/mo-stretch-expected.txt: update reference.
* platform/gtk/mathml/presentation/roots-expected.png: update reference.
* platform/gtk/mathml/presentation/roots-expected.txt: update reference.
* platform/mac/TestExpectations: mark failures for bad references.
* platform/mac/mathml/opentype/roots-LatinModern-expected.txt: Added.
* platform/win/TestExpectations: mark failures for bad references.
* platform/win/mathml/opentype/roots-LatinModern-expected.txt: Added.

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

6 years ago[EFL] Change expectations for three failing or flaky layout tests.
commit-queue@webkit.org [Mon, 16 Jun 2014 09:09:21 +0000 (09:09 +0000)]
[EFL] Change expectations for three failing or flaky layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133861

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-16

* platform/efl/TestExpectations:

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

6 years ago[EFL] Platform support for WebSpeech feature.
k.czech@samsung.com [Mon, 16 Jun 2014 08:25:44 +0000 (08:25 +0000)]
[EFL] Platform support for WebSpeech feature.
https://bugs.webkit.org/show_bug.cgi?id=116438

Reviewed by Gyuyoung Kim.

.:
Add ENABLE_SPEECH_SYNTHESIS flag to have Speech Synthesis in EFL.

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/WebCore:
It's a first step of adding support for Speech Synthesis in EFL port.
Just stub out required API and support for compilation.

* CMakeLists.txt:
* PlatformEfl.cmake:
* platform/PlatformSpeechSynthesizer.h:
* platform/efl/PlatformSpeechSynthesisProviderEfl.cpp: Added.
(WebCore::PlatformSpeechSynthesisProviderEfl::PlatformSpeechSynthesisProviderEfl):
(WebCore::PlatformSpeechSynthesisProviderEfl::~PlatformSpeechSynthesisProviderEfl):
(WebCore::PlatformSpeechSynthesisProviderEfl::initializeVoiceList):
(WebCore::PlatformSpeechSynthesisProviderEfl::pause):
(WebCore::PlatformSpeechSynthesisProviderEfl::resume):
(WebCore::PlatformSpeechSynthesisProviderEfl::speak):
(WebCore::PlatformSpeechSynthesisProviderEfl::cancel):
* platform/efl/PlatformSpeechSynthesisProviderEfl.h: Added.
* platform/efl/PlatformSpeechSynthesizerEfl.cpp: Added.
(WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
(WebCore::PlatformSpeechSynthesizer::pause):
(WebCore::PlatformSpeechSynthesizer::resume):
(WebCore::PlatformSpeechSynthesizer::speak):
(WebCore::PlatformSpeechSynthesizer::cancel):

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

6 years agoUnreviewed build fixes for the EFL and GTK+ ports after r169994 and 170000.
zandobersek@gmail.com [Mon, 16 Jun 2014 07:25:31 +0000 (07:25 +0000)]
Unreviewed build fixes for the EFL and GTK+ ports after r169994 and 170000.

* UIProcess/API/C/WKPluginSiteDataManager.cpp: Undefine the None macro under X11.
* UIProcess/API/gtk/WebKitCookieManager.cpp:
(webkit_cookie_manager_get_accept_policy): Remove unnecessary ::create() wrappings.
(webkit_cookie_manager_get_domains_with_cookies): Ditto.
* UIProcess/API/gtk/WebKitWebResource.cpp:
(webkit_web_resource_get_data): Ditto.

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