WebKit-https.git
8 years agoRemove ANGLEGenerated from Windows build.
commit-queue@webkit.org [Fri, 22 Nov 2013 05:12:47 +0000 (05:12 +0000)]
Remove ANGLEGenerated from Windows build.
https://bugs.webkit.org/show_bug.cgi?id=124759

Patch by Alex Christensen <achristensen@webkit.org> on 2013-11-21
Reviewed by Darin Adler.

Source/ThirdParty/ANGLE:

* ANGLE.vcxproj/ANGLEGenerated.vcxproj: Removed.
* ANGLE.vcxproj/ANGLEGenerated.vcxproj.filters: Removed.

Source/WebKit:

* WebKit.vcxproj/WebKit.sln:
Remove references to ANGLEGenerated.vcxproj.

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

8 years agoMap the dir attribute to the CSS direction property.
commit-queue@webkit.org [Fri, 22 Nov 2013 05:03:26 +0000 (05:03 +0000)]
Map the dir attribute to the CSS direction property.
https://bugs.webkit.org/show_bug.cgi?id=124572.

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-11-21
Reviewed by Darin Adler.

Source/WebCore:

Test: mathml/presentation/mstyle-css-attributes.html

* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::isPresentationAttribute): reorder attributes
(WebCore::MathMLElement::collectStyleForPresentationAttribute): reorder tags that accept dir
(WebCore::MathMLElement::isMathMLToken): add an inline function to test that a tag corresponds to a MathML Token Element.
* mathml/MathMLElement.h:

Follow-up work to address Darin's comments.

LayoutTests:

* mathml/presentation/direction-overall-expected.html: test that dir does not apply to msqrt
* mathml/presentation/direction-overall.html:
* mathml/presentation/mstyle-css-attributes-expected.html: Added.
* mathml/presentation/mstyle-css-attributes.html: Added.

Add more tests for presentation attributes on mstyle.

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

8 years agoRemove ENABLE_WORKERS
commit-queue@webkit.org [Fri, 22 Nov 2013 05:01:46 +0000 (05:01 +0000)]
Remove ENABLE_WORKERS
https://bugs.webkit.org/show_bug.cgi?id=105784

.:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* Source/autotools/SetupWebKitFeatures.m4:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmakeconfig.h.cmake:

Source/WebCore:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

Source/WebKit:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/efl:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* ewk/ewk_settings.cpp:
(ewk_settings_memory_cache_clear):

Source/WebKit/win:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* WebWorkersPrivate.cpp:
(WebWorkersPrivate::workerThreadCount):

Source/WTF:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* wtf/FeatureDefines.h:
* wtf/nix/FeatureDefinesNix.h:

Tools:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-11-21
Reviewed by Darin Adler.

* win/tools/vsprops/FeatureDefines.props:
* win/tools/vsprops/FeatureDefinesCairo.props:

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

8 years ago[Win] Unreviewed build fix after r159632.
alex.christensen@flexsim.com [Fri, 22 Nov 2013 04:42:11 +0000 (04:42 +0000)]
[Win] Unreviewed build fix after r159632.

* platform/network/curl/SSLHandle.cpp:
(WebCore::certVerifyCallback):
Fixed template syntax.

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

8 years agoFix a typo (requriements->requirements).
fpizlo@apple.com [Fri, 22 Nov 2013 04:24:22 +0000 (04:24 +0000)]
Fix a typo (requriements->requirements).

* runtime/StackAlignment.h:

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

8 years agoTry to fix buildbot Dashboard for people who have not hidden anything.
darin@apple.com [Fri, 22 Nov 2013 04:22:49 +0000 (04:22 +0000)]
Try to fix buildbot Dashboard for people who have not hidden anything.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
Add a null check for hidden platforms.

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

8 years agoRemove chrome/chromium related things from webkitpy.
commit-queue@webkit.org [Fri, 22 Nov 2013 04:17:22 +0000 (04:17 +0000)]
Remove chrome/chromium related things from webkitpy.
https://bugs.webkit.org/show_bug.cgi?id=124493

Patch by Peter Szanka <h868064@stud.u-szeged.hu> on 2013-11-21
Reviewed by Darin Adler.

* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(PortTest.assert_mock_port_works):
* Scripts/webkitpy/port/base.py:
(Port.to.setup_environ_for_server):
* Scripts/webkitpy/port/mac_unittest.py:
(test_tests_for_other_platforms):
* Scripts/webkitpy/port/mock_drt.py:
(MockTestShell.output_for_test):
* Scripts/webkitpy/tool/bot/irc_command.py:
(Restart.execute):
* Scripts/webkitpy/tool/bot/ircbot_unittest.py:
(IRCBotTest.test_help):

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

8 years ago[EFL][WK2] Fix build after r159656
commit-queue@webkit.org [Fri, 22 Nov 2013 04:05:13 +0000 (04:05 +0000)]
[EFL][WK2] Fix build after r159656
https://bugs.webkit.org/show_bug.cgi?id=124755

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-11-21
Reviewed by Gyuyoung Kim.

Page title was moved to page load state.

* UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
(WebKit::WebInspectorServer::buildPageList):

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

8 years agoUnreviewed build fix.
alex.christensen@flexsim.com [Fri, 22 Nov 2013 03:56:50 +0000 (03:56 +0000)]
Unreviewed build fix.

* src/libGLESv2/Constants.h: Added from checkout a60e0805721f62c28a55faf2df74472cc5fc91fc.

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

8 years agoIn filereader.py, process_file() should throw instead of exiting directly when the...
commit-queue@webkit.org [Fri, 22 Nov 2013 03:49:50 +0000 (03:49 +0000)]
In filereader.py, process_file() should throw instead of exiting directly when the file doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=124717

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-11-21
Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/style/filereader.py:
(TextFileReader.process_file):
* Scripts/webkitpy/style/filereader_unittest.py:
(TextFileReaderTest.test_process_file__does_not_exist):

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

8 years agoWeb Inspector: [CSS Shapes] Refactor highlighting code to decrease Shapes API surface
betravis@adobe.com [Fri, 22 Nov 2013 03:17:15 +0000 (03:17 +0000)]
Web Inspector: [CSS Shapes] Refactor highlighting code to decrease Shapes API surface
https://bugs.webkit.org/show_bug.cgi?id=124737

Reviewed by Timothy Hatcher.

Source/WebCore:

Add a virtual method to Shapes, buildPath, that can be used to build the
path (in the Shape coordinate system) for display in the Inspector. This allows us
to remove methods such as type(), polygon(), and logicalRx/Ry() which exposed the
inner workings of the Shapes classes. Also covers the addition of the BoxShape type.

Refactoring, existing test is inspector-protocol/model/highlight-shape-outside.html.

* inspector/InspectorOverlay.cpp:
(WebCore::appendPathCommandAndPoints): Points need to be translated from shape space
to renderer space using ShapeInfo.
(WebCore::buildObjectForShapeOutside): Add the ShapeOutsideInfo to the path info struct.
* rendering/shapes/BoxShape.cpp:
(WebCore::BoxShape::buildPath): Build the path for a BoxShape.
* rendering/shapes/BoxShape.h:
* rendering/shapes/PolygonShape.cpp:
(WebCore::PolygonShape::buildPath): Build the path for a PolygonShape.
* rendering/shapes/PolygonShape.h:
* rendering/shapes/RasterShape.h:
* rendering/shapes/RectangleShape.cpp:
(WebCore::RectangleShape::buildPath): Build the path for a RectangleShape.
* rendering/shapes/RectangleShape.h:
* rendering/shapes/Shape.h:

LayoutTests:

The shapes paths are now drawn in shape-coordinate space before being translated to
renderer space. With different writing modes, shapes may have their coordinates
translated. For example, a rectangle specified as four points [top left, top right,
bottom right, bottom left] in vertical-lr space would appear as [top left, bottom left,
bottom right, top right] in horizontal-tb space. Adjusting the previous tests, and
adding a test for the new box value.

* inspector-protocol/model/highlight-shape-outside-expected.txt:
* inspector-protocol/model/highlight-shape-outside.html:

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

8 years agoCodeBlock::m_numCalleeRegisters need to honor native stack alignment.
mark.lam@apple.com [Fri, 22 Nov 2013 03:12:13 +0000 (03:12 +0000)]
CodeBlock::m_numCalleeRegisters need to honor native stack alignment.
https://bugs.webkit.org/show_bug.cgi?id=124754.

Reviewed by Filip Pizlo.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::newRegister):
* dfg/DFGVirtualRegisterAllocationPhase.cpp:
(JSC::DFG::VirtualRegisterAllocationPhase::run):

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

8 years ago<https://webkit.org/b/124702> Stop overriding VALID_ARCHS.
mrowe@apple.com [Fri, 22 Nov 2013 03:04:12 +0000 (03:04 +0000)]
<https://webkit.org/b/124702> Stop overriding VALID_ARCHS.

All modern versions of Xcode set it appropriately for our needs.

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:

Source/WebCore:

* Configurations/Base.xcconfig:

Source/WebInspectorUI:

* Configurations/Base.xcconfig:

Source/WebKit/mac:

* Configurations/Base.xcconfig:

Source/WebKit2:

* Configurations/Base.xcconfig:

Tools:

* MiniBrowser/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:

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

8 years agowebkitdirs::checkForArgumentAndRemoveFromArrayRef() removed wrong element
commit-queue@webkit.org [Fri, 22 Nov 2013 03:01:55 +0000 (03:01 +0000)]
webkitdirs::checkForArgumentAndRemoveFromArrayRef() removed wrong element
https://bugs.webkit.org/show_bug.cgi?id=124676

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-11-21
Reviewed by Daniel Bates.

checkForArgumentAndRemoveFromArrayRef functions was removing wrong
elements when there were more then one occurrence of that argument.
E.g: Checking for 'a' in {a, b, a, c}, the resulting array would be
{b, a}, when it should be {b, c}.

* Scripts/webkitdirs.pm:
(checkForArgumentAndRemoveFromArrayRef): bugfix mentioned above.
* Scripts/webkitperl/webkitdirs_unittest/checkForArgumentAndRemoveFromArrayRef.pl:
Added; Unit tests for webkitdirs::checkForArgumentAndRemoveFromArrayRef function.

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

8 years ago[GTK] Unreviewed buildfix after r159614 and r159656.
ryumiel@company100.net [Fri, 22 Nov 2013 03:01:26 +0000 (03:01 +0000)]
[GTK] Unreviewed buildfix after r159614 and r159656.

Source/WebCore:

* bindings/gobject/WebKitDOMCustom.cpp: Add missing header

Source/WebKit2:

* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
(WebKit::WebInspectorServer::buildPageList): Use the page load state to get page title.

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

8 years agoFix WinCairo unreachable code warnings in SimpleLineLayout.cpp
commit-queue@webkit.org [Fri, 22 Nov 2013 02:59:45 +0000 (02:59 +0000)]
Fix WinCairo unreachable code warnings in SimpleLineLayout.cpp
https://bugs.webkit.org/show_bug.cgi?id=124704

Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-11-21
Reviewed by Antti Koivisto.

Fix unreachable code warnings using conditional directives.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):

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

8 years ago<https://webkit.org/b/124701> Fix an error in a few Xcode configuration setting files.
mrowe@apple.com [Fri, 22 Nov 2013 02:57:41 +0000 (02:57 +0000)]
<https://webkit.org/b/124701> Fix an error in a few Xcode configuration setting files.

Reviewed by Alexey Proskuryakov.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:

Source/ThirdParty/ANGLE:

* Configurations/Base.xcconfig:

Source/WebCore:

* Configurations/Base.xcconfig:

Source/WebKit/mac:

* Configurations/Base.xcconfig:

Source/WebKit2:

* Configurations/Base.xcconfig:

Source/WTF:

* Configurations/Base.xcconfig:

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

8 years agoUpdate build-webkit after r159550.
rniwa@webkit.org [Fri, 22 Nov 2013 02:56:22 +0000 (02:56 +0000)]
Update build-webkit after r159550.

* Scripts/webkitperl/FeatureList.pm:

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

8 years ago<https://webkit.org/b/124700> Fix some deprecation warnings.
mrowe@apple.com [Fri, 22 Nov 2013 02:55:19 +0000 (02:55 +0000)]
<https://webkit.org/b/124700> Fix some deprecation warnings.

Reviewed by Anders Carlsson.

Source/WebCore:

* platform/mac/HTMLConverter.mm:
(fileWrapperForURL): Move off a deprecated NSFileWrapper method.

Source/WebKit/mac:

* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::startStream): Move off a deprecated NSData method.
* WebView/WebDataSource.mm:
(-[WebDataSource _fileWrapperForURL:]): Move off a deprecated NSFileWrapper method.
* WebView/WebHTMLView.mm:
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.

Source/WebKit2:

* UIProcess/API/mac/WKView.mm:
(-[WKView namesOfPromisedFilesDroppedAtDestination:]): Move off a deprecated NSFileWrapper method.

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

8 years ago[EFL] Layout tests with editing need to be rebaselined.
commit-queue@webkit.org [Fri, 22 Nov 2013 02:53:04 +0000 (02:53 +0000)]
[EFL] Layout tests with editing need to be rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=124751

Unreviewed, EFL rebaseline.

editing/input/reveal-caret-of-multiline-contenteditable.html test is rebaselined after r137239.
editing/selection/5354455-2.html test is rebaselined after r133000.
Rebaseline the expected results to suit editing-related performance in EFL.

Patch by Sun-woo Nam <sunny.nam@samsung.com> on 2013-11-21

* platform/efl-wk1/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt:
* platform/efl/editing/selection/5354455-2-expected.txt:

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

8 years agoUpdate apple builders.
lforschler@apple.com [Fri, 22 Nov 2013 02:38:21 +0000 (02:38 +0000)]
Update apple builders.

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

8 years agoImport some W3C tests for HTML template element
rniwa@webkit.org [Fri, 22 Nov 2013 02:20:08 +0000 (02:20 +0000)]
Import some W3C tests for HTML template element
https://bugs.webkit.org/show_bug.cgi?id=124699

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Imported the shared resources for web-platform-tests/html-templates as well as tests under
serializing-html-templates and template-element at a274ad93ef5dc02ac042e0a5d58327d4135178ac.

* ChangeLog: Added.
* html-templates/resources/end-template-tag-in-body.html: Added.
* html-templates/resources/end-template-tag-in-head.html: Added.
* html-templates/resources/frameset-end-tag.html: Added.
* html-templates/resources/head-template-contents-div-no-end-tag.html: Added.
* html-templates/resources/head-template-contents-table-no-end-tag.html: Added.
* html-templates/resources/html-start-tag.html: Added.
* html-templates/resources/template-child-nodes-div.xhtml: Added.
* html-templates/resources/template-child-nodes-nested.xhtml: Added.
* html-templates/resources/template-contents-attribute.html: Added.
* html-templates/resources/template-contents-body.html: Added.
* html-templates/resources/template-contents-div-no-end-tag.html: Added.
* html-templates/resources/template-contents-empty.html: Added.
* html-templates/resources/template-contents-frameset.html: Added.
* html-templates/resources/template-contents-head.html: Added.
* html-templates/resources/template-contents-html.html: Added.
* html-templates/resources/template-contents-nested.html: Added.
* html-templates/resources/template-contents-table-no-end-tag.html: Added.
* html-templates/resources/template-contents-text.html: Added.
* html-templates/resources/template-contents.html: Added.
* html-templates/resources/template-descendant-body.html: Added.
* html-templates/resources/template-descendant-frameset.html: Added.
* html-templates/resources/template-descendant-head.html: Added.
* html-templates/resources/two-templates.html: Added.
* html-templates/serializing-html-templates/outerhtml-expected.txt: Added.
* html-templates/serializing-html-templates/outerhtml.html: Added.
* html-templates/template-element/content-attribute-expected.txt: Added.
* html-templates/template-element/content-attribute.html: Added.
* html-templates/template-element/node-document-changes-expected.txt: Added.
* html-templates/template-element/node-document-changes.html: Added.
* html-templates/template-element/template-as-a-descendant-expected.txt: Added.
* html-templates/template-element/template-as-a-descendant.html: Added.
* html-templates/template-element/template-content-expected.txt: Added.
* html-templates/template-element/template-content-node-document-expected.txt: Added.
* html-templates/template-element/template-content-node-document.html: Added.
* html-templates/template-element/template-content.html: Added.
* html-templates/template-element/template-descendant-body-expected.txt: Added.
* html-templates/template-element/template-descendant-body.html: Added.
* html-templates/template-element/template-descendant-frameset-expected.txt: Added.
* html-templates/template-element/template-descendant-frameset.html: Added.
* html-templates/template-element/template-descendant-head-expected.txt: Added.
* html-templates/template-element/template-descendant-head.html: Added.
* html-templates/testcommon.js: Added.

LayoutTests:

* imported/w3c/: Added.
* platform/win/TestExpectations: Skip the imported tests since the template element is disabled on Windows.

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

8 years agoDon't fetch hidden platforms on build.webkit.org/dashboard
dino@apple.com [Fri, 22 Nov 2013 02:12:12 +0000 (02:12 +0000)]
Don't fetch hidden platforms on build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=124750

Reviewed by Tim Horton.

If a platform is hidden, don't fetch its data. If it
becomes unhidden, try to fetch immediately (unless
you've recently fetched).

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

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

8 years agoDidn't mean to commit this.
andersca@apple.com [Fri, 22 Nov 2013 01:29:28 +0000 (01:29 +0000)]
Didn't mean to commit this.

* UIProcess/PageLoadState.h:

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

8 years agoUnreviewed gardening to hide annoying *.user files when.
bfulgham@apple.com [Fri, 22 Nov 2013 01:16:31 +0000 (01:16 +0000)]
Unreviewed gardening to hide annoying *.user files when.

* ANGLE.vcxproj: Added property svn:ignore.

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

8 years agoMove page title handling to the page load state
andersca@apple.com [Fri, 22 Nov 2013 01:13:02 +0000 (01:13 +0000)]
Move page title handling to the page load state
https://bugs.webkit.org/show_bug.cgi?id=124748

Reviewed by Dan Bernstein.

* UIProcess/API/C/WKPage.cpp:
(WKPageCopyTitle):
* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::reset):
(WebKit::PageLoadState::didCommitLoad):
(WebKit::PageLoadState::title):
(WebKit::PageLoadState::setTitle):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveTitleForFrame):
* UIProcess/WebPageProxy.h:

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

8 years agoARM64: Implement push/pop equivalents in LLInt
msaboff@apple.com [Fri, 22 Nov 2013 01:11:54 +0000 (01:11 +0000)]
ARM64: Implement push/pop equivalents in LLInt
https://bugs.webkit.org/show_bug.cgi?id=124721

Reviewed by Filip Pizlo.

Added pushLRAndFP and popLRAndFP that push and pop the link register and frame pointer register.
These ops emit code just like what the compiler emits in the prologue and epilogue.  Also changed
pushCalleeSaves and popCalleeSaves to use the same store pair and load pair instructions to do
the actually pushing and popping.  Finally changed the implementation of push and pop to raise
an exception since we don't have (or need) a single register push or pop.

* llint/LowLevelInterpreter64.asm:
* offlineasm/arm64.rb:
* offlineasm/instructions.rb:

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

8 years agoJSC: Removed unused opcodes from offline assembler
msaboff@apple.com [Fri, 22 Nov 2013 00:46:09 +0000 (00:46 +0000)]
JSC: Removed unused opcodes from offline assembler
https://bugs.webkit.org/show_bug.cgi?id=124749

Reviewed by Mark Hahnenberg.

Removed the unused, X86 only peekq and pokeq.

* offlineasm/instructions.rb:
* offlineasm/x86.rb:

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

8 years agoREGRESSION(159395) Fix branch8(…, AbsoluteAddress, …) in ARM64 MacroAssembler
msaboff@apple.com [Fri, 22 Nov 2013 00:31:55 +0000 (00:31 +0000)]
REGRESSION(159395) Fix branch8(…, AbsoluteAddress, …) in ARM64 MacroAssembler
https://bugs.webkit.org/show_bug.cgi?id=124688

Reviewed by Geoffrey Garen.

Changed handling of the address for the load8() in the branch8(AbsoluteAddress) to be like
the rest of the branchXX(AbsoluteAddress) fucntions.

* assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::branch8):

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

8 years agoBytecodeGenerator should align the stack according to native conventions
fpizlo@apple.com [Thu, 21 Nov 2013 23:55:58 +0000 (23:55 +0000)]
BytecodeGenerator should align the stack according to native conventions
https://bugs.webkit.org/show_bug.cgi?id=124735

Reviewed by Mark Lam.

* bytecompiler/BytecodeGenerator.h:
(JSC::CallArguments::registerOffset):
(JSC::CallArguments::argumentCountIncludingThis):
* bytecompiler/NodesCodegen.cpp:
(JSC::CallArguments::CallArguments):

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

8 years ago[iOS] Build fix; export symbol for WebCore::provideDeviceOrientationTo()
dbates@webkit.org [Thu, 21 Nov 2013 23:24:39 +0000 (23:24 +0000)]
[iOS] Build fix; export symbol for WebCore::provideDeviceOrientationTo()

Add the symbol __ZN7WebCore26provideDeviceOrientationToEPNS_4PageEPNS_23DeviceOrientationClientE.

* WebCore.exp.in:

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

8 years agoAdd !USE(NETWORK_CFDATA_ARRAY_CALLBACK)-guard
dbates@webkit.org [Thu, 21 Nov 2013 23:21:35 +0000 (23:21 +0000)]
Add !USE(NETWORK_CFDATA_ARRAY_CALLBACK)-guard
https://bugs.webkit.org/show_bug.cgi?id=124741

Reviewed by Alexey Proskuryakov.

Add !USE(NETWORK_CFDATA_ARRAY_CALLBACK)-guard around code that is unused
when building with feature NETWORK_CFDATA_ARRAY_CALLBACK.

Additionally, add a declaration for allocateSegment() with attribute WARN_UNUSED_RETURN
to have the compiler warn when the return value of this function is unused. Together with
warnings treated as errors this change will prevent a memory leak.

* platform/SharedBuffer.cpp:

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

8 years agoRemove unused functions from WebCore and WebKit2
dbates@webkit.org [Thu, 21 Nov 2013 23:20:38 +0000 (23:20 +0000)]
Remove unused functions from WebCore and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=124739

Reviewed by Alexey Proskuryakov.

Source/WebCore:

* editing/markup.cpp: Remove unused functions isHTMLBlockElement and
ancestorToRetainStructureAndAppearanceWithNoRenderer.
* rendering/InlineElementBox.cpp: Append newline to the end of the file.

Source/WebKit2:

Remove unused functions autoreleased({WKURLRequestRef, WKURLResponseRef}).

* UIProcess/API/mac/WKBrowsingContextController.mm:

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

8 years agoOnly generate isObservable() when IDL specifies GenerateIsReachable
dbates@webkit.org [Thu, 21 Nov 2013 23:19:25 +0000 (23:19 +0000)]
Only generate isObservable() when IDL specifies GenerateIsReachable
https://bugs.webkit.org/show_bug.cgi?id=124729

Reviewed by Geoffrey Garen.

We should only generate the static inline function isObservable() when the IDL
specifies GenerateIsReachable. Otherwise, this function is unused.

Added a new test IDL TestGenerateIsReachable.idl and expected results to test that
we generate isObservable() when an IDL specifies GenerateIsReachable. Additionally,
rebased existing test results.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.cpp: Added.
* bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.h: Added.
* bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.cpp: Added.
* bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.h: Added.
* bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachablePrivate.h: Added.
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp: Removed unused function isObservable().
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp: Ditto.
* bindings/scripts/test/JS/JSTestEventConstructor.cpp: Ditto.
* bindings/scripts/test/JS/JSTestEventTarget.cpp: Ditto.
* bindings/scripts/test/JS/JSTestException.cpp: Ditto.
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp: Added.
* bindings/scripts/test/JS/JSTestGenerateIsReachable.h: Added.
* bindings/scripts/test/JS/JSTestInterface.cpp: Removed unused function isObservable().
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Ditto.
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp: Ditto.
* bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp: Ditto.
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Ditto.
* bindings/scripts/test/JS/JSTestTypedefs.cpp: Ditto.
* bindings/scripts/test/JS/JSattribute.cpp: Ditto.
* bindings/scripts/test/JS/JSreadonly.cpp: Ditto.
* bindings/scripts/test/ObjC/DOMTestGenerateIsReachable.h: Added.
* bindings/scripts/test/ObjC/DOMTestGenerateIsReachable.mm: Added.
* bindings/scripts/test/ObjC/DOMTestGenerateIsReachableInternal.h: Added.
* bindings/scripts/test/TestGenerateIsReachable.idl: Added.

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

8 years agoRename PlatformCertificateInfo to CertificateInfo
ossy@webkit.org [Thu, 21 Nov 2013 22:31:08 +0000 (22:31 +0000)]
Rename PlatformCertificateInfo to CertificateInfo
https://bugs.webkit.org/show_bug.cgi?id=124150

Reviewed by Darin Adler.

* GNUmakefile.list.am:
* NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
(WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:
* NetworkProcess/NetworkResourceLoader.cpp:
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* Shared/API/c/mac/WKCertificateInfoMac.mm:
(WKCertificateInfoCreateWithCertficateChain):
(WKCertificateInfoGetCertificateChain):
* Shared/Authentication/AuthenticationManager.cpp:
(WebKit::AuthenticationManager::tryUseCertificateInfoForChallenge):
(WebKit::AuthenticationManager::useCredentialForChallenge):
* Shared/Authentication/AuthenticationManager.h:
* Shared/Authentication/AuthenticationManager.messages.in:
* Shared/Authentication/mac/AuthenticationManager.mac.mm:
(WebKit::AuthenticationManager::tryUseCertificateInfoForChallenge):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebCertificateInfo.h:
(WebKit::WebCertificateInfo::create):
(WebKit::WebCertificateInfo::certificateInfo):
(WebKit::WebCertificateInfo::WebCertificateInfo):
* Shared/mac/CertificateInfo.h: Renamed from Source/WebKit2/Shared/mac/PlatformCertificateInfo.h.
(WebKit::CertificateInfo::certificateChain):
* Shared/mac/CertificateInfo.mm: Renamed from Source/WebKit2/Shared/mac/PlatformCertificateInfo.mm.
(WebKit::CertificateInfo::CertificateInfo):
(WebKit::CertificateInfo::encode):
(WebKit::CertificateInfo::decode):
(WebKit::CertificateInfo::dump):
* Shared/mac/WebCoreArgumentCodersMac.mm:
(CoreIPC::::encodePlatformData):
(CoreIPC::::decodePlatformData):
* Shared/soup/CertificateInfo.cpp: Renamed from Source/WebKit2/Shared/soup/PlatformCertificateInfo.cpp.
(WebKit::CertificateInfo::CertificateInfo):
(WebKit::CertificateInfo::~CertificateInfo):
(WebKit::CertificateInfo::encode):
(WebKit::CertificateInfo::decode):
* Shared/soup/CertificateInfo.h: Renamed from Source/WebKit2/Shared/soup/PlatformCertificateInfo.h.
(WebKit::CertificateInfo::certificate):
(WebKit::CertificateInfo::tlsErrors):
* Shared/soup/WebCoreArgumentCodersSoup.cpp:
(CoreIPC::::encodePlatformData):
(CoreIPC::::decodePlatformData):
* UIProcess/API/gtk/WebKitCertificateInfo.cpp:
(webkitCertificateInfoGetCertificateInfo):
* UIProcess/API/gtk/WebKitCertificateInfoPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_get_tls_info):
* UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
(WebKit::AuthenticationChallengeProxy::useCredential):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didCommitLoad):
* UIProcess/WebFrameProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didCommitLoadForFrame):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
* WebProcess/Network/WebResourceLoader.h:
* WebProcess/Network/WebResourceLoader.messages.in:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::allowSpecificHTTPSCertificateForHost):

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

8 years ago[EFL][GTK][WK2] Build fix after r159641
ossy@webkit.org [Thu, 21 Nov 2013 22:28:34 +0000 (22:28 +0000)]
[EFL][GTK][WK2] Build fix after r159641
https://bugs.webkit.org/show_bug.cgi?id=124742

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-11-21
Reviewed by Csaba Osztrogonác.

Should fetch activeURL from page load state.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewUpdateURI):
* UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
(WebKit::WebInspectorServer::buildPageList):
* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
(WebKit::WebInspectorServer::buildPageList):

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

8 years agoAdd a new mode to extend the tile cache beyond the page
bdakin@apple.com [Thu, 21 Nov 2013 21:57:53 +0000 (21:57 +0000)]
Add a new mode to extend the tile cache beyond the page
https://bugs.webkit.org/show_bug.cgi?id=124216

Reviewed by Simon Fraser.

This patch makes it possible to give the tile cache a margin of tiles. If there is
a margin of tiles, this patch paints those tiles with the background color. Note
that this patch does not actually give the tile cache a margin at this time.

You opt into a margined tiled cache by called setTileMargins() with number of
pixels that the margin on that side should be.
* platform/graphics/TiledBacking.h:
* platform/graphics/ca/mac/TileController.h:
* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::TileController):
(WebCore::TileController::tilesWouldChangeForVisibleRect):

TileController::bounds() now computes the bounds INCLUDING the margin.
(WebCore::TileController::bounds):

adjustRectAtTileIndexForMargin() is a new function that is required to get the
rect size for tiles in the margin right. rectForTileIndex() assumes all tiles
strive to be the size of m_tileSize, but now margin tiles will be whatever the
margin sizes were set to.
(WebCore::TileController::adjustRectAtTileIndexForMargin):
(WebCore::TileController::rectForTileIndex):

This is another instance where m_tileSize is not always the right size to use.
(WebCore::TileController::getTileIndexRangeForRect):

The tile coverage rect now might include the margin tiles. Only include them in
slow-scrolling mode if the current position is within one tile of the edge.
(WebCore::TileController::computeTileCoverageRect):

tileSizeForCoverageRect() does not make sense in a world where the coverage rect
will include margin. Instead, this patch implements the current strategy more
explicitly by returning the visibleRect in the slow scrolling case, and in the
process this patch also re-names tileSizeForCoverageRect() to computeTileSize()
since it no longer takes a coverageRect.
(WebCore::TileController::computeTileSize):
(WebCore::TileController::revalidateTiles):

New setters and getters for the tile margins on each side.
(WebCore::TileController::setTileMargins):
(WebCore::TileController::hasMargins):
(WebCore::TileController::topMarginHeight):
(WebCore::TileController::bottomMarginHeight):
(WebCore::TileController::leftMarginWidth):
(WebCore::TileController::rightMarginWidth):

New function to add margin onto the composited bounds if there is one.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::tiledBackingHasMargin):
(WebCore::RenderLayerBacking::paintContents):
(WebCore::RenderLayerBacking::compositedBoundsIncludingMargin):
* rendering/RenderLayerBacking.h:

Do not set masks to bounds if there is a margin on the root layer.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBacking):
(WebCore::RenderLayerCompositor::mainFrameBackingIsTiledWithMargin):
* rendering/RenderLayerCompositor.h:

Allow background color to paint into the margin tiles.
* rendering/RenderView.cpp:
(WebCore::RenderView::paintBoxDecorations):

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

8 years agoImplement WebCrypto wrapKey
ap@apple.com [Thu, 21 Nov 2013 21:55:20 +0000 (21:55 +0000)]
Implement WebCrypto wrapKey
https://bugs.webkit.org/show_bug.cgi?id=124738

Reviewed by Anders Carlsson.

Source/WebCore:

Tests: crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html
       crypto/subtle/aes-cbc-wrap-rsa.html

* bindings/js/JSSubtleCryptoCustom.cpp:
(WebCore::exportKey): Factored out the actual operation that can be chained with
encryption for wrapKey.
(WebCore::JSSubtleCrypto::exportKey):
(WebCore::JSSubtleCrypto::wrapKey):
(WebCore::JSSubtleCrypto::unwrapKey): Fixed a memory leak in failure code path.

* crypto/SubtleCrypto.idl: Added wrapKey.

LayoutTests:

* crypto/subtle/aes-cbc-wrap-rsa-expected.txt: Added.
* crypto/subtle/aes-cbc-wrap-rsa-non-extractable-expected.txt: Added.
* crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html: Added.
* crypto/subtle/aes-cbc-wrap-rsa.html: Added.

* crypto/subtle/aes-export-key-expected.txt:
* crypto/subtle/hmac-export-key-expected.txt:
There is no longer a console message, the error is in an exception.

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

8 years agoUnreviewed, preemptive build fix.
fpizlo@apple.com [Thu, 21 Nov 2013 21:11:06 +0000 (21:11 +0000)]
Unreviewed, preemptive build fix.

* runtime/StackAlignment.h:
(JSC::stackAlignmentBytes):
(JSC::stackAlignmentRegisters):

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

8 years agoJSC should know what the stack alignment conventions are
fpizlo@apple.com [Thu, 21 Nov 2013 21:07:59 +0000 (21:07 +0000)]
JSC should know what the stack alignment conventions are
https://bugs.webkit.org/show_bug.cgi?id=124736

Reviewed by Mark Lam.

* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* runtime/StackAlignment.h: Added.
(JSC::stackAlignmentBytes):
(JSC::stackAlignmentRegisters):

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

8 years agoFetch all page loading related URLs from the page load state
andersca@apple.com [Thu, 21 Nov 2013 20:30:35 +0000 (20:30 +0000)]
Fetch all page loading related URLs from the page load state
https://bugs.webkit.org/show_bug.cgi?id=124732

Reviewed by Dan Bernstein.

* UIProcess/API/C/WKPage.cpp:
(WKPageCopyActiveURL):
(WKPageCopyProvisionalURL):
(WKPageCopyCommittedURL):
* UIProcess/API/mac/WKBrowsingContextController.mm:
(-[WKBrowsingContextController unreachableURL]):
* UIProcess/PageLoadState.h:
(WebKit::PageLoadState::provisionalURL):
(WebKit::PageLoadState::url):
(WebKit::PageLoadState::unreachableURL):
* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:

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

8 years agoAdded test for :hover and javascript events on the visual overflow of a region.
stavila@adobe.com [Thu, 21 Nov 2013 20:03:05 +0000 (20:03 +0000)]
Added test for :hover and javascript events on the visual overflow of a region.

[CSS Regions] Content in a region's visible overflow does not trigger :hover state, nor JavaScript events
https://bugs.webkit.org/show_bug.cgi?id=112010

Reviewed by Antti Koivisto.

* fast/regions/hover-and-js-in-visual-overflow-expected.html: Added.
* fast/regions/hover-and-js-in-visual-overflow.html: Added.

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

8 years agoHook up WebProcess-side of getOrEstablishIDBDatabaseMetadata
beidson@apple.com [Thu, 21 Nov 2013 20:00:13 +0000 (20:00 +0000)]
Hook up WebProcess-side of getOrEstablishIDBDatabaseMetadata
https://bugs.webkit.org/show_bug.cgi?id=124698

Reviewed by Anders Carlsson.

With this change the IDB API in WebKit2 using the DatabaseProcess finally does something observable:
window.indexedDB.open() sends an error to Javascript.

* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata): Continue calling back to the
  WebProcess with dummy data, but include the request ID for reference.
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Add a new class that wraps a completion callback function and gives it a unique integer identifier.
It also allows for wrapping an abort callback function (in case a connection is lost, for example).
It is templated to flexibly handle any callback function signature.
* Shared/AsyncRequest.cpp: Added.
(WebKit::generateRequestID):
(WebKit::AsyncRequest::AsyncRequest):
(WebKit::AsyncRequest::~AsyncRequest):
(WebKit::AsyncRequest::setAbortHandler):
(WebKit::AsyncRequest::requestAborted):
(WebKit::AsyncRequest::clearAbortHandler):
* Shared/AsyncRequest.h: Added.
(WebKit::AsyncRequest::requestID):
(WebKit::AsyncRequest::requestCompleted):

* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata): Wrap the completion handler in an
  AsyncRequest and save off the request for later use.
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata): Send the results to the AsyncRequest.
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoMove activeURL getter to PageLoadState
andersca@apple.com [Thu, 21 Nov 2013 19:43:57 +0000 (19:43 +0000)]
Move activeURL getter to PageLoadState
https://bugs.webkit.org/show_bug.cgi?id=124690

Reviewed by Tim Horton.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::activeURL):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::activeURL):

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

8 years agoImplement WebCrypto unwrapKey
ap@apple.com [Thu, 21 Nov 2013 19:05:43 +0000 (19:05 +0000)]
Implement WebCrypto unwrapKey
https://bugs.webkit.org/show_bug.cgi?id=124725

Reviewed by Anders Carlsson.

Source/WebCore:

Tests: crypto/subtle/aes-cbc-unwrap-failure.html
       crypto/subtle/aes-cbc-unwrap-rsa.html

* bindings/js/JSCryptoAlgorithmDictionary.cpp:
* bindings/js/JSCryptoAlgorithmDictionary.h:
Removed calls for wrap/unwrap parameter parsing, these are just the same as encrypt/decrypt.

* bindings/js/JSCryptoOperationData.cpp:
(WebCore::cryptoOperationDataFromJSValue):
* bindings/js/JSCryptoOperationData.h:
* crypto/CryptoKeySerialization.h:
More Vector<char> elimination.

* bindings/js/JSDOMPromise.cpp:
* bindings/js/JSDOMPromise.h:
Removed unneccessary copy constructor and assignment operator, they are no diffdrent
than compiler generated ones.

* bindings/js/JSSubtleCryptoCustom.cpp:
(WebCore::cryptoKeyUsagesFromJSValue): Minor style fixes.
(WebCore::JSSubtleCrypto::encrypt): Ditto.
(WebCore::JSSubtleCrypto::decrypt): Ditto.
(WebCore::JSSubtleCrypto::sign): Ditto.
(WebCore::JSSubtleCrypto::verify): Ditto.
(WebCore::JSSubtleCrypto::generateKey): Ditto.
(WebCore::importKey): Separated actual import operation and the parts that read
arguments from ExecState, and call the promise. Logically, this should be outside
of bindings code even, but JWK makes that quite challenging.
(WebCore::JSSubtleCrypto::importKey): This only does the more mundane arguments
and return parts now.
(WebCore::JSSubtleCrypto::exportKey): Minor style fixes.
(WebCore::JSSubtleCrypto::unwrapKey): Chain decrypt and import.

* crypto/CryptoAlgorithm.cpp:
(WebCore::CryptoAlgorithm::encryptForWrapKey):
(WebCore::CryptoAlgorithm::decryptForUnwrapKey):
* crypto/CryptoAlgorithm.h:
There are algorithms that expose wrap/unwrap, but not encrypt/decrypt. These will
override these new functions, and leave encrypt/decrypt to raise NOT_SUPPORTED_ERR.

* crypto/SubtleCrypto.idl: Added unwrapKey.

LayoutTests:

* crypto/subtle/aes-cbc-unwrap-failure-expected.txt: Added.
* crypto/subtle/aes-cbc-unwrap-failure.html: Added.
* crypto/subtle/aes-cbc-unwrap-rsa-expected.txt: Added.
* crypto/subtle/aes-cbc-unwrap-rsa.html: Added.

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

8 years agoUnreviewed, rolling out r159633.
commit-queue@webkit.org [Thu, 21 Nov 2013 19:02:08 +0000 (19:02 +0000)]
Unreviewed, rolling out r159633.
http://trac.webkit.org/changeset/159633
https://bugs.webkit.org/show_bug.cgi?id=124726

it broke 10 webkitpy tests (Requested by dino_ on #webkit).

* Scripts/webkitpy/style/checker.py:
(check_webkit_style_configuration):
(CheckerDispatcher.dispatch):
(StyleProcessorConfiguration):
(StyleProcessorConfiguration.__init__):
(StyleProcessorConfiguration.write_style_error):

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

8 years ago[MIPS] Build fails since r159545.
commit-queue@webkit.org [Thu, 21 Nov 2013 18:32:11 +0000 (18:32 +0000)]
[MIPS] Build fails since r159545.
https://bugs.webkit.org/show_bug.cgi?id=124716

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-11-21
Reviewed by Michael Saboff.

Add missing implementations in MacroAssembler and LLInt for MIPS.

* assembler/MIPSAssembler.h:
(JSC::MIPSAssembler::sync):
* assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::store8):
(JSC::MacroAssemblerMIPS::memoryFence):
* offlineasm/mips.rb:

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

8 years agoClean up WebKit2 initialization
simon.fraser@apple.com [Thu, 21 Nov 2013 18:21:02 +0000 (18:21 +0000)]
Clean up WebKit2 initialization
https://bugs.webkit.org/show_bug.cgi?id=124696

Reviewed by Sam Weinig.

Call InitializeWebKit2() everywhere we need to do one-time
initialization in WebKit2, rather than having a hotch-potch
of init code.

* Shared/APIObject.cpp:
(API::Object::Object):
* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
* UIProcess/Launcher/mac/ProcessLauncherMac.mm: Removed an unused #include.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::create):

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

8 years agoRemove the stderr_write attribute from StyleProcessorConfiguration.
commit-queue@webkit.org [Thu, 21 Nov 2013 17:44:19 +0000 (17:44 +0000)]
Remove the stderr_write attribute from StyleProcessorConfiguration.
https://bugs.webkit.org/show_bug.cgi?id=124703

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-11-21
Reviewed by Brent Fulgham.

* Scripts/webkitpy/style/checker.py:
(check_webkit_style_configuration):
(CheckerDispatcher.dispatch):
(StyleProcessorConfiguration):
(StyleProcessorConfiguration.__init__):
(StyleProcessorConfiguration.write_style_error):

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

8 years ago[curl]Improve ssl certificate storage and check
commit-queue@webkit.org [Thu, 21 Nov 2013 17:43:06 +0000 (17:43 +0000)]
[curl]Improve ssl certificate storage and check
https://bugs.webkit.org/show_bug.cgi?id=124569

Patch by Robert Sipka <sipka@inf.u-szeged.hu> on 2013-11-21
Reviewed by Brent Fulgham.

Storage and check the whole certificate chain, not just the root certificate.

* platform/network/curl/SSLHandle.cpp:
(WebCore::allowsAnyHTTPSCertificateHosts):
(WebCore::sslIgnoreHTTPSCertificate):
(WebCore::pemData):
(WebCore::certVerifyCallback):

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

8 years agoReverted r159603, as it appears to have caused Safari’s Web processes to crash on...
mitz@apple.com [Thu, 21 Nov 2013 17:41:39 +0000 (17:41 +0000)]
Reverted r159603, as it appears to have caused Safari’s Web processes to crash on launch.

Requested by Sam Weinig.

* Scripts/webkit2/messages.py:
(struct_or_class):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
* Shared/mac/ObjCObjectGraphCoders.h:
* Shared/mac/ObjCObjectGraphCoders.mm:
(WebKit::ObjCObjectGraphEncoder::baseEncode):
(WebKit::WebContextObjCObjectGraphEncoderImpl::WebContextObjCObjectGraphEncoderImpl):
(WebKit::WebContextObjCObjectGraphEncoderImpl::encode):
(WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode):
(WebKit::WebContextObjCObjectGraphEncoder::WebContextObjCObjectGraphEncoder):
(WebKit::WebContextObjCObjectGraphEncoder::encode):
* UIProcess/WebConnectionToWebProcess.cpp:
(WebKit::WebConnectionToWebProcess::encodeMessageBody):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::createNewWebProcess):
(WebKit::WebContext::createWebPage):
(WebKit::WebContext::postMessageToInjectedBundle):
(WebKit::WebContext::didReceiveSyncMessage):
* UIProcess/WebContextUserMessageCoders.h:
(WebKit::WebContextUserMessageEncoder::WebContextUserMessageEncoder):
(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):
* UIProcess/WebPageGroup.cpp:
* UIProcess/WebPageGroup.h:
(WebKit::WebPageGroup::sendToAllProcessesInGroup):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::create):
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::initializeWebPage):
(WebKit::WebPageProxy::loadURL):
(WebKit::WebPageProxy::loadURLRequest):
(WebKit::WebPageProxy::loadFile):
(WebKit::WebPageProxy::loadData):
(WebKit::WebPageProxy::loadHTMLString):
(WebKit::WebPageProxy::loadAlternateHTMLString):
(WebKit::WebPageProxy::loadPlainTextString):
(WebKit::WebPageProxy::loadWebArchiveData):
(WebKit::WebPageProxy::postMessageToInjectedBundle):
(WebKit::WebPageProxy::initializeCreationParameters):
* UIProcess/WebPageProxy.h:
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::disconnect):
(WebKit::WebProcessProxy::createWebPage):
* UIProcess/WebProcessProxy.h:
* WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
(WebKit::InjectedBundleUserMessageEncoder::encode):
(WebKit::InjectedBundleUserMessageDecoder::decode):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::webPageGroup):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:

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

8 years ago[WinCairo] Building ANGLE libraries fails.
commit-queue@webkit.org [Thu, 21 Nov 2013 17:36:32 +0000 (17:36 +0000)]
[WinCairo] Building ANGLE libraries fails.
https://bugs.webkit.org/show_bug.cgi?id=124679

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-11-21
Reviewed by Brent Fulgham.

Source/ThirdParty/ANGLE:

Added/removed files to/from project, and re-added constants.h file.

* ANGLE.vcxproj/libEGL.vcxproj:
* ANGLE.vcxproj/libEGL.vcxproj.filters:
* ANGLE.vcxproj/libGLESv2.vcxproj:
* ANGLE.vcxproj/libGLESv2.vcxproj.filters:
* ANGLE.vcxproj/libGLESv2Common.props:
* ANGLE.vcxproj/translator_common.vcxproj:
* ANGLE.vcxproj/translator_common.vcxproj.filters:
* ANGLE.vcxproj/translator_glsl.vcxproj:
* ANGLE.vcxproj/translator_glsl.vcxproj.filters:
* ANGLE.vcxproj/translator_hlsl.vcxproj:
* ANGLE.vcxproj/translator_hlsl.vcxproj.filters:
* src/libGLESv2/libGLESv2.def:

Source/WebKit:

* WebKit.vcxproj/WebKit/WebKitCFLite.props: Link with translator_hlsl.lib.

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

8 years agoFix sh4 build after r159545.
commit-queue@webkit.org [Thu, 21 Nov 2013 17:11:35 +0000 (17:11 +0000)]
Fix sh4 build after r159545.
https://bugs.webkit.org/show_bug.cgi?id=124713

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-21
Reviewed by Michael Saboff.

Add missing implementations in macro assembler and LLINT for sh4.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::load8):
(JSC::MacroAssemblerSH4::store8):
(JSC::MacroAssemblerSH4::memoryFence):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::synco):
* offlineasm/sh4.rb: Handle "memfence" opcode.

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

8 years agoAdded test for the overflow of a region being painted across multiple tiles.
stavila@adobe.com [Thu, 21 Nov 2013 16:50:50 +0000 (16:50 +0000)]
Added test for the overflow of a region being painted across multiple tiles.
Added test for correct repainting of a region's overflow.

[CSS Regions] Overflow areas from regions do not redraw
https://bugs.webkit.org/show_bug.cgi?id=117329

Reviewed by Antti Koivisto.

* fast/regions/regions-overflow-tile-expected.html: Added.
* fast/regions/regions-overflow-tile.html: Added.
* fast/repaint/repaint-regions-overflow-expected.txt: Added.
* fast/repaint/repaint-regions-overflow.html: Added.

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

8 years ago[CSS Regions] Float get sliced if its container has forced break and is less tall...
stavila@adobe.com [Thu, 21 Nov 2013 15:43:37 +0000 (15:43 +0000)]
[CSS Regions] Float get sliced if its container has forced break and is less tall than float
https://bugs.webkit.org/show_bug.cgi?id=124205

Added test for the case when a float is overflowing a region due to a forced break.

Reviewed by Antti Koivisto.

* fast/regions/float-slicing-on-forced-break-expected.html: Added.
* fast/regions/float-slicing-on-forced-break.html: Added.

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

8 years agoFix hover area for divs with css transforms
commit-queue@webkit.org [Thu, 21 Nov 2013 15:17:08 +0000 (15:17 +0000)]
Fix hover area for divs with css transforms
https://bugs.webkit.org/show_bug.cgi?id=124647

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-11-21
Reviewed by Allan Sandfeld Jensen.

Source/WebCore:

Non transformed layers are now being hit last, not through or in-between transformed layers.
The paint order says that the divs creating stacking contexts (including transforms) are painted after the
other siblings so they should be hit tested in the reverse order. Also, a rotated div in a non-rotated parent
should be hit in its entire area, not hit its parent's background, even if the z-coordinate is negative where
the mouse is located.

Test: transforms/3d/hit-testing/hover-rotated-negative-z.html

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

LayoutTests:

* transforms/3d/hit-testing/hover-rotated-negative-z.html: Added.
* transforms/3d/hit-testing/hover-rotated-negative-z-expected.txt: Added.

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

8 years agoCreated test for positioned fragmented content which overflows the regions.
stavila@adobe.com [Thu, 21 Nov 2013 14:58:20 +0000 (14:58 +0000)]
Created test for positioned fragmented content which overflows the regions.

[CSS Regions] Fragmented content that is relatively positioned get sliced (and overflows in the next region)
https://bugs.webkit.org/show_bug.cgi?id=117122

Reviewed by Antti Koivisto.

* fast/regions/positioned-fragmented-content-expected.html: Added.
* fast/regions/positioned-fragmented-content.html: Added.

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

8 years agoAdded test for visual overflow with transformed content in regions.
stavila@adobe.com [Thu, 21 Nov 2013 14:57:14 +0000 (14:57 +0000)]
Added test for visual overflow with transformed content in regions.

[CSS Regions] Transform applied to content node causes overflow to be hidden
https://bugs.webkit.org/show_bug.cgi?id=116242

Reviewed by Antti Koivisto.

* fast/regions/region-visual-overflow-transform-expected.html: Added.
* fast/regions/region-visual-overflow-transform.html: Added.

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

8 years ago[GTK] Release compilation fails when defining "LOG_DISABLED=0"
commit-queue@webkit.org [Thu, 21 Nov 2013 14:53:19 +0000 (14:53 +0000)]
[GTK] Release compilation fails when defining "LOG_DISABLED=0"
https://bugs.webkit.org/show_bug.cgi?id=124661

Patch by Andres Gomez <agomez@igalia.com> on 2013-11-21
Reviewed by Mario Sanchez Prada.

In a "Debug" build the CString.h header comes from another
indirect dependency. Now, we explicitly add this missing include.

* html/HTMLTrackElement.cpp: Explicitly adding missing include.

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

8 years ago[EFL] Fix accessibility media-element expectation
commit-queue@webkit.org [Thu, 21 Nov 2013 14:52:39 +0000 (14:52 +0000)]
[EFL] Fix accessibility media-element expectation
https://bugs.webkit.org/show_bug.cgi?id=124711

Unreviewed EFL gardening.

Changing main element AXRole AXUnknown -> AXEmbedded.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2013-11-21

* platform/efl/accessibility/media-element-expected.txt:

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

8 years agoUnreviewed EFL gardening.
m.pakula@samsung.com [Thu, 21 Nov 2013 14:25:57 +0000 (14:25 +0000)]
Unreviewed EFL gardening.

Update baselines after r159575.

* platform/efl/fast/block/float/024-expected.txt:
* platform/efl/fast/block/margin-collapse/025-expected.txt:
* platform/efl/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
* platform/efl/fast/block/margin-collapse/empty-clear-blocks-expected.txt:

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

8 years agoFix Range.insertNode when the inserted node is in the same container as the Range
rniwa@webkit.org [Thu, 21 Nov 2013 13:52:09 +0000 (13:52 +0000)]
Fix Range.insertNode when the inserted node is in the same container as the Range
https://bugs.webkit.org/show_bug.cgi?id=123957

Reviewed by Antti Koivisto.

Source/WebCore:

Inspired by https://chromium.googlesource.com/chromium/blink/+/fb6ca1f488703e8d4f20ce6449cc8ea210be6edb

When a node from the same container is inserted, we can't simply adjust m_end with the offset.
Compute m_start and m_end from the inserted nodes instead.

Also, don't adjust m_start and m_end to nodes outside of the document if the inserted nodes had been
removed by mutation events.

Test: fast/dom/Range/range-insertNode-same-container.html

* dom/Range.cpp:
(WebCore::Range::insertNode):

LayoutTests:

Merge https://chromium.googlesource.com/chromium/blink/+/fb6ca1f488703e8d4f20ce6449cc8ea210be6edb

Used better labels between divs, and added more evalAndLog and shouldBe so that
the expected result is self-explanatory.

* fast/dom/Range/range-insertNode-same-container-expected.txt: Added.
* fast/dom/Range/range-insertNode-same-container.html: Added.

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

8 years agonextBoundary and previousBoundary are very slow when there is a password field
rniwa@webkit.org [Thu, 21 Nov 2013 13:46:39 +0000 (13:46 +0000)]
nextBoundary and previousBoundary are very slow when there is a password field
https://bugs.webkit.org/show_bug.cgi?id=123973

Reviewed by Antti Koivisto.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/57366eec5e3edea54062d4e74c0e047f8681dbad

When iterating through DOM nodes nextBoundary and previousBoundary convert the contents of nodes using
text security to a sequence of 'x' characters. The SimplifiedBackwardsTextIterator and TextIterator
may iterate past node boundaries. Before this patch, the transformation was done looking at the starting
node rather than the current node. In some situations, this replaced all boundaries with 'x' and caused
the text iterator to continue iterating and transforming until the extent of the document.

Test: editing/deleting/password-delete-performance.html

* editing/TextIterator.h:
(WebCore::SimplifiedBackwardsTextIterator::node):
* editing/VisibleUnits.cpp:
(WebCore::previousBoundary):
(WebCore::nextBoundary):

LayoutTests:

* editing/deleting/password-delete-performance-expected.txt: Added.
* editing/deleting/password-delete-performance.html: Added.

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

8 years agoHTML parser should not associate elements inside templates with forms
rniwa@webkit.org [Thu, 21 Nov 2013 13:43:34 +0000 (13:43 +0000)]
HTML parser should not associate elements inside templates with forms
https://bugs.webkit.org/show_bug.cgi?id=117779

Reviewed by Antti Koivisto.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/45aadf7ee7ee010327eb692066cf013315ef3ed7

When parsing <form><template><input>, the previous behavior was to associate the <input> with the <form>,
even though they're not in the same tree (or even the same document).

This patch changes that by checking, prior to creating a form control element, whether the element to be
created lives in a document with a browsing context.

We don't update m_form as needed to faithfully match the HTML5 specification's form element pointer
http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#form-element-pointer
and its algorithm for creating and inserting nodes:
http://www.whatwg.org/specs/web-apps/current-work/multipage/tree-construction.html#creating-and-inserting-nodes

While this leaves isindex's reference to form element pointer stale:
http://www.whatwg.org/specs/web-apps/current-work/multipage/tree-construction.html#isindex
The HTML5 specification matches the behaviors of Chrome and Firefox so we leave it as is.

Test: fast/dom/HTMLTemplateElement/no-form-association.html

* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::createHTMLElement):

LayoutTests:

* fast/dom/HTMLTemplateElement/no-form-association-expected.txt: Added.
* fast/dom/HTMLTemplateElement/no-form-association.html: Added.

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

8 years agoPerfTestRunner._generate_results_dict shouldn't depend on test objects
rniwa@webkit.org [Thu, 21 Nov 2013 13:22:44 +0000 (13:22 +0000)]
PerfTestRunner._generate_results_dict shouldn't depend on test objects
https://bugs.webkit.org/show_bug.cgi?id=124623

Removed the dependency on test objects from results JSON generation.
This allows single test.run to return metrics for multiple tests

Reviewed by Antti Koivisto.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTestMetric.__init__): Takes the test path and test name.
(PerfTestMetric.path): Added.
(PerfTestMetric.test_file_name): Added.
(PerfTest.run): Accumulate PerfTestMetric objects instead of raw values.
(PerfTest._ensure_metrics): Instantiate PerfTestMetric with the test path and test name.
The path is going to have the names of subtests at the end once we support them.

* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTestMetric.test_init_set_missing_unit): Specify the test path and test name.
(TestPerfTestMetric.test_init_set_time_metric): Ditto.
(TestPerfTestMetric.test_has_values): Ditto.
(TestPerfTestMetric.test_append): Ditto.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(_generate_results_dict): Only use metrics.
(_run_tests_set): Accumulate metrics as supposed to (test, metrics) pairs.

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

8 years agoREGRESSION(r159599): webkitdirs.pm spits out warnings at lines 851 and 852
rego@igalia.com [Thu, 21 Nov 2013 12:26:06 +0000 (12:26 +0000)]
REGRESSION(r159599): webkitdirs.pm spits out warnings at lines 851 and 852
https://bugs.webkit.org/show_bug.cgi?id=124697

Reviewed by Ryosuke Niwa.

* Scripts/webkitdirs.pm:
(checkForArgumentAndRemoveFromARGVGettingValue): Fix check of array size
before trying to access to the first element.

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

8 years ago[GTK] Cannot scroll in option menu when it larger than the screen
carlosgc@webkit.org [Thu, 21 Nov 2013 08:52:32 +0000 (08:52 +0000)]
[GTK] Cannot scroll in option menu when it larger than the screen
https://bugs.webkit.org/show_bug.cgi?id=124671

Reviewed by Martin Robinson.

The problem is that the popup menu is not resized to fit in the
screen, so it doesn't scroll and some of the items are offscreen
so they can't be selected either. GTK+ automatically resizes the
popup menus to fit in the work area, but only when the menu is
already positioned.

* platform/gtk/GtkPopupMenu.cpp:
(WebCore::GtkPopupMenu::popUp): Schedule a resize of the popup
menu right after showing it once it has a position.

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

8 years ago[GTK] Mark all deprecated symbols in GObject DOM bindings
carlosgc@webkit.org [Thu, 21 Nov 2013 08:38:35 +0000 (08:38 +0000)]
[GTK] Mark all deprecated symbols in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=124406

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Move deprecated API from WebKitDOMCustom to a new file
WebKitDOMDeprecated leaving in WebKitDOMCustom only the
non-deprecated API that is not autogenerated. Also added the
deprecation decorations and tags in the documentation.

* bindings/gobject/GNUmakefile.am:
* bindings/gobject/WebKitDOMCustom.cpp:
* bindings/gobject/WebKitDOMCustom.h:
* bindings/gobject/WebKitDOMCustom.symbols:
* bindings/gobject/WebKitDOMDeprecated.cpp: Copied from Source/WebCore/bindings/gobject/WebKitDOMCustom.cpp.
(webkit_dom_blob_webkit_slice):
(webkit_dom_html_element_get_id):
(webkit_dom_html_element_set_id):
(webkit_dom_html_element_get_class_name):
(webkit_dom_html_element_set_class_name):
(webkit_dom_html_element_get_class_list):
(webkit_dom_html_form_element_dispatch_form_change):
(webkit_dom_html_form_element_dispatch_form_input):
(webkit_dom_webkit_named_flow_get_overflow):
(webkit_dom_element_get_webkit_region_overflow):
(webkit_dom_webkit_named_flow_get_content_nodes):
(webkit_dom_webkit_named_flow_get_regions_by_content_node):
(webkit_dom_bar_info_get_property):
(webkit_dom_bar_info_class_init):
(webkit_dom_bar_info_init):
(webkit_dom_bar_info_get_visible):
(webkit_dom_console_get_memory):
(webkit_dom_css_style_declaration_get_property_css_value):
(webkit_dom_document_get_webkit_hidden):
(webkit_dom_document_get_webkit_visibility_state):
(webkit_dom_html_document_open):
(webkit_dom_html_element_set_item_id):
(webkit_dom_html_element_get_item_id):
(webkit_dom_html_element_get_item_ref):
(webkit_dom_html_element_get_item_prop):
(webkit_dom_html_element_set_item_scope):
(webkit_dom_html_element_get_item_scope):
(webkit_dom_html_element_get_item_type):
(webkit_dom_html_style_element_set_scoped):
(webkit_dom_html_style_element_get_scoped):
(webkit_dom_html_properties_collection_get_property):
(webkit_dom_html_properties_collection_class_init):
(webkit_dom_html_properties_collection_init):
(webkit_dom_html_properties_collection_item):
(webkit_dom_html_properties_collection_named_item):
(webkit_dom_html_properties_collection_get_length):
(webkit_dom_html_properties_collection_get_names):
(webkit_dom_node_get_attributes):
(webkit_dom_node_has_attributes):
(webkit_dom_memory_info_get_property):
(webkit_dom_memory_info_class_init):
(webkit_dom_memory_info_init):
(webkit_dom_memory_info_get_total_js_heap_size):
(webkit_dom_memory_info_get_used_js_heap_size):
(webkit_dom_memory_info_get_js_heap_size_limit):
(webkit_dom_micro_data_item_value_class_init):
(webkit_dom_micro_data_item_value_init):
(webkit_dom_performance_get_memory):
(webkit_dom_property_node_list_get_property):
(webkit_dom_property_node_list_class_init):
(webkit_dom_property_node_list_init):
(webkit_dom_property_node_list_item):
(webkit_dom_property_node_list_get_length):
(webkit_dom_html_media_element_get_start_time):
(webkit_dom_html_media_element_get_initial_time):
(webkit_dom_html_head_element_get_profile):
(webkit_dom_html_head_element_set_profile):
(webkit_dom_processing_instruction_get_data):
(webkit_dom_processing_instruction_set_data):
* bindings/gobject/WebKitDOMDeprecated.h: Copied from Source/WebCore/bindings/gobject/WebKitDOMCustom.h.
* bindings/gobject/WebKitDOMDeprecated.symbols: Copied from Source/WebCore/bindings/gobject/WebKitDOMCustom.symbols.
* bindings/scripts/CodeGeneratorGObject.pm:
(GenerateFunction): Do not include deprecation guards in the cpp file.
* bindings/scripts/gobject-generate-headers.pl: Do not create
fordward declarations for non-existent classes like Custom and
Deprecated.
* bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
(webkit_dom_test_event_target_dispatch_event):

Tools:

* Scripts/webkitpy/style/checker.py: Add special case for
WebKitDOMDeprecated.
* gtk/generate-gtkdoc:
(get_webkit2_options): Use the prefix of the methods as namespace,
since this is what gtkdoc expects to sort the index.
(get_webkit1_options): Ditto.
(get_webkitdom_options): Ditto.
* gtk/generate-webkitdom-doc-files:
(WebKitDOMDocGenerator): Add a global list of deleted objects.
(WebKitDOMDocGenerator.write_deleted_classes): New method to write
the documentation for classes that are deprecated because they
have been removed.
(WebKitDOMDocGeneratorDocs.write_deleted_classes): Add sections
for deleted classes too.
(WebKitDOMDocGeneratorSections.__init__): Build a list of
deprecated symbols using the given symbols file.
(WebKitDOMDocGeneratorSections._deleted_class): Returns the
deleted class corresponding to the given function.
(WebKitDOMDocGeneratorSections._deprecated_symbols): Builds a
dictionary of deprecated symbols for every class.
(WebKitDOMDocGeneratorSections.write_section): Add also the
deprecated symbols in every section.
(WebKitDOMDocGeneratorSections.write_deleted_classes): Add
sections for deleted classes too.

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

8 years ago[CoordinatedGraphics] Use std::unique_ptrs rather than OwnPtrs
jae.park@company100.net [Thu, 21 Nov 2013 07:52:15 +0000 (07:52 +0000)]
[CoordinatedGraphics] Use std::unique_ptrs rather than OwnPtrs
https://bugs.webkit.org/show_bug.cgi?id=124692

Reviewed by Noam Rosenthal.

No new tests, covered by existing ones.

* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::TiledBackingStore):
* platform/graphics/TiledBackingStore.h:
* platform/graphics/TiledBackingStoreBackend.h:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::createBackingStore):
* platform/graphics/texmap/coordinated/CoordinatedTile.h:

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

8 years agocheck-webkit-style should support C++11 rvalue references.
commit-queue@webkit.org [Thu, 21 Nov 2013 07:46:13 +0000 (07:46 +0000)]
check-webkit-style should support C++11 rvalue references.
https://bugs.webkit.org/show_bug.cgi?id=123406

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-11-20
Reviewed by Brent Fulgham.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_style):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(Cpp11StyleTest):
(Cpp11StyleTest.test_rvaule_reference_at_end_of_line):

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

8 years agoAdd more infrastructure for ServerConnection communication between Web and Database...
beidson@apple.com [Thu, 21 Nov 2013 07:04:12 +0000 (07:04 +0000)]
Add more infrastructure for ServerConnection communication between Web and Database processes
https://bugs.webkit.org/show_bug.cgi?id=124693

Reviewed by Anders Carlsson.

Source/WebCore:

* WebCore.exp.in:

Source/WebKit2:

* DatabaseProcess/DatabaseToWebProcessConnection.cpp:
(WebKit::DatabaseToWebProcessConnection::establishIDBConnection):
(WebKit::DatabaseToWebProcessConnection::removeDatabaseProcessIDBConnection): Added for WebProcess to be able
  to invalidate the DatabaseProcess side of a server connection.
* DatabaseProcess/DatabaseToWebProcessConnection.h:
* DatabaseProcess/DatabaseToWebProcessConnection.messages.in:

* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::DatabaseProcessIDBConnection):
(WebKit::DatabaseProcessIDBConnection::disconnectedFromWebProcess): Added for future cleanup.
(WebKit::DatabaseProcessIDBConnection::establishConnection):
(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata): Callback to the WebProcess, even if
  it is just dummy data for now.
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
(WebKit::DatabaseProcessIDBConnection::create):

* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::create): Register the new object with the WebToDatabaseProcessConnection.
(WebKit::WebIDBServerConnection::~WebIDBServerConnection): Remove from the WebToDatabaseProcessConnection.
(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata): Callback from the DatabaseProcess,
  a no-op for now.
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in: Copied from Source/WebKit2/DatabaseProcess/DatabaseToWebProcessConnection.messages.in.

* WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
(WebKit::WebToDatabaseProcessConnection::didReceiveMessage):
(WebKit::WebToDatabaseProcessConnection::didClose):
(WebKit::WebToDatabaseProcessConnection::registerWebIDBServerConnection): Hold a collection of all
  server connections for messaging.
(WebKit::WebToDatabaseProcessConnection::removeWebIDBServerConnection): Remove a connection from the collection,
  and also message the DatabaseProcess that it’s gone away.
* WebProcess/Databases/WebToDatabaseProcessConnection.h:

Project files, etc etc:
* DerivedSources.make:
* Scripts/webkit2/messages.py:
(struct_or_class):
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoHoist <template> to head when found between </head> and <body> for consistency with...
rniwa@webkit.org [Thu, 21 Nov 2013 07:00:09 +0000 (07:00 +0000)]
Hoist <template> to head when found between </head> and <body> for consistency with <script>
https://bugs.webkit.org/show_bug.cgi?id=123949

Reviewed by Antti Koivisto.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/835fb468fd211054a920fb7612a6dc5043662495

Move template elements between head and body elements into the head to be consistent with script elements.
The HTML5 specification was changed in http://html5.org/tools/web-apps-tracker?from=8217&to=8218.

Inline comments below are cited from https://www.w3.org/Bugs/Public/show_bug.cgi?id=23002
and https://codereview.chromium.org/25900003 for clarity.

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processStartTag): Add the template element to the list of elements to be hoisted into
the head element.
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):

Replace the assertion that isParsingFragment is true when item->node() == m_tree.openElements()->rootNode() since,
with this change, we can now invoke resetInsertionMode when parsing a normal document (not fragment) and there is
only the html element on the stack of open elements.

For the second change, consider: <head></head><template>

This example breaks in the old HTML parser because the template element is handled by "after head" state which
pushes the head element back on, processes the template element for "in head", then pops the head element off.
EOF is reached, which processes a fake close tag for the template element, which pops the template element off
and resets the insertion mode appropriately

The problem here is that "reset the insertion mode" is going to inspect the bottom-most element on the stack which
is now the html element and it will set the mode to "before head". Nothing good happens after this.

We fix this problem by having the reset algorithm check if the head element pointer is set, and if so, go to after
head instead of before head.

LayoutTests:

Merge https://chromium.googlesource.com/chromium/blink/+/835fb468fd211054a920fb7612a6dc5043662495
and added two more test cases discussed in https://www.w3.org/Bugs/Public/show_bug.cgi?id=23002.

* html5lib/resources/template.dat:

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

8 years ago[CSS Regions] Implement visual overflow for first & last regions
stavila@adobe.com [Thu, 21 Nov 2013 06:57:19 +0000 (06:57 +0000)]
[CSS Regions] Implement visual overflow for first & last regions
https://bugs.webkit.org/show_bug.cgi?id=118665

Source/WebCore:

In order to properly propagate the visual overflow of elements flowed inside regions,
the responsiblity of painting and hit-testing content inside flow threads has been
moved to the flow thread layer's level.
Each region keeps the associated overflow with each box in the RenderBoxRegionInfo
structure, including one for the flow thread itself. This data is used during
painting and hit-testing.

Reviewed by David Hyatt.

Tests: fast/regions/overflow-first-and-last-regions-in-container-hidden.html
       fast/regions/overflow-first-and-last-regions.html
       fast/regions/overflow-nested-regions.html
       fast/regions/overflow-region-float.html
       fast/regions/overflow-region-inline.html
       fast/regions/overflow-region-transform.html

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::setLayoutOverflow):
(WebCore::InlineFlowBox::setVisualOverflow):
* rendering/InlineFlowBox.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addOverflowFromChildren):
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::estimateRegionRangeForBoxChild):
(WebCore::RenderBlock::updateRegionRangeForBoxChild):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::hasNextPage):
(WebCore::RenderBlockFlow::relayoutForPagination):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::positionNewFloatOnLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::borderBoxRectInRegion):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::addLayoutOverflow):
(WebCore::RenderBox::addVisualOverflow):
(WebCore::RenderBox::isUnsplittableForPagination):
(WebCore::RenderBox::overflowRectForPaintRejection):
* rendering/RenderBox.h:
(WebCore::RenderBox::canHaveOutsideRegionRange):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
* rendering/RenderBoxModelObject.h:
* rendering/RenderBoxRegionInfo.h:
(WebCore::RenderBoxRegionInfo::createOverflow):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::objectShouldPaintInFlowRegion):
(WebCore::RenderFlowThread::mapFromLocalToFlowThread):
(WebCore::RenderFlowThread::mapFromFlowThreadToLocal):
(WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):
(WebCore::RenderFlowThread::flipForWritingModeLocalCoordinates):
(WebCore::RenderFlowThread::addRegionsOverflowFromChild):
(WebCore::RenderFlowThread::addRegionsVisualOverflow):
(WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):
* rendering/RenderFlowThread.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForRegionAndReflection):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintForegroundForFragments):
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::parentClipRects):
(WebCore::RenderLayer::calculateRects):
(WebCore::RenderLayer::intersectsDamageRect):
(WebCore::RenderLayer::updateDescendantsLayerListsIfNeeded):
(WebCore::RenderLayer::repaintIncludingDescendants):
(WebCore::RenderLayer::paintNamedFlowThreadInsideRegion):
(WebCore::RenderLayer::paintFlowThreadIfRegion):
(WebCore::RenderLayer::hitTestFlowThreadIfRegion):
* rendering/RenderLayer.h:
(WebCore::ClipRect::inflateX):
(WebCore::ClipRect::inflateY):
(WebCore::ClipRect::inflate):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::addOverflowFromChildren):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
(WebCore::RenderMultiColumnSet::repaintFlowThreadContent):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::createStyle):
(WebCore::RenderNamedFlowFragment::namedFlowThread):
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderOverflow.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::flowThreadPortionOverflowRect):
(WebCore::RenderRegion::flowThreadPortionLocation):
(WebCore::RenderRegion::regionContainerLayer):
(WebCore::RenderRegion::overflowRectForFlowThreadPortion):
(WebCore::RenderRegion::computeOverflowFromFlowThread):
(WebCore::RenderRegion::repaintFlowThreadContent):
(WebCore::RenderRegion::repaintFlowThreadContentRectangle):
(WebCore::RenderRegion::insertedIntoTree):
(WebCore::RenderRegion::ensureOverflowForBox):
(WebCore::RenderRegion::rectFlowPortionForBox):
(WebCore::RenderRegion::addLayoutOverflowForBox):
(WebCore::RenderRegion::addVisualOverflowForBox):
(WebCore::RenderRegion::layoutOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBox):
(WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):
* rendering/RenderRegion.h:
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::shouldPaint):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::paint):

LayoutTests:

Rebased some tests due to regions layers changes.
Updated some tests to increase clarity. Some of them were only passing because two
regions were close together and the fact that an element was being painted
inside the wrong region was not visible. Floats are now also unsplittable.
        - bottom-overflow-out-of-first-region
        - float-pushed-width-change-2
        - float-pushed-width-change
        - webkit-flow-float-unable-to-push

Changed top-overflow-out-of-second-region to reftest.

Added new tests for testing the visual overflow in different situations
(transformed, inline, opacity, floating).

Reviewed by David Hyatt.

* fast/regions/bottom-overflow-out-of-first-region-expected.html:
* fast/regions/bottom-overflow-out-of-first-region.html:
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005-expected.html:
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005.html:
* fast/regions/element-in-named-flow-absolute-from-fixed-expected.txt:
* fast/regions/element-in-named-flow-fixed-from-absolute-expected.txt:
* fast/regions/element-inflow-fixed-from-outflow-static-expected.txt:
* fast/regions/element-outflow-static-from-inflow-fixed-expected.txt:
* fast/regions/float-pushed-width-change-2-expected.html:
* fast/regions/float-pushed-width-change-2.html:
* fast/regions/float-pushed-width-change-expected.html:
* fast/regions/float-pushed-width-change.html:
* fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Added.
* fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Added.
* fast/regions/layers/regions-promoted-to-layers-expected.txt: Added.
* fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Added.
* fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Added.
* fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Added.
* fast/regions/outline-sides-in-region-expected.html:
* fast/regions/outline-sides-in-region.html:
* fast/regions/overflow-first-and-last-regions-expected.html: Added.
* fast/regions/overflow-first-and-last-regions-in-container-hidden-expected.html: Added.
* fast/regions/overflow-first-and-last-regions-in-container-hidden.html: Added.
* fast/regions/overflow-first-and-last-regions.html: Added.
* fast/regions/overflow-last-region-expected.html: Removed.
* fast/regions/overflow-last-region.html: Removed.
* fast/regions/overflow-nested-regions-expected.html: Added.
* fast/regions/overflow-nested-regions.html: Added.
* fast/regions/overflow-region-float-expected.html: Added.
* fast/regions/overflow-region-float.html: Added.
* fast/regions/overflow-region-inline-expected.html: Added.
* fast/regions/overflow-region-inline.html: Added.
* fast/regions/overflow-region-transform-expected.html: Added.
* fast/regions/overflow-region-transform.html: Added.
* fast/regions/overflow-scrollable-rotated-fragment-expected.html:
* fast/regions/overflow-scrollable-rotated-fragment.html:
* fast/regions/top-overflow-out-of-second-region-expected.html: Copied from LayoutTests/fast/regions/top-overflow-out-of-second-region.html.
* fast/regions/top-overflow-out-of-second-region.html:
* fast/regions/webkit-flow-float-unable-to-push-expected.html:
* fast/regions/webkit-flow-float-unable-to-push.html:
* platform/gtk/fast/regions/text-region-split-vertical-rl-expected.txt: Removed.
* platform/gtk/TestExpectations: Add new test expectations for failing tests.
* platform/efl/TestExpectations: Add new test expectations for failing tests.
* platform/mac-wk2/TestExpectations:
* platform/mac/fast/regions/top-overflow-out-of-second-region-expected.png: Removed.
* platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.

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

8 years agoTest a template element appearing after a closing body tag in html5lib
rniwa@webkit.org [Thu, 21 Nov 2013 06:22:33 +0000 (06:22 +0000)]
Test a template element appearing after a closing body tag in html5lib
https://bugs.webkit.org/show_bug.cgi?id=123864

Reviewed by Antti Koivisto.

Merge https://chromium.googlesource.com/chromium/blink/+/019d5daa14314972ac6b3e42e9446823ad9cffd2

* html5lib/resources/template.dat:

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

8 years ago[HTML parser] reset insertion mode appropriate must check for "in select in table...
rniwa@webkit.org [Thu, 21 Nov 2013 06:10:31 +0000 (06:10 +0000)]
[HTML parser] reset insertion mode appropriate must check for "in select in table" mode
https://bugs.webkit.org/show_bug.cgi?id=123850

Reviewed by Antti Koivisto.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/2cb7523df57dfb48111f6aa16b7138cd54024ba7

The HTML specification has been updated to detect encountering a template element inside of a select element,
which in turn is inside of a table element. In this case, the select element will cause the parser to be in
"InSelectInTable" mode. Thus when the template element closes, it should return to that mode.

The fix here is that resetInsertionModeAppropriately must continue looking up the stack if the first node is
select element to see whether the select element is inside of a table element.

See also: http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#reset-the-insertion-mode-appropriately

Test: html5lib/resources/template.dat

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):

LayoutTests:

* html5lib/resources/template.dat:

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

8 years agoBuild fix for last commit.
mark.lam@apple.com [Thu, 21 Nov 2013 05:46:22 +0000 (05:46 +0000)]
Build fix for last commit.
https://bugs.webkit.org/show_bug.cgi?id=124634.

Not reviewed.

No new tests.

* bindings/js/JSCryptoAlgorithmBuilder.cpp:

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

8 years agoIntroducing VMEntryScope to update the VM stack limit.
mark.lam@apple.com [Thu, 21 Nov 2013 05:29:42 +0000 (05:29 +0000)]
Introducing VMEntryScope to update the VM stack limit.
https://bugs.webkit.org/show_bug.cgi?id=124634.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

1. Introduced USE(SEPARATE_C_AND_JS_STACK) (defined in Platform.h).
   Currently, it is hardcoded to use separate C and JS stacks. Once we
   switch to using the C stack for JS frames, we'll need to fix this to
   only be enabled when ENABLE(LLINT_C_LOOP).

2. Stack limits are now tracked in the VM.

   Logically, there are 2 stack limits:
   a. m_stackLimit for the native C stack, and
   b. m_jsStackLimit for the JS stack.

   If USE(SEPARATE_C_AND_JS_STACK), then the 2 limits are the same
   value, and are implemented as 2 fields in a union.

3. The VM native stackLimit is set as follows:
   a. Initially, the VM sets it to the limit of the stack of the thread that
      instantiated the VM. This allows the parser and bytecode generator to
      run before we enter the VM to execute JS code.

   b. Upon entry into the VM to execute JS code (via one of the
      Interpreter::execute...() functions), we instantiate a VMEntryScope
      that sets the VM's stackLimit to the limit of the current thread's
      stack. The VMEntryScope will automatically restore the previous
      entryScope and stack limit upon destruction.

   If USE(SEPARATE_C_AND_JS_STACK), the JSStack's methods will set the VM's
   jsStackLimit whenever it grows or shrinks.

4. The VM now provides a isSafeToRecurse() function that compares the
   current stack pointer against its native stackLimit. This subsumes and
   obsoletes the VMStackBounds class.

5. The VMEntryScope class also subsumes DynamicGlobalObjectScope for
   tracking the JSGlobalObject that we last entered the VM with.

6. Renamed dynamicGlobalObject() to vmEntryGlobalObject() since that is
   the value that the function retrieves.

7. Changed JIT and LLINT code to do stack checks against the jsStackLimit
   in the VM class instead of the JSStack.

* API/JSBase.cpp:
(JSEvaluateScript):
(JSCheckScriptSyntax):
* API/JSContextRef.cpp:
(JSGlobalContextRetain):
(JSGlobalContextRelease):
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
* debugger/Debugger.cpp:
(JSC::Debugger::detach):
(JSC::Debugger::recompileAllJSFunctions):
(JSC::Debugger::pauseIfNeeded):
* debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::vmEntryGlobalObject):
* debugger/DebuggerCallFrame.h:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileFunction):
* dfg/DFGOSREntry.cpp:
* ftl/FTLLink.cpp:
(JSC::FTL::link):
* ftl/FTLOSREntry.cpp:
* heap/Heap.cpp:
(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::deleteAllCompiledCode):
* interpreter/CachedCall.h:
(JSC::CachedCall::CachedCall):
* interpreter/CallFrame.cpp:
(JSC::CallFrame::vmEntryGlobalObject):
* interpreter/CallFrame.h:
* interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
(JSC::Interpreter::unwind):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall):
(JSC::Interpreter::debug):
* interpreter/JSStack.cpp:
(JSC::JSStack::JSStack):
(JSC::JSStack::growSlowCase):
* interpreter/JSStack.h:
* interpreter/JSStackInlines.h:
(JSC::JSStack::shrink):
(JSC::JSStack::grow):
- Moved these inlined functions here from JSStack.h. It reduces some
  #include dependencies of JSSTack.h which had previously resulted
  in some EWS bots' unhappiness with this patch.
(JSC::JSStack::updateStackLimit):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* jit/JITCall.cpp:
(JSC::JIT::compileLoadVarargs):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileLoadVarargs):
* jit/JITOperations.cpp:
* llint/LLIntSlowPaths.cpp:
* llint/LowLevelInterpreter.asm:
* parser/Parser.cpp:
(JSC::::Parser):
* parser/Parser.h:
(JSC::Parser::canRecurse):
* runtime/CommonSlowPaths.h:
* runtime/Completion.cpp:
(JSC::evaluate):
* runtime/FunctionConstructor.cpp:
(JSC::constructFunctionSkippingEvalEnabledCheck):
* runtime/JSGlobalObject.cpp:
* runtime/JSGlobalObject.h:
* runtime/StringRecursionChecker.h:
(JSC::StringRecursionChecker::performCheck):
* runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::releaseExecutableMemory):
(JSC::VM::throwException):
* runtime/VM.h:
(JSC::VM::addressOfJSStackLimit):
(JSC::VM::jsStackLimit):
(JSC::VM::setJSStackLimit):
(JSC::VM::stackLimit):
(JSC::VM::setStackLimit):
(JSC::VM::isSafeToRecurse):
* runtime/VMEntryScope.cpp: Added.
(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::~VMEntryScope):
(JSC::VMEntryScope::requiredCapacity):
* runtime/VMEntryScope.h: Added.
(JSC::VMEntryScope::globalObject):
* runtime/VMStackBounds.h: Removed.

Source/WebCore:

No new tests.

Renamed dynamicGlobalObject() to vmEntryGlobalObject().
Replaced uses of DynamicGlobalObjectScope with VMEntryScope.

* ForwardingHeaders/runtime/VMEntryScope.h: Added.
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* bindings/js/JSCryptoAlgorithmBuilder.cpp:
(WebCore::JSCryptoAlgorithmBuilder::add):
* bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::create):
* bindings/js/JSDOMBinding.cpp:
(WebCore::firstDOMWindow):
* bindings/js/JSErrorHandler.cpp:
(WebCore::JSErrorHandler::handleEvent):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* bindings/js/JavaScriptCallFrame.h:
(WebCore::JavaScriptCallFrame::vmEntryGlobalObject):
* bindings/js/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::recompileAllJSFunctions):
* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::evaluateBreakpointAction):
(WebCore::ScriptDebugServer::handlePause):
* bindings/js/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
* bindings/objc/WebScriptObject.mm:
(WebCore::addExceptionToConsole):
* bridge/c/c_utility.cpp:
(JSC::Bindings::convertValueToNPVariant):
* bridge/objc/objc_instance.mm:
(ObjcInstance::moveGlobalExceptionToExecState):
* bridge/objc/objc_runtime.mm:
(JSC::Bindings::convertValueToObjcObject):
* bridge/objc/objc_utility.mm:
(JSC::Bindings::convertValueToObjcValue):

Source/WebKit/mac:

* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::sourceParsed):

Source/WTF:

* wtf/Platform.h:
* wtf/StackBounds.h:
(WTF::StackBounds::StackBounds):

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

8 years agoGenerate toHTMLFooElement() to clean up static_cast<>
gyuyoung.kim@samsung.com [Thu, 21 Nov 2013 04:45:49 +0000 (04:45 +0000)]
Generate toHTMLFooElement() to clean up static_cast<>
https://bugs.webkit.org/show_bug.cgi?id=124571

Reviewed by Ryosuke Niwa.

Though there are a lot of clean up commits before, there are still
use of static_cast<HTMLFooElement*>. To clean up them, we need to generate
toHTMLDetails|Meta|Summary|TableCaptionElement().

Additionally, other static_cast<> are removed as well.

No new tests, no behavior changes.

* html/HTMLDetailsElement.h:
* html/HTMLMediaElement.cpp:
(HTMLMediaElement::selectNextSourceChild):
* html/HTMLMetaElement.h:
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::isDisabledFormControl):
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::updateWidgetCallback):
* html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::detailsElement):
* html/HTMLSummaryElement.h:
* html/HTMLTableCaptionElement.h:
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::caption):
* html/HTMLTagNames.in:
* html/MediaDocument.cpp:
(WebCore::MediaDocumentParser::createDocumentStructure):
* html/shadow/DetailsMarkerControl.cpp:
(WebCore::DetailsMarkerControl::summaryElement):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::handleFallbackContent):
* loader/ImageLoader.cpp:
(WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
* page/DragController.cpp:
(WebCore::DragController::canProcessDrag):
* page/Frame.cpp:
(WebCore::Frame::searchForLabelsBeforeElement):
* page/SpatialNavigation.cpp:
(WebCore::frameOwnerElement):

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

8 years agoWebPageGroup's should keep track of what processes they are being used by
weinig@apple.com [Thu, 21 Nov 2013 04:09:24 +0000 (04:09 +0000)]
WebPageGroup's should keep track of what processes they are being used by
https://bugs.webkit.org/show_bug.cgi?id=124556

Reviewed by Dan Bernstein.

* Scripts/webkit2/messages.py:
(struct_or_class):
Mark WebPageGroupData as a struct.

* Shared/UserMessageCoders.h:
* Shared/mac/ObjCObjectGraphCoders.h:
* Shared/mac/ObjCObjectGraphCoders.mm:
* WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
* UIProcess/WebConnectionToWebProcess.cpp:
* UIProcess/WebContext.cpp:
* UIProcess/WebContextUserMessageCoders.h:
* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:
Pass the WebProcess/WebProcessProxy to both encode and decode.

* Shared/WebPageCreationParameters.h:
Pass the page group by ID when creating a page, as it will have had its own
creation message sent already.

* UIProcess/WebPageGroup.cpp:
* UIProcess/WebPageGroup.h:
Keep track of processes.

* UIProcess/WebProcessProxy.cpp:
* UIProcess/WebProcessProxy.h:
Keep track of the page groups used by the process.

* WebProcess/WebPage/WebPage.cpp:
Get the already created page group on creation.

* WebProcess/WebProcess.cpp:
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:
Explicitly create page groups in the WebProcess.

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

8 years agoAllow settings to be shown/hidden on build.webkit.org/dashboard
dino@apple.com [Thu, 21 Nov 2013 02:00:10 +0000 (02:00 +0000)]
Allow settings to be shown/hidden on build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=124694

Reviewed by Tim Horton.

In preparation for more options/buttons, allow the page to
show or hide all the interactive things using a little gear icon
in the top left corner.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
(Settings.prototype.toggleSettingsDisplay):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(div.cellButton.hide):
(div.cellButton.unhide):
(.settings-visible div.cellButton.hide, .settings-visible div.cellButton.unhide):
(.settings):
(.settings:hover):
(.settings-visible .settings):

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

8 years agoNo need to base64 SVG on build.webkit.org/dashboard
dino@apple.com [Thu, 21 Nov 2013 01:59:45 +0000 (01:59 +0000)]
No need to base64 SVG on build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=124687

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
(.status-line.good .bubble.pictogram):

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

8 years agoMake links look more like links on build.webkit.org/dashboard
dino@apple.com [Thu, 21 Nov 2013 01:59:23 +0000 (01:59 +0000)]
Make links look more like links on build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=124686

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css:
(.queue-view .queueLabel:hover):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
(.status-line.linked .label:hover):

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

8 years agoModify webkitdirs to reuse checkForArgumentAndRemoveFromARGV
commit-queue@webkit.org [Thu, 21 Nov 2013 01:39:50 +0000 (01:39 +0000)]
Modify webkitdirs to reuse checkForArgumentAndRemoveFromARGV
https://bugs.webkit.org/show_bug.cgi?id=124581

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-11-20
Reviewed by Daniel Bates.

Some subroutines are replicating code from checkForArgument**
functions instead of reusing them as is being done by all other functions.

* Scripts/webkitdirs.pm:
(determineXcodeSDK): Added.
(determinePassedConfiguration): Added.
(determinePassedArchitecture): Added.
(checkForArgumentAndRemoveFromARGV): Added.
(checkForArgumentAndRemoveFromARGVGettingValue): Added.

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

8 years agoIDB related cleanup in WebKit2
beidson@apple.com [Thu, 21 Nov 2013 01:28:35 +0000 (01:28 +0000)]
IDB related cleanup in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=124691

Reviewed by Enrica Casucci.

- WebIDBServerConnection.cpp should use the WebCore namespace and get rid of "WebCore::" throughout
- "backendIndentifier" should be renamed to "serverConnectionIdentifier" throughout

* DatabaseProcess/DatabaseToWebProcessConnection.cpp:
(WebKit::DatabaseToWebProcessConnection::establishIDBConnection):
* DatabaseProcess/DatabaseToWebProcessConnection.h:
* DatabaseProcess/DatabaseToWebProcessConnection.messages.in:

* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::DatabaseProcessIDBConnection):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
(WebKit::DatabaseProcessIDBConnection::create):

* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::generateServerConnectionIdentifier):
(WebKit::WebIDBServerConnection::WebIDBServerConnection):
(WebKit::WebIDBServerConnection::openTransaction):
(WebKit::WebIDBServerConnection::setIndexKeys):
(WebKit::WebIDBServerConnection::createObjectStore):
(WebKit::WebIDBServerConnection::createIndex):
(WebKit::WebIDBServerConnection::deleteIndex):
(WebKit::WebIDBServerConnection::get):
(WebKit::WebIDBServerConnection::put):
(WebKit::WebIDBServerConnection::openCursor):
(WebKit::WebIDBServerConnection::count):
(WebKit::WebIDBServerConnection::deleteRange):
(WebKit::WebIDBServerConnection::clearObjectStore):
(WebKit::WebIDBServerConnection::deleteObjectStore):
(WebKit::WebIDBServerConnection::changeDatabaseVersion):
(WebKit::WebIDBServerConnection::cursorAdvance):
(WebKit::WebIDBServerConnection::cursorIterate):
(WebKit::WebIDBServerConnection::cursorPrefetchIteration):
(WebKit::WebIDBServerConnection::cursorPrefetchReset):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:

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

8 years agoAdd argument coders for IDBDatabaseMetadata classes
beidson@apple.com [Thu, 21 Nov 2013 01:11:28 +0000 (01:11 +0000)]
Add argument coders for IDBDatabaseMetadata classes
https://bugs.webkit.org/show_bug.cgi?id=124689

Reviewed by Anders Carlsson.

Add coders for:
  - IDBDatabaseMetadata
  - IDBIndexMetadata
  - IDBKeyPath
  - IDBObjectStoreMetadata

* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC::::decode):
* Shared/WebCoreArgumentCoders.h:

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

8 years agoClear TemplateContentDocumentFragment::m_host when HTMLTemplateElement is destroyed
rniwa@webkit.org [Thu, 21 Nov 2013 01:07:19 +0000 (01:07 +0000)]
Clear TemplateContentDocumentFragment::m_host when HTMLTemplateElement is destroyed
https://bugs.webkit.org/show_bug.cgi?id=122806

Reviewed by Antti Koivisto.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/858ed5f6341de9d900768c1f4668fcfce870c52e

The document fragment of a template element outlives the element itself.
Clear the host property on the document fragment when that happens.

Test: fast/dom/HTMLTemplateElement/content-outlives-template-crash.html

* dom/TemplateContentDocumentFragment.h:
* html/HTMLTemplateElement.cpp:
(WebCore::HTMLTemplateElement::~HTMLTemplateElement):
* html/HTMLTemplateElement.h:

LayoutTests:

* fast/dom/HTMLTemplateElement/content-outlives-template-crash-expected.txt: Added.
* fast/dom/HTMLTemplateElement/content-outlives-template-crash.html: Added.

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

8 years agoDelete baseline optimizer
commit-queue@webkit.org [Thu, 21 Nov 2013 00:54:05 +0000 (00:54 +0000)]
Delete baseline optimizer
https://bugs.webkit.org/show_bug.cgi?id=122333

Patch by Jozsef Berta <jberta@inf.u-szeged.hu> on 2013-11-20
Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/common/checkout/baselineoptimizer.py: Removed.
* Scripts/webkitpy/common/checkout/baselineoptimizer_unittest.py: Removed.
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineTest.execute):
(AbstractParallelRebaselineCommand._files_to_add):
(AbstractParallelRebaselineCommand._rebaseline):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaselineJson.test_rebaseline_all):
(TestRebaselineJson.test_rebaseline_debug):
(TestRebaselineExpectations.disabled_test_overrides_are_included_correctly):

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

8 years ago[Win] JavaScript JIT crash (with DFG enabled).
msaboff@apple.com [Thu, 21 Nov 2013 00:42:38 +0000 (00:42 +0000)]
[Win] JavaScript JIT crash (with DFG enabled).
https://bugs.webkit.org/show_bug.cgi?id=124675

Reviewed by Geoffrey Garen.

Similar to the change in r159427, changed linkClosureCall to use regT0/regT1 (payload/tag) for the callee.
linkForThunkGenerator already expected the callee in regT0/regT1, but changed the comment to reflect that.

* jit/Repatch.cpp:
(JSC::linkClosureCall):
* jit/ThunkGenerators.cpp:
(JSC::linkForThunkGenerator):

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

8 years agoAX: Implement CSS -webkit-alt property (text alternative for generated content pseudo...
cfleizach@apple.com [Thu, 21 Nov 2013 00:28:14 +0000 (00:28 +0000)]
AX: Implement CSS -webkit-alt property (text alternative for generated content pseudo-elements ::before and ::after)
https://bugs.webkit.org/show_bug.cgi?id=120188

Reviewed by Dean Jackson.

Source/WebCore:

Add a -webkit-alt CSS property that can be used to label Image content or Text content for accessibility clients.

To accomplish this, it sets the string in the RenderStyle. Then when the ContentData creates an anonymous renderer,
it sets that string on the TextFragment or RenderImage, which can be queried by accessibility code.

Test: platform/mac/accessibility/webkit-alt-for-css-content.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::alternativeText):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement):
(WebCore::objectInclusionFromAltText):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::altTextToCSSValue):
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseAlt):
* css/CSSParser.h:
* css/CSSPropertyNames.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* rendering/RenderImage.h:
(WebCore::RenderImage::altText):
(WebCore::RenderImage::setAltText):
* rendering/RenderTextFragment.h:
* rendering/style/ContentData.cpp:
(WebCore::ImageContentData::createRenderer):
(WebCore::TextContentData::createRenderer):
* rendering/style/ContentData.h:
(WebCore::ContentData::setAltText):
(WebCore::ContentData::altText):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setContent):
(WebCore::RenderStyle::setContentAltText):
(WebCore::RenderStyle::contentAltText):
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareNonInheritedData.h:

LayoutTests:

* platform/mac/accessibility/webkit-alt-for-css-content-expected.txt: Added.
* platform/mac/accessibility/webkit-alt-for-css-content.html: Added.

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

8 years agoUse compile flag SH_UNFOLD_SHORT_CIRCUIT when compiling shaders.
roger_fong@apple.com [Thu, 21 Nov 2013 00:05:31 +0000 (00:05 +0000)]
Use compile flag SH_UNFOLD_SHORT_CIRCUIT when compiling shaders.
https://bugs.webkit.org/show_bug.cgi?id=124684.

Reviewed by Brent Fulgham.

Existing test webgl/1.0.2/conformance/glsl/misc/shader-with-short-circuiting-operators.html

* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):

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

8 years agoUnreviewed. Updated expected result following
dino@apple.com [Wed, 20 Nov 2013 23:55:08 +0000 (23:55 +0000)]
Unreviewed. Updated expected result following
https://bugs.webkit.org/show_bug.cgi?id=124666

* platform/mac/fast/block/margin-collapse/empty-clear-blocks-expected.png:
* platform/mac/fast/block/margin-collapse/empty-clear-blocks-expected.txt:

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

8 years ago[curl] Improve detecting and handling of SSL related errors
commit-queue@webkit.org [Wed, 20 Nov 2013 23:25:38 +0000 (23:25 +0000)]
[curl] Improve detecting and handling of SSL related errors
https://bugs.webkit.org/show_bug.cgi?id=119436

Patch by Robert Sipka <sipka@inf.u-szeged.hu> on 2013-11-20
Reviewed by Brent Fulgham.

Set the exact SSL verification error on CURL
and store the enabled domain with certificate.

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* platform/network/ResourceHandle.h:
* platform/network/ResourceHandleInternal.h:
(WebCore::ResourceHandleInternal::ResourceHandleInternal):
* platform/network/curl/ResourceError.h:
(WebCore::ResourceError::ResourceError):
(WebCore::ResourceError::sslErrors):
(WebCore::ResourceError::setSSLErrors):
* platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::setHostAllowsAnyHTTPSCertificate):
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::ResourceHandleManager::downloadTimerCallback):
(WebCore::ResourceHandleManager::initializeHandle):
* platform/network/curl/SSLHandle.cpp: Added.
(WebCore::allowsAnyHTTPSCertificateHosts):
(WebCore::sslIgnoreHTTPSCertificate):
(WebCore::sslCertificateFlag):
(WebCore::pemData):
(WebCore::certVerifyCallback):
(WebCore::sslctxfun):
(WebCore::setSSLVerifyOptions):
* platform/network/curl/SSLHandle.h: Added.

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

8 years agoEnable PageLoadTest assertions again
andersca@apple.com [Wed, 20 Nov 2013 23:22:37 +0000 (23:22 +0000)]
Enable PageLoadTest assertions again
https://bugs.webkit.org/show_bug.cgi?id=124681

Reviewed by Tim Horton.

Source/WebKit2:

Remove an overzealous assertion and re-enable assertions in PageLoadState again.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::didCommitLoad):
Remove assertion - it's fine for a page to have a null URL.

(WebKit::PageLoadState::didFinishLoad):
Ditto.

(WebKit::PageLoadState::didFailLoad):
Update the state.

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Actually install all-content-in-one-iframe.html, noticed while debugging this assertion.

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

8 years ago[css shapes] Parse new circle shape syntax
bjonesbe@adobe.com [Wed, 20 Nov 2013 22:55:20 +0000 (22:55 +0000)]
[css shapes] Parse new circle shape syntax
https://bugs.webkit.org/show_bug.cgi?id=124618

Reviewed by Antti Koivisto.

Source/WebCore:

Implement parsing of the new cicle shape syntax. The implementation of
the old syntax has been move aside as deprecated, and will be removed
once the new syntax is stable.

Updated existing parsing tests to cover this.

* css/BasicShapeFunctions.cpp:
(WebCore::valueForCenterCoordinate): Create a CSSPrimitiveValue from a
    BasicShapeCenterCoordinate.
(WebCore::valueForBasicShape): Convert new basic shape and rename old
    one.
(WebCore::convertToCenterCoordinate): Create a
    BasicShapeCenterCoordinate from a CSSPrimitiveValue.
(WebCore::basicShapeForValue): Convert new shape value and rename old
    one.
* css/CSSBasicShapes.cpp:
(WebCore::buildCircleString): Build a new circle string.
(WebCore::CSSBasicShapeCircle::cssText): Serialize the new circle
    shape.
(WebCore::CSSBasicShapeCircle::equals): Compare new circle shapes.
(WebCore::CSSBasicShapeCircle::serializeResolvingVariables):
* css/CSSBasicShapes.h:
(WebCore::CSSBasicShapeCircle::CSSBasicShapeCircle): Add class for new
    circle shape.
(WebCore::CSSDeprecatedBasicShapeCircle::create): Renamed to move out
    of the way of the new circle implementation.
(WebCore::CSSDeprecatedBasicShapeCircle::centerX): Ditto.
(WebCore::CSSDeprecatedBasicShapeCircle::centerY): Ditto.
(WebCore::CSSDeprecatedBasicShapeCircle::radius): Ditto.
(WebCore::CSSDeprecatedBasicShapeCircle::setCenterX): Ditto.
(WebCore::CSSDeprecatedBasicShapeCircle::setCenterY): Ditto.
(WebCore::CSSDeprecatedBasicShapeCircle::setRadius): Ditto.
(WebCore::CSSDeprecatedBasicShapeCircle::CSSDeprecatedBasicShapeCircle): Ditto.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseShapeRadius): Parse the radius for the new
    circle syntax. Will also be used by the new ellipse syntax.
(WebCore::CSSParser::parseBasicShapeCircle): Parse the new circle
    syntax.
(WebCore::CSSParser::parseDeprecatedBasicShapeCircle): Rename to make
    way for the new implementation.
(WebCore::isDeprecatedBasicShape): Check if we have a new circle or an
    old circle.
(WebCore::CSSParser::parseBasicShape): Update to parse the new circle
    syntax.
* css/CSSParser.h:
* css/CSSValueKeywords.in: Add support for the new circle keywords.
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape):
* rendering/style/BasicShapes.cpp: Deprecate old circle and add stub
    for layout code.
(WebCore::DeprecatedBasicShapeCircle::path): Rename to make way for
    the new implementation.
(WebCore::DeprecatedBasicShapeCircle::blend): Rename to make way for
    the new implementation.
(WebCore::BasicShapeCircle::path): Create path for new circle shape.
(WebCore::BasicShapeCircle::blend): Interpolate the new circle shape.
* rendering/style/BasicShapes.h:
(WebCore::BasicShapeCenterCoordinate::BasicShapeCenterCoordinate):
    Represent an x or y coordinate for the center of a new circle,
    since it can be either a keyword along with an offset that cannot
    be resolved until layout time or an ordinary Length. This will
    also be used by the new ellipse implementation.
(WebCore::BasicShapeCenterCoordinate::keyword):
(WebCore::BasicShapeCenterCoordinate::length):
(WebCore::BasicShapeCenterCoordinate::blend): Interpolate.
(WebCore::BasicShapeRadius::BasicShapeRadius): Represent the radius of
    a new circle shape since it can either be a straightforward Length or
    a keyword that cannot be resolved until layout time.
(WebCore::BasicShapeRadius::value):
(WebCore::BasicShapeRadius::type):
(WebCore::BasicShapeRadius::blend): Interpolate.
(WebCore::BasicShapeCircle::centerX):
(WebCore::BasicShapeCircle::centerY):
(WebCore::BasicShapeCircle::radius):
(WebCore::BasicShapeCircle::setCenterX):
(WebCore::BasicShapeCircle::setCenterY):
(WebCore::BasicShapeCircle::setRadius):
(WebCore::BasicShapeCircle::BasicShapeCircle): New circle class.
(WebCore::DeprecatedBasicShapeCircle::create): Rename to make room for
    new circle implementation.
(WebCore::DeprecatedBasicShapeCircle::DeprecatedBasicShapeCircle): Ditto.

LayoutTests:

Test that the new circle shape syntax is properly parsed.

* fast/shapes/parsing/parsing-shape-inside-expected.txt:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-test-utils.js:
* fast/masking/parsing-clip-path-shape-expected.txt:
* fast/masking/parsing-clip-path-shape.html:

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

8 years agoPageLoadState should keep track of unreachable URLs
andersca@apple.com [Wed, 20 Nov 2013 22:22:13 +0000 (22:22 +0000)]
PageLoadState should keep track of unreachable URLs
https://bugs.webkit.org/show_bug.cgi?id=124677

Reviewed by Dan Bernstein.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::reset):
(WebKit::PageLoadState::didStartProvisionalLoad):
(WebKit::PageLoadState::didFailProvisionalLoad):
(WebKit::PageLoadState::setUnreachableURL):
* UIProcess/PageLoadState.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadAlternateHTMLString):

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

8 years ago[CSS Shapes] Add BoxShape and FloatRoundingRect classes
hmuller@adobe.com [Wed, 20 Nov 2013 22:21:52 +0000 (22:21 +0000)]
[CSS Shapes] Add BoxShape and FloatRoundingRect classes
https://bugs.webkit.org/show_bug.cgi?id=124368

Reviewed by Dean Jackson.

Added the BoxShape class. It's now used to represent shape-outside box
values: [margin/border/padding/content]-box. BoxShape depends on a new
FloatRoundedRect class, which is a float analog of the existing (int)
RoundedRect class. The FloatRoundedRect class contains the same basic
methods and accessors as BorderRect and adds a set of four methods,
for example topLeftCorner(), that return a FloatRect that represents the
bounds of one elliptical corner. I also added a method, xInterceptsAtY()
that returns two X coordinates of the intersection between a horizontal
line and the rounded rectangle.

No new tests, this is just an internal refactoring.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/FloatRoundedRect.cpp: Added.
(WebCore::FloatRoundedRect::FloatRoundedRect):
(WebCore::FloatRoundedRect::Radii::isZero):
(WebCore::FloatRoundedRect::Radii::scale):
(WebCore::FloatRoundedRect::Radii::expand):
(WebCore::cornerRectIntercept):
(WebCore::FloatRoundedRect::xInterceptsAtY):
* platform/graphics/FloatRoundedRect.h: Added.
(WebCore::FloatRoundedRect::Radii::Radii):
(WebCore::FloatRoundedRect::Radii::setTopLeft):
(WebCore::FloatRoundedRect::Radii::setTopRight):
(WebCore::FloatRoundedRect::Radii::setBottomLeft):
(WebCore::FloatRoundedRect::Radii::setBottomRight):
(WebCore::FloatRoundedRect::Radii::topLeft):
(WebCore::FloatRoundedRect::Radii::topRight):
(WebCore::FloatRoundedRect::Radii::bottomLeft):
(WebCore::FloatRoundedRect::Radii::bottomRight):
(WebCore::FloatRoundedRect::Radii::expand):
(WebCore::FloatRoundedRect::Radii::shrink):
(WebCore::FloatRoundedRect::rect):
(WebCore::FloatRoundedRect::radii):
(WebCore::FloatRoundedRect::isRounded):
(WebCore::FloatRoundedRect::isEmpty):
(WebCore::FloatRoundedRect::setRect):
(WebCore::FloatRoundedRect::setRadii):
(WebCore::FloatRoundedRect::move):
(WebCore::FloatRoundedRect::inflate):
(WebCore::FloatRoundedRect::expandRadii):
(WebCore::FloatRoundedRect::shrinkRadii):
(WebCore::FloatRoundedRect::topLeftCorner):
(WebCore::FloatRoundedRect::topRightCorner):
(WebCore::FloatRoundedRect::bottomLeftCorner):
(WebCore::FloatRoundedRect::bottomRightCorner):
(WebCore::operator==):
* rendering/shapes/BoxShape.cpp: Added.
(WebCore::BoxShape::BoxShape):
(WebCore::BoxShape::getExcludedIntervals):
(WebCore::BoxShape::getIncludedIntervals):
(WebCore::BoxShape::firstIncludedIntervalLogicalTop):
* rendering/shapes/BoxShape.h: Added.
* rendering/shapes/Shape.cpp:
(WebCore::createBoxShape):
(WebCore::Shape::createShape):

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

8 years agoRemote Layer Tree: 100% repro crasher on the IPC thread when creating lots of layers
timothy_horton@apple.com [Wed, 20 Nov 2013 21:44:23 +0000 (21:44 +0000)]
Remote Layer Tree: 100% repro crasher on the IPC thread when creating lots of layers
https://bugs.webkit.org/show_bug.cgi?id=124643

Reviewed by Anders Carlsson.

* Platform/CoreIPC/mac/ConnectionMac.cpp:
(CoreIPC::Connection::sendOutgoingMessage):
Dynamically allocate storage for the message if needed.

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

8 years agomachMessageSize uses sizeof(mach_msg_ool_ports_descriptor_t) for out-of-line *memory*
timothy_horton@apple.com [Wed, 20 Nov 2013 21:29:10 +0000 (21:29 +0000)]
machMessageSize uses sizeof(mach_msg_ool_ports_descriptor_t) for out-of-line *memory*
https://bugs.webkit.org/show_bug.cgi?id=124644

Reviewed by Anders Carlsson.

* Platform/CoreIPC/mac/ConnectionMac.cpp:
(CoreIPC::machMessageSize):
mach_msg_ool_descriptor_t is the correct type, given that
out-of-line memory descriptors use the mach_msg_ool_descriptor_t
member of the mach_msg_descriptor_t union.

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=124637
dino@apple.com [Wed, 20 Nov 2013 21:24:09 +0000 (21:24 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=124637

Unreviewed. Adding HTMLTemplateElement to global constructor
test, but this time for more platforms. I'm not sure if
GTK and EFL need this too.

* platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt:
* platform/win/js/dom/global-constructors-attributes-expected.txt:

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

8 years agoSimple line layout should support floats
antti@apple.com [Wed, 20 Nov 2013 21:23:19 +0000 (21:23 +0000)]
Simple line layout should support floats
https://bugs.webkit.org/show_bug.cgi?id=124666

Reviewed by Dave Hyatt.

Source/WebCore:

Tests: fast/text/simple-lines-float-compare.html
       fast/text/simple-lines-float.html

* rendering/line/LineWidth.h:
(WebCore::LineWidth::logicalLeftOffset):

    Expose the left offset so we don't need to recompute it.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):
(WebCore::SimpleLineLayout::computeLineLeft):

    Include the left offset from floats.

(WebCore::SimpleLineLayout::createTextRuns):

    Keep the flow height updated during the loop as LineWidth reads the current position from there.

* rendering/SimpleLineLayoutResolver.h:
(WebCore::SimpleLineLayout::RunResolver::Run::rect):
(WebCore::SimpleLineLayout::RunResolver::Run::baseline):
(WebCore::SimpleLineLayout::RunResolver::RunResolver):
(WebCore::SimpleLineLayout::RunResolver::lineIndexForHeight):

    We now bake the border and the padding to the line left offset. No need to add it during resolve.

LayoutTests:

* fast/text/simple-lines-float-compare-expected.html: Added.
* fast/text/simple-lines-float-compare.html: Added.
* fast/text/simple-lines-float-expected.html: Added.
* fast/text/simple-lines-float.html: Added.

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