WebKit-https.git
5 years ago[Win] testapi and testRegExp need to find support libraries.
bfulgham@apple.com [Wed, 27 Aug 2014 21:30:55 +0000 (21:30 +0000)]
[Win] testapi and testRegExp need to find support libraries.
https://bugs.webkit.org/show_bug.cgi?id=136008.

Reviewed by Dean Jackson.

Revise the Windows build of jsc, testapi, and testRegExp so that they
find and use the proper runtime support libraries.

These locations vary between the Apple Windows build and WinCairo, and
are generally not in the system PATH environment setting. Consequently,
these applications fail on launch unless the user modifies their
PATH.

This patch revises these tools to work like WinLauncher and DumpRenderTree
so that they run reliably.

* API/tests/testapi.c:
(dllLauncherEntryPoint): Added.
* JavaScriptCore.vcxproj/JavaScriptCore.sln: Add new build projects and
  provide proper dependencies with existing projects.
* JavaScriptCore.vcxproj/JavaScriptCore.submit.sln: Ditto.
* JavaScriptCore.vcxproj/jsc/jsc.vcxproj: Switch to build
  a DLL, rather than an executable.
* JavaScriptCore.vcxproj/jsc/jscCommon.props: Add shlwapi.lib
  to the list of libraries needed at link-time, and to use
  the DLL/Console combination entry point.
* JavaScriptCore.vcxproj/jsc/jscLauncher.vcxproj: Added.
* JavaScriptCore.vcxproj/jsc/jscLauncherPostBuild.cmd: Copied from JavaScriptCore.vcxproj/jsc/jscPostBuild.cmd.
* JavaScriptCore.vcxproj/jsc/jscLauncherPreBuild.cmd: Copied from JavaScriptCore.vcxproj/jsc/jscPreBuild.cmd.
* JavaScriptCore.vcxproj/jsc/jscLauncherPreLink.cmd: Copied from JavaScriptCore.vcxproj/jsc/jscPreLink.cmd.
* JavaScriptCore.vcxproj/testRegExp/testRegExp.vcxproj: Switch to build
  a DLL, rather than an executable.
* JavaScriptCore.vcxproj/testRegExp/testRegExpCommon.props: Add shlwapi.lib
  to the list of libraries needed at link-time, and to use
  the DLL/Console combination entry point.
* JavaScriptCore.vcxproj/testRegExp/testRegExpLauncher.vcxproj: Added.
* JavaScriptCore.vcxproj/testRegExp/testRegExpLauncherPostBuild.cmd: Copied from JavaScriptCore.vcxproj/testRegExp/testRegExpPostBuild.cmd.
* JavaScriptCore.vcxproj/testRegExp/testRegExpLauncherPreBuild.cmd: Copied from JavaScriptCore.vcxproj/testRegExp/testRegExpPreBuild.cmd.
* JavaScriptCore.vcxproj/testRegExp/testRegExpLauncherPreLink.cmd: Copied from JavaScriptCore.vcxproj/testRegExp/testRegExpPreLink.cmd.
* JavaScriptCore.vcxproj/testapi/testapi.vcxproj: Switch to build
  a DLL, rather than an executable.
* JavaScriptCore.vcxproj/testapi/testapiLauncher.vcxproj: Added.
* JavaScriptCore.vcxproj/testapi/testapiCommon.props: Add shlwapi.lib
  to the list of libraries needed at link-time, and to use
  the DLL/Console combination entry point.
* JavaScriptCore.vcxproj/testapi/testapiLauncherPostBuild.cmd: Copied from JavaScriptCore.vcxproj/testRegExp/testRegExpPostBuild.cmd.
* JavaScriptCore.vcxproj/testapi/testapiLauncherPreBuild.cmd: Copied from JavaScriptCore.vcxproj/testRegExp/testRegExpPreBuild.cmd.
* JavaScriptCore.vcxproj/testapi/testapiLauncherPreLink.cmd: Copied from JavaScriptCore.vcxproj/testRegExp/testRegExpPreLink.cmd.
* jsc.cpp:
(dllLauncherEntryPoint): Added.
* testRegExp.cpp:
(dllLauncherEntryPoint): Added.

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

5 years agoREGRESSION(r172946): Plugin tests asserting on Yosemite debug bot
antti@apple.com [Wed, 27 Aug 2014 21:17:27 +0000 (21:17 +0000)]
REGRESSION(r172946): Plugin tests asserting on Yosemite debug bot
https://bugs.webkit.org/show_bug.cgi?id=136301

Reviewed by Alexey Proskuryakov.

Don't pull the priority from the platform request if it is not defined.

* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::doUpdateResourceRequest):
* platform/network/cocoa/ResourceRequestCocoa.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):

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

5 years agoWeb Inspector: Crash when you open Web Inspector in a private window (due to IndexedDB)
timothy@apple.com [Wed, 27 Aug 2014 20:31:35 +0000 (20:31 +0000)]
Web Inspector: Crash when you open Web Inspector in a private window (due to IndexedDB)
https://bugs.webkit.org/show_bug.cgi?id=136293

Reviewed by Joseph Pecoraro.

* inspector/InspectorIndexedDBAgent.cpp:
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames): Null check idbRequest from
IDBFactory::getDatabaseNames, which can return null now after r172603 in private browsing.

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

5 years agoWeb Inspector: Layout issues for popover on not legacy OS
commit-queue@webkit.org [Wed, 27 Aug 2014 20:19:33 +0000 (20:19 +0000)]
Web Inspector: Layout issues for popover on not legacy OS
https://bugs.webkit.org/show_bug.cgi?id=136268

Patch by Saam Barati <sbarati@apple.com> on 2014-08-27
Reviewed by Joseph Pecoraro.

On the latest OS, popovers invade the title bar's space which will
cause layout issues because the title bar will render above
the popover. Fix this by providing some padding for popovers on
not legacy OSs.

* UserInterface/Views/Popover.js:

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

5 years agooverflow:scroll elements should not latch to the body if the body is
bdakin@apple.com [Wed, 27 Aug 2014 19:53:31 +0000 (19:53 +0000)]
overflow:scroll elements should not latch to the body if the body is
overflow:hidden
https://bugs.webkit.org/show_bug.cgi?id=136273

Reviewed by Darin Adler.

Source/WebCore:

This patch adds an optional parameter to isScrollable(). The Scrollability
parameter that allows the caller to define what they mean by 'scrollable.' Most
callers are interested in the default value, Scrollability::Scrollable, which
means that there is actually content to scroll to, and a scrollbar that will allow
you to access it. In some cases, such as this latching case, callers want to know
if the FrameView is allowed to rubber-band, which the main frame might be allowed
to do even if there is no content to scroll to. In that case, callers use
Scrollability::ScrollableOrRubberbandable.
* page/FrameView.cpp:
(WebCore::FrameView::isScrollable):
(WebCore::FrameView::hasScrollableOrRubberbandableAncestor):

New virtual function on ScrollableArea answers whether a ScrollableArea has any
scrollable or rubber-bandable ancestor.
* page/FrameView.h:
* platform/ScrollableArea.h:

Events should only be allowed to prevent stretching if there is some ancestor
ScrollableArea that will be able to make use of the event.
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::allowsVerticalStretching):
(WebCore::ScrollAnimatorMac::allowsHorizontalStretching):

New ScrollableArea virtual function.
* platform/win/PopupMenuWin.h:

New RenderBox isScrollableOrRubberbandable() returns just
canBeScrolledAndHasScrollableArea() for most RenderBox, but will be overridden by
RenderView.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::isScrollableOrRubberbandable):
* rendering/RenderBox.h:

Recurse up the parent chain to find out if anything is scrollable or just rubber-
bandable.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hasScrollableOrRubberbandableAncestor):
* rendering/RenderLayer.h:

Call into RenderLayer.
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::hasScrollableOrRubberbandableAncestor):
* rendering/RenderListBox.h:

Override isScrollableOrRubberbandable() to handle the main frame case where the
main frame is typically allowed to rubber-band even if there is no content to
scroll to.
* rendering/RenderView.cpp:
(WebCore::RenderView::isScrollableOrRubberbandable):
* rendering/RenderView.h:

Source/WebKit2:

New ScrollabeArea virtual function.
* WebProcess/Plugins/PDF/PDFPlugin.h:

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

5 years ago[WinCairo] Link error.
commit-queue@webkit.org [Wed, 27 Aug 2014 19:37:16 +0000 (19:37 +0000)]
[WinCairo] Link error.
https://bugs.webkit.org/show_bug.cgi?id=136286

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-08-27
Reviewed by Darin Adler.

Link with the dynamic runtime libraries, since the WinCairo libraries link with these.

* win/tools/vsprops/common.props:

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

5 years agoUpdating attributes on HTML elements do not invalidate the style correctly unless...
benjamin@webkit.org [Wed, 27 Aug 2014 19:16:51 +0000 (19:16 +0000)]
Updating attributes on HTML elements do not invalidate the style correctly unless the attribute name is lowercase in the stylesheet
https://bugs.webkit.org/show_bug.cgi?id=136270
Source/WebCore:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-27
Reviewed by Andreas Kling.

In HTML, WebKit treats every attribute name lowercase to implement case-insensitive matching.
When invalidating style, the StyleResolver was ignoring HTML and always using the XML names.

This patch split the names on RuleFeatureSet in two sets: one for XML, one for HTML.
In StyleResolver, the name used depends on the type of the element being updated.

This patch also adds nodeNeedsStyleRecalc() to Internals to test the optimization and various cases
of style update.

Tests: fast/css/attribute-for-content-property-style-update-html.html
       fast/css/attribute-for-content-property-style-update-xhtml.xhtml
       fast/css/attribute-style-invalidation-optimization-html.html
       fast/css/attribute-style-invalidation-optimization-xhtml.xhtml
       fast/css/attribute-style-update-html.html
       fast/selectors/attribute-style-update-html.html
       fast/selectors/attribute-style-update-svg-in-html.html
       fast/selectors/attribute-style-update-xhtml.xhtml

* css/RuleFeature.cpp:
(WebCore::RuleFeatureSet::collectFeaturesFromSelector):
(WebCore::RuleFeatureSet::add):
(WebCore::RuleFeatureSet::clear):
* css/RuleFeature.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* css/StyleResolver.h:
(WebCore::StyleResolver::hasSelectorForAttribute):
* dom/Element.cpp:
(WebCore::Element::willModifyAttribute):
* testing/Internals.cpp:
(WebCore::Internals::address):
(WebCore::Internals::nodeNeedsStyleRecalc):
* testing/Internals.h:
* testing/Internals.idl:

LayoutTests:

rdar://problem/16190617

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-27
Reviewed by Andreas Kling.

The test coverage for attribute update was abysmal. This adds the basic cases for HTML and XML.

* fast/css/attribute-for-content-property-style-update-html-expected.html: Added.
* fast/css/attribute-for-content-property-style-update-html.html: Added.
* fast/css/attribute-for-content-property-style-update-xhtml-expected.html: Added.
* fast/css/attribute-for-content-property-style-update-xhtml.xhtml: Added.
* fast/css/attribute-style-invalidation-optimization-html-expected.txt: Added.
* fast/css/attribute-style-invalidation-optimization-html.html: Added.
* fast/css/attribute-style-invalidation-optimization-xhtml-expected.txt: Added.
* fast/css/attribute-style-invalidation-optimization-xhtml.xhtml: Added.
* fast/css/attribute-style-update-html-expected.html: Added.
* fast/css/attribute-style-update-html.html: Added.
* fast/selectors/attribute-style-update-html-expected.txt: Added.
* fast/selectors/attribute-style-update-html.html: Added.
* fast/selectors/attribute-style-update-svg-in-html-expected.txt: Added.
* fast/selectors/attribute-style-update-svg-in-html.html: Added.
* fast/selectors/attribute-style-update-xhtml-expected.txt: Added.
* fast/selectors/attribute-style-update-xhtml.xhtml: Added.

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

5 years agoUpdate the CSS Grammar selector names to get closer to the latest terminology
benjamin@webkit.org [Wed, 27 Aug 2014 19:15:52 +0000 (19:15 +0000)]
Update the CSS Grammar selector names to get closer to the latest terminology
https://bugs.webkit.org/show_bug.cgi?id=136277

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-27
Reviewed by Andreas Kling.

CSS Selector Level 4 gives useful definitions for various parts of a selector
(see http://dev.w3.org/csswg/selectors4/#structure). This patch updates our names to be closer
to that spec.

Stricto sensu, our definition of "simple selector list" is wrong. I did not attempt to fix this
because updates of CSS Selector Level 4 and WebVTT will eventually make that whole concept useless.

* css/CSSGrammar.y.in:

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

5 years agoREGRESSION: Web Inspector: Legacy toolbar has two different colors in unfocused windo...
timothy@apple.com [Wed, 27 Aug 2014 19:14:24 +0000 (19:14 +0000)]
REGRESSION: Web Inspector: Legacy toolbar has two different colors in unfocused windowed mode
https://bugs.webkit.org/show_bug.cgi?id=136289

Reviewed by Darin Adler.

* UserInterface/Views/Toolbar.css:
(body.mac-platform.legacy .toolbar): Override the background-color as transparent. Non-legacy
uses a solid color instead of a gradient for window-inactive.

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

5 years agobuild.webkit.org/dashboard: Add a metrics page with overall bot performance results
ap@apple.com [Wed, 27 Aug 2014 17:12:45 +0000 (17:12 +0000)]
build.webkit.org/dashboard: Add a metrics page with overall bot performance results
https://bugs.webkit.org/show_bug.cgi?id=136196

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/External: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/External/daterangepicker.css: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/External/jquery-1.11.1.min.js: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/External/jquery.daterangepicker.js: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/External/moment.min.js: Added.
A date range picker control with dependencies.
There are a few modifications from upstream at <https://github.com/longbill/jquery-date-range-picker>:
- Fixed a bug where selected dates were not at midnight the first time a range was chosen
(it didn't happen again upon re-opening the picker).
- Made made style tweaks to match Dashboard UI.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
Don't create objects that are not needed by the given app, and thus are not loaded at all.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsAnalyzer.js: Added.
Math to count all the things. Only supports open source tree and trunk at the moment,
but written with internal tree and branches in mind.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js: Added.
Like dashboard Main.js, draws the UI and creates all necessary objects.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsView.js: Added.
A view for table cells.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
(Settings.prototype.toggleSettingsDisplay): Added an event for entering settings.
Metrics page has individual platforms initially scrolled away form the view, so
it needs to scroll down to reveal what's being configured.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
Added Array.prototype.average and Array.prototype.median.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
Made gear icon fixed instead of absolute, so that it's visible on metrics page when
in settings mode.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Metrics.css:
Additional style rules.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/metrics.html:
The metrics page.

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

5 years ago[CSS Regions] Move generated content tests into fast/regions/generated-content
mihnea@adobe.com [Wed, 27 Aug 2014 17:02:57 +0000 (17:02 +0000)]
[CSS Regions] Move generated content tests into fast/regions/generated-content
https://bugs.webkit.org/show_bug.cgi?id=136288

Reviewed by Andrei Bucur.

Move related tests into generated-content folder and adjust paths.

* fast/regions/generated-content/firstletter-inside-flowthread-expected.html: Renamed from LayoutTests/fast/regions/firstletter-inside-flowthread-expected.html.
* fast/regions/generated-content/firstletter-inside-flowthread.html: Renamed from LayoutTests/fast/regions/firstletter-inside-flowthread.html.
* fast/regions/generated-content/pseudo-after-content-node-expected.txt: Renamed from LayoutTests/fast/regions/pseudo-after-content-node-expected.txt.
* fast/regions/generated-content/pseudo-after-content-node.html: Renamed from LayoutTests/fast/regions/pseudo-after-content-node.html.
* fast/regions/generated-content/pseudo-before-content-node-expected.txt: Renamed from LayoutTests/fast/regions/pseudo-before-content-node-expected.txt.
* fast/regions/generated-content/pseudo-before-content-node.html: Renamed from LayoutTests/fast/regions/pseudo-before-content-node.html.
* fast/regions/generated-content/pseudo-first-letter-content-node-expected.txt: Renamed from LayoutTests/fast/regions/pseudo-first-letter-content-node-expected.txt.
* fast/regions/generated-content/pseudo-first-letter-content-node.html: Renamed from LayoutTests/fast/regions/pseudo-first-letter-content-node.html.
* fast/regions/generated-content/pseudo-first-line-content-node-expected.txt: Renamed from LayoutTests/fast/regions/pseudo-first-line-content-node-expected.txt.
* fast/regions/generated-content/pseudo-first-line-content-node.html: Renamed from LayoutTests/fast/regions/pseudo-first-line-content-node.html.

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

5 years agoTake advantage of 3 parameters or32() calls
julien.brianceau@gmail.com [Wed, 27 Aug 2014 16:04:57 +0000 (16:04 +0000)]
Take advantage of 3 parameters or32() calls
https://bugs.webkit.org/show_bug.cgi?id=136287

Reviewed by Michael Saboff.

For specific architectures (arm and mips for instance), or32() calls
with 3 parameters are likely to produce a single instruction.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::branchIsOther):
(JSC::DFG::SpeculativeJIT::branchNotOther):

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

5 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Wed, 27 Aug 2014 13:20:32 +0000 (13:20 +0000)]
Unreviewed EFL gardening

* platform/efl/TestExpectations: Add test expectations for failing and crashin tests.
* platform/efl/fast/css/viewport-units-dynamic-expected.txt: Added after r171567.
* platform/efl/fast/multicol/pagination/RightToLeft-max-width-expected.txt: Added after r171609.
* platform/efl/fast/ruby/bopomofo-expected.txt: Added after r172874.
* platform/efl/fast/ruby/bopomofo-letter-spacing-expected.txt: Ditto.
* platform/efl/fast/ruby/bopomofo-rl-expected.txt: Added after r172861.

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

5 years agohttp://webkit.org/coding/coding-style.html should mention check-webkit-style.
llango.u-szeged@partner.samsung.com [Wed, 27 Aug 2014 13:10:53 +0000 (13:10 +0000)]
webkit.org/coding/coding-style.html should mention check-webkit-style.
https://bugs.webkit.org/show_bug.cgi?id=31993

Reviewed by Darin Adler.

Based on patch by Peter Szanka <h868064@stud.u-szeged.hu>

* coding/contributing.html:
Extend the description of code style guidelines with check-webkit-style in the contributing.html.

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

5 years ago[EFL] Add expectations for flaky svg layout test.
commit-queue@webkit.org [Wed, 27 Aug 2014 12:40:19 +0000 (12:40 +0000)]
[EFL] Add expectations for flaky svg layout test.
https://bugs.webkit.org/show_bug.cgi?id=130592

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-08-27

* platform/efl/TestExpectations:

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

5 years agoRemove networkinfo watch category in watchlist
gyuyoung.kim@samsung.com [Wed, 27 Aug 2014 08:31:35 +0000 (08:31 +0000)]
Remove networkinfo watch category in watchlist
https://bugs.webkit.org/show_bug.cgi?id=136279

Reviewed by Alexey Proskuryakov.

Network info was removed. So, it is not needed anymore.

* Scripts/webkitpy/common/config/watchlist:

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

5 years ago[EFL] Share fast/speechsynthesis/ with other ports
k.czech@samsung.com [Wed, 27 Aug 2014 08:04:14 +0000 (08:04 +0000)]
[EFL] Share fast/speechsynthesis/ with other ports
https://bugs.webkit.org/show_bug.cgi?id=136224

Reviewed by Chris Fleizach.

.:

Enable WebSpeech for EFL.

* Source/cmake/OptionsEfl.cmake:

LayoutTests:

Share fast/speechsynthesis tests with EFL after r172956.
Skipped them for GTK and Win.

* fast/speechsynthesis/speech-synthesis-boundary-events-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events-expected.txt.
* fast/speechsynthesis/speech-synthesis-boundary-events.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events.html.
* fast/speechsynthesis/speech-synthesis-cancel-crash-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-cancel-crash-expected.txt.
* fast/speechsynthesis/speech-synthesis-cancel-crash.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-cancel-crash.html.
* fast/speechsynthesis/speech-synthesis-cancel-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-cancel-expected.txt.
* fast/speechsynthesis/speech-synthesis-cancel.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-cancel.html.
* fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance-expected.txt.
* fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance.html.
* fast/speechsynthesis/speech-synthesis-elapsed-time-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-elapsed-time-expected.txt.
* fast/speechsynthesis/speech-synthesis-elapsed-time.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-elapsed-time.html.
* fast/speechsynthesis/speech-synthesis-gc-utterance-crash-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-gc-utterance-crash-expected.txt.
* fast/speechsynthesis/speech-synthesis-gc-utterance-crash.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-gc-utterance-crash.html.
* fast/speechsynthesis/speech-synthesis-pause-resume-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume-expected.txt.
* fast/speechsynthesis/speech-synthesis-pause-resume.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume.html.
* fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-speak-empty-string-expected.txt.
* fast/speechsynthesis/speech-synthesis-speak-empty-string.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-speak-empty-string.html.
* fast/speechsynthesis/speech-synthesis-speak-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-speak-expected.txt.
* fast/speechsynthesis/speech-synthesis-speak.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-speak.html.
* fast/speechsynthesis/speech-synthesis-utterance-uses-voice-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-utterance-uses-voice-expected.txt.
* fast/speechsynthesis/speech-synthesis-utterance-uses-voice.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-utterance-uses-voice.html.
* fast/speechsynthesis/speech-synthesis-voices-expected.txt: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-voices-expected.txt.
* fast/speechsynthesis/speech-synthesis-voices.html: Renamed from LayoutTests/platform/mac/fast/speechsynthesis/speech-synthesis-voices.html.
* platform/gtk/TestExpectations: Skipped for GTK
* platform/win/TestExpectations: Skipped for Win

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

5 years ago[EFL] Unskip compositing test
gyuyoung.kim@samsung.com [Wed, 27 Aug 2014 07:56:09 +0000 (07:56 +0000)]
[EFL] Unskip compositing test
https://bugs.webkit.org/show_bug.cgi?id=136151

Reviewed by Csaba Osztrogonác.

Source/WebCore:

* rendering/RenderLayerBacking.cpp: Set true to setContentsOpaque() to support compositing test.
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):

LayoutTests:

* platform/efl/TestExpectations: Unskip compositing tests.

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

5 years agobuild.webkit.org/dashboard: Poor performance when there are broken builds at initial...
ap@apple.com [Wed, 27 Aug 2014 06:58:51 +0000 (06:58 +0000)]
build.webkit.org/dashboard: Poor performance when there are broken builds at initial load time
https://bugs.webkit.org/show_bug.cgi?id=136281

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
Track and expose whether the itertion is being loaded. Made update() a no-op if
the iteration is already being loaded.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus): Instead of
loading everything at once, ask the queue to load a little more. We can always repeat
if we still don't have enough data.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue.prototype.loadMoreHistoricalIterations): Added a function that loads
10 more iterations intelligently.

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

5 years agobuild.webkit.org/dashboard raises an exception when Trac RSS fails to load
ap@apple.com [Wed, 27 Aug 2014 06:56:54 +0000 (06:56 +0000)]
build.webkit.org/dashboard raises an exception when Trac RSS fails to load
https://bugs.webkit.org/show_bug.cgi?id=136283

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
Don't.

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

5 years agobuild.webkit.org/dashboard raises an exception after a hidden platform is removed
ap@apple.com [Wed, 27 Aug 2014 06:43:57 +0000 (06:43 +0000)]
build.webkit.org/dashboard raises an exception after a hidden platform is removed
https://bugs.webkit.org/show_bug.cgi?id=136282

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
(updateHiddenPlatforms): Check that the platform is still valid.

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

5 years agoCanvas direction should reflect change in dir attribute and also across save/restore...
vivek.vg@samsung.com [Wed, 27 Aug 2014 03:53:00 +0000 (03:53 +0000)]
Canvas direction should reflect change in dir attribute and also across save/restore operations
https://bugs.webkit.org/show_bug.cgi?id=136098

Reviewed by Darin Adler.

Source/WebCore:

Changed State.m_direction type from TextDirection to Direction enum to accomodate 'inherit'
as a separate value. Modified the getter to compute the 'live' value for the direction attribute.
Removed explicit passing of direction to CanvasRenderingContext2D::State constructor.

Updated existing canvas-direction.html with additional cases to reflect this change.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
(WebCore::CanvasRenderingContext2D::reset):
(WebCore::CanvasRenderingContext2D::State::State):
(WebCore::CanvasRenderingContext2D::toTextDirection):
(WebCore::CanvasRenderingContext2D::direction):
(WebCore::CanvasRenderingContext2D::setDirection):
(WebCore::CanvasRenderingContext2D::drawTextInternal):
(WebCore::inheritedDirection): Deleted.
* html/canvas/CanvasRenderingContext2D.h:

LayoutTests:

* fast/canvas/canvas-direction-expected.txt:
* fast/canvas/canvas-direction.html:

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

5 years agoAdd WebKit SPI to control the navigator.standalone property
mlilek@apple.com [Wed, 27 Aug 2014 03:17:40 +0000 (03:17 +0000)]
Add WebKit SPI to control the navigator.standalone property
https://bugs.webkit.org/show_bug.cgi?id=136189

Reviewed by Andy Estes.

Source/WebKit2:

Add a property to WKPreferences that allows toggling this setting.

* UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences _isStandalone]):
(-[WKPreferences _setStandalone:]):
* UIProcess/API/Cocoa/WKPreferencesPrivate.h:

Tools:

Add API test for WKPreferences

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/Preferences.mm:
(TEST):

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

5 years ago[EFL] FileApi Layout Tests passed in latest build.
commit-queue@webkit.org [Wed, 27 Aug 2014 02:05:26 +0000 (02:05 +0000)]
[EFL] FileApi Layout Tests passed in latest build.
https://bugs.webkit.org/show_bug.cgi?id=136250

Unreviewed gardening.

FileApi Layout Tests passed in latest build 172953.

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-08-26

* platform/efl/TestExpectations:

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

5 years agoRemove ENABLE_DRT environment variable to enable SHARED_CORE
gyuyoung.kim@samsung.com [Wed, 27 Aug 2014 01:36:00 +0000 (01:36 +0000)]
Remove ENABLE_DRT environment variable to enable SHARED_CORE
https://bugs.webkit.org/show_bug.cgi?id=136205

Reviewed by Andrei Bucur.

EFL port doesn't need to enable SHARED_CORE since r172894. Thus, we don't need to
use ENABLE_DRT enviroment variable, which enables SHARED_CORE.

* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):

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

5 years agoWeb Inspector: Fix CodeMirrorTokenTrackingController::_startTracking assertion
commit-queue@webkit.org [Wed, 27 Aug 2014 00:52:53 +0000 (00:52 +0000)]
Web Inspector: Fix CodeMirrorTokenTrackingController::_startTracking assertion
https://bugs.webkit.org/show_bug.cgi?id=136160

Patch by Saam Barati <sbarati@apple.com> on 2014-08-26
Reviewed by Joseph Pecoraro.

Check if '_tracking' is already true before calling '_startTracking'
to prevent the assertion from always firing.

* UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseEntered):

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

5 years agoFileReader cannot read files selected with <input type="file"> in iOS 8
commit-queue@webkit.org [Wed, 27 Aug 2014 00:19:13 +0000 (00:19 +0000)]
FileReader cannot read files selected with <input type="file"> in iOS 8
https://bugs.webkit.org/show_bug.cgi?id=136117

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-26
Reviewed by Alexey Proskuryakov.

* Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
Correct an overzealous deny that was accidentally denying all
com.apple.app-sandbox.read extensions instead of just the ones
in Application bundles it was trying to deny.

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

5 years agoCrashes in ViewGestureController::beginSwipeGesture when swiping in rapid succession
timothy_horton@apple.com [Wed, 27 Aug 2014 00:16:52 +0000 (00:16 +0000)]
Crashes in ViewGestureController::beginSwipeGesture when swiping in rapid succession
https://bugs.webkit.org/show_bug.cgi?id=136271
<rdar://problem/17923694>

Reviewed by Simon Fraser.

It was possible to get into trackSwipeGesture while another swipe was still
occurring, because the guard against this happening depended on m_pendingSwipeReason
never being set while a swipe was occurring. However, if the very first scroll event
had sufficient magnitude, we would still set m_pendingSwipeReason to InsufficientMagnitude,
and then *never clear it*, leading to a path around the guard against multiple live swipes.
This in turn allowed stale layers in m_liveSwipeLayers, which lead to the crash.

* UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::handleScrollWheelEvent):
Don't unset m_pendingSwipeReason before calling trackSwipeGesture;
trackSwipeGesture will do it itself.

Don't set m_pendingSwipeReason to InsufficientMagnitude
if the event actually *has* sufficient magnitude to start a swipe.

(WebKit::ViewGestureController::trackSwipeGesture):
Assert that we don't have an active gesture while starting a swipe.

Reset m_pendingSwipeReason, because the swipe is no longer pending!

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

5 years agoMinor style tweak on StyleResolveTree
benjamin@webkit.org [Wed, 27 Aug 2014 00:01:12 +0000 (00:01 +0000)]
Minor style tweak on StyleResolveTree
https://bugs.webkit.org/show_bug.cgi?id=136233

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-26
Reviewed by Sam Weinig.

* style/StyleResolveTree.cpp:
(WebCore::Style::resolveTree):
Clang likely optimized it away, but I find that explicit style cleaner.

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

5 years ago[Win] Version stamp should include package-level version
bfulgham@apple.com [Tue, 26 Aug 2014 23:45:34 +0000 (23:45 +0000)]
[Win] Version stamp should include package-level version
https://bugs.webkit.org/show_bug.cgi?id=136266
<rdar://problem/18134138>

Reviewed by David Kilzer.

Tools:

* Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl: Add
tests for the full 3+ digit version.
* Scripts/webkitperl/auto-version_unittest/versionStampTests.pl:
Confirm that the final output DLL uses the 3+ digit version.

WebKitLibraries:

* win/tools/scripts/auto-version.pl: Retain the full major build
version in addition to the three-digit value we use internally.
* win/tools/scripts/version-stamp.pl: Find and use the full 3+ digit
major build version when stamping the final output file.

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

5 years ago[GTK] Unreviewed GTK gardening.
clopez@igalia.com [Tue, 26 Aug 2014 23:32:16 +0000 (23:32 +0000)]
[GTK] Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Report and mark new failures after r136159, r172826 and r172835.
* platform/gtk/fast/ruby/bopomofo-expected.txt: Added. Add baseline after r172861 and r172874.
* platform/gtk/fast/ruby/bopomofo-letter-spacing-expected.txt: Added. Add baseline after r172861 and r172874.
* platform/gtk/fast/ruby/bopomofo-rl-expected.txt: Added. Add baseline after r172861 and r172874.
* platform/gtk/fast/ruby/ruby-base-merge-block-children-crash-2-expected.png: Removed. Rebaseline (use default baseline) after r172835 and r172847.
* platform/gtk/fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt: Removed. Rebaseline (use default baseline) after r172835 and r172847.

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

5 years agoWeb Inspector: put feature flags for Inspector domains in the protocol specification
burg@cs.washington.edu [Tue, 26 Aug 2014 22:38:36 +0000 (22:38 +0000)]
Web Inspector: put feature flags for Inspector domains in the protocol specification
https://bugs.webkit.org/show_bug.cgi?id=136027

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Remove the hardcoded map of domains to feature guards, and instead parse it from the specification.

Test: inspector/scripts/tests/generate-domains-with-feature-guards.json

* inspector/scripts/codegen/generator.py:
(Generator.wrap_with_guard_for_domain):
* inspector/scripts/codegen/models.py:
(Protocol.parse_domain):
(Domain.__init__):
(Domains):
* inspector/scripts/tests/generate-domains-with-feature-guards.json: Added.
* inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
* inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
* inspector/scripts/tests/expected/events-with-optional-parameters.json-result:
* inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:
* inspector/scripts/tests/expected/type-declaration-object-type.json-result:

Source/WebCore:

Add 'featureGuard' settings to wrap domains with ENABLE macros.

No new tests. No behavior was changed.

* inspector/protocol/Database.json:
* inspector/protocol/IndexedDB.json:
* inspector/protocol/Replay.json:

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

5 years ago[Cocoa] Some projects are incorrectly installed to $BUILT_PRODUCTS_DIR
aestes@apple.com [Tue, 26 Aug 2014 22:36:19 +0000 (22:36 +0000)]
[Cocoa] Some projects are incorrectly installed to $BUILT_PRODUCTS_DIR
https://bugs.webkit.org/show_bug.cgi?id=136267

Reviewed by Dan Bernstein.

INSTALL_PATH was set to $BUILT_PRODUCTS_DIR for engineering configurations in r20225 as part of a build fix.
Not only is this no longer necessary to build, but it causes built products to be incorrectly installed in
engineering configurations.

Remove the setting of INSTALL_PATH from the pbxproj file so that the value specified in the xcconfig files is
used instead.

Source/JavaScriptCore:

* JavaScriptCore.xcodeproj/project.pbxproj:

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj:

Source/WebKit2:

* WebKit2.xcodeproj/project.pbxproj:

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

5 years ago[Win] 64-bit JavaScriptCore crashes on launch
msaboff@apple.com [Tue, 26 Aug 2014 22:08:42 +0000 (22:08 +0000)]
[Win] 64-bit JavaScriptCore crashes on launch
https://bugs.webkit.org/show_bug.cgi?id=136241

Reviewed by Mark Lam.

* llint/LowLevelInterpreter.asm:
(vmEntryRecord): X86_64_WIN doesn't use "a0" (rax) for the first argument, it uses
"t2" (rcx).  Changed to get the input parameter using the correct register.

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

5 years ago[Win] WebKit IDL incorrectly passes HWND as OLE_HANDLE
bfulgham@apple.com [Tue, 26 Aug 2014 21:39:51 +0000 (21:39 +0000)]
[Win] WebKit IDL incorrectly passes HWND as OLE_HANDLE
https://bugs.webkit.org/show_bug.cgi?id=136258
<rdar://problem/18134138>

Reviewed by Tim Horton.

Avoid 32/64-bit truncation by preventing 64-bit HWND (and other)
values from passing through the 32-bit OLE_HANDLE data type.

Source/WebCore:

* platform/win/WindowMessageBroadcaster.cpp:
(WebCore::WindowMessageBroadcaster::addListener):
(WebCore::WindowMessageBroadcaster::removeListener):
(WebCore::WindowMessageBroadcaster::destroy):
(WebCore::WindowMessageBroadcaster::unsubclassWindow):
(WebCore::WindowMessageBroadcaster::SubclassedWndProc):

Source/WebKit/win:

* Interfaces/IWebDocument.idl:
* Interfaces/IWebEmbeddedView.idl:
* Interfaces/IWebErrorPrivate.idl:
* Interfaces/IWebFrameLoadDelegate.idl:
* Interfaces/IWebFramePrivate.idl:
* Interfaces/IWebHistoryItem.idl:
* Interfaces/IWebIconDatabase.idl:
* Interfaces/IWebMutableURLRequestPrivate.idl:
* Interfaces/IWebUIDelegate.idl:
* Interfaces/IWebUIDelegatePrivate.idl:
* Interfaces/IWebURLResponsePrivate.idl:
* Interfaces/IWebView.idl:
* Interfaces/IWebViewPrivate.idl:
* WebCoreSupport/EmbeddedWidget.cpp:
(EmbeddedWidget::createWindow):
* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::rootViewToScreen):
(WebChromeClient::screenToRootView):
(WebChromeClient::platformPageClient):
(WebChromeClient::runOpenPanel):
(WebChromeClient::setCursor):
* WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::customizeMenu):
* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::createPlugin):
* WebCoreSupport/WebInspectorClient.cpp:
(WebInspectorClient::openInspectorFrontend):
(WebInspectorClient::highlight):
(WebInspectorFrontendClient::setAttachedWindowHeight):
(WebInspectorFrontendClient::closeWindowWithoutNotifications):
(WebInspectorFrontendClient::showWindowWithoutNotifications):
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorDelegate.cpp:
* WebCoreSupport/WebInspectorDelegate.h:
(WebInspectorDelegate::webViewFirstResponder):
(WebInspectorDelegate::makeFirstResponder):
(WebInspectorDelegate::contextMenuItemsForElement):
(WebInspectorDelegate::trackCustomPopupMenu):
(WebInspectorDelegate::addCustomMenuDrawingData):
(WebInspectorDelegate::cleanUpCustomMenuDrawingData):
(WebInspectorDelegate::drawHeaderInRect):
(WebInspectorDelegate::drawFooterInRect):
* WebDropSource.cpp:
(generateMouseEvent):
(WebDropSource::GiveFeedback):
* WebError.cpp:
(WebError::sslPeerCertificate):
* WebError.h:
* WebFrame.cpp:
(WebFrame::paintDocumentRectToContext):
(WebFrame::paintScrollViewRectToContextAtPoint):
(WebFrame::createSubframeWithOwnerElement):
(WebFrame::initWithWebView):
(WebFrame::drawHeader):
(WebFrame::drawFooter):
* WebFrame.h:
* WebHistoryItem.cpp:
(WebHistoryItem::icon):
* WebHistoryItem.h:
* WebIconDatabase.cpp:
(WebIconDatabase::iconForURL):
(WebIconDatabase::defaultIconWithSize):
* WebIconDatabase.h:
* WebMutableURLRequest.cpp:
(WebMutableURLRequest::setClientCertificate):
* WebMutableURLRequest.h:
* WebNodeHighlight.cpp:
(WebNodeHighlight::WebNodeHighlight):
* WebURLResponse.cpp:
(WebURLResponse::sslPeerCertificate):
* WebURLResponse.h:
* WebView.cpp:
(WebView::paintIntoBackingStore):
(WebView::handleContextMenuEvent):
(WebView::onInitMenuPopup):
(WebView::onUninitMenuPopup):
(WebView::WebViewWndProc):
(WebView::dispatchDidReceiveIconFromWebFrame):
(WebView::setHostWindow):
(WebView::hostWindow):
(WebView::generateSelectionImage):
(WebView::mainFrameIcon):
(WebView::viewWindow):
(WebView::paintDocumentRectToContext):
(WebView::paintScrollViewRectToContextAtPoint):
(WebView::backingStore):
(WebView::fullScreenClientSetParentWindow):
* WebView.h:

Tools:

* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::rootElement):
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebViewToConsistentStateBeforeTesting):
(runTest):
(createWebViewAndOffscreenWindow):
* DumpRenderTree/win/FrameLoadDelegate.h:
(FrameLoadDelegate::didReceiveIcon):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setWindowIsKey):
* DumpRenderTree/win/UIDelegate.cpp:
(UIDelegate::trackCustomPopupMenu):
(UIDelegate::drawHeaderInRect):
(UIDelegate::drawFooterInRect):
(UIDelegate::webViewClose):
(UIDelegate::webViewFocus):
(UIDelegate::webViewSetCursor):
(UIDelegate::drawBackground):
* DumpRenderTree/win/UIDelegate.h:
(UIDelegate::webViewFirstResponder):
(UIDelegate::makeFirstResponder):
(UIDelegate::contextMenuItemsForElement):
(UIDelegate::addCustomMenuDrawingData):
(UIDelegate::cleanUpCustomMenuDrawingData):
(UIDelegate::webViewLostFocus):
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
(TestWebKitAPI::WebViewDestructionWithHostWindow::SetUp):
* WinLauncher/PrintWebUIDelegate.cpp:
(PrintWebUIDelegate::drawHeaderInRect):
(PrintWebUIDelegate::drawFooterInRect):
* WinLauncher/PrintWebUIDelegate.h:
(PrintWebUIDelegate::webViewFirstResponder):
(PrintWebUIDelegate::makeFirstResponder):
(PrintWebUIDelegate::contextMenuItemsForElement):
(PrintWebUIDelegate::trackCustomPopupMenu):
(PrintWebUIDelegate::addCustomMenuDrawingData):
(PrintWebUIDelegate::cleanUpCustomMenuDrawingData):
* WinLauncher/WinLauncher.cpp:
(WinLauncher::prepareViews):
* WinLauncher/WinLauncherWebHost.h:
(WinLauncherWebHost::didReceiveIcon):

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

5 years agoTypeSet caches structureIDs even after the corresponding Structure could be GCed
commit-queue@webkit.org [Tue, 26 Aug 2014 21:24:40 +0000 (21:24 +0000)]
TypeSet caches structureIDs even after the corresponding Structure could be GCed
https://bugs.webkit.org/show_bug.cgi?id=136178

Patch by Saam Barati <sbarati@apple.com> on 2014-08-26
Reviewed by Geoffrey Garen.

Currently, TypeSet will never remove StructureIDs from its cache,
even after the corresponding Structures could be garbage collected.
Now, when the Garbage Collector collects, and type profiling is
enabled, the Garbage Collector will invalidate all TypeSet caches.

* heap/Heap.cpp:
(JSC::Heap::collect):
* runtime/TypeSet.cpp:
(JSC::TypeSet::addTypeInformation):
(JSC::TypeSet::invalidateCache):
* runtime/TypeSet.h:
* runtime/VM.cpp:
(JSC::VM::invalidateTypeSetCache):
* runtime/VM.h:

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

5 years agoReplace use of WKCopyCFLocalizationPreferredName with NSLocale public API
mjs@apple.com [Tue, 26 Aug 2014 21:06:07 +0000 (21:06 +0000)]
Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
https://bugs.webkit.org/show_bug.cgi?id=136082

Reviewed by Alexey Proskuryakov.

Source/WebCore:

* platform/mac/Language.mm:
(WebCore::httpStyleLanguageCode): Replace use of WKCopyCFLocalizationPreferredName
with new WebCoreNSStringExtras helper.
* platform/mac/WebCoreNSStringExtras.mm: Replacements for the aspects of
WKCopyCFLocalizationPreferredName.
(preferredBundleLocalizationName): New helper - most preferred localization available
in the main bundle, canonicalized the way we like it.
(canonicalLocalizationName): Convert a lcalization name to a string with language and
country code, using default if necessary (e.g. "en" maps to "en_US").
* WebCore.order: Remove mention of WKCopyCFLocalizationPreferredName.
* WebCore.exp.in: ditto; also export preferredBundleLocalizationName for WebKit(2).
* platform/ios/WebCoreSystemInterfaceIOS.mm: ditto
* platform/mac/WebCoreSystemInterface.h: ditto
* platform/mac/WebCoreSystemInterface.mm: ditto
* platform/spi/cf: Added.
* platform/spi/cf/CFLocaleSPI.h: Added. Declare
CFLocaleGetLanguageRegionEncodingForLocaleIdentifier.

Source/WebKit/mac:

* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost): Get current
localization name using WebCore helper instead of SPI.
* Plugins/WebBasePluginPackage.mm: Fixed the include style for this
file.
(-[WebBasePluginPackage getPluginInfoFromPLists]): Get current
localization name using WebCore helper instead of SPI.
(+[WebBasePluginPackage preferredLocalizationName]): Deleted. This
helper no longer pulls its weight.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Remove mention of
WKCopyCFLocalizationPreferredName.
* WebKit.order: ditto

Source/WebKit2:

* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService): Remove accidental leftover retrieval
of the localization.
(WebKit::createProcess): Get current localization name from
CFBundle API instead of using SPI.
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Remove mention of WKCopyCFLocalizationPreferredName
* mac/WebKit2.order: ditto

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

5 years agoThe UNUSED_PARAM macros in ServicesOverlayController.mm are causing ASan build failures.
dburkart@apple.com [Tue, 26 Aug 2014 20:37:04 +0000 (20:37 +0000)]
The UNUSED_PARAM macros in ServicesOverlayController.mm are causing ASan build failures.
https://bugs.webkit.org/show_bug.cgi?id=136262

Reviewed by David Kilzer.

* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::selectionRectsDidChange):
(WebKit::ServicesOverlayController::selectedTelephoneNumberRangesChanged):

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

5 years ago[CSS Shapes] Positioned polygon reftests failing
zoltan@webkit.org [Tue, 26 Aug 2014 20:12:57 +0000 (20:12 +0000)]
[CSS Shapes] Positioned polygon reftests failing
https://bugs.webkit.org/show_bug.cgi?id=135925

Reviewed by David Hyatt.

Source/WebCore:

We didn't respect the shape-margin before a positioned polygon, since we checked
the shape-margin for only 1 vertex for a polygon edge. This patch fixes the behavior,
removes the tests from the skipped list and updates 1 test, which was incorrect.

Updated existing test and removed tests from skipped list.

* rendering/shapes/PolygonShape.cpp:
(WebCore::clippedCircleXRange):
(WebCore::PolygonShape::getExcludedInterval):

LayoutTests:

* TestExpectations: Remove passing tests.
* css3/shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-012.html: Fix test behavior.

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

5 years ago[EFL] URTBF after r172966.
ossy@webkit.org [Tue, 26 Aug 2014 20:11:59 +0000 (20:11 +0000)]
[EFL] URTBF after r172966.

* UIProcess/efl/WebViewEfl.h:

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

5 years agoREGRESSION(r172966) [GTK] Build broken.
clopez@igalia.com [Tue, 26 Aug 2014 19:34:45 +0000 (19:34 +0000)]
REGRESSION(r172966) [GTK] Build broken.

Unreviewed build fix after r172966.

* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
* UIProcess/API/gtk/PageClientImpl.h:

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

5 years agoSubpixel layout: Remove float to LayoutUnit ceil/round function wrappers.
zalan@apple.com [Tue, 26 Aug 2014 19:29:09 +0000 (19:29 +0000)]
Subpixel layout: Remove float to LayoutUnit ceil/round function wrappers.
https://bugs.webkit.org/show_bug.cgi?id=136253

Reviewed by Simon Fraser.

These functions wrap LayoutUnit::fromFloatCeil/fromFloatRound() functions to ceil/round float to LayoutUnit.
Their usage is limited and can easily be confused with the snapping functions (snap to css/device pixels).

No change in functionality.

* platform/LayoutUnit.h:
(WebCore::roundedLayoutUnit): Deleted. : Callers use the more explicit LayoutUnit::fromFloatRound() function.
(WebCore::ceiledLayoutUnit): Deleted. : Callers use the more explicit LayoutUnit::fromFloatCeil() function.
* rendering/RenderBlock.cpp:
(WebCore::updatePreferredWidth):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
(WebCore::adjustFloatForSubPixelLayout): Deleted.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::positionLineBox):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::offsetForInFlowPositionedInline):
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth):

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

5 years agoEnsure that layout is up-to-date before hit testing
simon.fraser@apple.com [Tue, 26 Aug 2014 19:00:29 +0000 (19:00 +0000)]
Ensure that layout is up-to-date before hit testing
https://bugs.webkit.org/show_bug.cgi?id=136242
rdar://problem/17435564

Reviewed by Tim Horton.

Various code paths can call into RenderView::hitTest() but fail to
ensure that layout is up-to-date. This is a conservative change that
fixes the issue for callers of EventHandler::hitTestResultAtPoint(),
including WebPage::acceptsFirstMouse() and WebFrame::hitTest().

This change is not general enough that we can ASSERT(!needsLayout())
in RenderView::hitTest() yet.

* page/EventHandler.cpp:
(WebCore::EventHandler::hitTestResultAtPoint):

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

5 years agoCrashes in hit testing under WebPage::determinePrimarySnapshottedPlugIn()
simon.fraser@apple.com [Tue, 26 Aug 2014 18:55:16 +0000 (18:55 +0000)]
Crashes in hit testing under WebPage::determinePrimarySnapshottedPlugIn()
https://bugs.webkit.org/show_bug.cgi?id=136240
rdar://problem/17231462

Reviewed by Darin Adler.

determinePrimarySnapshottedPlugIn() does render tree hit testing, so needs
to ensure that layout is up-to-date.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):

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

5 years agoOnly define WEBCORE_EXPORT when building DumpRenderTree for Windows and iOS
dbates@webkit.org [Tue, 26 Aug 2014 18:44:46 +0000 (18:44 +0000)]
Only define WEBCORE_EXPORT when building DumpRenderTree for Windows and iOS

Rubber-stamped by Tim Horton.

The Windows and iOS ports are the only ports that make use of WebCore headers
in DumpRenderTree.

* DumpRenderTree/config.h:

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

5 years agoREGRESSION (r172771): Amazon product page becomes unresponsive after swiping back...
timothy_horton@apple.com [Tue, 26 Aug 2014 18:42:00 +0000 (18:42 +0000)]
REGRESSION (r172771): Amazon product page becomes unresponsive after swiping back to it
https://bugs.webkit.org/show_bug.cgi?id=136260
<rdar://problem/18107826>

Reviewed by Dan Bernstein.

Previously, when a swipe ended up performing a same-document navigation,
we would never get didFinishLoadForMainFrame nor didFirstVisuallyNonEmptyLayoutForMainFrame
nor would we even get didHitRenderTreeSizeThreshold in all cases, so we would never
remove the swipe snapshot. Previous implementations removed the snapshot on
didSameDocumentNavigation for the main frame if the navigation type was Replace or Pop,
so we will match that behavior.

Also, reinstate the watchdog that starts at swipe-end which would have prevented
this bug from forever breaking the view it was associated with.

Also, defend against removing the snapshot before the swipe has finished (before
we have even caused the navigation that we're watching for the effects of).

* UIProcess/API/mac/WKView.mm:
(-[WKView _didSameDocumentNavigationForMainFrame:]):
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
Plumb main-frame same-document navigation notification from WebPageProxy
to ViewGestureControllerMac via PageClient and WKView.

* UIProcess/mac/ViewGestureController.h:
* UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::endSwipeGesture):
Keep track of whether a swipe is currently occurring. We can't use
activeGestureType for this because the swipe currently remains the "active"
gesture until the snapshot is removed.

Reintroduce the old swipeWatchdogTimer (and rename the shorter timer that starts
when we get a visually non-empty layout) so that we will always remove the
snapshot after 5 seconds, even if we haven't committed the load.
This could lead to flashing back to the old content if we fail to get a single
byte for 5 seconds, but that is a rare case and should eventually get additional
special treatment (dropping the tiles until we do get content, or some such).

(WebKit::ViewGestureController::didHitRenderTreeSizeThreshold):
If a swipe is still in progress, we haven't done our navigation and thus
don't care about render tree size changes.

(WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame):
If a swipe is still in progress, we haven't done our navigation and thus
don't care about layouts.

Stop the 5 second overall watchdog if we start the 3 second after-visuallyNonEmptyLayout
watchdog. This means that the snapshot could stay up for a maximum of 8 seconds
for a very, very slow load.

(WebKit::ViewGestureController::didFinishLoadForMainFrame):
If a swipe is still in progress, we haven't done our navigation and thus
don't care about loads that complete.

(WebKit::ViewGestureController::didSameDocumentNavigationForMainFrame):
Remove the swipe snapshot after painting if we do replaceState or popState.

(WebKit::ViewGestureController::removeSwipeSnapshotAfterRepaint):
If a swipe is still in progress, we shouldn't remove the snapshot yet.

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

5 years agoRubber-banding in overflow:scroll regions does not work correctly with
bdakin@apple.com [Tue, 26 Aug 2014 18:29:48 +0000 (18:29 +0000)]
Rubber-banding in overflow:scroll regions does not work correctly with
direction:rtl
https://bugs.webkit.org/show_bug.cgi?id=136176

Reviewed by Tim Horton.

Small cleanup.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::visibleContentRectInternal):

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

5 years agoFix the build after r172963
timothy_horton@apple.com [Tue, 26 Aug 2014 18:09:44 +0000 (18:09 +0000)]
Fix the build after r172963

* page/DOMTimer.h:

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

5 years agoDOMTimer may be deleted during timer fire
barraclough@apple.com [Tue, 26 Aug 2014 17:58:11 +0000 (17:58 +0000)]
DOMTimer may be deleted during timer fire
https://bugs.webkit.org/show_bug.cgi?id=136198

Reviewed by Geoff Garen.

Consequentially ScheduledActions may also be deleted mid execution.
This is fairly surprising & fragile, let's make this simpler.

Currently DOMTimer instances are effectively owned by the ScriptExecutionContext.
There is a 1-1 mapping between timers and contexts, all timers are help in a map
on the context and if the context goes away all timers are deleted. Rather than
being implemented in a straightforward fashion (a smart pointer type for the map
value) this is currently implemented by having the timer objects listen for the
context going away using contextDestroyed, and deleting themselves if so.

Switch to using a smart pointer for values of m_timeouts in ScriptExecutionContext.
By using a RefCounted object we can also extend the lifetime of the DOMTimer instance
from within the DOMTimer::fired method, so the object is not destroyed while the
member function is still on the stack.

* WebCore.xcodeproj/project.pbxproj:
    - project -> private since DOMTimer could no longer be a forward declare in ScriptExecutionContext.h.
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
(WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):
    - auto* -> auto& since value type in map is no longer a raw pointer.
* dom/ScriptExecutionContext.h:
(WebCore::ScriptExecutionContext::addTimeout):
    - DOMTimer* -> PassRefPtr<DOMTimer>
* page/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):
    - adopt the initial ref, and pass to addTimeout.
(WebCore::DOMTimer::install):
    - updated comment.
(WebCore::DOMTimer::removeById):
    - instead of explicitly deleting the timer and assuming this will implicitly remove it from the context map,
      we explicitly remove it from the context map and assume this will implicitly deleting the timer!
(WebCore::DOMTimer::fired):
    - Add a RefPtr to keep the DOMTimer object alive until the fired method completes; to cancel a one-shot timer
      just remove it from the context's map, rather than explicitly deleting it.
(WebCore::DOMTimer::~DOMTimer): Deleted.
(WebCore::DOMTimer::contextDestroyed): Deleted.
    - no need! object lifetime management now handled by smart pointers.
* page/DOMTimer.h:
    - added parent class RefCounted<DOMTimer>.

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

5 years agoREGRESSION(r172794) + 32Bit build: for-in-base-reassigned-later-and-change-structure...
msaboff@apple.com [Tue, 26 Aug 2014 17:34:21 +0000 (17:34 +0000)]
REGRESSION(r172794) + 32Bit build: for-in-base-reassigned-later-and-change-structure.js fail with NaN result
https://bugs.webkit.org/show_bug.cgi?id=136187

Reviewed by Mark Hahnenberg.

Added two arg version for 32 bit builds of callOperation(J_JITOperation_ECJ, ...) that
doesn't require a tag for the second argument, instead it fills in a CellTag.  This is
used for the slow case of the GetDirectPname case in SpeculativeJIT::compile since we
haven't set up a register with a tag and we know that argument 2 is a cell.

* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation): New version with implicit CellTag.
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile): Eliminated extraneous filling of the scratchGPR
with CellTag as it wasn't in the control flow for the slow path that needed the tag.
Instead changed to calling new version of callOperation with an implicit CellTag.

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

5 years agoUnreviewed, rolling out r172940.
commit-queue@webkit.org [Tue, 26 Aug 2014 16:46:10 +0000 (16:46 +0000)]
Unreviewed, rolling out r172940.
https://bugs.webkit.org/show_bug.cgi?id=136256

Caused assertions on fast/storage/serialized-script-
value.html, and possibly flakiness on more tests (Requested by
ap on #webkit).

Reverted changeset:

"FTL should be able to do polymorphic call inlining"
https://bugs.webkit.org/show_bug.cgi?id=135145
http://trac.webkit.org/changeset/172940

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

5 years agorunSvnUpdateAndResolveChangeLogs() doesn’t work when invoked from a script outside...
mitz@apple.com [Tue, 26 Aug 2014 16:30:23 +0000 (16:30 +0000)]
runSvnUpdateAndResolveChangeLogs() doesn’t work when invoked from a script outside Tools/Scripts
https://bugs.webkit.org/show_bug.cgi?id=136254

Reviewed by Tim Horton.

* Scripts/webkitdirs.pm:
(runSvnUpdateAndResolveChangeLogs): Locate resolve-ChangeLogs relative to the source tree,
not the invoking script.

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

5 years agoREGRESSION(r172794) + 32Bit build: ASSERT failures in for-in-tests.js tests.
msaboff@apple.com [Tue, 26 Aug 2014 15:55:01 +0000 (15:55 +0000)]
REGRESSION(r172794) + 32Bit build: ASSERT failures in for-in-tests.js tests.
https://bugs.webkit.org/show_bug.cgi?id=136165

Reviewed by Mark Hahnenberg.

Changed switch case GetDirectPname: to always use the slow path for X86 since it only has
6 registers available, but the code requires 7.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

5 years ago[GTK] Selection background is rendered white when unfocused with recent GTK+
carlosgc@webkit.org [Tue, 26 Aug 2014 15:20:15 +0000 (15:20 +0000)]
[GTK] Selection background is rendered white when unfocused with recent GTK+
https://bugs.webkit.org/show_bug.cgi?id=136251

Reviewed by Martin Robinson.

This is due to a change in the GTK+ theme, but because we are not
using the right flags to get the selections colors. We should use
GTK_STATE_FLAG_SELECTED | GTK_STATE_FLAG_FOCUSED when focused and
GTK_STATE_FLAG_SELECTED when unfocused, instead of
GTK_STATE_FLAG_ACTIVE when unfocused.

* platform/gtk/RenderThemeGtk3.cpp:
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):

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

5 years ago[GTK] Translations are not initialized in the UI process
carlosgc@webkit.org [Tue, 26 Aug 2014 11:55:00 +0000 (11:55 +0000)]
[GTK] Translations are not initialized in the UI process
https://bugs.webkit.org/show_bug.cgi?id=136249

Reviewed by Philippe Normand.

This is breaking things like webkitContextMenuActionGetForContextMenuItem()
for non English locales in the cases where we use the action title to guess the
action, because the action title we get from the web process is translated while
the one in the UI process is in English.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(createDefaultWebContext): Initialize gettext right before
creating the default web context.

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

5 years ago[EFL] Utilize espeak as a synthesizer back-end for WebSpeech
k.czech@samsung.com [Tue, 26 Aug 2014 11:25:49 +0000 (11:25 +0000)]
[EFL] Utilize espeak as a synthesizer back-end for WebSpeech
https://bugs.webkit.org/show_bug.cgi?id=136127

Reviewed by Gyuyoung Kim.

.:

Add build support for espeak.

* Source/cmake/FindEspeak.cmake: Added.
* Source/cmake/OptionsEfl.cmake: Add Espeak dependency.

Source/WebCore:

Utilize espeak API to have support for speak, cancel and initializeVoiceList.

* PlatformEfl.cmake:
* platform/efl/PlatformSpeechSynthesisProviderEfl.cpp:
(WebCore::PlatformSpeechSynthesisProviderEfl::PlatformSpeechSynthesisProviderEfl):
(WebCore::PlatformSpeechSynthesisProviderEfl::convertRateToEspeakValue):
(WebCore::PlatformSpeechSynthesisProviderEfl::convertVolumeToEspeakValue):
(WebCore::PlatformSpeechSynthesisProviderEfl::convertPitchToEspeakValue):
(WebCore::PlatformSpeechSynthesisProviderEfl::voiceName):
(WebCore::PlatformSpeechSynthesisProviderEfl::engineInit):
(WebCore::PlatformSpeechSynthesisProviderEfl::currentVoice):
(WebCore::PlatformSpeechSynthesisProviderEfl::initializeVoiceList):
(WebCore::PlatformSpeechSynthesisProviderEfl::speak):
(WebCore::PlatformSpeechSynthesisProviderEfl::cancel):
(WebCore::PlatformSpeechSynthesisProviderEfl::fireSpeechEvent):
* platform/efl/PlatformSpeechSynthesisProviderEfl.h:
* platform/efl/PlatformSpeechSynthesizerEfl.cpp:
(WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
(WebCore::PlatformSpeechSynthesizer::pause):
(WebCore::PlatformSpeechSynthesizer::resume):
(WebCore::PlatformSpeechSynthesizer::speak):
(WebCore::PlatformSpeechSynthesizer::cancel):

Tools:

Add espeak dependency.

* efl/install-dependencies:

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

5 years ago[EFL] Remove dead code in WebPageEfl.cpp
ryuan.choi@samsung.com [Tue, 26 Aug 2014 11:18:10 +0000 (11:18 +0000)]
[EFL] Remove dead code in WebPageEfl.cpp
https://bugs.webkit.org/show_bug.cgi?id=136246

Reviewed by Gyuyoung Kim.

* WebProcess/WebPage/efl/WebPageEfl.cpp:
(WebKit::scroll): Deleted.

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

5 years ago[EFL] Build break using clang
ryuan.choi@samsung.com [Tue, 26 Aug 2014 10:51:01 +0000 (10:51 +0000)]
[EFL] Build break using clang
https://bugs.webkit.org/show_bug.cgi?id=136245

Reviewed by Gyuyoung Kim.

.:

* Source/cmake/OptionsEfl.cmake:
Disable ENABLE_WERROR when compiler is Clang as workaround because there are too many warnings.
Some warnings are from system libraries.

Source/WebCore:

* css/ViewportStyleResolver.cpp: Includes NodeRenderStyle.h

Source/WebKit2:

* PlatformEfl.cmake: defines GTEST_HAS_RTTI=0

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

5 years agoBuild fix after r172951.
mrowe@apple.com [Tue, 26 Aug 2014 07:24:41 +0000 (07:24 +0000)]
Build fix after r172951.

* fileapi/Blob.h: Give the argument the name that the predicates expect.

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

5 years agoGenerate toFile() instead of manual functions.
gyuyoung.kim@samsung.com [Tue, 26 Aug 2014 06:43:16 +0000 (06:43 +0000)]
Generate toFile() instead of manual functions.
https://bugs.webkit.org/show_bug.cgi?id=136207

Reviewed by Darin Adler.

No new tests, no behavior changes.

* fileapi/Blob.h: Define BLOB_TYPE_CASTS.
* fileapi/File.h: Use BLOB_TYPE_CASTS to generate toFile().
(WebCore::toFile): Deleted.

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

5 years agoTypeProfiler search breaks on return statements
commit-queue@webkit.org [Tue, 26 Aug 2014 04:36:42 +0000 (04:36 +0000)]
TypeProfiler search breaks on return statements
https://bugs.webkit.org/show_bug.cgi?id=136201

Patch by Saam Barati <sbarati@apple.com> on 2014-08-25
Reviewed by Filip Pizlo.

Searching for return statements in the TypeProfiler currently
breaks down because it expected to see the search descriptor
TypeProfilerSearchDescriptorFunctionReturn when looking for
return statements in the actual source code of the program.
But, TypeProfilerSearchDescriptorFunctionReturn search descriptor
is reserved for looking for return statements that aren't in the
actual source code of the program, but when asking for the
aggregate return type of a function. Now, searching for
return statements in the actual source code of the program will
work when passing in the search descriptor TypeProfilerSearchDescriptorNormal.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* runtime/TypeProfiler.cpp:
(JSC::TypeProfiler::findLocation):
(JSC::descriptorMatchesTypeLocation): Deleted.

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

5 years agoReturn statement TypeSet's might be duplicated
commit-queue@webkit.org [Tue, 26 Aug 2014 02:17:58 +0000 (02:17 +0000)]
Return statement TypeSet's might be duplicated
https://bugs.webkit.org/show_bug.cgi?id=136200

Patch by Saam Barati <sbarati@apple.com> on 2014-08-25
Reviewed by Filip Pizlo.

Currently, the globalTypeSet that converges the types of all
return statements in a function lives off of CodeBlock. It lives
off CodeBlock because of a faulty assumption that CodeBlock
will have a one to one mapping with a function in the source
text of the program. (Currently, there isn't an actual bug
with this design because TypeLocationCache will hash cons to
the same TypeLocation, but this is still an incorrect design).
In this patch, the globalTypeSet for function return statements
is moved to the FunctionExecutable object which does have a one
to one mapping with functions in the source text of a program.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::returnStatementTypeSet): Deleted.
* runtime/Executable.h:
(JSC::FunctionExecutable::returnStatementTypeSet):

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

5 years agoSubpixel layout: remove roundedLayoutPoint/roundedLayoutSize functions.
zalan@apple.com [Tue, 26 Aug 2014 02:11:44 +0000 (02:11 +0000)]
Subpixel layout: remove roundedLayoutPoint/roundedLayoutSize functions.
https://bugs.webkit.org/show_bug.cgi?id=136236

Reviewed by Simon Fraser.

These functions simply call LayoutPoint/LayoutSize c'tors. They don't round the input value at all.

Non change in functionality.

Source/WebCore:

* dom/MouseRelatedEvent.cpp:
(WebCore::MouseRelatedEvent::computePageLocation):
(WebCore::MouseRelatedEvent::computeRelativePosition):
* dom/Touch.cpp:
(WebCore::Touch::Touch):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::setPositionFromPoint):
* page/DragController.cpp:
(WebCore::elementUnderMouse):
* page/EventHandler.cpp:
(WebCore::selectionExtentRespectingEditingBoundary):
* page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:
(WebCore::ScrollingTreeFrameScrollingNodeIOS::updateChildNodesAfterScroll):
* page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):
* platform/graphics/LayoutPoint.h:
(WebCore::roundedLayoutPoint): Deleted.
* platform/graphics/LayoutSize.h:
(WebCore::roundedLayoutSize): Deleted.
* rendering/EllipsisBox.cpp:
(WebCore::EllipsisBox::nodeAtPoint):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::selectionGapRectsForRepaint):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::mapLocalToContainer):
(WebCore::RenderBox::positionLineBox):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
* rendering/RenderEmbeddedObject.h:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::localCaretRect):
(WebCore::RenderInline::mapLocalToContainer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::absoluteToContents):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::mapAbsoluteToLocalPoint):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::mapLocalToContainer):
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::createShapeForImage):
* rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::nodeAtFloatPoint):
* rendering/svg/RenderSVGForeignObject.cpp:
(WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
* rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::nodeAtFloatPoint):
* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::nodeAtFloatPoint):
* testing/Internals.cpp:
(WebCore::Internals::nodesFromRect):

Source/WebKit2:

* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::computeCustomFixedPositionRect):

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

5 years agoRename RenderObject::showTree() and showTreeForThis() to showNodeTree*().
zalan@apple.com [Tue, 26 Aug 2014 01:52:42 +0000 (01:52 +0000)]
Rename RenderObject::showTree() and showTreeForThis() to showNodeTree*().
https://bugs.webkit.org/show_bug.cgi?id=136238

Reviewed by Simon Fraser.

showNodeTree()/showNodeTreeForThis() reflects the functionality better.

No change in functionality.

* rendering/InlineBox.cpp:
(WebCore::InlineBox::showNodeTreeForThis):
(showNodeTree):
(WebCore::InlineBox::showTreeForThis): Deleted.
(showTree): Deleted.
* rendering/InlineBox.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::showNodeTreeForThis):
(showNodeTree):
(WebCore::RenderObject::showTreeForThis): Deleted.
(showTree): Deleted.
* rendering/RenderObject.h:

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

5 years agoDon't pass priority as parameter to ResourceLoadScheduler
antti@apple.com [Tue, 26 Aug 2014 00:56:23 +0000 (00:56 +0000)]
Don't pass priority as parameter to ResourceLoadScheduler
https://bugs.webkit.org/show_bug.cgi?id=136232

Reviewed by Sam Weinig.

Source/WebCore:

It is part of the ResourceRequest which is also passed in.

* WebCore.exp.in:
* loader/ResourceLoadScheduler.cpp:
(WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
(WebCore::ResourceLoadScheduler::schedulePluginStreamLoad):
(WebCore::ResourceLoadScheduler::scheduleLoad):
* loader/ResourceLoadScheduler.h:
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::load):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):
* platform/network/cocoa/ResourceRequestCocoa.mm:
(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):

    Restore the original request priority when a delegate modifies the request.

Source/WebKit2:

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
* NetworkProcess/NetworkResourceLoader.h:
(WebKit::NetworkResourceLoader::priority): Deleted.
* Shared/Network/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):
* Shared/Network/NetworkResourceLoadParameters.h:
* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad):
(WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad):
(WebKit::WebResourceLoadScheduler::scheduleLoad):
* WebProcess/Network/WebResourceLoadScheduler.h:
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::loadResourceSynchronously):

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

5 years agoRubber-banding in overflow:scroll regions does not work correctly with direction:rtl
bdakin@apple.com [Tue, 26 Aug 2014 00:12:26 +0000 (00:12 +0000)]
Rubber-banding in overflow:scroll regions does not work correctly with direction:rtl
https://bugs.webkit.org/show_bug.cgi?id=136176

Reviewed by Sam Weinig.

Use scrollPosition() instead of scrollXOffset() and scrollYOffset() which both add
in the scrollOrigin(). Other implementations of visibleContentRectInternal() do
not add in the scrollOrigin(), so RenderLayer's shouldn't either in order to be
consistent. This makes rubber-banding work for RTL because
ScrollAnimatorMac::pinnedInDirection() and
ScrollAnimatorMac::absoluteScrollPosition() both return the expect values now.

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

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

5 years agoRemove a little more accidentally landed code from r172891.
ap@apple.com [Tue, 26 Aug 2014 00:01:55 +0000 (00:01 +0000)]
Remove a little more accidentally landed code from r172891.

iteration.branch also wasn't meant to be landed.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype._parseData):

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

5 years agoREGRESSION (r172891): Internal dashboard is broken.
ap@apple.com [Mon, 25 Aug 2014 23:54:18 +0000 (23:54 +0000)]
REGRESSION (r172891): Internal dashboard is broken.

Removing some accidentally landed code - I needed "changes" for another patch, but
not here, and then I decided to not use it anyway.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype._parseData):

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

5 years agoFix the iOS DumpRenderTree build after <http://trac.webkit.org/changeset/172814/>
dbates@webkit.org [Mon, 25 Aug 2014 23:08:20 +0000 (23:08 +0000)]
Fix the iOS DumpRenderTree build after <trac.webkit.org/changeset/172814/>
(https://bugs.webkit.org/show_bug.cgi?id=136108)

Use a similar approach as in TestWebKitAPI/config.h and define a stub for the macro define WEBCORE_EXPORT
so that we can compile DumpRenderTree for iOS.

* DumpRenderTree/config.h:

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

5 years agoMake build.webkit.org/dashboard work with changeset_show_files=location
ap@apple.com [Mon, 25 Aug 2014 23:06:29 +0000 (23:06 +0000)]
Make build.webkit.org/dashboard work with changeset_show_files=location
https://bugs.webkit.org/show_bug.cgi?id=136237

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac.prototype._convertCommitInfoElementToObject): Remove location information
from description before getting title, and also actually parse the location into
result object when available.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
(String.prototype.startsWith): Added.

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

5 years agoFTL should be able to do polymorphic call inlining
fpizlo@apple.com [Mon, 25 Aug 2014 22:35:40 +0000 (22:35 +0000)]
FTL should be able to do polymorphic call inlining
https://bugs.webkit.org/show_bug.cgi?id=135145

Reviewed by Geoffrey Garen.
Source/JavaScriptCore:

Added a log-based high-fidelity call edge profiler that runs in DFG JIT (and optionally
baseline JIT) code. Used it to do precise polymorphic inlining in the FTL. Potential
inlining sites use the call edge profile if it is available, but they will still fall back
on the call inline cache and rare case counts if it's not. Polymorphic inlining means that
multiple possible callees can be inlined with a switch to guard them. The slow path may
either be an OSR exit or a virtual call.

The call edge profiling added in this patch is very precise - it will tell you about every
call that has ever happened. It took some effort to reduce the overhead of this profiling.
This mostly involved ensuring that we don't do it unnecessarily. For example, we avoid it
in the baseline JIT (you can conditionally enable it but it's off by default) and we only do
it in the DFG JIT if we know that the regular inline cache profiling wasn't precise enough.
I also experimented with reducing the precision of the profiling. This led to a significant
reduction in the speed-up, so I avoided this approach. I also explored making log processing
concurrent, but that didn't help. Also, I tested the overhead of the log processing and
found that most of the overhead of this profiling is actually in putting things into the log
rather than in processing the log - that part appears to be surprisingly cheap.

Polymorphic inlining could be enabled in the DFG if we enabled baseline call edge profiling,
and if we guarded such inlining sites with some profiling mechanism to detect
polyvariant monomorphisation opportunities (where the callsite being inlined reveals that
it's actually monomorphic).

This is a ~28% speed-up on deltablue and a ~7% speed-up on richards, with small speed-ups on
other programs as well. It's about a 2% speed-up on Octane version 2, and never a regression
on anything we care about. Some aggregates, like V8Spider, see a regression. This is
highlighting the increase in profiling overhead. But since this doesn't show up on any major
score (code-load or SunSpider), it's probably not relevant.

* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CallEdge.cpp: Added.
(JSC::CallEdge::dump):
* bytecode/CallEdge.h: Added.
(JSC::CallEdge::operator!):
(JSC::CallEdge::callee):
(JSC::CallEdge::count):
(JSC::CallEdge::despecifiedClosure):
(JSC::CallEdge::CallEdge):
* bytecode/CallEdgeProfile.cpp: Added.
(JSC::CallEdgeProfile::callEdges):
(JSC::CallEdgeProfile::numCallsToKnownCells):
(JSC::worthDespecifying):
(JSC::CallEdgeProfile::worthDespecifying):
(JSC::CallEdgeProfile::visitWeak):
(JSC::CallEdgeProfile::addSlow):
(JSC::CallEdgeProfile::mergeBack):
(JSC::CallEdgeProfile::fadeByHalf):
(JSC::CallEdgeLog::CallEdgeLog):
(JSC::CallEdgeLog::~CallEdgeLog):
(JSC::CallEdgeLog::isEnabled):
(JSC::operationProcessCallEdgeLog):
(JSC::CallEdgeLog::emitLogCode):
(JSC::CallEdgeLog::processLog):
* bytecode/CallEdgeProfile.h: Added.
(JSC::CallEdgeProfile::numCallsToNotCell):
(JSC::CallEdgeProfile::numCallsToUnknownCell):
(JSC::CallEdgeProfile::totalCalls):
* bytecode/CallEdgeProfileInlines.h: Added.
(JSC::CallEdgeProfile::CallEdgeProfile):
(JSC::CallEdgeProfile::add):
* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::visitWeak):
* bytecode/CallLinkInfo.h:
* bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::CallLinkStatus):
(JSC::CallLinkStatus::computeFromLLInt):
(JSC::CallLinkStatus::computeFor):
(JSC::CallLinkStatus::computeExitSiteData):
(JSC::CallLinkStatus::computeFromCallLinkInfo):
(JSC::CallLinkStatus::computeFromCallEdgeProfile):
(JSC::CallLinkStatus::computeDFGStatuses):
(JSC::CallLinkStatus::isClosureCall):
(JSC::CallLinkStatus::makeClosureCall):
(JSC::CallLinkStatus::dump):
(JSC::CallLinkStatus::function): Deleted.
(JSC::CallLinkStatus::internalFunction): Deleted.
(JSC::CallLinkStatus::intrinsicFor): Deleted.
* bytecode/CallLinkStatus.h:
(JSC::CallLinkStatus::CallLinkStatus):
(JSC::CallLinkStatus::isSet):
(JSC::CallLinkStatus::couldTakeSlowPath):
(JSC::CallLinkStatus::edges):
(JSC::CallLinkStatus::size):
(JSC::CallLinkStatus::at):
(JSC::CallLinkStatus::operator[]):
(JSC::CallLinkStatus::canOptimize):
(JSC::CallLinkStatus::canTrustCounts):
(JSC::CallLinkStatus::isClosureCall): Deleted.
(JSC::CallLinkStatus::callTarget): Deleted.
(JSC::CallLinkStatus::executable): Deleted.
(JSC::CallLinkStatus::makeClosureCall): Deleted.
* bytecode/CallVariant.cpp: Added.
(JSC::CallVariant::dump):
* bytecode/CallVariant.h: Added.
(JSC::CallVariant::CallVariant):
(JSC::CallVariant::operator!):
(JSC::CallVariant::despecifiedClosure):
(JSC::CallVariant::rawCalleeCell):
(JSC::CallVariant::internalFunction):
(JSC::CallVariant::function):
(JSC::CallVariant::isClosureCall):
(JSC::CallVariant::executable):
(JSC::CallVariant::nonExecutableCallee):
(JSC::CallVariant::intrinsicFor):
(JSC::CallVariant::functionExecutable):
(JSC::CallVariant::isHashTableDeletedValue):
(JSC::CallVariant::operator==):
(JSC::CallVariant::operator!=):
(JSC::CallVariant::operator<):
(JSC::CallVariant::operator>):
(JSC::CallVariant::operator<=):
(JSC::CallVariant::operator>=):
(JSC::CallVariant::hash):
(JSC::CallVariant::deletedToken):
(JSC::CallVariantHash::hash):
(JSC::CallVariantHash::equal):
* bytecode/CodeOrigin.h:
(JSC::InlineCallFrame::isNormalCall):
* bytecode/ExitKind.cpp:
(JSC::exitKindToString):
* bytecode/ExitKind.h:
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeForStubInfo):
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeForStubInfo):
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGBackwardsPropagationPhase.cpp:
(JSC::DFG::BackwardsPropagationPhase::propagate):
* dfg/DFGBasicBlock.cpp:
(JSC::DFG::BasicBlock::~BasicBlock):
* dfg/DFGBasicBlock.h:
(JSC::DFG::BasicBlock::takeLast):
(JSC::DFG::BasicBlock::didLink):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::processSetLocalQueue):
(JSC::DFG::ByteCodeParser::removeLastNodeFromGraph):
(JSC::DFG::ByteCodeParser::addCallWithoutSettingResult):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
(JSC::DFG::ByteCodeParser::undoFunctionChecks):
(JSC::DFG::ByteCodeParser::inliningCost):
(JSC::DFG::ByteCodeParser::inlineCall):
(JSC::DFG::ByteCodeParser::cancelLinkingForBlock):
(JSC::DFG::ByteCodeParser::attemptToInlineCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::prepareToParseBlock):
(JSC::DFG::ByteCodeParser::clearCaches):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::linkBlock):
(JSC::DFG::ByteCodeParser::linkBlocks):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
* dfg/DFGCPSRethreadingPhase.cpp:
(JSC::DFG::CPSRethreadingPhase::freeUnnecessaryNodes):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGCommon.h:
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* dfg/DFGDriver.cpp:
(JSC::DFG::compileImpl):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::visitChildren):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGLazyJSValue.cpp:
(JSC::DFG::LazyJSValue::switchLookupValue):
* dfg/DFGLazyJSValue.h:
(JSC::DFG::LazyJSValue::switchLookupValue): Deleted.
* dfg/DFGNode.cpp:
(WTF::printInternal):
* dfg/DFGNode.h:
(JSC::DFG::OpInfo::OpInfo):
(JSC::DFG::Node::hasHeapPrediction):
(JSC::DFG::Node::hasCellOperand):
(JSC::DFG::Node::cellOperand):
(JSC::DFG::Node::setCellOperand):
(JSC::DFG::Node::canBeKnownFunction): Deleted.
(JSC::DFG::Node::hasKnownFunction): Deleted.
(JSC::DFG::Node::knownFunction): Deleted.
(JSC::DFG::Node::giveKnownFunction): Deleted.
(JSC::DFG::Node::hasFunction): Deleted.
(JSC::DFG::Node::function): Deleted.
(JSC::DFG::Node::hasExecutable): Deleted.
(JSC::DFG::Node::executable): Deleted.
* dfg/DFGNodeType.h:
* dfg/DFGPhantomCanonicalizationPhase.cpp:
(JSC::DFG::PhantomCanonicalizationPhase::run):
* dfg/DFGPhantomRemovalPhase.cpp:
(JSC::DFG::PhantomRemovalPhase::run):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::emitSwitch):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureRegistrationPhase.cpp:
(JSC::DFG::StructureRegistrationPhase::run):
* dfg/DFGTierUpCheckInjectionPhase.cpp:
(JSC::DFG::TierUpCheckInjectionPhase::run):
(JSC::DFG::TierUpCheckInjectionPhase::removeFTLProfiling):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):
* dfg/DFGWatchpointCollectionPhase.cpp:
(JSC::DFG::WatchpointCollectionPhase::handle):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::ftlUnreachable):
(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCheckCell):
(JSC::FTL::LowerDFGToLLVM::compileCheckBadCell):
(JSC::FTL::LowerDFGToLLVM::compileGetExecutable):
(JSC::FTL::LowerDFGToLLVM::compileNativeCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::compileSwitch):
(JSC::FTL::LowerDFGToLLVM::buildSwitch):
(JSC::FTL::LowerDFGToLLVM::compileCheckFunction): Deleted.
(JSC::FTL::LowerDFGToLLVM::compileCheckExecutable): Deleted.
* heap/Heap.cpp:
(JSC::Heap::collect):
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::storeValue):
(JSC::AssemblyHelpers::loadValue):
* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArguments):
* jit/GPRInfo.h:
(JSC::JSValueRegs::uses):
* jit/JITCall.cpp:
(JSC::JIT::compileOpCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileOpCall):
* runtime/Options.h:
* runtime/VM.cpp:
(JSC::VM::ensureCallEdgeLog):
* runtime/VM.h:
* tests/stress/new-array-then-exit.js: Added.
(foo):
* tests/stress/poly-call-exit-this.js: Added.
* tests/stress/poly-call-exit.js: Added.

Source/WTF:

Add some power that I need for call edge profiling.

* wtf/OwnPtr.h:
(WTF::OwnPtr<T>::createTransactionally):
* wtf/Spectrum.h:
(WTF::Spectrum::add):
(WTF::Spectrum::addAll):
(WTF::Spectrum::get):
(WTF::Spectrum::size):
(WTF::Spectrum::KeyAndCount::KeyAndCount):
(WTF::Spectrum::clear):
(WTF::Spectrum::removeIf):

LayoutTests:

* js/regress/script-tests/simple-poly-call-nested.js: Added.
* js/regress/script-tests/simple-poly-call.js: Added.
* js/regress/simple-poly-call-expected.txt: Added.
* js/regress/simple-poly-call-nested-expected.txt: Added.
* js/regress/simple-poly-call-nested.html: Added.
* js/regress/simple-poly-call.html: Added.

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

5 years agoDon't crash when the DataDetectors framework is unavailable.
beidson@apple.com [Mon, 25 Aug 2014 22:31:04 +0000 (22:31 +0000)]
Don't crash when the DataDetectors framework is unavailable.
<rdar://problem/18106066> and https://bugs.webkit.org/show_bug.cgi?id=136234

Reviewed by Tim Horton.

* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::buildPhoneNumberHighlights): Bail if DD.framework didn’t soft link.
(WebKit::ServicesOverlayController::buildSelectionHighlight): Ditto.

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

5 years agoAttempt to fix the iOS build after <http://trac.webkit.org/changeset/172889>
dbates@webkit.org [Mon, 25 Aug 2014 22:15:27 +0000 (22:15 +0000)]
Attempt to fix the iOS build after <trac.webkit.org/changeset/172889>
(https://bugs.webkit.org/show_bug.cgi?id=109658)

Substitute GraphicsLayer::setContentsToPlatformLayer(..., GraphicsLayer::ContentsLayerForMedia)
for GraphicsLayer::setContentsToMedia(...) because the latter was removed in <http://trac.webkit.org/changeset/172889>.

* WebView/WebView.mm:
(-[WebView _setMediaLayer:forPluginView:]):

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

5 years agoReduce style marking when using the pseudo class :placeholder-shown
benjamin@webkit.org [Mon, 25 Aug 2014 19:33:30 +0000 (19:33 +0000)]
Reduce style marking when using the pseudo class :placeholder-shown
https://bugs.webkit.org/show_bug.cgi?id=136203

Reviewed by Darin Adler.

When the :placeholder-shown filter is hit, we were always marking the RenderStyle as unique.
As a result, if :placeholder-shown was used without a more restrictive filter (e.g. "*:placeholder-shown"
or simply ":placeholder-shown"), style sharing was disabled for the whole tree.

This patch rescope the tree marking to any element that can be affected by a placeholder:
any the subclass of HTMLTextFormControlElement. For other elements, any change in internal state
would be irrelevant for "isPlaceholderVisible".

Styling of :placeholder-shown is covered by the existing tests. Style sharing of :placeholder-shown
is covered by LayoutTests/fast/css/placeholder-shown-basics.html.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
* css/SelectorCheckerTestFunctions.h:
(WebCore::isPlaceholderShown): Deleted.
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::makeContextStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::makeElementStyleUniqueIfNecessaryAndTestIsPlaceholderShown):
(WebCore::SelectorCompiler::isPlaceholderShown):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasPlaceholderShown):
(WebCore::SelectorCompiler::makeUniqueIfNecessaryAndTestIsPlaceholderShown): Deleted.

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

5 years agoAfter r172867 another crash in in js/dom/line-column-numbers.html
msaboff@apple.com [Mon, 25 Aug 2014 19:32:40 +0000 (19:32 +0000)]
After r172867 another crash in in js/dom/line-column-numbers.html
https://bugs.webkit.org/show_bug.cgi?id=136192

Reviewed by Geoffrey Garen.

In lookupExceptionHandlerFromCallerFrame(), We need to use the caller's CallFrame
and VMEntryFrame when calling genericUnwind().  NativeCallFrameTracerWithRestore()
does that for us.

In general, NativeCallFrameTracerWithRestore(), restores the values because we may
do more processing that requires the current callFrame and vmEntryFrame before we
get to the catch handler where we change these to the catch values.  In this
particular case, that restoration isn't currently needed, but we add complexity
and possible future confusion if we create another NativeCallFrameTracerXXX()
version that doesn't restore the values.

* jit/JITOperations.cpp:
(JSC::lookupExceptionHandlerFromCallerFrame): Changed NativeCallFrameTracer() to
NativeCallFrameTracerWithRestore() so that VM::topVMEntryFrame will be updated
before calling genericUnwind().

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

5 years agoRemove ResourceLoader::didChangePriority
antti@apple.com [Mon, 25 Aug 2014 18:46:01 +0000 (18:46 +0000)]
Remove ResourceLoader::didChangePriority
https://bugs.webkit.org/show_bug.cgi?id=136230

Reviewed by Andreas Kling.

It doesn't do anything on any platform.

* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::didChangePriority): Deleted.
* loader/ResourceLoader.h:
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::setLoadPriority):
* platform/network/ResourceHandle.cpp:
(WebCore::ResourceHandle::didChangePriority): Deleted.
* platform/network/ResourceHandle.h:

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

5 years agoWeb Inspector: rename Inspector::TypeBuilder to Inspector::Protocol
burg@cs.washington.edu [Mon, 25 Aug 2014 18:39:25 +0000 (18:39 +0000)]
Web Inspector: rename Inspector::TypeBuilder to Inspector::Protocol
https://bugs.webkit.org/show_bug.cgi?id=136031

Reviewed by Timothy Hatcher.

Rename TypeBuilder namespace to Protocol. Disambiguate where
necessary. Also rename InspectorTypeBuilder to ProtocolTypes.

* CMakeLists.txt:
* DerivedSources.make:
Source/JavaScriptCore:

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.vcxproj/copy-files.cmd:
* JavaScriptCore.xcodeproj/project.pbxproj:
* inspector/ConsoleMessage.cpp:
(Inspector::messageSourceValue):
(Inspector::messageTypeValue):
(Inspector::messageLevelValue):
(Inspector::ConsoleMessage::addToFrontend):
* inspector/ContentSearchUtilities.cpp:
(Inspector::ContentSearchUtilities::buildObjectForSearchMatch):
(Inspector::ContentSearchUtilities::searchInTextByLines):
* inspector/ContentSearchUtilities.h:
* inspector/InjectedScript.cpp:
(Inspector::InjectedScript::evaluate):
(Inspector::InjectedScript::callFunctionOn):
(Inspector::InjectedScript::evaluateOnCallFrame):
(Inspector::InjectedScript::getFunctionDetails):
(Inspector::InjectedScript::getProperties):
(Inspector::InjectedScript::getInternalProperties):
(Inspector::InjectedScript::wrapCallFrames):
(Inspector::InjectedScript::wrapObject):
(Inspector::InjectedScript::wrapTable):
* inspector/InjectedScript.h:
* inspector/InjectedScriptBase.cpp:
(Inspector::InjectedScriptBase::makeEvalCall):
* inspector/InjectedScriptBase.h:
* inspector/InspectorTypeBuilder.h: Removed.
* inspector/ScriptCallFrame.cpp:
(Inspector::ScriptCallFrame::buildInspectorObject):
* inspector/ScriptCallFrame.h:
* inspector/ScriptCallStack.cpp:
(Inspector::ScriptCallStack::buildInspectorArray):
* inspector/ScriptCallStack.h:
* inspector/agents/InspectorAgent.cpp:
(Inspector::InspectorAgent::inspect):
* inspector/agents/InspectorAgent.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::breakpointActionTypeForString):
(Inspector::InspectorDebuggerAgent::setBreakpointByUrl):
(Inspector::InspectorDebuggerAgent::setBreakpoint):
(Inspector::InspectorDebuggerAgent::resolveBreakpoint):
(Inspector::InspectorDebuggerAgent::searchInContent):
(Inspector::InspectorDebuggerAgent::getFunctionDetails):
(Inspector::InspectorDebuggerAgent::evaluateOnCallFrame):
(Inspector::InspectorDebuggerAgent::currentCallFrames):
(Inspector::InspectorDebuggerAgent::didParseSource):
(Inspector::InspectorDebuggerAgent::breakpointActionProbe):
* inspector/agents/InspectorDebuggerAgent.h:
* inspector/agents/InspectorProfilerAgent.cpp:
(Inspector::InspectorProfilerAgent::createProfileHeader):
(Inspector::InspectorProfilerAgent::getProfileHeaders):
(Inspector::buildInspectorObject):
(Inspector::InspectorProfilerAgent::buildProfileInspectorObject):
(Inspector::InspectorProfilerAgent::getCPUProfile):
* inspector/agents/InspectorProfilerAgent.h:
* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::buildErrorRangeObject):
(Inspector::InspectorRuntimeAgent::parse):
(Inspector::InspectorRuntimeAgent::evaluate):
(Inspector::InspectorRuntimeAgent::callFunctionOn):
(Inspector::InspectorRuntimeAgent::getProperties):
(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):
* inspector/agents/InspectorRuntimeAgent.h:
* inspector/scripts/codegen/__init__.py:
* inspector/scripts/codegen/generate_backend_dispatcher_header.py:
(BackendDispatcherHeaderGenerator.generate_output):
* inspector/scripts/codegen/generate_backend_dispatcher_implementation.py:
(BackendDispatcherImplementationGenerator._generate_async_dispatcher_class_for_domain):
(BackendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_command):
* inspector/scripts/codegen/generate_frontend_dispatcher_header.py:
(FrontendDispatcherHeaderGenerator.generate_output):
* inspector/scripts/codegen/generate_frontend_dispatcher_implementation.py:
(FrontendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_event):
* inspector/scripts/codegen/generate_type_builder_header.py: Removed.
* inspector/scripts/codegen/generate_type_builder_implementation.py: Removed.
* inspector/scripts/codegen/generator.py:
(Generator.protocol_type_string_for_type):
(Generator.protocol_type_string_for_type_member):
(Generator.type_string_for_type_with_name):
(Generator.type_string_for_formal_out_parameter):
(Generator.type_string_for_formal_async_parameter):
(Generator.type_string_for_stack_in_parameter):
(Generator.type_string_for_stack_out_parameter):
(Generator.assertion_method_for_type_member.assertion_method_for_type):
(Generator.assertion_method_for_type_member):
(Generator.type_builder_string_for_type): Deleted.
(Generator.type_builder_string_for_type_member): Deleted.
* inspector/scripts/codegen/generator_templates.py:
(Inspector):
* inspector/scripts/generate-inspector-protocol-bindings.py:
(generate_from_specification):
* inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
* inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
* inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result:
* inspector/scripts/tests/expected/events-with-optional-parameters.json-result:
* inspector/scripts/tests/expected/same-type-id-different-domain.json-result:
* inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result:
* inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result:
* inspector/scripts/tests/expected/type-declaration-array-type.json-result:
* inspector/scripts/tests/expected/type-declaration-enum-type.json-result:
* inspector/scripts/tests/expected/type-declaration-object-type.json-result:
* inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:
* runtime/HighFidelityTypeProfiler.cpp:
(JSC::HighFidelityTypeProfiler::getTypesForVariableAtOffsetForInspector):
* runtime/HighFidelityTypeProfiler.h:
* runtime/TypeSet.cpp:
(JSC::TypeSet::allPrimitiveTypeNames):
(JSC::TypeSet::allStructureRepresentations):
(JSC::StructureShape::inspectorRepresentation):
* runtime/TypeSet.h:

Source/WebCore:

* ForwardingHeaders/inspector/InspectorJSTypeBuilders.h: Removed.
* ForwardingHeaders/inspector/InspectorTypeBuilder.h: Removed.
* WebCore.order:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* inspector/CommandLineAPIHost.cpp:
(WebCore::CommandLineAPIHost::inspectImpl):
* inspector/InspectorApplicationCacheAgent.cpp:
(WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
(WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame):
(WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
(WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
(WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
* inspector/InspectorApplicationCacheAgent.h:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getMatchedStylesForNode):
(WebCore::InspectorCSSAgent::getInlineStylesForNode):
(WebCore::InspectorCSSAgent::getComputedStyleForNode):
(WebCore::InspectorCSSAgent::getAllStyleSheets):
(WebCore::InspectorCSSAgent::getStyleSheet):
(WebCore::InspectorCSSAgent::setStyleText):
(WebCore::InspectorCSSAgent::setPropertyText):
(WebCore::InspectorCSSAgent::toggleProperty):
(WebCore::InspectorCSSAgent::setRuleSelector):
(WebCore::InspectorCSSAgent::addRule):
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
(WebCore::InspectorCSSAgent::getNamedFlowCollection):
(WebCore::InspectorCSSAgent::asInspectorStyleSheet):
(WebCore::InspectorCSSAgent::collectStyleSheets):
(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
(WebCore::InspectorCSSAgent::detectOrigin):
(WebCore::InspectorCSSAgent::buildObjectForRule):
(WebCore::InspectorCSSAgent::buildArrayForRuleList):
(WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
(WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
(WebCore::InspectorCSSAgent::buildArrayForRegions):
(WebCore::InspectorCSSAgent::buildObjectForNamedFlow):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
(WebCore::InspectorDOMAgent::getDocument):
(WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
(WebCore::InspectorDOMAgent::querySelectorAll):
(WebCore::InspectorDOMAgent::pushNodePathToFrontend):
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::getAccessibilityPropertiesForNode):
(WebCore::InspectorDOMAgent::getSearchResults):
(WebCore::InspectorDOMAgent::resolveNode):
(WebCore::InspectorDOMAgent::getAttributes):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
(WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
(WebCore::InspectorDOMAgent::processAccessibilityChildren):
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
(WebCore::InspectorDOMAgent::didCommitLoad):
(WebCore::InspectorDOMAgent::didInsertDOMNode):
(WebCore::InspectorDOMAgent::styleAttributeInvalidated):
* inspector/InspectorDOMAgent.h:
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent):
* inspector/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
(WebCore::InspectorDOMStorageAgent::storageId):
(WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
* inspector/InspectorDOMStorageAgent.h:
* inspector/InspectorDatabaseAgent.cpp:
(WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
* inspector/InspectorDatabaseAgent.h:
* inspector/InspectorDatabaseResource.cpp:
(WebCore::InspectorDatabaseResource::bind):
* inspector/InspectorIndexedDBAgent.cpp:
* inspector/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::layersForNode):
(WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
(WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
(WebCore::InspectorLayerTreeAgent::buildObjectForIntRect):
(WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
* inspector/InspectorLayerTreeAgent.h:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::resourceTypeJson):
(WebCore::InspectorPageAgent::cachedResourceTypeJson):
(WebCore::buildObjectForCookie):
(WebCore::buildArrayForCookies):
(WebCore::InspectorPageAgent::getCookies):
(WebCore::InspectorPageAgent::getResourceTree):
(WebCore::InspectorPageAgent::searchInResource):
(WebCore::buildObjectForSearchResult):
(WebCore::InspectorPageAgent::searchInResources):
(WebCore::InspectorPageAgent::buildObjectForFrame):
(WebCore::InspectorPageAgent::buildObjectForFrameTree):
* inspector/InspectorPageAgent.h:
* inspector/InspectorReplayAgent.cpp:
(WebCore::buildInspectorObjectForPosition):
(WebCore::buildInspectorObjectForInput):
(WebCore::buildInspectorObjectForSession):
(WebCore::buildInspectorObjectForSessionState):
(WebCore::buildInspectorObjectForSegmentState):
(WebCore::SerializeInputToJSONFunctor::SerializeInputToJSONFunctor):
(WebCore::SerializeInputToJSONFunctor::operator()):
(WebCore::buildInspectorObjectForSegment):
(WebCore::InspectorReplayAgent::switchSession):
(WebCore::InspectorReplayAgent::insertSessionSegment):
(WebCore::InspectorReplayAgent::removeSessionSegment):
(WebCore::InspectorReplayAgent::currentReplayState):
(WebCore::InspectorReplayAgent::getAvailableSessions):
(WebCore::InspectorReplayAgent::getSessionData):
(WebCore::InspectorReplayAgent::getSegmentData):
* inspector/InspectorReplayAgent.h:
* inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForTiming):
(WebCore::buildObjectForResourceRequest):
(WebCore::buildObjectForResourceResponse):
(WebCore::buildObjectForCachedResource):
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
(WebCore::InspectorResourceAgent::buildInitiatorObject):
(WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorResourceAgent::didReceiveWebSocketFrame):
(WebCore::InspectorResourceAgent::didSendWebSocketFrame):
* inspector/InspectorResourceAgent.h:
* inspector/InspectorStyleSheet.cpp:
(WebCore::buildSourceRangeObject):
(WebCore::buildMediaObject):
(WebCore::fillMediaListChain):
(WebCore::InspectorStyle::buildObjectForStyle):
(WebCore::InspectorStyle::buildArrayForComputedStyle):
(WebCore::InspectorStyle::styleWithProperties):
(WebCore::InspectorStyleSheet::create):
(WebCore::InspectorStyleSheet::InspectorStyleSheet):
(WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
(WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
(WebCore::selectorsFromSource):
(WebCore::InspectorStyleSheet::buildObjectForSelectorList):
(WebCore::InspectorStyleSheet::buildObjectForRule):
(WebCore::InspectorStyleSheet::buildObjectForStyle):
(WebCore::InspectorStyleSheet::resourceStyleSheetText):
(WebCore::InspectorStyleSheet::buildArrayForRuleList):
(WebCore::InspectorStyleSheetForInlineStyle::create):
(WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
* inspector/InspectorStyleSheet.h:
(WebCore::InspectorStyleSheet::canBind):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::toProtocol):
(WebCore::InspectorTimelineAgent::addRecordToTimeline):
(WebCore::InspectorTimelineAgent::sendEvent):
* inspector/PageRuntimeAgent.cpp:

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

5 years ago[Win] Pass OFFICIAL_BUILD flag to WebInspectorUI build process
bfulgham@apple.com [Mon, 25 Aug 2014 18:36:03 +0000 (18:36 +0000)]
[Win] Pass OFFICIAL_BUILD flag to WebInspectorUI build process
https://bugs.webkit.org/show_bug.cgi?id=136229

Reviewed by Dean Jackson.

Source/WebInspectorUI:

* WebInspectorUI.vcxproj/WebInspectorUI.make: Pass OFFICIAL_BUILD
flag to build-webinspectorui.pl.
* WebInspectorUI.vcxproj/build-webinspectorui.pl: Accept and use
the OFFICIAL_BUILD flag.

WebKitLibraries:

* win/tools/vsprops/common.props: Pass OFFICIAL_BUILD argument
from VS to child Make processes.

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

5 years ago[GStreamer] ASSERT failure in WebKitWebSource in StreamingClient
b.long@cablelabs.com [Mon, 25 Aug 2014 18:34:31 +0000 (18:34 +0000)]
[GStreamer] ASSERT failure in WebKitWebSource in StreamingClient
https://bugs.webkit.org/show_bug.cgi?id=136132

adoptGRef() has an ASSERT failure if it's used on a floating pointer. For some reason,
WebKitWebSrc* src in StreamingClient's constructor is floating. Since we
don't construct this ourselves, I assume this is happening in Playbin.

If we remove the ref and adopt, GRefPtr's constructor calls gst_object_ref_sink,
which removes the floating reference and doesn't increment the reference count.
This should work, but actually causes the page to either lock up or crash (different
results for different testers).

In this case, it seems like the adoptGRef / gst_object_ref was the correct thing to do,
but adoptGRef won't actually let us do. Removing the ASSERT is a bad idea, because
usually we don't want to adopt floating pointers.

This is all a long way of saying that making m_src a raw pointer and manually
calling gst_object_ref(), and calling gst_object_unref in the destructor is the
best solution in this case, since it fixes the problem while leaving the ASSERT
to protect us in the much more common case where adopting a floating reference is bad.

Reviewed by Philippe Normand.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(StreamingClient::StreamingClient): Make m_src a raw pointer instead of a GRefPtr.
(StreamingClient::~StreamingClient): Unref m_src.
(StreamingClient::createReadBuffer): Replace m_src.get() with m_src, since it's a raw pointer now.
(StreamingClient::handleResponseReceived): Same.
(StreamingClient::handleDataReceived): Same.
(StreamingClient::handleNotifyFinished): Same.
(CachedResourceStreamingClient::notifyFinished): Same.
(ResourceHandleStreamingClient::didFail): Same.
(ResourceHandleStreamingClient::wasBlocked): Same.
(ResourceHandleStreamingClient::cannotShowURL): Same.

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

5 years agoRemove load scheduling code from network process
antti@apple.com [Mon, 25 Aug 2014 18:04:39 +0000 (18:04 +0000)]
Remove load scheduling code from network process
https://bugs.webkit.org/show_bug.cgi?id=136199

Reviewed by Darin Adler.

Most platforms just flush resource loads directly to the networking layer by
making the parallel load count large. Also we always pass ResourceLoadPriorityHighest
to the scheduler so no actual scheduling happens. This is effectively dead code.

Keep basic support for serializing loads. This is only used for testing.

* NetworkProcess/HostRecord.cpp: Removed.
* NetworkProcess/HostRecord.h: Removed.
* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::servePendingRequests):
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::getNetworkProcessStatistics):
* NetworkProcess/NetworkResourceLoadScheduler.cpp:
(WebKit::NetworkResourceLoadScheduler::NetworkResourceLoadScheduler):
(WebKit::NetworkResourceLoadScheduler::scheduleLoader):
(WebKit::NetworkResourceLoadScheduler::removeLoader):
(WebKit::NetworkResourceLoadScheduler::loadsPendingCount):
(WebKit::NetworkResourceLoadScheduler::loadsActiveCount):
(WebKit::NetworkResourceLoadScheduler::scheduleServePendingRequests): Deleted.
(WebKit::NetworkResourceLoadScheduler::requestTimerFired): Deleted.
(WebKit::NetworkResourceLoadScheduler::hostForURL): Deleted.
(WebKit::NetworkResourceLoadScheduler::receivedRedirect): Deleted.
(WebKit::NetworkResourceLoadScheduler::servePendingRequests): Deleted.
(WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders): Deleted.
(WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoader): Deleted.
(WebKit::NetworkResourceLoadScheduler::hostsPendingCount): Deleted.
(WebKit::NetworkResourceLoadScheduler::hostsActiveCount): Deleted.
* NetworkProcess/NetworkResourceLoadScheduler.h:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::~NetworkResourceLoader):
(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::continueWillSendRequest):
* NetworkProcess/NetworkResourceLoader.h:
(WebKit::NetworkResourceLoader::isLoadingMainResource):
(WebKit::NetworkResourceLoader::setHostRecord): Deleted.
(WebKit::NetworkResourceLoader::hostRecord): Deleted.
* NetworkProcess/mac/NetworkResourceLoadSchedulerMac.mm:
(WebKit::NetworkResourceLoadScheduler::platformInitializeNetworkSettings):
(WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost): Deleted.
* NetworkProcess/soup/NetworkResourceLoadSchedulerSoup.cpp:
(WebKit::NetworkResourceLoadScheduler::platformInitializeNetworkSettings):
(WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost): Deleted.
* WebKit2.xcodeproj/project.pbxproj:

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

5 years agoASSERT(extractable()) when storing a non-extractable key in IndexedDB
ap@apple.com [Mon, 25 Aug 2014 16:25:14 +0000 (16:25 +0000)]
ASSERT(extractable()) when storing a non-extractable key in IndexedDB
https://bugs.webkit.org/show_bug.cgi?id=136202
rdar://problem/17993967

* platform/mac-wk1/TestExpectations: Skip the test, IndexedDB is not supported
with WebKit1.

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

5 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Mon, 25 Aug 2014 14:47:54 +0000 (14:47 +0000)]
Unreviewed EFL gardening

* platform/efl/TestExpectations: Added test expecations for failing and crashing tests.
* platform/efl/scrollbars/scrollbar-selectors-expected.txt: Rebaseline after r172220.

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

5 years ago[EFL][WK2] Minibrowser : Enhance application to be able to support history list navig...
commit-queue@webkit.org [Mon, 25 Aug 2014 13:40:17 +0000 (13:40 +0000)]
[EFL][WK2] Minibrowser : Enhance application to be able to support history list navigation
https://bugs.webkit.org/show_bug.cgi?id=135795

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

* MiniBrowser/efl/main.c: Adding functionality for long press history list navigation
(history_list_hide): Hiding and dereferencing the history list and items
(on_key_down):
(on_mouse_down):
(on_back_button_clicked): Early return for longpress
(on_forward_button_clicked): Early return for longpress
(list_item_label_get): Populate item labels
(on_list_item_select): Navigates on selection from history list
(navigation_button_longpress_process): Populates the history list and displays it
(on_forward_button_longpress):
(on_back_button_longpress):
(window_create): Add the widget for history list

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

5 years ago[GTK] Unify webkitgtk and webkit2gtk directories
berto@igalia.com [Mon, 25 Aug 2014 13:05:31 +0000 (13:05 +0000)]
[GTK] Unify webkitgtk and webkit2gtk directories
https://bugs.webkit.org/show_bug.cgi?id=136209

Reviewed by Carlos Garcia Campos.

Use webkit2gtk-X.X both for the process binaries and the injected
bundle.

* Source/cmake/OptionsGTK.cmake:

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

5 years ago[GTK] Older versions of WebKit should use the plugins cache in read only mode
carlosgc@webkit.org [Mon, 25 Aug 2014 12:49:37 +0000 (12:49 +0000)]
[GTK] Older versions of WebKit should use the plugins cache in read only mode
https://bugs.webkit.org/show_bug.cgi?id=136215

Reviewed by Philippe Normand.

Now that WebKitGTK+ 2.4 and 2.5 are parallel installable, since
they use different versions of the plugins cache, apps using 2.4
might override the plugins cache file. We should prevent this from
happening by making older versions use the plugin cache, but not
downgrade it.

* UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::PluginInfoCache):
(WebKit::PluginInfoCache::updatePluginInfo):
* UIProcess/Plugins/gtk/PluginInfoCache.h:

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

5 years ago[GTK] Should check if a plugin mixes GTK+ symbols earlier
carlosgc@webkit.org [Mon, 25 Aug 2014 12:45:07 +0000 (12:45 +0000)]
[GTK] Should check if a plugin mixes GTK+ symbols earlier
https://bugs.webkit.org/show_bug.cgi?id=136214

Reviewed by Philippe Normand.

We are currently checking if the plugin module and the plugin
process mix GTK symbols after the plugin has been loaded and
initialized. This is too late in many cases, since plugins can use
GTK methods in the NP_Initialize implementation. This is causing
the apps using WebKitGTK+ 2.4 to freeze when the plugin process
scans the plugins and there's a plugin using GTK+3 installed. We
should move the check earlier, once the module is loaded but
before calling NP_Initialize.

* Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::moduleMixesGtkSymbols):
(WebKit::NetscapePluginModule::tryLoad):
* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::NetscapePlugin::platformPostInitialize):

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

5 years ago[GTK] Remove PopupMenuGtk, SearchPopupMenuGtk
zandobersek@gmail.com [Mon, 25 Aug 2014 12:24:20 +0000 (12:24 +0000)]
[GTK] Remove PopupMenuGtk, SearchPopupMenuGtk
https://bugs.webkit.org/show_bug.cgi?id=136211

Reviewed by Carlos Garcia Campos.

Remove the two classes from the codebase. They're not used anymore
after the WebKit1 layer of the GTK port was removed some time ago.

* PlatformGTK.cmake:
* platform/gtk/PopupMenuGtk.cpp: Removed.
* platform/gtk/PopupMenuGtk.h: Removed.
* platform/gtk/SearchPopupMenuGtk.cpp: Removed.
* platform/gtk/SearchPopupMenuGtk.h: Removed.

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

5 years agoImprove virtual method declarations in LayerTreeHostGtk
zandobersek@gmail.com [Mon, 25 Aug 2014 12:22:58 +0000 (12:22 +0000)]
Improve virtual method declarations in LayerTreeHostGtk
https://bugs.webkit.org/show_bug.cgi?id=136210

Reviewed by Carlos Garcia Campos.

Mark the LayerTreeHostGtk class as final in the virtual inheritance hierarchy.

Order the public and private virtual method overrides from the LayerTreeHost
and GraphicsLayerClient interfaces. Explicitly mark them as overriding the
base class methods.

Remove the overriding notifyAnimationStarted() and notifyFlushRequired()
methods since they are identical to the methods in the base class.

De-virtualize flushPendingLayerChanges(). It's not inherited and is not
overriden by anything (and nothing can inherit from LayerTreeHostGtk from
now on due to the final specifier).

* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::notifyAnimationStarted): Deleted.
(WebKit::LayerTreeHostGtk::notifyFlushRequired): Deleted.
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
(WebKit::LayerTreeHostGtk::didCommitChangesForLayer): Deleted.

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

5 years agoWeb Core: Fix unused parameter build warning.
commit-queue@webkit.org [Mon, 25 Aug 2014 08:17:58 +0000 (08:17 +0000)]
Web Core: Fix unused parameter build warning.
https://bugs.webkit.org/show_bug.cgi?id=136208

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-08-25
Reviewed by Darin Adler.

Fix unused build warning by removing parameter, which is not used.

* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):

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

5 years ago[GTK] JHBuild module gst-plugins-base fails to build on x86 with GCC 4.9
clopez@igalia.com [Mon, 25 Aug 2014 08:02:01 +0000 (08:02 +0000)]
[GTK] JHBuild module gst-plugins-base fails to build on x86 with GCC 4.9
https://bugs.webkit.org/show_bug.cgi?id=136152

Reviewed by Philippe Normand.

* gtk/jhbuild.modules: Apply gst-plugins-base-fix-build-gcc-4.9-x86.patch.
* gtk/patches/gst-plugins-base-fix-build-gcc-4.9-x86.patch: Added.
Cherry pick upstream patches daa194 and 4e3d101.

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

5 years agoASSERTION FAILED: !trackSizes.isEmpty() in WebCore::createGridTrackList
svillar@igalia.com [Mon, 25 Aug 2014 07:56:32 +0000 (07:56 +0000)]
ASSERTION FAILED: !trackSizes.isEmpty() in WebCore::createGridTrackList
https://bugs.webkit.org/show_bug.cgi?id=136149

Reviewed by Darin Adler.

Source/WebCore:

The second argument of the repeat() function is a <track-list>
that must have at least one <track-size>. Should it not be found,
the declaration must be invalidated.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseGridTrackRepeatFunction):

LayoutTests:

Added 3 new test cases to check invalid syntax in the repeat() function.

Also fixed a bug in the testInvalidSyntax() function. We were
using style.gridColumns instead of
style.webkitGridTemplateColumns, so the tests were working fine
because there were no such property.

* fast/css-grid-layout/grid-element-repeat-get-set-expected.txt:
* fast/css-grid-layout/grid-element-repeat-get-set.html:

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

5 years agoAdd support for little-endian PowerPC64
commit-queue@webkit.org [Mon, 25 Aug 2014 07:12:05 +0000 (07:12 +0000)]
Add support for little-endian PowerPC64
https://bugs.webkit.org/show_bug.cgi?id=135647

Patch by Tomas Popela <tpopela@redhat.com> on 2014-08-25
Reviewed by Oliver Hunt.

* wtf/Platform.h:
* wtf/dtoa/utils.h:

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

5 years ago[EFL] Move Efl specific code from Source/CMakeLists.txt
ryuan.choi@samsung.com [Mon, 25 Aug 2014 06:58:41 +0000 (06:58 +0000)]
[EFL] Move Efl specific code from Source/CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=136206

Reviewed by Gyuyoung Kim.

WebKit/Efl only uses ENABLE_WERROR so it can be moved into OptionsEfl.cmake.
Inaddition, renamed ADDITIONAL_FLAGS to ADDITIONAL_COMPILER_FLAGS.

* Source/CMakeLists.txt:
* Source/cmake/OptionsEfl.cmake:

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

5 years agoMove WebCore storage code to C++11 lambdas, std::function
zandobersek@gmail.com [Mon, 25 Aug 2014 06:04:03 +0000 (06:04 +0000)]
Move WebCore storage code to C++11 lambdas, std::function
https://bugs.webkit.org/show_bug.cgi?id=126435

Reviewed by Darin Adler.

Use C++11 lambdas instead of WTF::bind and std::function<void ()>
instead of WTF::Function<void ()> in StorageAreaSync, StorageSyncManager,
StorageThread and StorageTracker classes.

* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::StorageAreaSync):
(WebCore::StorageAreaSync::scheduleFinalSync):
(WebCore::StorageAreaSync::syncTimerFired):
* storage/StorageSyncManager.cpp:
(WebCore::StorageSyncManager::dispatch):
* storage/StorageSyncManager.h:
* storage/StorageThread.cpp:
(WebCore::StorageThread::dispatch):
(WebCore::StorageThread::terminate):
(WebCore::StorageThread::releaseFastMallocFreeMemoryInAllThreads):
* storage/StorageThread.h:
* storage/StorageTracker.cpp:
(WebCore::StorageTracker::importOriginIdentifiers):
(WebCore::StorageTracker::syncImportOriginIdentifiers):
(WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
(WebCore::StorageTracker::setOriginDetails):
(WebCore::StorageTracker::deleteAllOrigins):
(WebCore::StorageTracker::deleteOrigin):

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

5 years agoThe inspector should not use the "after" pseudo element with the compatibility syntax
benjamin@webkit.org [Mon, 25 Aug 2014 04:06:35 +0000 (04:06 +0000)]
The inspector should not use the "after" pseudo element with the compatibility syntax
https://bugs.webkit.org/show_bug.cgi?id=136204

Reviewed by Darin Adler.

We should only use hte proper pseudo element syntax inside WebKit.

* Tools/PrettyPrinting/codemirror-additions.css:
* Tools/PrettyPrinting/populate/apple.css:

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

5 years agoRemove unused method declarations replaced by WebPage::setViewState
burg@cs.washington.edu [Mon, 25 Aug 2014 03:53:33 +0000 (03:53 +0000)]
Remove unused method declarations replaced by WebPage::setViewState
https://bugs.webkit.org/show_bug.cgi?id=136180

Reviewed by Darin Adler.

* WebProcess/WebPage/WebPage.h:
Remove setFocused, setActive, setViewIsVisible. No longer used.

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

5 years agoASSERT(extractable()) when storing a non-extractable key in IndexedDB
ap@apple.com [Mon, 25 Aug 2014 02:33:07 +0000 (02:33 +0000)]
ASSERT(extractable()) when storing a non-extractable key in IndexedDB
https://bugs.webkit.org/show_bug.cgi?id=136202
rdar://problem/17993967

Reviewed by Darin Adler.

Source/WebCore:

Test: crypto/subtle/rsa-indexeddb-non-exportable.html

Removed the obsolete assertion.

* crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::exportData):
* crypto/keys/CryptoKeyHMAC.cpp: (WebCore::CryptoKeyHMAC::exportData):
* crypto/mac/CryptoKeyRSAMac.cpp: (WebCore::CryptoKeyRSA::exportData):

LayoutTests:

* crypto/subtle/rsa-indexeddb-non-exportable-expected.txt: Added.
* crypto/subtle/rsa-indexeddb-non-exportable.html: Added.

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

5 years agoWeb Inspector: Rename DOM.RGBA and remove workarounds in the bindings generator
burg@cs.washington.edu [Mon, 25 Aug 2014 00:26:14 +0000 (00:26 +0000)]
Web Inspector: Rename DOM.RGBA and remove workarounds in the bindings generator
https://bugs.webkit.org/show_bug.cgi?id=136025

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

This workaround can be removed since it is no longer necessary.

* inspector/scripts/codegen/models.py:
(TypeReference.__init__):
(Type.raw_name):
(TypeDeclaration.__init__):
* inspector/scripts/tests/type-declaration-object-type.json: Remove related test input.
* inspector/scripts/tests/expected/type-declaration-object-type.json-result: Rebaseline.

Source/WebCore:

Rename DOM.RGBA to DOM.RGBAColor to avoid name clashes with headers on Windows CE.
This workaround used to be special-cased in the bindings generator.

Type names are not used in protocol messages, so this does not introduce legacy issues.

* inspector/protocol/DOM.json:

Source/WebInspectorUI:

Also rename DOM.RGBA in legacy protocol specifications.

* Versions/Inspector-iOS-6.0.json:
* Versions/Inspector-iOS-7.0.json:

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

5 years ago[GTK] Toggle buttons visually broken with GTK+ 3.13.7
commit-queue@webkit.org [Sun, 24 Aug 2014 22:07:29 +0000 (22:07 +0000)]
[GTK] Toggle buttons visually broken with GTK+ 3.13.7
https://bugs.webkit.org/show_bug.cgi?id=136130

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2014-08-24
Reviewed by Martin Robinson.

No new tests. Hopefully covered by existing tests, and our tests only
run with GTK+ 3.6 anyway.

* platform/gtk/RenderThemeGtk3.cpp:
(WebCore::paintToggle): use GTK_STATE_FLAG_CHECKED when compiling for
GTK+ 3.13.7 and above to ensure toggle buttons display as toggled.

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

5 years agoGenericHashTraits::peek() is producing copies of passed-in temporary values
commit-queue@webkit.org [Sun, 24 Aug 2014 20:14:29 +0000 (20:14 +0000)]
GenericHashTraits::peek() is producing copies of passed-in temporary values
https://bugs.webkit.org/show_bug.cgi?id=131461

Patch by Zan Dobersek <zdobersek@igalia.com> on 2014-08-24
Reviewed by Darin Adler.

Source/WTF:

* wtf/HashTraits.h:
(WTF::GenericHashTraits::peek): Make this method a template that passes through
the passed-in value without copying, achieved by using universal references and
std::forward<>().

Tools:

Add a test case that checks the number of copies and moves of the mapped objects
when calling HashMap::get(). Exactly one copy of the mapped value should be
performed when there exists a value that is mapped to the specified key, and
exactly one move and no copies of the empty value should be performed when there
isn't any mapped value for the specified key.

* TestWebKitAPI/Tests/WTF/CopyMoveCounter.h: Added.
(CopyMoveCounter::TestingScope::TestingScope):
(CopyMoveCounter::CopyMoveCounter):
(CopyMoveCounter::operator=):
* TestWebKitAPI/Tests/WTF/HashMap.cpp:
(TestWebKitAPI::TEST):

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