WebKit-https.git
8 years agoPrepare WebKit Buildbot master for Mavericks.
lforschler@apple.com [Tue, 22 Oct 2013 19:16:21 +0000 (19:16 +0000)]
Prepare WebKit Buildbot master for Mavericks.
This adds the following bot configurations:
    Mavericks Release/Debug builders
    Mavericks Release/Debug WK1 Testers
    Mavericks Release/Debug WK2 Testers

Unreviewed.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

8 years agocue.text fails for some track element cues
commit-queue@webkit.org [Tue, 22 Oct 2013 18:46:05 +0000 (18:46 +0000)]
cue.text fails for some track element cues
https://bugs.webkit.org/show_bug.cgi?id=81123

Patch by Brendan Long <b.long@cablelabs.com> on 2013-10-22
Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-long-captions-file.html

* html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::parseBytes): Use buffer when we don't have full lines.
(WebCore::WebVTTParser::fileFinished): Force file to finish parsing.
(WebCore::WebVTTParser::hasRequiredFileIdentifier): Simplify due to using String.
(WebCore::WebVTTParser::collectCueText): Don't automatically create cues when we run out of data.
(WebCore::WebVTTParser::collectNextLine): Use buffer.
* html/track/WebVTTParser.h: Add m_buffer and Finished state.
* loader/TextTrackLoader.cpp:
(WebCore::TextTrackLoader::notifyFinished): Call m_parser->fileFinished() when done.

LayoutTests:

* media/track/captions-webvtt/captions-long.vtt: Added.
* media/track/track-long-captions-file-expected.txt: Added.
* media/track/track-long-captions-file.html: Added.

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

8 years ago[arm] Add missing setupArgumentsWithExecState() prototypes to fix build.
commit-queue@webkit.org [Tue, 22 Oct 2013 17:33:47 +0000 (17:33 +0000)]
[arm] Add missing setupArgumentsWithExecState() prototypes to fix build.
https://bugs.webkit.org/show_bug.cgi?id=123166

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

* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArgumentsWithExecState):

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

8 years ago[WinCairo] Compile error.
commit-queue@webkit.org [Tue, 22 Oct 2013 17:13:02 +0000 (17:13 +0000)]
[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=123161

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-22
Reviewed by Brent Fulgham.

* rendering/RenderFlowThread.h: Move USE(ACCELERATED_COMPOSITING) guard to expose needed type.

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

8 years agoAdd a cross-platform IDBRecordIdentifier
beidson@apple.com [Tue, 22 Oct 2013 17:08:28 +0000 (17:08 +0000)]
Add a cross-platform IDBRecordIdentifier
https://bugs.webkit.org/show_bug.cgi?id=123138

Reviewed by Andreas Kling.

Add the cross-platform header:
* Modules/indexeddb/IDBRecordIdentifier.h: Added.
(WebCore::IDBRecordIdentifier::create):
(WebCore::IDBRecordIdentifier::encodedPrimaryKey):
(WebCore::IDBRecordIdentifier::version):
(WebCore::IDBRecordIdentifier::reset):
(WebCore::IDBRecordIdentifier::IDBRecordIdentifier):
* WebCore.xcodeproj/project.pbxproj:
* GNUmakefile.list.am:

Remove the old abstract and LevelDB classes:
* Modules/indexeddb/IDBBackingStoreInterface.h:
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:

Use the cross-platform one everywhere:
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStoreLevelDB::putRecord):
(WebCore::IDBBackingStoreLevelDB::deleteRecord):
(WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
(WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
(WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):

* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
(WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):

* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys):

* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
(WebCore::PutOperation::perform):

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

8 years ago[sh4][mips][arm] Fix crashes in JSC (32-bit only).
commit-queue@webkit.org [Tue, 22 Oct 2013 17:04:59 +0000 (17:04 +0000)]
[sh4][mips][arm] Fix crashes in JSC (32-bit only).
https://bugs.webkit.org/show_bug.cgi?id=123165

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

* jit/JITInlines.h:
(JSC::JIT::callOperationNoExceptionCheck): Add missing EABI_32BIT_DUMMY_ARG.
(JSC::JIT::callOperation): The last TrustedImm32(arg3) is a bit overkill for SH4 :)
(JSC::JIT::callOperation): Add missing EABI_32BIT_DUMMY_ARG.
(JSC::JIT::callOperation): Fix tag and payload order for V_JITOperation_EJJJ prototype.

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

8 years agoREGRESSION(r157690, r157699) Fix architectures using AssemblerBufferWithConstantPool.
commit-queue@webkit.org [Tue, 22 Oct 2013 15:51:51 +0000 (15:51 +0000)]
REGRESSION(r157690, r157699) Fix architectures using AssemblerBufferWithConstantPool.
https://bugs.webkit.org/show_bug.cgi?id=123092

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

Impacted architectures are SH4 and ARM_TRADITIONAL.

* assembler/ARMAssembler.h:
(JSC::ARMAssembler::buffer):
* assembler/AssemblerBufferWithConstantPool.h:
(JSC::AssemblerBufferWithConstantPool::flushConstantPool):
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::linkCode):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::buffer):

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

8 years agoRemove unused stuff in JIT stubs.
commit-queue@webkit.org [Tue, 22 Oct 2013 15:46:55 +0000 (15:46 +0000)]
Remove unused stuff in JIT stubs.
https://bugs.webkit.org/show_bug.cgi?id=123155

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

* jit/JITStubs.h:
* jit/JITStubsARM.h:
(JSC::ctiTrampoline):
* jit/JITStubsARM64.h:
* jit/JITStubsARMv7.h:
* jit/JITStubsMIPS.h:
* jit/JITStubsSH4.h:
* jit/JITStubsX86.h:
* jit/JITStubsX86_64.h:

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

8 years ago[iOS] Upstream OS-version-specific install paths for JavaScriptCore.framework
dbates@webkit.org [Tue, 22 Oct 2013 15:45:42 +0000 (15:45 +0000)]
[iOS] Upstream OS-version-specific install paths for JavaScriptCore.framework
https://bugs.webkit.org/show_bug.cgi?id=123115
<rdar://problem/13696872>

Reviewed by Andy Estes.

Based on a patch by Mark Hahnenberg.

Add support for running JavaScriptCore-based apps, built against the iOS 7 SDK, on older versions of iOS.

* API/JSBase.cpp:

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

8 years ago[CSS Regions] Possible performance regression after r157567
abucur@adobe.com [Tue, 22 Oct 2013 14:50:37 +0000 (14:50 +0000)]
[CSS Regions] Possible performance regression after r157567
https://bugs.webkit.org/show_bug.cgi?id=123016

Reviewed by Andreas Kling.

The revision 157567 http://trac.webkit.org/changeset/157567 may have regressed
Parser/html5-full-render by ~1.1% and Parser/html-parser by ~2%. These changes
try to optimize the initial patch, based on Andreas Kling's review.

The patch also adds a couple of refactorings that should make the code easier to read:
- the CSS Shapes functions are now wrapped in a single #if clause
- the CSS Shapes and CSS Regions pre-layout preparations are wrapped in a helper function

The RenderFlowThread::logicalWidthChangedInRegionsForBlock function is optimized by passing
it information about the state of the relayout children flag. If the flag is true already,
some of the steps are skipped.

Tests: no new tests.

* dom/Element.cpp:
(WebCore::Element::webkitGetRegionFlowRanges):
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForElementInfo):
* rendering/RenderBlock.cpp:
(WebCore::shapeInfoRequiresRelayout):
(WebCore::RenderBlock::updateShapesBeforeBlockLayout):
(WebCore::RenderBlock::computeShapeSize):
(WebCore::RenderBlock::prepareShapesAndPaginationBeforeBlockLayout):
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded):
(WebCore::RenderBlockFlow::setRenderNamedFlowFragment):
(WebCore::RenderBlockFlow::ensureRareData):
* rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
(WebCore::RenderElement::isRenderNamedFlowFragmentContainer):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
* rendering/RenderElement.h:
(WebCore::RenderElement::generatingElement):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
* rendering/RenderFlowThread.h:
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock):
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderObject.cpp:
* rendering/RenderObject.h:
* rendering/RenderTreeAsText.cpp:
(WebCore::write):
* style/StyleResolveTree.cpp:
(WebCore::Style::elementInsideRegionNeedsRenderer):

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

8 years agoCSSStyleSheet constructor functions should return PassRef.
akling@apple.com [Tue, 22 Oct 2013 14:43:48 +0000 (14:43 +0000)]
CSSStyleSheet constructor functions should return PassRef.
<https://webkit.org/b/123156>

Make CSSStyleSheet::create*() return PassRef and tighten some call
sites that were using them. Most callers didn't need any tweaks to
take advantage of PassRef.

Reviewed by Antti Koivisto.

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

8 years agoCTTE: RenderMathMLFraction always has a MathMLInlineContainerElement.
akling@apple.com [Tue, 22 Oct 2013 14:43:01 +0000 (14:43 +0000)]
CTTE: RenderMathMLFraction always has a MathMLInlineContainerElement.
<https://webkit.org/b/123154>

This renderer is never anonymous and always has a corresponding
MathMLInlineContainerElement. Overload element() with a tighter
return type.

Also marked the class FINAL and made most member functions private.

Reviewed by Antti Koivisto.

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

8 years agoFontGlyphs constructor functions should return PassRef.
akling@apple.com [Tue, 22 Oct 2013 14:42:28 +0000 (14:42 +0000)]
FontGlyphs constructor functions should return PassRef.
<https://webkit.org/b/123159>

Made the two FontGlyphs creator functions return PassRef and tweaked
the FontGlyphsCache in Font.cpp to make more efficient use of it.

Reviewed by Antti Koivisto.

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

8 years ago[sh4] Add missing lastRegister(), firstFPRegister() and lastFPRegister().
commit-queue@webkit.org [Tue, 22 Oct 2013 13:45:38 +0000 (13:45 +0000)]
[sh4] Add missing lastRegister(), firstFPRegister() and lastFPRegister().
https://bugs.webkit.org/show_bug.cgi?id=123157

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-22
Reviewed by Andreas Kling.

* assembler/SH4Assembler.h:
(JSC::SH4Assembler::lastRegister):
(JSC::SH4Assembler::firstFPRegister):
(JSC::SH4Assembler::lastFPRegister):

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

8 years agoFix some more code to use RenderElement instead of RenderObject.
akling@apple.com [Tue, 22 Oct 2013 13:12:04 +0000 (13:12 +0000)]
Fix some more code to use RenderElement instead of RenderObject.
<https://webkit.org/b/123149>

Using RenderElement where possible lets us skip the isRenderElement()
branch in RenderObject::style() and generates much tighter code.

Reviewed by Antti Koivisto.

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

8 years agoMerge SVG renderers' styleWillChange() into styleDidChange().
akling@apple.com [Tue, 22 Oct 2013 13:04:56 +0000 (13:04 +0000)]
Merge SVG renderers' styleWillChange() into styleDidChange().
<https://webkit.org/b/123108>

This work can just as well be done after setting the style.
Three more styleWillChange() overloads gone.

Reviewed by Antti Koivisto.

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

8 years agoCSSValueList constructor functions should return PassRef.
akling@apple.com [Tue, 22 Oct 2013 13:04:13 +0000 (13:04 +0000)]
CSSValueList constructor functions should return PassRef.
<https://webkit.org/b/123151>

These functions always return objects, and thus can return PassRef.
Also made CSSValueList::createFromParserValueList() take a reference
since that function is only ever called with a non-null value.

Reviewed by Antti Koivisto.

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

8 years agoAvoid parent style ref churn in createTextRendererIfNeeded().
akling@apple.com [Tue, 22 Oct 2013 13:03:30 +0000 (13:03 +0000)]
Avoid parent style ref churn in createTextRendererIfNeeded().
<https://webkit.org/b/123148>

There's no need to take a temporary ref on the parent's RenderStyle
while creating a text renderer. It's not going away, and the text
renderer is not going to participate in ownership afterwards.

Reviewed by Antti Koivisto.

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

8 years agoBuild break on ARMv7 after r157209
commit-queue@webkit.org [Tue, 22 Oct 2013 11:57:32 +0000 (11:57 +0000)]
Build break on ARMv7 after r157209
https://bugs.webkit.org/show_bug.cgi?id=122890

Patch by Brian Holt <brian.holt@samsung.com> on 2013-10-22
Reviewed by Csaba Osztrogonác.

Add framePointerRegister and first/last register helpers for ARM_TRADITIONAL.

* assembler/ARMAssembler.h:
* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::firstRegister):
(JSC::MacroAssemblerARM::lastRegister):
(JSC::MacroAssemblerARM::firstFPRegister):
(JSC::MacroAssemblerARM::lastFPRegister):

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

8 years agoRemove some unnecessary null checks in RenderElement::setStyle().
akling@apple.com [Tue, 22 Oct 2013 10:58:16 +0000 (10:58 +0000)]
Remove some unnecessary null checks in RenderElement::setStyle().
<https://webkit.org/b/123146>

After assigning the new style to RenderElement::m_style, we know that
it'll be non-null, so remove all the checking for this.

Reviewed by Antti Koivisto.

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

8 years agoIntroduce ACCESSIBILITY_OBJECT_TYPE_CASTS to replace manual toFoo() in accessibility...
gyuyoung.kim@samsung.com [Tue, 22 Oct 2013 10:10:25 +0000 (10:10 +0000)]
Introduce ACCESSIBILITY_OBJECT_TYPE_CASTS to replace manual toFoo() in accessibility child class
https://bugs.webkit.org/show_bug.cgi?id=123140

Reviewed by Andreas Kling.

As a step to let toFoo use TYPE_CASTS_BASE, DEFINE_TYPE_CASTS can be used for toFoo() in accessibility
child class. The DEFINE_TYPE_CASTS will generate plenty more helper functions for accessibility type cast.

No new tests, no behavior changes.

* accessibility/AccessibilityList.h:
* accessibility/AccessibilityMenuList.h:
* accessibility/AccessibilityMockObject.h:
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.h:
* accessibility/AccessibilitySVGRoot.h:
* accessibility/AccessibilityScrollView.h:
* accessibility/AccessibilitySpinButton.h:
* accessibility/AccessibilityTable.h:

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

8 years ago[GTK] Add WebKit2 API for TLS errors
commit-queue@webkit.org [Tue, 22 Oct 2013 09:09:34 +0000 (09:09 +0000)]
[GTK] Add WebKit2 API for TLS errors
https://bugs.webkit.org/show_bug.cgi?id=120160

Patch by Brian Holt <brian.holt@samsung.com> on 2013-10-22
Reviewed by Carlos Garcia Campos.

Source/WebCore:

Added a new constructor for CertificateInfo under Soup.

* platform/network/CertificateInfo.h:
* platform/network/soup/CertificateInfoSoup.cpp:
(WebCore::CertificateInfo::CertificateInfo): New constructor using
GTlsCertificateFlags and GTlsCertificate.

Source/WebKit2:

Add a new signal load-failed-with-tls-errors that is emitted with
a WebKitCertificateInfo boxed type to allow users to deal with TLS
errors. A new API is exposed in WebKitWebContext to allow
exceptions for TLS errors on a given host.

* GNUmakefile.list.am:
* PlatformGTK.cmake:
* UIProcess/API/gtk/WebKitCertificateInfo.cpp: Added.
(webkitCertificateInfoGetCertificateInfo):
(webkit_certificate_info_copy):
(webkit_certificate_info_free):
(webkit_certificate_info_get_tls_certificate):
(webkit_certificate_info_get_tls_errors):
* UIProcess/API/gtk/WebKitCertificateInfo.h: Added.
* UIProcess/API/gtk/WebKitCertificateInfoPrivate.h: Added.
(_WebKitCertificateInfo::_WebKitCertificateInfo):
* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkit_web_context_allow_tls_certificate_for_host): Support TLS
exceptions for a given host.
* UIProcess/API/gtk/WebKitWebContext.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_class_init): Added new signal.
(webkitWebViewLoadFailedWithTLSErrors): Emit new signal with
WebKitCertificateInfo and host.
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/WebKitWebViewPrivate.h:
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
* UIProcess/API/gtk/docs/webkit2gtk.types:
* UIProcess/API/gtk/tests/TestSSL.cpp:
(testLoadFailedWithTLSErrors):
(httpsServerCallback):
(beforeAll): Added new test.
* UIProcess/API/gtk/webkit2.h:
* UIProcess/API/gtk/webkit2marshal.list:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::allowSpecificHTTPSCertificateForHost): Send
message to WebProcess to allow a certificate and host pair.
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in: New message to tell
WebProcess to allow a specific TLS certificate for a given host.
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::allowSpecificHTTPSCertificateForHost): Allow
certificate and host pair.

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

8 years ago[EFL] accessibility/plugin.html passes incorrectly
commit-queue@webkit.org [Tue, 22 Oct 2013 08:39:46 +0000 (08:39 +0000)]
[EFL] accessibility/plugin.html passes incorrectly
https://bugs.webkit.org/show_bug.cgi?id=122889

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2013-10-22
Reviewed by Chris Fleizach.

Sharing test.swf by all existing layout tests accessing it.

* accessibility/plugin.html:
* fast/loader/sandboxed-plugin-crash.html:
* fast/replaced/border-radius-clip.html:
* fast/replaced/embed-display-none.html:
* fast/replaced/resources/test.swf: Removed.
* platform/mac/accessibility/resources/test.swf: Removed.
* resources/test.swf: Renamed from LayoutTests/fast/loader/resources/test.swf.

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

8 years ago[CSSRegions] Use RenderStyle::hasFlowFrom when needed
mihnea@adobe.com [Tue, 22 Oct 2013 08:28:11 +0000 (08:28 +0000)]
[CSSRegions] Use RenderStyle::hasFlowFrom when needed
https://bugs.webkit.org/show_bug.cgi?id=122543

Reviewed by David Hyatt.

Rename RenderStyle::hasStyleRegion -> RenderStyle::hasFlowFrom.
Use RenderStyle::hasFlowFrom() helper function instead of directly
checking the value of RenderStyle::regionThread().

No change of functionality, covered by existing tests.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::contentToCSSValue):
(WebCore::ComputedStyleExtractor::propertyValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* dom/PseudoElement.cpp:
(WebCore::PseudoElement::didAttachRenderers):
* dom/PseudoElement.h:
(WebCore::pseudoElementRendererIsNeeded):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::shouldBeNormalFlowOnly):
* rendering/style/RenderStyle.h:

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

8 years agoTry to make the 32-bit Mac build happy.
mitz@apple.com [Tue, 22 Oct 2013 07:32:41 +0000 (07:32 +0000)]
Try to make the 32-bit Mac build happy.

* UIProcess/API/mac/WKBrowsingContextLoadDelegate.h:

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

8 years agoTry to make the 32-bit Mac build happy.
mitz@apple.com [Tue, 22 Oct 2013 05:19:07 +0000 (05:19 +0000)]
Try to make the 32-bit Mac build happy.

* UIProcess/API/mac/WKBrowsingContextController.mm:
(setUpPageLoaderClient):

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

8 years ago[Cocoa] Add load delegate method for didChangeBackForwardList
mitz@apple.com [Tue, 22 Oct 2013 05:16:38 +0000 (05:16 +0000)]
[Cocoa] Add load delegate method for didChangeBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=123136

Reviewed by Anders Carlsson.

* UIProcess/API/mac/WKBrowsingContextController.mm:
(didChangeBackForwardList): Added. Calls new delegate method.
(setUpPageLoaderClient):  Hook up new client function.
* UIProcess/API/mac/WKBrowsingContextLoadDelegate.h: Declare new delegate method.

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

8 years agoNew flakiness dashboard should hyperlink test names, WebKit revisions, and bubbles
rniwa@webkit.org [Tue, 22 Oct 2013 04:42:54 +0000 (04:42 +0000)]
New flakiness dashboard should hyperlink test names, WebKit revisions, and bubbles
https://bugs.webkit.org/show_bug.cgi?id=123134

Reviewed by Stephanie Lewis.

Copied admin.css, admin-header.php, admin-footer.php, builders.php, repositories.php from WebKit Perf Monitor.
(Unfortunately WebKit Perf Monitor hasn't been committed into WebKit repository just yet.)

Updated various parts of index.html to linkify test names, build numbers, and bubbles (to results page).

* admin/admin.css: Added.
* admin/builders.php: Added.
* admin/index.php: Removed the duplicated code now that it uses admin-header.php.
* admin/repositories.php: Added.
* api/manifest.php: Use camelCase for blame_url and build_url to be consistent with other JSON properties.
Also exported testCategories from config so that we can linkify test names in the dashboard.
* include/admin-footer.php: Added.
* include/admin-header.php: Added.
* include/config.json: Added test categories. This avoids hard-coding the URL to trac in php/js.
* include/init-database.sql: Added name and build_url to builders table and category to tests.
* include/test-results.php: Assume the test category to be LayoutTest for now.

* index.html:
(TestResultsView): Initialize _builders, _slaves, _repositories, _testCategories as dictionaries as intended.
(TestResultsView.setTestCategories): Added.
(TestResultsView._createResultCell): Dynamically resolve URLs of results page and and build page.
(TestResultsView._populateTestPane): Linkify the test name. Unfortunately we don't have a test object anywhere.
We need to figure out a way to find the test object here eventually. For now, hard-coding "LayoutTest" works.
(TestResultsView._linkifiedTestName): Added.
(TestResultsView._createBuildsAndComputeSlownessOfResults): Takes builderId to set "builder" property on each
result object as it's used by Build class.
(TestResultsView._populateBuilderPane):
(fetchManigest):

* js/build.js:
(Build.buildUrl): Support $builderName so that we don't have to keep repeating builder names in the database.
(Build.revision): Don't access [0] if revisions[repositoryId] was undefined.

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

8 years agoRun tests as if they are expected to pass when --force is given.
commit-queue@webkit.org [Tue, 22 Oct 2013 02:17:41 +0000 (02:17 +0000)]
Run tests as if they are expected to pass when --force is given.
https://bugs.webkit.org/show_bug.cgi?id=112890

Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-10-21
Reviewed by Ryosuke Niwa.

The --force switch of new-run-webkit-tests is now forces all tests to
be run with 'PASS' as expected result.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run):
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectations.__init__):
(TestExpectations._add_expectations):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
(_set_up_derived_options):

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

8 years ago[WIN] Properly support reverse animations without needing software fallback.
bfulgham@apple.com [Tue, 22 Oct 2013 02:05:22 +0000 (02:05 +0000)]
[WIN] Properly support reverse animations without needing software fallback.
https://bugs.webkit.org/show_bug.cgi?id=85121

Reviewed by Dean Jackson.

Testing is provided by existing animation tests.

* platform/animation/TimingFunction.h:
(WebCore::CubicBezierTimingFunction::createReversed): Added.
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::addAnimation): The early return when performing a reverse or
autoreverse animation is no longer needed.
* platform/graphics/ca/PlatformCAAnimation.h:
* platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
(toCAMediaTimingFunction): Use new reversed function.
* platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
(toCACFTimingFunction): Ditto.
(PlatformCAAnimation::setTimingFunction): Pass 'reverse' flag.
(PlatformCAAnimation::setTimingFunctions): Ditto.

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

8 years agoNew flakiness dashboard should align results by revision numbers
rniwa@webkit.org [Tue, 22 Oct 2013 01:51:37 +0000 (01:51 +0000)]
New flakiness dashboard should align results by revision numbers
https://bugs.webkit.org/show_bug.cgi?id=123129

Reviewed by Tim Horton.

* include/config.json: Specify the default cache time to be 10 minutes.
* include/json-shared.php: Added Expires and Cache-Control headers. It's configurable via config.json.
* index.html:
(TestResultsView._createResultCell): Don't put '-' in a result cell without time.
(TestResultsView._populateTestPane): Create an array of build times ordered from the newest to the oldest.
Not that build.time() is the newest commit time among all repository for each result. e.g. if we had
both WebKit and Safari repository information in a given result, the newer of the two will be used.
(TestResultsView._createTestResultHeader): Added.
(TestResultsView._createBuildsAndComputeSlownessOfResults): Extracted from _createTestResultRow so
that _populateTestPane could use Build object before calling _createTestResultRow.
(TestResultsView._createTestResultRow): Takes buildTimes. Insert an empty cell for a build time if
the current row doesn't contain that a result for that build time.
(TestResultsView._populateBuilderPane):
* main.css: Tweaked the style so that bubbles are aligned vertically without '-'.
(.resultsTable):
(.resultsTable thead th):
(.resultsTable .resultCell):
(.resultsTable a):
(.resultsTable span a):

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

8 years agoSet svn:mime-type on libWebKitSystemInterfaceMavericks.a so that future changes don...
mrowe@apple.com [Tue, 22 Oct 2013 01:31:08 +0000 (01:31 +0000)]
Set svn:mime-type on libWebKitSystemInterfaceMavericks.a so that future changes don't generate giant commit emails.

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

8 years agoAdd a version of WebKitSystemInterface for Mavericks.
mrowe@apple.com [Tue, 22 Oct 2013 01:27:50 +0000 (01:27 +0000)]
Add a version of WebKitSystemInterface for Mavericks.

Reviewed by Ryosuke Niwa.

Source/WebKit/mac:

* Configurations/DebugRelease.xcconfig:

Source/WebKit2:

* Configurations/DebugRelease.xcconfig:

Tools:

* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* Scripts/copy-webkitlibraries-to-product-directory:
* WebKitTestRunner/Configurations/DebugRelease.xcconfig:

WebKitLibraries:

* libWebKitSystemInterfaceMavericks.a: Added.

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

8 years agoUse TYPE_CASTS_BASE for CSS_VALUE_TYPE_CASTS
gyuyoung.kim@samsung.com [Tue, 22 Oct 2013 01:25:20 +0000 (01:25 +0000)]
Use TYPE_CASTS_BASE for CSS_VALUE_TYPE_CASTS
https://bugs.webkit.org/show_bug.cgi?id=123126

Reviewed by Andreas Kling.

TYPE_CASTS_BASE was moved to common place to be used by all toFoo().
CSS_VALUE_TYPE_CASTS starts to use it for CSS child value. This change
generates plenty more helper functions for toCSSFooValue().

Additionally, this use support that toWebKitCSSFooValue, which couldn't
use CSS_VALUE_TYPE_CASTS macro.

No new tests, no behavior change.

* css/CSSAspectRatioValue.h:
* css/CSSBorderImageSliceValue.h:
* css/CSSCalculationValue.h:
* css/CSSCanvasValue.h:
* css/CSSCrossfadeValue.h:
* css/CSSCursorImageValue.h:
* css/CSSFilterImageValue.h:
* css/CSSFontFaceSrcValue.h:
* css/CSSFontFeatureValue.h:
* css/CSSFontValue.h:
* css/CSSFunctionValue.h:
* css/CSSGradientValue.h:
* css/CSSGridTemplateValue.h:
* css/CSSImageSetValue.h:
* css/CSSImageValue.h:
* css/CSSInheritedValue.h:
* css/CSSInitialValue.h:
* css/CSSLineBoxContainValue.h:
* css/CSSPrimitiveValue.h:
* css/CSSReflectValue.h:
* css/CSSShadowValue.h:
* css/CSSTimingFunctionValue.h:
* css/CSSUnicodeRangeValue.h:
* css/CSSValue.h:
* css/CSSValueList.h:
* css/CSSVariableValue.h:
* css/WebKitCSSArrayFunctionValue.h:
* css/WebKitCSSFilterValue.h:
* css/WebKitCSSMatFunctionValue.h:
* css/WebKitCSSMixFunctionValue.h:
* css/WebKitCSSSVGDocumentValue.h:
* css/WebKitCSSShaderValue.h:

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

8 years agoBad cast with toRenderBoxModelObject in RenderBlock::updateFirstLetter()
joone.hur@intel.com [Tue, 22 Oct 2013 00:29:46 +0000 (00:29 +0000)]
Bad cast with toRenderBoxModelObject in RenderBlock::updateFirstLetter()
https://bugs.webkit.org/show_bug.cgi?id=123013

Reviewed by Andreas Kling.

No new tests because this was reported by Google ClusterFuzz.
https://codereview.chromium.org/25713009/

There is a case that toRenderBoxModelObject causes a crash in RenderBlock::updateFirstLetter()
due to bad cast, so we need to check whether the RenderObject is a RenderBoxModelObject
by running isBoxModelObject() before calling toRenderBoxModelObject.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetter):

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

8 years agoMake IDBTransactionCoordinatorLevelDB cross platform
beidson@apple.com [Tue, 22 Oct 2013 00:18:03 +0000 (00:18 +0000)]
Make IDBTransactionCoordinatorLevelDB cross platform
https://bugs.webkit.org/show_bug.cgi?id=123124

Enthusiastically reviewed by Tim Horton.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.xcodeproj/project.pbxproj:

Make more methods pure virtual in the interface:
* Modules/indexeddb/IDBTransactionBackendInterface.h:
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:

Update the name of the class, and use IDBTransactionBackendInterface instead of IDBTransactionBackendLeveDB:
* Modules/indexeddb/IDBTransactionCoordinator.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp.
(WebCore::IDBTransactionCoordinator::create):
(WebCore::IDBTransactionCoordinator::IDBTransactionCoordinator):
(WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator):
(WebCore::IDBTransactionCoordinator::didCreateTransaction):
(WebCore::IDBTransactionCoordinator::didStartTransaction):
(WebCore::IDBTransactionCoordinator::didFinishTransaction):
(WebCore::IDBTransactionCoordinator::isActive):
(WebCore::IDBTransactionCoordinator::processStartedTransactions):
(WebCore::doScopesOverlap):
(WebCore::IDBTransactionCoordinator::canRunTransaction):
* Modules/indexeddb/IDBTransactionCoordinator.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h.

Update the name of the class elsewhere:
* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
(WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
(WebCore::IDBDatabaseBackendLevelDB::transactionCoordinator):
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

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

8 years ago[iOS] Upstream JSGlobalObject::shouldInterruptScriptBeforeTimeout()
dbates@webkit.org [Mon, 21 Oct 2013 23:54:20 +0000 (23:54 +0000)]
[iOS] Upstream JSGlobalObject::shouldInterruptScriptBeforeTimeout()
https://bugs.webkit.org/show_bug.cgi?id=123045

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

* jsc.cpp: Add function pointer for shouldInterruptScriptBeforeTimeout
to global method table.
* runtime/JSGlobalObject.cpp: Ditto.
* runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::shouldInterruptScriptBeforeTimeout): Added.

Source/WebCore:

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::shouldInterruptScriptToPreventInfiniteRecursionWhenClosingPage): Added.
(WebCore::JSDOMWindowBase::shouldInterruptScript): Extracted comment and assertion
about null Page object into WebCore::shouldInterruptScriptToPreventInfiniteRecursionWhenClosingPage()
so that it can be shared by both this function and JSDOMWindowBase::shouldInterruptScriptBeforeTimeout().
(WebCore::JSDOMWindowBase::shouldInterruptScriptBeforeTimeout):
* bindings/js/JSDOMWindowBase.h:
* bindings/js/JSWorkerGlobalScopeBase.cpp:
(WebCore::JSWorkerGlobalScopeBase::shouldInterruptScriptBeforeTimeout): Added.
* bindings/js/JSWorkerGlobalScopeBase.h:
* loader/EmptyClients.h: Added isStopping(). We'll land the iOS chrome client implementation
in a subsequent patch.
* page/ChromeClient.h: Added isStopping().

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

8 years agoWeb Inspector: [CSS Regions] Flows are not loading if you refresh the page several...
achicu@adobe.com [Mon, 21 Oct 2013 23:35:13 +0000 (23:35 +0000)]
Web Inspector: [CSS Regions] Flows are not loading if you refresh the page several times
https://bugs.webkit.org/show_bug.cgi?id=123123

Reviewed by Joseph Pecoraro.

There was a typo in the code where an exception was thrown because "flowKey" was undefined.

* UserInterface/DOMTree.js:
(WebInspector.DOMTree.prototype._contentFlowListWasUpdated):

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

8 years ago[iOS] Upstream JSC Objective-C API compiler warning fixes
dbates@webkit.org [Mon, 21 Oct 2013 23:28:10 +0000 (23:28 +0000)]
[iOS] Upstream JSC Objective-C API compiler warning fixes
https://bugs.webkit.org/show_bug.cgi?id=123125

Reviewed by Mark Hahnenberg.

Based on a patch by Mark Hahnenberg.

* API/JSValue.mm:
(-[JSValue toPoint]): Cast to CGFloat to fix some compiler warnings about double narrowing to float.
(-[JSValue toSize]): Ditto.
* API/tests/testapi.mm: Changed a test that was failing due to overflow of 32-bit NSUInteger on armv7.

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

8 years agoNavigation policy callback not called when performing the same fragment navigation...
andersca@apple.com [Mon, 21 Oct 2013 22:55:14 +0000 (22:55 +0000)]
Navigation policy callback not called when performing the same fragment navigation twice
https://bugs.webkit.org/show_bug.cgi?id=123121
<rdar://problem/15230466>

Reviewed by Beth Dakin.

Source/WebCore:

There's code in PolicyChecker::checkNavigationPolicy that will call the decision function right away
if the requests are equal, without consulting any policy client. Because of this, make sure to empty out
the last checked request of the document loader when doing a fragment navigation.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithDocumentLoader):

Tools:

Add a test.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/FragmentNavigation.html: Added.
* TestWebKitAPI/Tests/mac/FragmentNavigation.mm: Added.
(+[WebKit1FragmentNavigationTestDelegate shared]):
(-[WebKit1FragmentNavigationTestDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
(-[WebKit1FragmentNavigationTestDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
(-[WebKit1FragmentNavigationTestDelegate webView:didFinishLoadForFrame:]):
(-[WebKit1FragmentNavigationTestDelegate _runNextTestWithWebView:]):
(TestWebKitAPI::TEST):

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

8 years ago[iOS] Mark classes JS{Context, ManagedValue, Value, VirtualMachine} as
dbates@webkit.org [Mon, 21 Oct 2013 22:49:44 +0000 (22:49 +0000)]
[iOS] Mark classes JS{Context, ManagedValue, Value, VirtualMachine} as
available since iOS 7.0
https://bugs.webkit.org/show_bug.cgi?id=123122

Reviewed by Dan Bernstein.

* API/JSContext.h:
* API/JSManagedValue.h:
* API/JSValue.h:
* API/JSVirtualMachine.h:

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

8 years agoTry to fix the Mac 32-bit build.
mitz@apple.com [Mon, 21 Oct 2013 22:48:59 +0000 (22:48 +0000)]
Try to fix the Mac 32-bit build.

* UIProcess/API/mac/WKBrowsingContextController.h:
* UIProcess/API/mac/WKBrowsingContextController.mm:

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

8 years agoRemove platform #ifdefs from WebDataSourcePrivate.h
dbates@webkit.org [Mon, 21 Oct 2013 22:46:32 +0000 (22:46 +0000)]
Remove platform #ifdefs from WebDataSourcePrivate.h
https://bugs.webkit.org/show_bug.cgi?id=123120
<rdar://problem/15275533>

Reviewed by Anders Carlsson.

* WebView/WebDataSource.mm:
(-[WebDataSource _setAllowToBeMemoryMapped]): Define empty implementation when building without
disk image cache enabled.
(-[WebDataSource setDataSourceDelegate:]): Ditto.
(-[WebDataSource dataSourceDelegate]): Return nullptr when building without disk image cache
enabled on iOS.
* WebView/WebDataSourcePrivate.h: Removed platform #ifdefs added in
<http://trac.webkit.org/changeset/156918> (https://bugs.webkit.org/show_bug.cgi?id=121985)

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

8 years agoGive up on building RemoteLayerTreeTransaction::dump on Lion, it just won't work.
timothy_horton@apple.com [Mon, 21 Oct 2013 22:40:34 +0000 (22:40 +0000)]
Give up on building RemoteLayerTreeTransaction::dump on Lion, it just won't work.

This definitely ought to fix the build.

* Shared/mac/RemoteLayerTreeTransaction.h:
* Shared/mac/RemoteLayerTreeTransaction.mm:
* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::commit):

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

8 years agoNew flakiness dashboard show test time, modifiers, and flaky tests
rniwa@webkit.org [Mon, 21 Oct 2013 22:25:06 +0000 (22:25 +0000)]
New flakiness dashboard show test time, modifiers, and flaky tests
https://bugs.webkit.org/show_bug.cgi?id=123119

Reviewed by Tim Horton.

* api/failing-tests.php: Manually serialize each row in the results to avoid hitting the memory limit.
* include/db.php:
(Database::query): Added.
(Database::fetch_next_row): Added.
* include/init-database.sql: Added modifiers and time columns to results table.
* include/test-results.php:
(store_test_results): Update start_time and end_time to the union of the new interval and the existing interval.
(recursively_add_test_results): Handle empty $full_name to eliminate the loop over tests in store_test_results.
Also verify that each test name, expected and actual results conform to the specific format to prevent XSS.
Also use insert_row instead of select_or_insert_row to avoid issuing an unnecessary SQL query.
(format_result): Extracted from format_result_rows. Used in failing-tests.php.
* index.html:
(TestResultsView): Added _currentBuilderFailureType and _currentBuilderDays.
(TestResultsView._createResultCell): Show the test time and the expected result.
(TestResultsView._createTestResultRow): Compute the slowest run and also round time to tenth of second for time
less than 10s or second if it's more than 10s so that the test time will always be shown in two digits.
Also show the bug number and the latest expected result on the left columns after linkifying the bug numbers.
(TestResultsView._matchesFailureType): Added. Determines whether results is of a particular failure type.
(TestResultsView._populateBuilderPane):
(TestResultsView.fetchFailingTestsForBuilder): Store the failure type such as flaky, wrongtestexpectations.
(TestResultsView.updateLocationHash):
(TestResultsView.loadTestsFromLocationHash):
(fetchManifest):
* js/dom.js:
(element): appendChild if an item is a Node. Otherwise, e.g. integer, create a text node out of toString() call.
* main.css: Updated styles.

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

8 years agoMaybe a Lion build fix after r157731, part 2.
timothy_horton@apple.com [Mon, 21 Oct 2013 22:21:03 +0000 (22:21 +0000)]
Maybe a Lion build fix after r157731, part 2.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):

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

8 years agoUnreviewed build fix; unprotect the declaration of updateSleepDisabling();
jer.noble@apple.com [Mon, 21 Oct 2013 22:11:00 +0000 (22:11 +0000)]
Unreviewed build fix; unprotect the declaration of updateSleepDisabling();

* html/HTMLMediaElement.h:

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

8 years ago[Cocoa] Back/forward list UI process API
mitz@apple.com [Mon, 21 Oct 2013 22:09:53 +0000 (22:09 +0000)]
[Cocoa] Back/forward list UI process API
https://bugs.webkit.org/show_bug.cgi?id=123109

Reviewed by Darin Adler.

* CMakeLists.txt: Updated for renames.
* GNUmakefile.list.am: Ditto.

* Shared/Cocoa: Added.
* Shared/Cocoa/WKNSArray.h: Added. WKNSArray is an internal NSArray subclass backed by
a WebKit::ImmutableArray.
* Shared/Cocoa/WKNSArray.mm: Added.
(+[WKNSArray web_arrayWithImmutableArray:]): Added.
(-[WKNSArray web_initWithImmutableArray:]): Added.
(-[WKNSArray count]): Added.
(-[WKNSArray objectAtIndex:]): Added.
(-[WKNSArray copyWithZone:]): Added.

* Shared/Cocoa/WKNSObjectExtras.h: Added. Declares a category on NSObject that allows us to
vend WebKit API objects as Objective-C objects.
* Shared/Cocoa/WKNSObjectExtras.mm: Added.
(-[WKObject initWithAPIObject:]): WKObject is the generic Cocoa wrapper for API objects.
(-[WKObject isEqual:]): Check for equality of the underlying object.
(-[WKObject hash]): Return a pointer to the underlying object.
(-[WKObject description]): Added.
(+[NSObject _web_objectWithAPIObject:]): Added. Returns an appropriate Objective-C object
for the given API object. Currently returns a WKBackForwardListItem for a back/forward list
item and a generic WKObject for all other types.

* UIProcess/API/C/WKBackForwardList.cpp: Renamed.
* UIProcess/API/C/WKBackForwardList.h: Renamed.
* UIProcess/API/C/WKBackForwardListItem.cpp: Renamed.
* UIProcess/API/C/WKBackForwardListItem.h: Renamed.
* UIProcess/API/C/WKBackForwardListItemRef.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardListItem.cpp.
* UIProcess/API/C/WKBackForwardListItemRef.h: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardListItem.h.
* UIProcess/API/C/WKBackForwardListRef.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardList.cpp.
* UIProcess/API/C/WKBackForwardListRef.h: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardList.h.

* UIProcess/API/C/WebKit2_C.h: Updated for header renames.

* UIProcess/API/efl/ewk_back_forward_list.cpp: Updated for rename.
* UIProcess/API/efl/ewk_back_forward_list_item.cpp: Ditto.

* UIProcess/API/mac/WKBrowsingContextController.h: Declared backForwardList property.
* UIProcess/API/mac/WKBrowsingContextController.mm:
(-[WKBrowsingContextController backForwardList]): Added this accessor.

* UIProcess/Cocoa: Added.
* UIProcess/Cocoa/WKBackForwardList.h: Added.
* UIProcess/Cocoa/WKBackForwardList.mm: Added.
(toWKBackForwardListItem): Added this helper.
(-[WKBackForwardList currentItem]): Added.
(-[WKBackForwardList backItem]): Added.
(-[WKBackForwardList forwardItem]): Added.
(-[WKBackForwardList itemAtIndex:]): Added.
(-[WKBackForwardList backListCount]): Added.
(-[WKBackForwardList forwardListCount]): Added.
(-[WKBackForwardList backListWithLimit:]): Added.
(-[WKBackForwardList forwardListWithLimit:]): Added.
(-[WKBackForwardList _initWithList:]): Added.
* UIProcess/Cocoa/WKBackForwardListInternal.h: Added.

* UIProcess/Cocoa/WKBackForwardListItem.h: Added.
* UIProcess/Cocoa/WKBackForwardListItem.mm: Added.
(-[WKBackForwardListItem URL]): Added.
(-[WKBackForwardListItem title]): Added.
(-[WKBackForwardListItem originalURL]): Added.
(-[WKBackForwardListItem isEqual:]): Check for equality of the underlying object.
(-[WKBackForwardListItem hash]): Return a pointer to the underlying object
(-[WKBackForwardListItem _initWithItem:]): Added.
* UIProcess/Cocoa/WKBackForwardListItemInternal.h: Added.

* WebKit2.xcodeproj/project.pbxproj: Updated for renames and additions.

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

8 years agoStyle checker should allow a space after the @property keyword
mitz@apple.com [Mon, 21 Oct 2013 22:06:20 +0000 (22:06 +0000)]
Style checker should allow a space after the @property keyword
https://bugs.webkit.org/show_bug.cgi?id=123117

Reviewed by Anders Carlsson.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_spacing_for_function_call): Allow a space between @property and the following (
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_spacing_for_fncall): Added a test case.

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

8 years agoAvoid JSC debugger overhead unless needed.
mark.lam@apple.com [Mon, 21 Oct 2013 22:00:40 +0000 (22:00 +0000)]
Avoid JSC debugger overhead unless needed.
https://bugs.webkit.org/show_bug.cgi?id=123084.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

- If no breakpoints are set, we now avoid calling the debug hook callbacks.
- If no break on exception is set, we also avoid exception event debug callbacks.
- When we return from the ScriptDebugServer to the JSC::Debugger, we may no
  longer call the debug hook callbacks if not needed. Hence, the m_currentCallFrame
  pointer in the ScriptDebugServer may become stale. To avoid this issue, before
  returning, the ScriptDebugServer will clear its m_currentCallFrame if
  needsOpDebugCallbacks() is false.

* debugger/Debugger.cpp:
(JSC::Debugger::Debugger):
(JSC::Debugger::setNeedsExceptionCallbacks):
(JSC::Debugger::setShouldPause):
(JSC::Debugger::updateNumberOfBreakpoints):
(JSC::Debugger::updateNeedForOpDebugCallbacks):
* debugger/Debugger.h:
* interpreter/Interpreter.cpp:
(JSC::Interpreter::unwind):
(JSC::Interpreter::debug):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_debug):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_debug):
* llint/LLIntOffsetsExtractor.cpp:
* llint/LowLevelInterpreter.asm:

Source/WebCore:

No new tests.

- If no breakpoints are set, we now avoid calling the debug hook callbacks.
- If no break on exception is set, we also avoid exception event debug callbacks.
- When we return from the ScriptDebugServer to the JSC::Debugger, we may no
  longer call the debug hook callbacks if not needed. Hence, the m_currentCallFrame
  pointer in the ScriptDebugServer may become stale. To avoid this issue, before
  returning, the ScriptDebugServer will clear its m_currentCallFrame if
  needsOpDebugCallbacks() is false.

* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore::ScriptDebugServer::clearBreakpoints):
(WebCore::ScriptDebugServer::setPauseOnExceptionsState):
(WebCore::ScriptDebugServer::setPauseOnNextStatement):
(WebCore::ScriptDebugServer::breakProgram):
(WebCore::ScriptDebugServer::stepIntoStatement):
(WebCore::ScriptDebugServer::dispatchDidContinue):
(WebCore::ScriptDebugServer::exception):
(WebCore::ScriptDebugServer::didReachBreakpoint):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::reset):

Source/WebKit/mac:

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

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

8 years agoGrammar markers are not updated when switching between 1x and 2x
commit-queue@webkit.org [Mon, 21 Oct 2013 21:31:28 +0000 (21:31 +0000)]
Grammar markers are not updated when switching between 1x and 2x
https://bugs.webkit.org/show_bug.cgi?id=122146

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-21
Reviewed by Dean Jackson.

Source/WebCore:

When running editing/spelling/grammar-markers-hidpi.html, the 2x
grammar/spelling dot resources are cached. If you then run
editing/spelling/grammar-markers.html without tearing down WebKit,
it re-uses the 2x dots. The difference between the two tests is a call
to testRunner.setBackingScaleFactor().

We create a NSColor from an NSImage, and remember it in a static
variable. However, NSColor inspects the current graphics context to
determine which resolution to use, and then remembers that decision.
Therefore, we want to recreate the NSColor whenever the device pixel
ratio changes. This patch adds a new static function to GraphicsContext
which recreates this NSColor every time the ratio changes.

Tests: editing/spelling/grammar-markers.html
       editing/spelling/inline_spelling_markers.html

* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::makePattern):
(WebCore::GraphicsContext::drawLineForDocumentMarker):

LayoutTests:

* platform/mac/editing/spelling/grammar-markers-expected.png:
* platform/mac/editing/spelling/inline_spelling_markers-expected.png:

* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::makePattern):
(WebCore::GraphicsContext::drawLineForDocumentMarker):

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

8 years ago[WIN] Unreviewed build correction.
bfulgham@apple.com [Mon, 21 Oct 2013 21:26:10 +0000 (21:26 +0000)]
[WIN] Unreviewed build correction.

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Handle new JIT files as C++ implementation
  sources, not header files.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.

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

8 years agoUse pink layer borders for compositing layers with a contents layer
simon.fraser@apple.com [Mon, 21 Oct 2013 21:22:26 +0000 (21:22 +0000)]
Use pink layer borders for compositing layers with a contents layer
https://bugs.webkit.org/show_bug.cgi?id=123118

Reviewed by Dean Jackson.

With the existing layer border colors, it's not possible to distinguish an empty
layer from one with solid color, image or video contents. So use a pink color
for those. This makes it easier to diagnose bugs like 122784.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::getDebugBorderInfo):

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

8 years agoLimit use of display sleep assertion when <video> element is off-screen.
jer.noble@apple.com [Mon, 21 Oct 2013 21:20:55 +0000 (21:20 +0000)]
Limit use of display sleep assertion when <video> element is off-screen.
https://bugs.webkit.org/show_bug.cgi?id=123041

Reviewed by Darin Adler.

Use page visibility changes to suspend and resume the use of sleep assertions in
HTMLMediaElement.

Page will propogate the page visibility change notifications to its Documents, which
will further propogate those notifications to registered elements.  Upon receiving
these notifications, HTMLMediaElement will release or take a DisplaySleepDisabler
token if necessary.

Also, rename HTMLMediaElement's updateDisableSleep() to updateSleepDisabling() and wrap
the implementation in a PLATFORM(MAC) guard rather than at each call site.

* dom/Document.cpp:
(WebCore::Document::registerForVisibilityStateCallbacks): Added registration method.
(WebCore::Document::unregisterForVisibilityStateCallbacks): Added unregistration method.
(WebCore::Document::visibilityStateChanged): Call all registered clients.
* dom/Document.h:
* dom/Element.h:
(WebCore::Element::visibilityStateChanged): Added default virtual method to be overridden
    by subclasses.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Register for the notification, and check the
    current status of Document::hidden().
(WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for the notification.
(WebCore::HTMLMediaElement::visibilityStateChanged): Set m_displaySleepDisablingSuspended
    and call updateSleepDisabling().
(WebCore::HTMLMediaElement::shouldDisableSleep): Add a check for m_displaySleepDisablingSuspended.
* html/HTMLMediaElement.h:
* page/Page.cpp:
(WebCore::Page::setVisibilityState): Pass to every child document.

Rename updateDisableSleep() -> updateSleepDisabling():
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::~HTMLMediaElement):
(WebCore::HTMLMediaElement::parseAttribute):
(WebCore::HTMLMediaElement::mediaPlayerRateChanged):
(WebCore::HTMLMediaElement::clearMediaPlayer):
(WebCore::HTMLMediaElement::stop):

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

8 years agoMaybe a Lion build fix after r157731.
timothy_horton@apple.com [Mon, 21 Oct 2013 21:20:35 +0000 (21:20 +0000)]
Maybe a Lion build fix after r157731.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):

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

8 years agoMediaStreamTrack now tracks its own state
commit-queue@webkit.org [Mon, 21 Oct 2013 21:14:37 +0000 (21:14 +0000)]
MediaStreamTrack now tracks its own state
https://bugs.webkit.org/show_bug.cgi?id=123025

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-21
Reviewed by Jer Noble.

The spec says that a MediaStreamSource can be shared by different tracks,
so a track must have its own state tracking, synchronizing with its MediaStreamSource when
the underlying MediaStreamSource changes the readyState.
In the old implementation if a user invoked the stop method, its readyState method was still
returning the MediaStreamSource state, which was wrong.
This also adds a setEnabled method, which can be used to set the state of a track when a
remote peer ends it, for instance.

No new tests needed.

* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::readyState):
(WebCore::MediaStreamTrack::setState):
(WebCore::MediaStreamTrack::stopProducingData):
(WebCore::MediaStreamTrack::ended):
(WebCore::MediaStreamTrack::sourceStateChanged):
(WebCore::MediaStreamTrack::trackDidEnd):
* Modules/mediastream/MediaStreamTrack.h:

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

8 years agoRemote Layer Tree: Clean up transaction logging
timothy_horton@apple.com [Mon, 21 Oct 2013 20:42:11 +0000 (20:42 +0000)]
Remote Layer Tree: Clean up transaction logging
https://bugs.webkit.org/show_bug.cgi?id=123116

Reviewed by Anders Carlsson.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::RemoteLayerTreeTextStream):
(WebKit::RemoteLayerTreeTextStream::increaseIndent):
(WebKit::RemoteLayerTreeTextStream::decreaseIndent):
(WebKit::RemoteLayerTreeTextStream::writeIndent):
(WebKit::RemoteLayerTreeTextStream::operator<<):
Add some stream operator overrides for various types we need to dump.
Add a notion of current indent to our TextStream subclass to make it
easy to keep track of where we are.

(WebKit::dumpProperty):
Added, hand any arbitrary type to RemoteLayerTreeTransaction.

(WebKit::dumpChangedLayers):
(WebKit::RemoteLayerTreeTransaction::dump):
Make use of TextStream.

* WebCore.exp.in:
Export some TextStream functions.

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

8 years agoTransition most use of IDBBackingStoreLevelDB to IDBBackingStoreInterface
beidson@apple.com [Mon, 21 Oct 2013 20:31:07 +0000 (20:31 +0000)]
Transition most use of IDBBackingStoreLevelDB to IDBBackingStoreInterface
https://bugs.webkit.org/show_bug.cgi?id=123105

Reviewed by Anders Carlsson.

Source/WebCore:

Export more required headers:
* WebCore.xcodeproj/project.pbxproj:

Flesh out many of the pure virtual methods on IDBBackingStoreInterface, as well as
the RecordIdentifier and Cursor classes:

* Modules/indexeddb/IDBBackingStoreInterface.h:
(WebCore::IDBBackingStoreInterface::RecordIdentifier::~RecordIdentifier):
(WebCore::IDBBackingStoreInterface::Cursor::~Cursor):

Use IDBBackingStoreInterface, IDBBackingStoreInterface::RecordIdentifier, and
IDBBackingStoreInterface::Cursor wherever possible:

* Modules/indexeddb/IDBFactoryBackendInterface.cpp:
* Modules/indexeddb/IDBFactoryBackendInterface.h:

* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStoreLevelDB::putRecord):
(WebCore::IDBBackingStoreLevelDB::deleteRecord):
(WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
(WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
(WebCore::ObjectStoreKeyCursorImpl::clone):
(WebCore::ObjectStoreCursorImpl::clone):
(WebCore::IndexKeyCursorImpl::clone):
(WebCore::IndexCursorImpl::clone):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexCursor):
(WebCore::IDBBackingStoreLevelDB::Transaction::Transaction):
(WebCore::IDBBackingStoreLevelDB::Transaction::begin):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
(WebCore::IDBBackingStoreLevelDB::RecordIdentifier::RecordIdentifier):

* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
(WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:

(WebCore::IDBCursorBackendLevelDB::create):
* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
(WebCore::IDBDatabaseBackendLevelDB::create):
(WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
(WebCore::IDBDatabaseBackendLevelDB::backingStore):
(WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):
(WebCore::IDBDatabaseBackendLevelDB::createTransaction):
* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
(WebCore::IDBFactoryBackendLevelDB::createTransactionBackend):
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::verifyIndexKeys):
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys):
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::addingKeyAllowed):
(WebCore::IDBObjectStoreBackendLevelDB::makeIndexWriters):
(WebCore::IDBObjectStoreBackendLevelDB::generateKey):
(WebCore::IDBObjectStoreBackendLevelDB::updateKeyGenerator):
* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
(WebCore::IDBTransactionBackendLevelDB::create):
(WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
(WebCore::GetOperation::perform):
(WebCore::OpenCursorOperation::perform):
(WebCore::CountOperation::perform):
(WebCore::DeleteRangeOperation::perform):
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
(WebCore::CreateObjectStoreOperation::create):
(WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
(WebCore::DeleteObjectStoreOperation::create):
(WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
(WebCore::CreateIndexOperation::create):
(WebCore::CreateIndexOperation::CreateIndexOperation):
(WebCore::DeleteIndexOperation::create):
(WebCore::DeleteIndexOperation::DeleteIndexOperation):
(WebCore::GetOperation::create):
(WebCore::GetOperation::GetOperation):
(WebCore::PutOperation::create):
(WebCore::PutOperation::PutOperation):
(WebCore::OpenCursorOperation::create):
(WebCore::OpenCursorOperation::OpenCursorOperation):
(WebCore::CountOperation::create):
(WebCore::CountOperation::CountOperation):
(WebCore::DeleteRangeOperation::create):
(WebCore::DeleteRangeOperation::DeleteRangeOperation):
(WebCore::ClearOperation::create):
(WebCore::ClearOperation::ClearOperation):

Source/WebKit2:

Stub out a new pure virtual method:
* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
(WebKit::WebIDBFactoryBackend::createTransactionBackend):
* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:

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

8 years ago[CSS Shapes][CSS Regions] Don't apply shape-inside when we have multiple auto-height...
zoltan@webkit.org [Mon, 21 Oct 2013 20:18:54 +0000 (20:18 +0000)]
[CSS Shapes][CSS Regions] Don't apply shape-inside when we have multiple auto-height regions and the height is not resolved
https://bugs.webkit.org/show_bug.cgi?id=123103

Reviewed by David Hyatt.

When we have multiple regions with auto-height, the region's height is not resolved from other elements we can't apply the
the shape on the region. This patch prevents to apply the shape and fixes the behavior for these cases.

Source/WebCore:

Test: fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutShapeInsideInfo):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):

LayoutTests:

* fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions-expected.html: Added.
* fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html: Added.

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

8 years agoRemote Layer Tree: Backing store should take contentsScale into account
timothy_horton@apple.com [Mon, 21 Oct 2013 20:16:40 +0000 (20:16 +0000)]
Remote Layer Tree: Backing store should take contentsScale into account
https://bugs.webkit.org/show_bug.cgi?id=123106

Reviewed by Simon Fraser.

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::ensureBackingStore):
(PlatformCALayerRemote::setNeedsDisplay):
(PlatformCALayerRemote::setContentsScale):
Inform the backing store of the contentsScale, and when it changes.

* WebProcess/WebPage/mac/RemoteLayerBackingStore.h:
(WebKit::RemoteLayerBackingStore::scale): Added.
(WebKit::RemoteLayerBackingStore::mapToContentCoordinates): Added.
* WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:
(RemoteLayerBackingStore::RemoteLayerBackingStore):
(RemoteLayerBackingStore::encode):
(RemoteLayerBackingStore::decode):
(RemoteLayerBackingStore::mapToContentCoordinates):
Factor out flipping so we can use it for repaints in multiple places.

(RemoteLayerBackingStore::setNeedsDisplay):
(RemoteLayerBackingStore::display):
Create a buffer scaled up by contentsScale, take the scale into account
when copying clean bits from the front buffer, and apply the scale before
painting into the back buffer.

* WebCore.exp.in:
Export FloatRect::scale.

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

8 years agoRestore accidentally removed files.
oliver@apple.com [Mon, 21 Oct 2013 20:15:29 +0000 (20:15 +0000)]
Restore accidentally removed files.

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

8 years agoRenderScrollbarPart doesn't need styleWillChange().
akling@apple.com [Mon, 21 Oct 2013 20:10:36 +0000 (20:10 +0000)]
RenderScrollbarPart doesn't need styleWillChange().
<https://webkit.org/b/123113>

We will call setInline(false) in styleDidChange(), there's no need
to override styleWillChange() just to do it twice.

Reviewed by Darin Adler.

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

8 years ago[CSS Regions] The layers from the flow thread should be collected under the regions...
commit-queue@webkit.org [Mon, 21 Oct 2013 19:38:30 +0000 (19:38 +0000)]
[CSS Regions] The layers from the flow thread should be collected under the regions' layers.
https://bugs.webkit.org/show_bug.cgi?id=120457

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-10-21
Reviewed by David Hyatt.

Source/WebCore:

This patch is based on the work of Alexandru Chiculita at https://bugs.webkit.org/attachment.cgi?id=203872&action=review

The composited layers inside the named flow threads are collected as part of the regions (as children of the
GraphicsLayer of the layer that corresponds to the region (which is attached to the parent renderer of
RenderNameFlowFragment)).
When a region displays a layer that needs accelerated compositing we activate the accelerated compositing for
that region too (inside RenderLayerCompositor::computeRegionCompositingRequirements).

This patch has landed before (as http://trac.webkit.org/changeset/156451), but was reverted because
fast/multicol/mixed-positioning-stacking-order.html failed. The fix is inside RenderLayerCompositor::canBeComposited
that only enables compositing for layers inside flow threads that collect the graphics layers under the regions.

Another change from changeset #156451 is that now the region renderers are created as anonymous renderers under
the element that has the flow-from property. When a composited layer is needed for the region, it sits in it's
parent renderer, not in the region renderer (RenderNamedFlowFragment).

Tests: compositing/regions/crash-transform-inside-region.html
       compositing/regions/floated-region-with-transformed-child.html
       compositing/regions/move-layer-from-one-region-to-another.html
       compositing/regions/propagate-region-box-shadow-border-padding-for-video.html
       compositing/regions/propagate-region-box-shadow-border-padding.html
       compositing/regions/region-as-layer-in-another-flowthread.html
       compositing/regions/transform-transparent-positioned-video-inside-region.html
       compositing/regions/transformed-layer-inside-transformed-layer.html
       compositing/regions/z-index-update.html
       compositing/regions/z-index.html

* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::propagateStyleToAnonymousChildren): Not for RenderFlowThreads, as they are updated
through the RenderView::styleDidChange function.
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::layout): When the layout of the flow thread is over (including the 2 phase layout),
we update all the mappings between the layers inside the flow thread and the regions where those layers will be
painted.
(WebCore::RenderFlowThread::hasCompositingRegionDescendant): Whether any of the regions has a compositing descendant.
(WebCore::RenderFlowThread::getLayerListForRegion):
(WebCore::RenderFlowThread::regionForCompositedLayer):
(WebCore::RenderFlowThread::cachedRegionForCompositedLayer):
(WebCore::RenderFlowThread::collectsGraphicsLayersUnderRegions):
(WebCore::RenderFlowThread::updateLayerToRegionMappings): Triggers an update of the layers if a layer has moved
from a region to another since the last update.
(WebCore::RenderFlowThread::updateAllLayerToRegionMappings):
* rendering/RenderFlowThread.h:
* rendering/RenderGeometryMap.cpp:
(WebCore::RenderGeometryMap::pushRenderFlowThread):
* rendering/RenderGeometryMap.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintList):
(WebCore::RenderLayer::enclosingFlowThreadAncestor):
(WebCore::RenderLayer::isFlowThreadCollectingGraphicsLayersUnderRegions):
(WebCore::RenderLayer::hitTestList):
(WebCore::RenderLayer::calculateLayerBounds): When we calculate the bounds of the RenderView, we ignore those
flow threads that collect the graphics layers under the regions.
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyNormalFlowList):
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::shouldClipCompositedBounds): Not if it's a flow thread that collects the graphics
layers under the regions
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Now adjusts the ancestorCompositingBounds for the FlowThread.
(WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread): Make sure that the region propagates
its borders, paddings, outlines or box-shadows to layers inside it.
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements): Now calls computeRegionCompositingRequirements.
(WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Do not iterate the RenderFlowThread directly if
we are going to collect the composited layers as part of regions.
(WebCore::RenderLayerCompositor::rebuildRegionCompositingLayerTree):
(WebCore::RenderLayerCompositor::canBeComposited): CSS Regions flow threads do not need to be composited as we
use composited RenderRegions to render the background of the RenderFlowThread.
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason): If it's a container of a css region.
* rendering/RenderLayerCompositor.h:
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::adjustRegionBoundsFromFlowThreadPortionRect):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderNamedFlowFragment.h:
(WebCore::RenderNamedFlowFragment::layerOwner): When the content inside the region requires the region to have a
layer, the layer will be created on the region's parent renderer instead. This method returns that renderer
holding the layer. The return value may be null.
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
(WebCore::RenderNamedFlowThread::nextRendererForNode):
(WebCore::RenderNamedFlowThread::previousRendererForNode):
(WebCore::RenderNamedFlowThread::addFlowChild):
(WebCore::RenderNamedFlowThread::removeFlowChild):
(WebCore::RenderNamedFlowThread::collectsGraphicsLayersUnderRegions):
* rendering/RenderNamedFlowThread.h: m_flowThreadChildList is now allocated through an OwnPtr to keep the render
arena under the size limit.
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::adjustRegionBoundsFromFlowThreadPortionRect):
* rendering/RenderRegion.h:
(WebCore::toRenderRegion):
* rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):
* WebCore.exp.in: WebCore::RenderLayer::isFlowThreadCollectingGraphicsLayersUnderRegions

LayoutTests:

* compositing/regions/crash-transform-inside-region-expected.html: Added.
* compositing/regions/crash-transform-inside-region.html: Added.
* compositing/regions/floated-region-with-transformed-child-expected.html: Added.
* compositing/regions/floated-region-with-transformed-child.html: Added.
* compositing/regions/move-layer-from-one-region-to-another-expected.html: Added.
* compositing/regions/move-layer-from-one-region-to-another.html: Added.
* compositing/regions/propagate-region-box-shadow-border-padding-expected.html: Added.
* compositing/regions/propagate-region-box-shadow-border-padding-for-video-expected.html: Added.
* compositing/regions/propagate-region-box-shadow-border-padding-for-video.html: Added.
* compositing/regions/propagate-region-box-shadow-border-padding.html: Added.
* compositing/regions/region-as-layer-in-another-flowthread-expected.html: Added.
* compositing/regions/region-as-layer-in-another-flowthread.html: Added.
* compositing/regions/transform-transparent-positioned-video-inside-region-expected.html: Added.
* compositing/regions/transform-transparent-positioned-video-inside-region.html: Added.
* compositing/regions/transformed-layer-inside-transformed-layer-expected.html: Added.
* compositing/regions/transformed-layer-inside-transformed-layer.html: Added.
* compositing/regions/webkit-flow-renderer-layer-compositing-expected.html:
* compositing/regions/webkit-flow-renderer-layer-compositing.html:
* compositing/regions/z-index-expected.html: Added.
* compositing/regions/z-index-update-expected.html: Added.
* compositing/regions/z-index-update.html: Added.
* compositing/regions/z-index.html: Added.
* fast/multicol/mixed-positioning-stacking-order-expected.html:
* fast/multicol/mixed-positioning-stacking-order.html:
* fast/repaint/region-painting-composited-element-expected.html:
* fast/repaint/region-painting-composited-element.html:
* platform/mac-wk2/TestExpectations:

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

8 years agoSource/JavaScriptCore: Support computed property names in object literals
oliver@apple.com [Mon, 21 Oct 2013 19:23:24 +0000 (19:23 +0000)]
Source/JavaScriptCore: Support computed property names in object literals
https://bugs.webkit.org/show_bug.cgi?id=123112

Reviewed by Michael Saboff.

Add support for computed property names to the parser.

* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createProperty):
(JSC::ASTBuilder::getName):
* parser/NodeConstructors.h:
(JSC::PropertyNode::PropertyNode):
* parser/Nodes.h:
(JSC::PropertyNode::expressionName):
(JSC::PropertyNode::name):
* parser/Parser.cpp:
(JSC::::parseProperty):
(JSC::::parseStrictObjectLiteral):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::Property::Property):
(JSC::SyntaxChecker::createProperty):
(JSC::SyntaxChecker::operatorStackPop):

LayoutTests: Support expression property names in object literals
https://bugs.webkit.org/show_bug.cgi?id=123112

Reviewed by Michael Saboff.

Add tests

* js/basic-computed-property-name-expected.txt: Added.
* js/basic-computed-property-name.html: Added.
* js/parser-syntax-check-expected.txt:
* js/script-tests/basic-computed-property-name.js: Added.
(a.string_appeared_here.runTest):
* js/script-tests/parser-syntax-check.js:

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

8 years agoFixing mediastream debug build
commit-queue@webkit.org [Mon, 21 Oct 2013 19:02:35 +0000 (19:02 +0000)]
Fixing mediastream debug build
https://bugs.webkit.org/show_bug.cgi?id=123104

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-21
Reviewed by Andreas Kling.

No new tests needed.

* Modules/mediastream/RTCDTMFToneChangeEvent.cpp:
(WebCore::RTCDTMFToneChangeEvent::create):

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

8 years agoMerge RenderListMarker::styleWillChange() into styleDidChange().
akling@apple.com [Mon, 21 Oct 2013 18:29:26 +0000 (18:29 +0000)]
Merge RenderListMarker::styleWillChange() into styleDidChange().
<https://webkit.org/b/123098>

If the marker's list-style-type or list-style-position changed, we
need to dirty the layout. Move this logic to styleDidChange() so we
can get rid of one styleWillChange() overload.

Reviewed by Antti Koivisto.

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

8 years agoLayout Test media/media-controller-time-clamp.html is flaky
ap@apple.com [Mon, 21 Oct 2013 17:04:43 +0000 (17:04 +0000)]
Layout Test media/media-controller-time-clamp.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=123099

* platform/mac/TestExpectations: Marking as such.

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

8 years ago[CSS Regions] Fix WHITESPACE issues in the CSS grammar.
commit-queue@webkit.org [Mon, 21 Oct 2013 16:53:23 +0000 (16:53 +0000)]
[CSS Regions] Fix WHITESPACE issues in the CSS grammar.
https://bugs.webkit.org/show_bug.cgi?id=123082

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-10-21
Reviewed by Andreas Kling.

This is a port of Rune Lillesveen's patch from https://codereview.chromium.org/25607005

Source/WebCore:

Fix WHITESPACE issues in the CSS grammar.

A single WHITESPACE token consumes consecutive spaces, but does not consume
spaces separated by comments. That means S* and S+ in CSS grammars need to
accept multiple WHITESPACE tokens. Additionally, white spaces are not
mandatory to separate an @-symbol and the rest of the prelude.

Use space non-terminal instead of WHITESPACE for S+ in calc expressions.

Use maybe_space non-terminal instead of WHITESPACE for S* after @-webkit-filter
and @-webkit-region.

Tests: fast/css/calc-comments-allowed.html
       fast/regions/webkit-region-syntax-space.html

* css/CSSGrammar.y.in:

LayoutTests:

* css3/filters/custom-with-at-rule-syntax/parsing-at-rule-valid-expected.txt:
* css3/filters/custom-with-at-rule-syntax/script-tests/parsing-at-rule-valid.js:
* fast/css/calc-comments-allowed-expected.html: Added.
* fast/css/calc-comments-allowed.html: Added.
* fast/regions/webkit-region-syntax-space-expected.txt: Added.
* fast/regions/webkit-region-syntax-space.html: Added.

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

8 years agoAdd option so that JSC will crash if it can't allocate executable memory for the...
dbates@webkit.org [Mon, 21 Oct 2013 15:41:07 +0000 (15:41 +0000)]
Add option so that JSC will crash if it can't allocate executable memory for the JITs
https://bugs.webkit.org/show_bug.cgi?id=123048
<rdar://problem/12856193>

Patch by Michael Saboff <msaboff@apple.com> on 2013-10-21
Reviewed by Geoffrey Garen.

Added new option, called crashIfCantAllocateJITMemory. If this option is true then we crash
when checking the validity of the executable allocator. The default value for this option is
false, but jsc sets it to true when built for iOS to make it straightforward to identify whether
the app can obtain executable memory.

* jsc.cpp: Explicitly enable crashIfCantAllocateJITMemory on iOS.
(main):
* runtime/Options.h: Added option crashIfCantAllocateJITMemory.
* runtime/VM.cpp:
(JSC::enableAssembler): Modified to crash if option crashIfCantAllocateJITMemory
is enabled.

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

8 years ago[ATK] Use atk_object_notify_state_change instead of manually emitting signals
mario@webkit.org [Mon, 21 Oct 2013 14:02:03 +0000 (14:02 +0000)]
[ATK] Use atk_object_notify_state_change instead of manually emitting signals
https://bugs.webkit.org/show_bug.cgi?id=122968

Patch by Anton Obzhirov <a.obzhirov@samsung.com> on 2013-10-21
Reviewed by Mario Sanchez Prada.

Refactor emitting "state-change" event to use atk_object_notify_state_change
instead of using g_signal_emit_by_name.

* accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::notifyChildrenSelectionChange):
(WebCore::AXObjectCache::postPlatformNotification):
(WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
(WebCore::AXObjectCache::handleFocusedUIElementChanged):
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleDetach):
* editing/atk/FrameSelectionAtk.cpp:
(WebCore::maybeEmitTextFocusChange):

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

8 years agoMake TYPE_CASTS_BASE more flexible
gyuyoung.kim@samsung.com [Mon, 21 Oct 2013 09:53:08 +0000 (09:53 +0000)]
Make TYPE_CASTS_BASE more flexible
https://bugs.webkit.org/show_bug.cgi?id=122951

Reviewed by Andreas Kling.

TYPE_CASTS_BASE is being used by node|element type casts. However, it is difficult
to be used by other type casts. For instance, CSSValue, Accessibility and so on.
This patch modifies TYPE_CASTS_BASE which can support other type casts.

Besides TYPE_CASTS_BASE body is moved from node.h to Assertions.h.

Source/WebCore:

No new tests, no behavior changes.

* dom/Document.h:
* dom/Node.h:

Source/WTF:

* wtf/Assertions.h:

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

8 years ago[WinCairo] Build does not start.
commit-queue@webkit.org [Mon, 21 Oct 2013 09:44:06 +0000 (09:44 +0000)]
[WinCairo] Build does not start.
https://bugs.webkit.org/show_bug.cgi?id=123059

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-10-21
Reviewed by Csaba Osztrogonác.

The function isAppleWinWebKit() does no longer return true for WinCairo, need to add isWinCairo() checks instead.

* Scripts/build-webkit:

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

8 years agoRemove .qmake.conf files
commit-queue@webkit.org [Mon, 21 Oct 2013 09:43:13 +0000 (09:43 +0000)]
Remove .qmake.conf files
https://bugs.webkit.org/show_bug.cgi?id=123091

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-10-21
Reviewed by Csaba Osztrogonác.

* .qmake.conf: Removed.

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

8 years agoRemove AllInOneFile.cpp
ossy@webkit.org [Mon, 21 Oct 2013 09:32:11 +0000 (09:32 +0000)]
Remove AllInOneFile.cpp
https://bugs.webkit.org/show_bug.cgi?id=123055

Patch by Nadav Rotem <nrotem@apple.com> on 2013-10-21
Reviewed by Csaba Osztrogonác.

* AllInOneFile.cpp: Removed.

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

8 years agoRemove qt from generate-forwarding-headers.pl
commit-queue@webkit.org [Mon, 21 Oct 2013 09:31:07 +0000 (09:31 +0000)]
Remove qt from generate-forwarding-headers.pl
https://bugs.webkit.org/show_bug.cgi?id=123090

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-10-21
Reviewed by Andreas Kling.

* Scripts/generate-forwarding-headers.pl:

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

8 years ago[Jhbuild] Bump the required Jhbuild revision
zandobersek@gmail.com [Mon, 21 Oct 2013 09:00:49 +0000 (09:00 +0000)]
[Jhbuild] Bump the required Jhbuild revision
https://bugs.webkit.org/show_bug.cgi?id=123089

Reviewed by Carlos Garcia Campos.

* jhbuild/jhbuild-wrapper: Latest versions of the gnome-common tools produce failures when configuring Jhbuild
due to the configure.ac script using both IT_PROG_INTLTOOL and AM_GNU_GETTEXT macros. This is already fixed
in the Jhbuild source so a more recent revision of it should be used.

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

8 years ago[GTK] g-ir-scanner should use the configured C compiler
zandobersek@gmail.com [Mon, 21 Oct 2013 08:57:23 +0000 (08:57 +0000)]
[GTK] g-ir-scanner should use the configured C compiler
https://bugs.webkit.org/show_bug.cgi?id=123088

Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

* GNUmakefile.am: Pass the C compiler that was detected at configuration to the g-ir-scanner command
via the CC environment variable. This solves the issue of the scanner running the GCC compiler with
the Clang-specific CFLAGS.

Source/WebKit2:

* GNUmakefile.am: Pass the C compiler that was detected at configuration to the g-ir-scanner command
via the CC environment variable. This solves the issue of the scanner running the GCC compiler with
the Clang-specific CFLAGS.

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

8 years agoASSERTION FAILED: !style->propertyIsImportant(propertyID) in WebCore::setTextDecorati...
commit-queue@webkit.org [Mon, 21 Oct 2013 07:11:03 +0000 (07:11 +0000)]
ASSERTION FAILED: !style->propertyIsImportant(propertyID) in WebCore::setTextDecorationProperty
https://bugs.webkit.org/show_bug.cgi?id=122097

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-21
Reviewed by Ryosuke Niwa.

Source/WebCore:

When remove format command is called we pushdown the ancestor style
down to its children. Currently applying inline style to iframe
while pushing down style which causes iframe to be reinserted in tree and
triggres again subframe loading which repeats everytime and finally
crash happens. So we should avoid applying inline style to iframe
element as it doesnot reflect in its content while pushing down style
on it.

And ASSERT call has been removed from setTextDecoration property as
the scenario is perfectly valid case.

Test: editing/execCommand/remove-format-textdecoration-in-iframe.html

* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Return if
element is iframe.
* editing/EditingStyle.cpp:
(WebCore::StyleChange::setTextDecorationProperty): Remove ASSERT.

LayoutTests:

Added Test cases to verify that crash does not happen in scenario when
remove format command is executed on selection containing the iframe
element and when textdecoration style is defined as !important and
need to pushDown to iframe.

* editing/execCommand/remove-format-textdecoration-in-iframe-expected.txt: Added.
* editing/execCommand/remove-format-textdecoration-in-iframe.html: Added.

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

8 years agoUnreviewed EFL gardening. Update EFL test expectations.
jinwoo7.song@samsung.com [Mon, 21 Oct 2013 06:08:41 +0000 (06:08 +0000)]
Unreviewed EFL gardening. Update EFL test expectations.

* platform/efl/TestExpectations: Skip authentication tests that are failing.

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

8 years agoUnreviewed, cleanup a FIXME comment.
fpizlo@apple.com [Mon, 21 Oct 2013 05:14:53 +0000 (05:14 +0000)]
Unreviewed, cleanup a FIXME comment.

* jit/Repatch.cpp:

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

8 years agoStructureStubInfo's usedRegisters set should be able to track all registers, not...
fpizlo@apple.com [Mon, 21 Oct 2013 04:48:29 +0000 (04:48 +0000)]
StructureStubInfo's usedRegisters set should be able to track all registers, not just the ones that our JIT's view as temporaries
https://bugs.webkit.org/show_bug.cgi?id=123076

Source/JavaScriptCore:

Reviewed by Sam Weinig.

Start preparing for a world in which we are patching code generated by LLVM, which may have
very different register usage conventions than our JITs. This requires us being more explicit
about the registers we are using. For example, the repatching code shouldn't take for granted
that tagMaskRegister holds the TagMask or that the register is even in use.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::numberOfRegisters):
(JSC::MacroAssembler::registerIndex):
(JSC::MacroAssembler::numberOfFPRegisters):
(JSC::MacroAssembler::fpRegisterIndex):
(JSC::MacroAssembler::totalNumberOfRegisters):
* bytecode/StructureStubInfo.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::usedRegisters):
* dfg/DFGSpeculativeJIT.h:
* ftl/FTLSaveRestore.cpp:
(JSC::FTL::bytesForGPRs):
(JSC::FTL::bytesForFPRs):
(JSC::FTL::offsetOfGPR):
(JSC::FTL::offsetOfFPR):
* jit/JITInlineCacheGenerator.cpp:
(JSC::JITByIdGenerator::JITByIdGenerator):
(JSC::JITPutByIdGenerator::JITPutByIdGenerator):
* jit/JITInlineCacheGenerator.h:
(JSC::JITGetByIdGenerator::JITGetByIdGenerator):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):
* jit/RegisterSet.cpp: Added.
(JSC::RegisterSet::specialRegisters):
* jit/RegisterSet.h: Added.
(JSC::RegisterSet::RegisterSet):
(JSC::RegisterSet::set):
(JSC::RegisterSet::clear):
(JSC::RegisterSet::get):
(JSC::RegisterSet::merge):
* jit/Repatch.cpp:
(JSC::generateProtoChainAccessStub):
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):
(JSC::emitPutReplaceStub):
(JSC::tryRepatchIn):
(JSC::linkClosureCall):
* jit/TempRegisterSet.cpp: Added.
(JSC::TempRegisterSet::TempRegisterSet):
* jit/TempRegisterSet.h:

Source/WTF:

Reviewed by Sam Weinig.

Teach BitVector how to efficiently merge (i.e. bitvector |=).

* wtf/BitVector.cpp:
(WTF::BitVector::mergeSlow):
* wtf/BitVector.h:
(WTF::BitVector::merge):
(WTF::BitVector::cleanseInlineBits):

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

8 years agoUnreviewed EFL gardening. Update EFL test expectations.
jinwoo7.song@samsung.com [Mon, 21 Oct 2013 01:02:24 +0000 (01:02 +0000)]
Unreviewed EFL gardening. Update EFL test expectations.

* platform/efl/TestExpectations: Mark fast/workers/worker-call.html as failure.

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

8 years agoMove m_lineBoxes from RenderBlock to RenderBlockFlow (Part 5)
weinig@apple.com [Sun, 20 Oct 2013 22:57:54 +0000 (22:57 +0000)]
Move m_lineBoxes from RenderBlock to RenderBlockFlow (Part 5)
https://bugs.webkit.org/show_bug.cgi?id=122969

Reviewed by Antti Koivisto.

- Move m_lineBoxes to RenderBlockFlow.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::innerTextIfTruncated):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::willBeDestroyed):
(WebCore::RenderBlock::deleteLineBoxTree):
(WebCore::RenderBlock::isSelfCollapsingBlock):
(WebCore::RenderBlock::removeFromDelayedUpdateScrollInfoSet):
(WebCore::RenderBlock::paintContents):
(WebCore::blockDirectionOffset):
(WebCore::inlineDirectionOffset):
(WebCore::RenderBlock::inlineSelectionGaps):
(WebCore::RenderBlock::hitTestContents):
(WebCore::positionForPointRespectingEditingBoundaries):
(WebCore::RenderBlock::positionForPointWithInlineChildren):
(WebCore::RenderBlock::firstLineBoxBaseline):
(WebCore::RenderBlock::inlineBlockBaseline):
(WebCore::RenderBlock::addFocusRingRectsForInlineChildren):
(WebCore::RenderBlock::addFocusRingRects):
(WebCore::RenderBlock::showLineTreeAndMark):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::addOverflowFromInlineChildren):
(WebCore::RenderBlock::hasInlineBoxChildren):
(WebCore::RenderBlock::paintInlineChildren):
(WebCore::RenderBlock::hitTestInlineChildren):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::RenderBlockFlow):
(WebCore::RenderBlockFlow::willBeDestroyed):
(WebCore::RenderBlockFlow::deleteLineBoxTree):
(WebCore::RenderBlockFlow::hitTestInlineChildren):
(WebCore::RenderBlockFlow::adjustForBorderFit):
(WebCore::RenderBlockFlow::fitBorderToLinesIfNeeded):
(WebCore::RenderBlockFlow::markLinesDirtyInBlockRange):
(WebCore::RenderBlockFlow::firstLineBoxBaseline):
(WebCore::RenderBlockFlow::inlineBlockBaseline):
(WebCore::RenderBlockFlow::inlineSelectionGaps):
(WebCore::RenderBlockFlow::positionForBox):
(WebCore::RenderBlockFlow::positionForPointWithInlineChildren):
(WebCore::RenderBlockFlow::addFocusRingRectsForInlineChildren):
(WebCore::RenderBlockFlow::paintInlineChildren):
(WebCore::RenderBlockFlow::relayoutForPagination):
(WebCore::RenderBlockFlow::showLineTreeAndMark):
* rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::lineBoxes):
(WebCore::RenderBlockFlow::firstLineBox):
(WebCore::RenderBlockFlow::lastLineBox):
(WebCore::RenderBlockFlow::firstRootBox):
(WebCore::RenderBlockFlow::lastRootBox):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::addOverflowFromInlineChildren):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::selectionTopAdjustedForPrecedingBlock):

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

8 years agoAvoid unnecessary vector copy in AnimationController event dispatch.
akling@apple.com [Sun, 20 Oct 2013 18:33:58 +0000 (18:33 +0000)]
Avoid unnecessary vector copy in AnimationController event dispatch.
<https://webkit.org/b/122994>

Use Vector's move constructor instead of making a copy of the pending
events queue and then clearing it.

Reviewed by Simon Fraser.

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

8 years agoAdd abstract IDBBackingStoreInterface, use it to get IDBDatabaseBackendLevelDB closer...
beidson@apple.com [Sun, 20 Oct 2013 16:36:41 +0000 (16:36 +0000)]
Add abstract IDBBackingStoreInterface, use it to get IDBDatabaseBackendLevelDB closer to going cross-platform
https://bugs.webkit.org/show_bug.cgi?id=123074

Reviewed by Andreas Kling.

* Modules/indexeddb/IDBBackingStoreInterface.h: Added.
(WebCore::IDBBackingStoreInterface::~IDBBackingStoreInterface):
(WebCore::IDBBackingStoreInterface::Transaction::~Transaction):

* Modules/indexeddb/IDBTransactionBackendInterface.h:

* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseIntVersion):
(WebCore::IDBBackingStoreLevelDB::createObjectStore):
(WebCore::IDBBackingStoreLevelDB::deleteObjectStore):
(WebCore::IDBBackingStoreLevelDB::getRecord):
(WebCore::IDBBackingStoreLevelDB::putRecord):
(WebCore::IDBBackingStoreLevelDB::clearObjectStore):
(WebCore::IDBBackingStoreLevelDB::deleteRecord):
(WebCore::IDBBackingStoreLevelDB::getKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStoreLevelDB::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
(WebCore::IDBBackingStoreLevelDB::createIndex):
(WebCore::IDBBackingStoreLevelDB::deleteIndex):
(WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
(WebCore::IDBBackingStoreLevelDB::findKeyInIndex):
(WebCore::IDBBackingStoreLevelDB::getPrimaryKeyViaIndex):
(WebCore::IDBBackingStoreLevelDB::keyExistsInIndex):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
(WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
(WebCore::IDBBackingStoreLevelDB::openIndexCursor):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
(WebCore::IDBBackingStoreLevelDB::Transaction::reset):
(WebCore::IDBBackingStoreLevelDB::Transaction::levelDBTransactionFrom):

* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
(WebCore::IDBCursorBackendLevelDB::deleteFunction):
* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::verifyIndexKeys):
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys):
(WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::addingKeyAllowed):
* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
(WebCore::IDBTransactionBackendLevelDB::backingStoreTransaction):

* WebCore.xcodeproj/project.pbxproj:
* GNUmakefile.list.am:

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

8 years agoUse PassRef for StyleSheetContents.
akling@apple.com [Sun, 20 Oct 2013 16:12:09 +0000 (16:12 +0000)]
Use PassRef for StyleSheetContents.
<https://webkit.org/b/123083>

Let functions that return newly-constructed StyleSheetContents
objects vend PassRef<StyleSheetContents> instead of PassRefPtr.

Updated functions that take StyleSheetContents in arguments
accordingly. And CSSStyleSheet now has a Ref internally. Woo!

Reviewed by Antti Koivisto.

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

8 years ago[Cocoa] Loading progress API
mitz@apple.com [Sun, 20 Oct 2013 15:43:48 +0000 (15:43 +0000)]
[Cocoa] Loading progress API
https://bugs.webkit.org/show_bug.cgi?id=123069

Reviewed by Sam Weinig.

* UIProcess/API/mac/WKBrowsingContextController.h: Declared estimatedProgress property.
* UIProcess/API/mac/WKBrowsingContextController.mm:
(-[WKBrowsingContextController estimatedProgress]): Added.
(didStartProgress): Added. Calls new delegate method
-browsingContextControllerDidStartProgress:.
(didChangeProgress): Added. Calls new delegate method
-browsingContextController:estimatedProgressChangedTo:.
(didFinishProgress): Added. Calls new delegate method
-browsingContextControllerDidFinishProgress:.
(setUpPageLoaderClient): Hook up new client functions.
* UIProcess/API/mac/WKBrowsingContextLoadDelegate.h: Declared new delegate methods.

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

8 years agoRemoving "unused parameter" compiling warnings from WebKit2 and WebCore
commit-queue@webkit.org [Sun, 20 Oct 2013 14:14:35 +0000 (14:14 +0000)]
Removing "unused parameter" compiling warnings from WebKit2 and WebCore
https://bugs.webkit.org/show_bug.cgi?id=123075

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-20
Reviewed by Andreas Kling.

Source/WebCore:

No new tests needed.

* Modules/mediastream/RTCDTMFToneChangeEvent.cpp:
(WebCore::RTCDTMFToneChangeEvent::create):
* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(lineAtPositionForAtkBoundary):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry):

Source/WebKit2:

* NetworkProcess/NetworkProcessPlatformStrategies.cpp:
(WebKit::NetworkProcessPlatformStrategies::loadResourceSynchronously):
* UIProcess/API/C/WKContext.cpp:
(WKContextGetPluginSiteDataManager):
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetInspectorUsesWebKitUserInterface):
(WKPreferencesGetInspectorUsesWebKitUserInterface):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::getPlugins):
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetFullScreenClient):
(WKBundlePageWillEnterFullScreen):
(WKBundlePageDidEnterFullScreen):
(WKBundlePageWillExitFullScreen):
(WKBundlePageDidExitFullScreen):
* WebProcess/MediaCache/WebMediaCacheManager.cpp:
(WebKit::WebMediaCacheManager::clearCacheForHostname):
* WebProcess/OriginData/WebOriginDataManager.cpp:
(WebKit::WebOriginDataManager::getOrigins):
(WebKit::WebOriginDataManager::deleteEntriesForOrigin):
(WebKit::WebOriginDataManager::deleteAllEntries):
(WebKit::WebOriginDataManager::startObservingChanges):
(WebKit::WebOriginDataManager::stopObservingChanges):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createPlugin):
(WebKit::WebFrameLoaderClient::recreatePlugin):
* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::canPluginHandleResponse):

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

8 years ago[sh4] Fix build (broken since r157690).
commit-queue@webkit.org [Sun, 20 Oct 2013 11:06:05 +0000 (11:06 +0000)]
[sh4] Fix build (broken since r157690).
https://bugs.webkit.org/show_bug.cgi?id=123081

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-20
Reviewed by Andreas Kling.

* assembler/AssemblerBufferWithConstantPool.h:
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::buffer):
(JSC::SH4Assembler::readCallTarget):

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

8 years agoUse PassRef for constructing StyleRules.
akling@apple.com [Sun, 20 Oct 2013 10:49:10 +0000 (10:49 +0000)]
Use PassRef for constructing StyleRules.
<https://webkit.org/b/123072>

Let functions that return newly-constructed StyleRuleFoo objects
vend PassRef<StyleRuleFoo> instead of PassRefPtr.

Since StyleRuleBase::copy() has to return something, we can't rely
on ASSERT_NOT_REACHED() + return nullptr anymore, so I've replaced
those with CRASH(). No call sites actually handled null anyway.

Reviewed by Sam Weinig.

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

8 years agoUnreviewed roll out of r157695; broke Mac builds.
jer.noble@apple.com [Sun, 20 Oct 2013 05:42:46 +0000 (05:42 +0000)]
Unreviewed roll out of r157695; broke Mac builds.

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

LayoutTests:

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

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

8 years agoSimplify TempRegisterSet - it no longer needs to be convertible to a POD since it...
fpizlo@apple.com [Sun, 20 Oct 2013 05:40:56 +0000 (05:40 +0000)]
Simplify TempRegisterSet - it no longer needs to be convertible to a POD since it's no longer going to be a member of a union
https://bugs.webkit.org/show_bug.cgi?id=123079

Reviewed by Geoffrey Garen.

* jit/TempRegisterSet.h:

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

8 years ago[MSE] [Mac] Enable MediaSource on the Mac
jer.noble@apple.com [Sun, 20 Oct 2013 04:58:04 +0000 (04:58 +0000)]
[MSE] [Mac] Enable MediaSource on the Mac
https://bugs.webkit.org/show_bug.cgi?id=122484

Reviewed by Darin Adler.

Source/WebCore:

Enable ENABLE_MEDIA_SOURCE.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

Enable ENABLE_MEDIA_SOURCE.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Enable ENABLE_MEDIA_SOURCE.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Enable ENABLE_MEDIA_SOURCE.

* wtf/FeatureDefines.h:

LayoutTests:

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

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

8 years agoCTTE: Tighten up type usage around InputType::innerTextElement()
weinig@apple.com [Sun, 20 Oct 2013 04:55:32 +0000 (04:55 +0000)]
CTTE: Tighten up type usage around InputType::innerTextElement()
https://bugs.webkit.org/show_bug.cgi?id=123078

Reviewed by Anders Carlsson.

* editing/TextIterator.cpp:
(WebCore::TextIterator::handleReplacedElement):
* html/HTMLElement.h:
(WebCore::HTMLElement::isTextControlInnerTextElement):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::innerTextElement):
* html/HTMLInputElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::innerTextElement):
* html/HTMLTextAreaElement.h:
* html/HTMLTextFormControlElement.cpp:
(WebCore::hasVisibleTextArea):
(WebCore::HTMLTextFormControlElement::selection):
(WebCore::HTMLTextFormControlElement::innerTextValue):
(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
* html/HTMLTextFormControlElement.h:
* html/InputType.h:
(WebCore::InputType::innerTextElement):
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::forwardEvent):
(WebCore::TextFieldInputType::innerTextElement):
* html/TextFieldInputType.h:
* html/shadow/TextControlInnerElements.cpp:
(WebCore::TextControlInnerTextElement::renderer):
* html/shadow/TextControlInnerElements.h:
(WebCore::isTextControlInnerTextElement):
* rendering/RenderObject.h:
(WebCore::RenderObject::isTextControlInnerBlock):
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::innerTextElement):
(WebCore::RenderTextControl::styleDidChange):
(WebCore::RenderTextControl::textBlockLogicalWidth):
(WebCore::RenderTextControl::updateFromElement):
(WebCore::RenderTextControl::computeLogicalHeight):
(WebCore::RenderTextControl::hitInnerTextElement):
* rendering/RenderTextControl.h:
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::layout):
(WebCore::RenderTextControlSingleLine::styleDidChange):
(WebCore::RenderTextControlSingleLine::autoscroll):
(WebCore::RenderTextControlSingleLine::scroll):
(WebCore::RenderTextControlSingleLine::logicalScroll):
* rendering/RenderTextControlSingleLine.h:
(WebCore::toRenderTextControlInnerBlock):

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

8 years agoRename RegisterSet to TempRegisterSet
fpizlo@apple.com [Sun, 20 Oct 2013 04:12:16 +0000 (04:12 +0000)]
Rename RegisterSet to TempRegisterSet
https://bugs.webkit.org/show_bug.cgi?id=123077

Reviewed by Dan Bernstein.

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/StructureStubInfo.h:
* dfg/DFGJITCompiler.h:
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::usedRegisters):
* jit/JITInlineCacheGenerator.cpp:
(JSC::JITByIdGenerator::JITByIdGenerator):
(JSC::JITPutByIdGenerator::JITPutByIdGenerator):
* jit/JITInlineCacheGenerator.h:
(JSC::JITGetByIdGenerator::JITGetByIdGenerator):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):
* jit/RegisterSet.h: Removed.
* jit/ScratchRegisterAllocator.h:
(JSC::ScratchRegisterAllocator::ScratchRegisterAllocator):
* jit/TempRegisterSet.h: Copied from Source/JavaScriptCore/jit/RegisterSet.h.
(JSC::TempRegisterSet::TempRegisterSet):
(JSC::TempRegisterSet::asPOD):
(JSC::TempRegisterSet::copyInfo):

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

8 years agoMac build fix.
ap@apple.com [Sun, 20 Oct 2013 03:51:36 +0000 (03:51 +0000)]
Mac build fix.

* DumpRenderTree/mac/DumpRenderTree.mm: Cast the length for %lu specifier.

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

8 years agoEnable webaudio/ tests on DRT/Mac
ap@apple.com [Sun, 20 Oct 2013 03:15:04 +0000 (03:15 +0000)]
Enable webaudio/ tests on DRT/Mac
https://bugs.webkit.org/show_bug.cgi?id=86914

Reviewed by Darin Adler.

Tools:

* DumpRenderTree/ForwardingHeaders/runtime/ArrayBufferView.h: Copied from Source/WebCore/ForwardingHeaders/runtime/ArrayBufferView.h.
* DumpRenderTree/ForwardingHeaders/runtime/JSArrayBufferView.h: Copied from Source/WebCore/ForwardingHeaders/runtime/JSArrayBufferView.h.
* DumpRenderTree/ForwardingHeaders/runtime/TypedArrayInlines.h: Copied from Source/WebCore/ForwardingHeaders/runtime/TypedArrayInlines.h.
There is no way to efficiently get TypedArray buffer using API, so we need some internal headers.

* DumpRenderTree/TestRunner.cpp:
(setAudioResultCallback):
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
(TestRunner::audioResult):
(TestRunner::setAudioResult):
The function has a different name and argument type now, updated accordingly.
Changed buffer from std::string to std::vector<char>, because it's more idiomatic.

* DumpRenderTree/mac/DumpRenderTree.mm:
(dumpAudio): Updated for the new name of audioResult accessor.
(dump): Print the result in the format webkitpy currently expects.

* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::dumpAudio): fwrite the whole block at once, splitting into
chunks made no sense.

* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setAudioResult): Added a FIXME about getting off WKBundle SPI.

* DumpRenderTree/CMakeLists.txt: Added JavaScriptCore/parser to include search list,
so that "SourceProvider.h" can be found.

LayoutTests:

* TestExpectations: Moved webaudio/javascriptaudionode here, as garbage collection
issues with it are cross-platform.

* platform/mac-wk2/TestExpectations: Moved out everything, as there is nothing
WK2 specific about WebAudio.

* platform/mac/TestExpectations: WebAudio expectations here were just ignored. Replaced
with slightly updated expectations from WK2.

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

8 years agoRestructure LinkBuffer to allow for alternate allocation strategies
fpizlo@apple.com [Sun, 20 Oct 2013 02:07:39 +0000 (02:07 +0000)]
Restructure LinkBuffer to allow for alternate allocation strategies
https://bugs.webkit.org/show_bug.cgi?id=123071

Reviewed by Oliver Hunt.

The idea is to eventually allow a LinkBuffer to place the code into an already
allocated region of memory.  That region of memory could be the nop-slide left behind
by a llvm.webkit.patchpoint.

* assembler/ARM64Assembler.h:
(JSC::ARM64Assembler::buffer):
* assembler/AssemblerBuffer.h:
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::copyCompactAndLinkCode):
(JSC::LinkBuffer::linkCode):
(JSC::LinkBuffer::allocate):
(JSC::LinkBuffer::shrink):
* assembler/LinkBuffer.h:
(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::didFailToAllocate):
* assembler/X86Assembler.h:
(JSC::X86Assembler::buffer):
(JSC::X86Assembler::X86InstructionFormatter::memoryModRM):

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

8 years agoAdding test case for text-decoration property state change on applying different...
commit-queue@webkit.org [Sun, 20 Oct 2013 00:24:40 +0000 (00:24 +0000)]
Adding test case for text-decoration property state change on applying different command
https://bugs.webkit.org/show_bug.cgi?id=123073

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-19
Reviewed by Ryosuke Niwa.

This test case verify text-decoration property state on element after
applying editing commands related to text-decoration.

* editing/style/text-decoration-state-change-expected.txt: Added.
* editing/style/text-decoration-state-change.html: Added.

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

8 years agoSome includes in JSC seem to use an incorrect style
ap@apple.com [Sun, 20 Oct 2013 00:01:17 +0000 (00:01 +0000)]
Some includes in JSC seem to use an incorrect style
https://bugs.webkit.org/show_bug.cgi?id=123057

Reviewed by Geoffrey Garen.

Changed pseudo-system includes to user ones.

* API/JSContextRef.cpp:
* API/JSStringRefCF.cpp:
* API/JSValueRef.cpp:
* API/OpaqueJSString.cpp:
* jit/JIT.h:
* parser/SyntaxChecker.h:
* runtime/WeakGCMap.h:

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