WebKit-https.git
6 years agoReverted erroneously committed changes from the previous commit.
rniwa@webkit.org [Wed, 23 Oct 2013 20:51:39 +0000 (20:51 +0000)]
Reverted erroneously committed changes from the previous commit.

* index.html:

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

6 years agoClicking on a test name on the new flakiness dashboard should add a new test pane
rniwa@webkit.org [Wed, 23 Oct 2013 20:48:35 +0000 (20:48 +0000)]
Clicking on a test name on the new flakiness dashboard should add a new test pane
https://bugs.webkit.org/show_bug.cgi?id=123194

Reviewed by Simon Fraser.

Added a new click handler on each test name inside the builder test view add a new test pane.
Moved the old trac link to a right-arrow inline SVG icon.

Also tweaked the style so that the builder test view looks different from other test panes.

* index.html:
(TestResultsView._urlFromTest): Extracted from TestResultsView._linkifiedTestName.
(TestResultsView._populateBuilderPane): Fetch the test when its name is clicked.
Added a circled right arrow for the old trac link.
* main.css: Tweaked the style to move the rounded border around the builder test view to be
around the form controls to clearly differentiate it from a regular test pane.

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

6 years agoFix JavaScriptCore build targets following <http://trac.webkit.org/changeset/157864>
dbates@webkit.org [Wed, 23 Oct 2013 20:21:31 +0000 (20:21 +0000)]
Fix JavaScriptCore build targets following <trac.webkit.org/changeset/157864>
(https://bugs.webkit.org/show_bug.cgi?id=123169)

Tell Xcode that the supported platforms for all JavaScriptCore targets are iOS and OS X.

* Configurations/Base.xcconfig:

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

6 years agoAntialias underlines if they're not axis-aligned
commit-queue@webkit.org [Wed, 23 Oct 2013 20:14:40 +0000 (20:14 +0000)]
Antialias underlines if they're not axis-aligned
https://bugs.webkit.org/show_bug.cgi?id=123004

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-23
Reviewed by Simon Fraser.

Source/WebCore:

In order to make underlines crisp, GraphicsContext:drawLineForText
modifies the bounds of the underline rect in order to make the rect
device-pixel-aligned, and then turns off antialiasing when drawing
the line. This makes sense when the underline is axis-aligned, but
doesn't when the rect is rotated or skewed. Therefore, we should
only opt-in to this behavior if the underline we're about to draw
is axis-aligned. This requires figuring out whether or not the
current transformation is axis-aligned every time
GraphicsContext::drawLineForText is called, which will incur a small
performance hit. However, this is justified by underlines looking
much better (antialiased) when the context is rotated or skewed.

Tests: svg/custom/foreign-object-skew.html
       svg/zoom/page/zoom-foreignObject.html
       svg/zoom/text/zoom-foreignObject.html:

* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawLineForText):

LayoutTests:

Updating tests that draw underlines in a non-axis-aligned
GraphicsContext. The expected .png's should show an antialiased
underline. However, underlines which are axis-aligned should still
be unchanged.

* platform/mac/svg/custom/foreign-object-skew-expected.png:
* platform/mac/svg/zoom/page/zoom-foreignObject-expected.png:
* platform/mac/svg/zoom/text/zoom-foreignObject-expected.png:

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

6 years agoMake more StringImpl construction functions return PassRef.
akling@apple.com [Wed, 23 Oct 2013 19:13:37 +0000 (19:13 +0000)]
Make more StringImpl construction functions return PassRef.
<https://webkit.org/b/123203>

Knock out a couple more of the StringImpl construction helpers that
always return a non-null StringImpl.

Reviewed by Antti Koivisto.

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

6 years agoRemove the ifdef to exclude remote layer tree transaction logging
timothy_horton@apple.com [Wed, 23 Oct 2013 18:45:36 +0000 (18:45 +0000)]
Remove the ifdef to exclude remote layer tree transaction logging
on Lion and before.

Rubber-stamped by Anders Carlsson.

* 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@157876 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoLLInt arity check exception processing should start unwinding from caller
msaboff@apple.com [Wed, 23 Oct 2013 18:42:52 +0000 (18:42 +0000)]
LLInt arity check exception processing should start unwinding from caller
https://bugs.webkit.org/show_bug.cgi?id=123209

Reviewed by Oliver Hunt.

Use the caller frame returned from slow_path_call_arityCheck to process exceptions.

* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

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

6 years agoRe-instate ProposedDatabases needed by detailsForNameAndOrigin().
mark.lam@apple.com [Wed, 23 Oct 2013 18:33:20 +0000 (18:33 +0000)]
Re-instate ProposedDatabases needed by detailsForNameAndOrigin().
https://bugs.webkit.org/show_bug.cgi?id=123131.

Reviewed by Geoffrey Garen.

Source/WebCore:

Test: storage/websql/open-database-expand-quota.html

If a webpage tries to create a database that exceeds the database size
quota for that security origin, the WebKit1 quota request mechanism
uses detailsForNameAndOrigin() to get the requested size of the database
(that the webpage is attempting to open) in order to determine whether
to increase the quota or not.

Previously, detailsForNameAndOrigin() relies on the ProposedDatabase
mechanism to provide this size information. This change re-instates the
ProposedDatabase mechanism so that WebKit1 client code that relies on
this behavior will continue to work.

* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseManager::ProposedDatabase::ProposedDatabase):
(WebCore::DatabaseManager::ProposedDatabase::~ProposedDatabase):
(WebCore::DatabaseManager::DatabaseManager):
(WebCore::DatabaseManager::openDatabaseBackend):
(WebCore::DatabaseManager::fullPathForDatabase):
(WebCore::DatabaseManager::detailsForNameAndOrigin):
* Modules/webdatabase/DatabaseManager.h:
(WebCore::DatabaseManager::ProposedDatabase::origin):
(WebCore::DatabaseManager::ProposedDatabase::details):

Tools:

Updated these files to allow database quotas to grow within a limit for
testing purposes.

* DumpRenderTree/blackberry/DumpRenderTree.cpp:
(BlackBerry::WebKit::DumpRenderTree::exceededDatabaseQuota):
* DumpRenderTree/efl/DumpRenderTreeView.cpp:
(onExceededDatabaseQuota):
* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate webView:frame:exceededDatabaseQuotaForSecurityOrigin:database:]):
* DumpRenderTree/win/UIDelegate.cpp:
(UIDelegate::exceededDatabaseQuota):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::didExceedDatabaseQuota):
* WebKitTestRunner/TestController.cpp:
(WTR::exceededDatabaseQuota):

LayoutTests:

Added a test to exercise growing the database quota within limit.

* platform/gtk/TestExpectations:
* storage/websql/open-database-expand-quota-expected.txt: Added.
* storage/websql/open-database-expand-quota.html: Added.
* storage/websql/open-database-over-quota-expected.txt:
* storage/websql/open-database-over-quota.html:

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

6 years agoIt's valid to have a build ID of 0.
simon.fraser@apple.com [Wed, 23 Oct 2013 18:27:00 +0000 (18:27 +0000)]
It's valid to have a build ID of 0.

Reviewed by Tim Hatcher.

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

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

6 years agoFTL should be able to do some simple inline caches using LLVM patchpoints
fpizlo@apple.com [Wed, 23 Oct 2013 18:22:09 +0000 (18:22 +0000)]
FTL should be able to do some simple inline caches using LLVM patchpoints
https://bugs.webkit.org/show_bug.cgi?id=123164

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

This implements GetById inline caches in the FTL using llvm.webkit.patchpoint.

The idea is that we ask LLVM for a nop slide the size of a GetById inline
cache and then fill in the code after LLVM compilation is complete. For now, we
just use the system calling convention for the arguments and return. We also
still make some assumptions about registers that aren't correct. But, most of
the scaffolding is there and this will successfully patch an inline cache.

* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/AbstractMacroAssembler.h:
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::finalizeCodeWithoutDisassembly):
(JSC::LinkBuffer::linkCode):
(JSC::LinkBuffer::allocate):
* assembler/LinkBuffer.h:
(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::link):
* ftl/FTLAbbreviations.h:
(JSC::FTL::constNull):
(JSC::FTL::buildCall):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLCompile.cpp:
(JSC::FTL::fixFunctionBasedOnStackMaps):
* ftl/FTLInlineCacheDescriptor.h: Added.
(JSC::FTL::InlineCacheDescriptor::InlineCacheDescriptor):
(JSC::FTL::GetByIdDescriptor::GetByIdDescriptor):
(JSC::FTL::GetByIdDescriptor::stackmapID):
(JSC::FTL::GetByIdDescriptor::codeOrigin):
(JSC::FTL::GetByIdDescriptor::uid):
* ftl/FTLInlineCacheSize.cpp: Added.
(JSC::FTL::sizeOfGetById):
(JSC::FTL::sizeOfPutById):
* ftl/FTLInlineCacheSize.h: Added.
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLJITFinalizer.cpp:
(JSC::FTL::JITFinalizer::finalizeFunction):
* ftl/FTLJITFinalizer.h:
* ftl/FTLLocation.cpp:
(JSC::FTL::Location::directGPR):
* ftl/FTLLocation.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileGetById):
* ftl/FTLOutput.h:
(JSC::FTL::Output::call):
* ftl/FTLSlowPathCall.cpp: Added.
(JSC::FTL::callOperation):
* ftl/FTLSlowPathCall.h: Added.
(JSC::FTL::SlowPathCall::SlowPathCall):
(JSC::FTL::SlowPathCall::call):
(JSC::FTL::SlowPathCall::key):
* ftl/FTLSlowPathCallKey.cpp: Added.
(JSC::FTL::SlowPathCallKey::dump):
* ftl/FTLSlowPathCallKey.h: Added.
(JSC::FTL::SlowPathCallKey::SlowPathCallKey):
(JSC::FTL::SlowPathCallKey::usedRegisters):
(JSC::FTL::SlowPathCallKey::callTarget):
(JSC::FTL::SlowPathCallKey::offset):
(JSC::FTL::SlowPathCallKey::isEmptyValue):
(JSC::FTL::SlowPathCallKey::isDeletedValue):
(JSC::FTL::SlowPathCallKey::operator==):
(JSC::FTL::SlowPathCallKey::hash):
(JSC::FTL::SlowPathCallKeyHash::hash):
(JSC::FTL::SlowPathCallKeyHash::equal):
* ftl/FTLStackMaps.cpp:
(JSC::FTL::StackMaps::Location::directGPR):
* ftl/FTLStackMaps.h:
* ftl/FTLState.h:
* ftl/FTLThunks.cpp:
(JSC::FTL::slowPathCallThunkGenerator):
* ftl/FTLThunks.h:
(JSC::FTL::Thunks::getSlowPathCallThunk):
* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArguments):
* jit/GPRInfo.h:
* jit/JITInlineCacheGenerator.cpp:
(JSC::garbageStubInfo):
(JSC::JITInlineCacheGenerator::JITInlineCacheGenerator):
(JSC::JITByIdGenerator::finalize):
* jit/JITInlineCacheGenerator.h:
(JSC::JITByIdGenerator::slowPathBegin):
* jit/RegisterSet.cpp:
(JSC::RegisterSet::stackRegisters):
(JSC::RegisterSet::specialRegisters):
(JSC::RegisterSet::calleeSaveRegisters):
(JSC::RegisterSet::allGPRs):
(JSC::RegisterSet::allFPRs):
(JSC::RegisterSet::allRegisters):
(JSC::RegisterSet::dump):
* jit/RegisterSet.h:
(JSC::RegisterSet::exclude):
(JSC::RegisterSet::numberOfSetRegisters):
(JSC::RegisterSet::RegisterSet):
(JSC::RegisterSet::isEmptyValue):
(JSC::RegisterSet::isDeletedValue):
(JSC::RegisterSet::operator==):
(JSC::RegisterSet::hash):
(JSC::RegisterSetHash::hash):
(JSC::RegisterSetHash::equal):
* runtime/Options.h:

Source/WTF:

Reviewed by Mark Hahnenberg.

This needed some better bitvector support, like merging (|=), excluding (&=~),
hashing, and bit counting.

* wtf/BitVector.cpp:
(WTF::BitVector::setSlow):
(WTF::BitVector::excludeSlow):
(WTF::BitVector::bitCountSlow):
(WTF::BitVector::equalsSlowCase):
(WTF::BitVector::hashSlowCase):
(WTF::BitVector::dump):
* wtf/BitVector.h:
(WTF::BitVector::merge):
(WTF::BitVector::exclude):
(WTF::BitVector::bitCount):
(WTF::BitVector::BitVector):
(WTF::BitVector::isEmptyValue):
(WTF::BitVector::isDeletedValue):
(WTF::BitVector::isEmptyOrDeletedValue):
(WTF::BitVector::operator==):
(WTF::BitVector::hash):
(WTF::BitVectorHash::hash):
(WTF::BitVectorHash::equal):
* wtf/HashTraits.h:
(WTF::CustomHashTraits::constructDeletedValue):
(WTF::CustomHashTraits::isDeletedValue):
(WTF::CustomHashTraits::emptyValue):
(WTF::CustomHashTraits::isEmptyValue):
* wtf/StdLibExtras.h:
(WTF::bitCount):

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

6 years agoRemove Lion bots from the Dashboard.
simon.fraser@apple.com [Wed, 23 Oct 2013 18:21:45 +0000 (18:21 +0000)]
Remove Lion bots from the Dashboard.

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

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

6 years ago[cg] Fix the capitalization of kCGImageSourceSkipMetaData (-> Metadata)
timothy_horton@apple.com [Wed, 23 Oct 2013 18:14:54 +0000 (18:14 +0000)]
[cg] Fix the capitalization of kCGImageSourceSkipMetaData (-> Metadata)
https://bugs.webkit.org/show_bug.cgi?id=122918

Reviewed by Anders Carlsson.

* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::imageSourceOptions):
The capitalization of kCGImageSourceSkipMetaData changed to
kCGImageSourceSkipMetadata in Mountain Lion.

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

6 years agoMake IDBDatabaseBackendLevelDB.cpp be cross platform
beidson@apple.com [Wed, 23 Oct 2013 18:13:59 +0000 (18:13 +0000)]
Make IDBDatabaseBackendLevelDB.cpp be cross platform
https://bugs.webkit.org/show_bug.cgi?id=123027

Attentively reviewed by Dean Jackson.

Source/WebCore:

Move it out of the indexeddb/leveldb directory, and rename it to IDBDatabaseBackendImpl.

Project files:
* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp.
* Modules/indexeddb/IDBDatabaseBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h.

* Modules/indexeddb/IDBDatabaseBackendInterface.h:
(WebCore::IDBDatabaseBackendInterface::isIDBDatabaseBackendImpl): Add to support a required cast in LevelDB code.

* Modules/indexeddb/IDBFactoryBackendInterface.h:

* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
(WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
(WebCore::IDBFactoryBackendLevelDB::open):
(WebCore::IDBFactoryBackendLevelDB::maybeCreateTransactionBackend):
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:

* Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
* Modules/indexeddb/leveldb/IDBLevelDBCoding.h:

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

* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:

Source/WebKit2:

* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
(WebKit::WebIDBFactoryBackend::maybeCreateTransactionBackend):
* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:

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

6 years agojitCompileAndSetHeuristics should DeferGCForAWhile
fpizlo@apple.com [Wed, 23 Oct 2013 17:55:56 +0000 (17:55 +0000)]
jitCompileAndSetHeuristics should DeferGCForAWhile
https://bugs.webkit.org/show_bug.cgi?id=123196

Reviewed by Mark Hahnenberg.

This fixes random crashes in V8v7/raytrace. I only see those crashes on exactly one of
my machines. I don't think this is testable; we just need to steadily converge towards
getting our uses of DeferGC to be right and then be careful not to regress. We're not
there yet, obviously.

* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::jitCompileAndSetHeuristics):

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

6 years agoFixed a typo.
mitz@apple.com [Wed, 23 Oct 2013 17:50:04 +0000 (17:50 +0000)]
Fixed a typo.

* UIProcess/API/mac/WKBrowsingContextController.mm:
(didChangeBackForwardList):
* UIProcess/API/mac/WKBrowsingContextLoadDelegate.h:

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

6 years agowkbuild.py fix after r157827.
lforschler@apple.com [Wed, 23 Oct 2013 17:47:34 +0000 (17:47 +0000)]
wkbuild.py fix after r157827.

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

6 years agoClean-up in Atomics.h
allan.jensen@digia.com [Wed, 23 Oct 2013 17:42:04 +0000 (17:42 +0000)]
Clean-up in Atomics.h
https://bugs.webkit.org/show_bug.cgi?id=123207

Reviewed by Anders Carlsson.

Atomics.h has two confusing and bit-rotted ifdefs with comments.

The first about CPU(SPARC64) was rendered obsolete when we switched
from __exchange_and_add to __sync_add_and_fetch.

The second was caused by a wrong definition that apparently only
caused trouble on GCC.

* wtf/Atomics.h:

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

6 years ago[iOS] Upstream more JavaScriptCore build configuration changes
dbates@webkit.org [Wed, 23 Oct 2013 17:02:34 +0000 (17:02 +0000)]
[iOS] Upstream more JavaScriptCore build configuration changes
https://bugs.webkit.org/show_bug.cgi?id=123169

Reviewed by David Kilzer.

* Configurations/Base.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/iOS.xcconfig: Added.
* JavaScriptCore.xcodeproj/project.pbxproj:

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

6 years ago[iOS] Export DefaultGCActivityCallback member functions
dbates@webkit.org [Wed, 23 Oct 2013 16:58:11 +0000 (16:58 +0000)]
[iOS] Export DefaultGCActivityCallback member functions
https://bugs.webkit.org/show_bug.cgi?id=123175

Reviewed by David Kilzer.

* runtime/GCActivityCallback.h:

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

6 years ago[iOS] Upstream more ARMv7s bits
dbates@webkit.org [Wed, 23 Oct 2013 16:56:06 +0000 (16:56 +0000)]
[iOS] Upstream more ARMv7s bits
https://bugs.webkit.org/show_bug.cgi?id=123052

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

* Configurations/JavaScriptCore.xcconfig:

Source/WebCore:

Define exported symbol file for armv7s and arm64.

* Configurations/WebCore.xcconfig:

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

6 years ago[GTK] Enable respect image orientation by default
mario@webkit.org [Wed, 23 Oct 2013 16:49:08 +0000 (16:49 +0000)]
[GTK] Enable respect image orientation by default
https://bugs.webkit.org/show_bug.cgi?id=122120

Patch by Anton Obzhirov <a.obzhirov@samsung.com> on 2013-10-23
Reviewed by Gustavo Noronha Silva.

Add enable respect image orientation by default in GTK port.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsConstructed):

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

6 years ago[CSS Regions] compositing/regions/region-as-layer-in-another-flowthread.html has...
commit-queue@webkit.org [Wed, 23 Oct 2013 16:38:47 +0000 (16:38 +0000)]
[CSS Regions] compositing/regions/region-as-layer-in-another-flowthread.html has image failure
https://bugs.webkit.org/show_bug.cgi?id=123193

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-10-23
Reviewed by Simon Fraser.

Removed overlapping of box-shadows which resulted in flaky results.

* compositing/regions/region-as-layer-in-another-flowthread-expected.html:
* compositing/regions/region-as-layer-in-another-flowthread.html:
* platform/mac/TestExpectations:

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

6 years ago[GTK] Expose image links properly
mario@webkit.org [Wed, 23 Oct 2013 16:23:30 +0000 (16:23 +0000)]
[GTK] Expose image links properly
https://bugs.webkit.org/show_bug.cgi?id=84044

Reviewed by Chris Fleizach.

Tools:

Expose the accessible URL if present, as yet another attribute
for the AccessibilityUIElement wrapper. For coherence with what
the Mac port does (and what you would expect as the output of
the layout test), we strip the absolute URL path for relative
references, if it's the case, leaving the base of the URL path
out of the exposed string.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(attributesOfElement): Print the AXURL, if available.
(AccessibilityUIElement::url): Expose the URL if present. That
is, if the wrapped AtkObject implements AtkHyperlinkImpl.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(attributesOfElement): Print the AXURL, if available.
(WTR::AccessibilityUIElement::url): Expose the URL if present.
That is, if the wrapped AtkObject implements AtkHyperlinkImpl.

LayoutTests:

Rebaseline some tests that would now be printing the new
AXURL string for implementations of AtkHyperlinkImpl.

* platform/efl-wk1/accessibility/image-link-expected.txt: Updated.
* platform/efl-wk1/accessibility/image-map2-expected.txt: Ditto.
* platform/efl-wk2/accessibility/image-link-expected.txt: Ditto.
* platform/efl-wk2/accessibility/image-map2-expected.txt: Ditto.
* platform/gtk/accessibility/image-link-expected.txt: Ditto.
* platform/gtk/accessibility/image-map2-expected.txt: Ditto.

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

6 years agoRemove Lion bots.
simon.fraser@apple.com [Wed, 23 Oct 2013 16:16:06 +0000 (16:16 +0000)]
Remove Lion bots.

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

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

6 years ago[GTK] accessibility/self-referencing-aria-labelledby.html is failing
commit-queue@webkit.org [Wed, 23 Oct 2013 12:13:23 +0000 (12:13 +0000)]
[GTK] accessibility/self-referencing-aria-labelledby.html is failing
https://bugs.webkit.org/show_bug.cgi?id=121594

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2013-10-23
Reviewed by Mario Sanchez Prada.

Source/WebCore:

According to http://www.w3.org/TR/REC-html40/struct/objects.html#edef-IMG
description of image element should be determined by alt attribute, then
if it is empty by title attributte.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetDescription):

LayoutTests:

* platform/efl/TestExpectations:
accessibility/self-referencing-aria-labelledby.html is now passing
* platform/gtk/TestExpectations:
accessibility/self-referencing-aria-labelledby.html is now passing

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

6 years agoTighten animation-driven restyle to operate on Element only.
akling@apple.com [Wed, 23 Oct 2013 10:55:43 +0000 (10:55 +0000)]
Tighten animation-driven restyle to operate on Element only.
<https://webkit.org/b/122820>

Text nodes are never directly animated, so we can tighten this code
to work on Element only. This happens naturally since the code was
already working with RenderElement everywhere.

Reviewed by Antti Koivisto.

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

6 years agoStringImpl::lower() should return a PassRef.
akling@apple.com [Wed, 23 Oct 2013 10:48:47 +0000 (10:48 +0000)]
StringImpl::lower() should return a PassRef.
<https://webkit.org/b/123190>

Test the waters and hack enough of StringImpl to be able to return
a PassRef<StringImpl> from lower().

Also gave String a constructor that takes a PassRef<StringImpl>.

Reviewed by Antti Koivisto.

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

6 years agoEven more PassRef<RenderStyle>!
akling@apple.com [Wed, 23 Oct 2013 10:42:20 +0000 (10:42 +0000)]
Even more PassRef<RenderStyle>!
<https://webkit.org/b/123147>

Convert more of the WebCore code to use PassRef for RenderStyle
in places where they are known to be non-null.

Re-landing this without region styling since that caused some
assertions last time.

Reviewed by Antti Koivisto.

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

6 years ago[GTK] Add WebKit2 API for TLS errors
mario@webkit.org [Wed, 23 Oct 2013 09:17:45 +0000 (09:17 +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-23
Reviewed by Mario Sanchez Prada.

Revert back to using PlatformCertificateInfo following the rollout
of https://bugs.webkit.org/show_bug.cgi?id=118520.

* Shared/soup/PlatformCertificateInfo.cpp:
(WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
* Shared/soup/PlatformCertificateInfo.h:
* UIProcess/API/gtk/WebKitCertificateInfo.cpp:
(webkitCertificateInfoGetCertificateInfo):
* UIProcess/API/gtk/WebKitCertificateInfoPrivate.h:

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

6 years agoRemote Layer Tree: Implement superlayer, removeFromSuperlayer, replaceSublayer, and...
timothy_horton@apple.com [Wed, 23 Oct 2013 08:24:50 +0000 (08:24 +0000)]
Remote Layer Tree: Implement superlayer, removeFromSuperlayer, replaceSublayer, and adoptSublayers
https://bugs.webkit.org/show_bug.cgi?id=123130

Reviewed by Anders Carlsson.

Implement the remaining layer-hierarchy-manipulation methods.

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::PlatformCALayerRemote):
(PlatformCALayerRemote::~PlatformCALayerRemote):
Null out the superlayer back-pointer on our sublayers.

(PlatformCALayerRemote::recursiveBuildTransaction):
Ensure that our children all have us as their superlayer.

(PlatformCALayerRemote::superlayer):
Return the stored superlayer pointer.

(PlatformCALayerRemote::removeFromSuperlayer):
Call removeSublayer on our superlayer, if we have one.

(PlatformCALayerRemote::removeSublayer):
Remove the given layer if it's in our list of sublayers, clear its
reference to us, and note that we'll need to commit hierarchy changes.

(PlatformCALayerRemote::setSublayers):
removeAllSublayers() before setting the new list, to clear superlayer
back-pointers. Children will be protected by the PlatformCALayerList.
Update the new layers' superlayers.

(PlatformCALayerRemote::removeAllSublayers):
Remove each sublayer from its superlayer, then clear our list of children.

(PlatformCALayerRemote::appendSublayer):
(PlatformCALayerRemote::insertSublayer):
Protect the layer from deletion, so that we can remove it from its prior
superlayer before appending or inserting it.

(PlatformCALayerRemote::replaceSublayer):
Find the reference sublayer, if it exists, and replace it with the new one.

(PlatformCALayerRemote::adoptSublayers):
adoptSublayers is really just "set sublayers to this other layer's sublayers".
Since setSublayers already removes layers from the existing superlayer,
we can just go ahead and call it.

(PlatformCALayerRemote::addAnimationForKey):
(PlatformCALayerRemote::removeAnimationForKey):
(PlatformCALayerRemote::animationForKey):
Add some ASSERT_NOT_REACHEDs in animation code.
We ought not get here because we've disabled hardware animations
in GraphicsLayerCARemote.

* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
Add m_superlayer and removeSublayer().

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

6 years agoRefactor LineBreaker::nextSegmentBreak, add BreakingContext that holds all its state
zoltan@webkit.org [Wed, 23 Oct 2013 06:50:15 +0000 (06:50 +0000)]
Refactor LineBreaker::nextSegmentBreak, add BreakingContext that holds all its state
https://bugs.webkit.org/show_bug.cgi?id=123038

Reviewed by David Hyatt.

Source/WebCore:

I followed Levi's logic on Blink's nextSegmentBreak refactoring (https://chromiumcodereview.appspot.com/25054004).
I mostly did the same changes, but the code is too diverged at this point to just apply that patch on our trunk. The patch
introduces BreakingContext as a separate class. I added new methods for each condition, which were originally located in
nextSegmentBreak. I also removed the goto-s from the code. All the new methods are inline in order to avoid introducing any
performance regression. The change makes the code so much cleaner and understandable.

This change would be the first step of the nextSegmentBreak refactoring, I wanted to keep things in place in RenderBlockLineLayout.cpp
for now, but I'm planning to separate BreakingContext into a new file and do additional changes to make things nicer. I'm tracking
the entire progress under http://webkit.org/b/121261 meta bug.

No new tests, covered by existing tests.
- I updated 1 expected result, because there was a 1 pixel difference on the result, which I believe comes from a rounding situation.

* rendering/RenderBlockFlow.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::BreakingContext::BreakingContext):
(WebCore::BreakingContext::currentObject):
(WebCore::BreakingContext::lineBreak):
(WebCore::BreakingContext::lineBreakRef):
(WebCore::BreakingContext::lineWidth):
(WebCore::BreakingContext::atEnd):
(WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
(WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
(WebCore::BreakingContext::initializeForCurrentObject):
(WebCore::BreakingContext::increment):
(WebCore::BreakingContext::handleBR):
(WebCore::BreakingContext::handleOutOfFlowPositioned):
(WebCore::BreakingContext::handleFloat):
(WebCore::BreakingContext::handleEmptyInline):
(WebCore::BreakingContext::handleReplaced):
(WebCore::nextCharacter):
(WebCore::BreakingContext::handleText):
(WebCore::textBeginsWithBreakablePosition):
(WebCore::BreakingContext::canBreakAtThisPosition):
(WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
(WebCore::BreakingContext::handleEndOfLine):
(WebCore::LineBreaker::nextSegmentBreak):

LayoutTests:

* platform/mac/editing/selection/after-line-wrap-expected.png:
* platform/mac/editing/selection/after-line-wrap-expected.txt: I updated the test, there was 1 pixel difference on the
output I think I run into a rounding error.

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

6 years agoUnreviewed build fix attempt on Soup based port after r157842.
ryuan.choi@samsung.com [Wed, 23 Oct 2013 06:03:30 +0000 (06:03 +0000)]
Unreviewed build fix attempt on Soup based port after r157842.

WebCore::CertificateInfo was reverted to WebKit::PlatformCertificateInfo.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::allowSpecificHTTPSCertificateForHost):

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

6 years agoUnreviewed build fix attempt on EFL port after r157842.
ryuan.choi@samsung.com [Wed, 23 Oct 2013 04:42:14 +0000 (04:42 +0000)]
Unreviewed build fix attempt on EFL port after r157842.

* Shared/soup/PlatformCertificateInfo.h: Removed message of merge confliction.

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

6 years agoUnreviewed, rolling out r157826.
commit-queue@webkit.org [Wed, 23 Oct 2013 04:16:03 +0000 (04:16 +0000)]
Unreviewed, rolling out r157826.
http://trac.webkit.org/changeset/157826
https://bugs.webkit.org/show_bug.cgi?id=123197

Caused some regions tests to assert (Requested by smfr on
#webkit).

* dom/Document.cpp:
(WebCore::Document::styleForElementIgnoringPendingStylesheets):
* dom/Document.h:
* dom/Element.cpp:
(WebCore::Element::styleForRenderer):
* dom/Element.h:
* dom/ElementRareData.h:
(WebCore::ElementRareData::setComputedStyle):
(WebCore::ElementRareData::resetComputedStyle):
* html/HTMLTitleElement.cpp:
(WebCore::HTMLTitleElement::textWithDirection):
* page/animation/AnimationController.cpp:
(WebCore::AnimationController::updateAnimations):
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::animate):
* page/animation/CompositeAnimation.h:
* rendering/RenderElement.cpp:
(WebCore::RenderElement::createFor):
* rendering/RenderElement.h:
(WebCore::RenderElement::setStyleInternal):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::setRegionObjectsRegionStyle):
(WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
(WebCore::RenderRegion::computeStyleInRegion):
(WebCore::RenderRegion::computeChildrenStyleInRegion):
(WebCore::RenderRegion::setObjectStyleInRegion):
* rendering/RenderRegion.h:
* style/StyleResolveTree.cpp:
(WebCore::Style::resolveLocal):

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

6 years ago[EFL] Remove HAVE_GLX macro
ryuan.choi@samsung.com [Wed, 23 Oct 2013 04:09:26 +0000 (04:09 +0000)]
[EFL] Remove HAVE_GLX macro
https://bugs.webkit.org/show_bug.cgi?id=123191

Reviewed by Gyuyoung Kim.

.:

* Source/cmake/OptionsEfl.cmake: Removed unnecessary HAVE_GLX macro

Source/WebCore:

Since r138313, HAVE(GLX) was replaced to USE(GLX) except in GraphicsSurfaceToken.h.

* platform/graphics/surfaces/GraphicsSurfaceToken.h:
Replace HAVE(GLX) to USE(GLX)

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

6 years agoFix build failures after r157842.
mrowe@apple.com [Wed, 23 Oct 2013 04:04:00 +0000 (04:04 +0000)]
Fix build failures after r157842.

* WebProcess/WebProcess.h: Don't try to #include a file that was deleted.
It won't work.

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

6 years agoGardening: fix broken build on Windows.
mark.lam@apple.com [Wed, 23 Oct 2013 03:39:25 +0000 (03:39 +0000)]
Gardening: fix broken build on Windows.
https://bugs.webkit.org/show_bug.cgi?id=123174.

Not reviewed.

No new tests.

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:

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

6 years agoGet rid of IDBObjectStoreBackendLevelDB
beidson@apple.com [Wed, 23 Oct 2013 03:23:28 +0000 (03:23 +0000)]
Get rid of IDBObjectStoreBackendLevelDB
https://bugs.webkit.org/show_bug.cgi?id=123174

Reviewed by Tim Horton.

Source/WebCore:

This file was kind of a dumping ground.
Its contents can be merged into IDBBackingStoreInterface and a new IDBIndexWriter class.

Also took the opportunity to do a little bit of RefPtr<> and pointer-vs-reference cleanup.

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

* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Removed.
* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h: Removed.

* Modules/indexeddb/IDBIndexWriter.cpp: Added.
(WebCore::IDBIndexWriter::IDBIndexWriter):
(WebCore::IDBIndexWriter::writeIndexKeys):
(WebCore::IDBIndexWriter::verifyIndexKeys):
(WebCore::IDBIndexWriter::addingKeyAllowed):
* Modules/indexeddb/IDBIndexWriter.h: Added.
(WebCore::IDBIndexWriter::create):

* Modules/indexeddb/IDBBackingStoreInterface.h:
* Modules/indexeddb/IDBDatabaseBackendInterface.h:

* Modules/indexeddb/IDBMetadata.h:
* Modules/indexeddb/IDBTransactionBackendInterface.h:

* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStoreLevelDB::makeIndexWriters):
(WebCore::IDBBackingStoreLevelDB::generateKey):
(WebCore::IDBBackingStoreLevelDB::updateKeyGenerator):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:

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

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

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

Source/WebKit2:

* WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:

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

6 years ago[WebGL] Implement a software rendering option on Mac
dino@apple.com [Wed, 23 Oct 2013 01:52:14 +0000 (01:52 +0000)]
[WebGL] Implement a software rendering option on Mac
https://bugs.webkit.org/show_bug.cgi?id=123177

Reviewed by Tim Horton.

Implement a way to force software OpenGL rendering
for WebGL, via a Setting/Preference.

Source/WebCore:

No new tests. We intentionally hide the capabilities of
the renderer from the content, so you can't test for
this setting. However, manual inspection is pretty
obvious. Just go to a page with a complex shader
such as https://www.shadertoy.com/view/lss3WS.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::create): If we're forcing software
rendering, mark the context attributes as such.
* page/Settings.in: New setting key.
* platform/graphics/GraphicsContext3D.h: New flag in Attributes.
(WebCore::GraphicsContext3D::Attributes::Attributes):
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D): Slight update to the
algorithm that sets a pixel format. If we're forcing software rendering,
obviously we never want to create an accelerated pixel format.
* platform/graphics/filters/CustomFilterGlobalContext.cpp:
(WebCore::CustomFilterGlobalContext::prepareContextIfNeeded): Set the attribute
here before trying to create the context.
* platform/graphics/filters/CustomFilterGlobalContext.h: Add a forceSoftwareRendering
flag to prepareContextIfNeeded.
* rendering/FilterEffectRenderer.cpp:
(WebCore::createCustomFilterEffect): Check the Setting before creating a custom
filter context.

Source/WebKit/mac:

* WebView/WebPreferenceKeysPrivate.h: New WebKitForceSoftwareWebGLRendering key.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences forceSoftwareWebGLRendering]):
(-[WebPreferences setForceSoftwareWebGLRendering:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

* Shared/WebPreferencesStore.h: New ForceSoftwareWebGLRendering entry.
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetForceSoftwareWebGLRendering):
(WKPreferencesGetForceSoftwareWebGLRendering):
* UIProcess/API/C/WKPreferencesPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
* mac/WebKit2.order:

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

6 years agoRevert r157445 since it broke certificates on Mac.
andersca@apple.com [Wed, 23 Oct 2013 01:15:44 +0000 (01:15 +0000)]
Revert r157445 since it broke certificates on Mac.
<rdar://problem/15246926&15254017&15269117>

Source/WebCore:

* GNUmakefile.list.am:
* PlatformEfl.cmake:
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* platform/network/ResourceErrorBase.h:
* platform/network/ResourceResponseBase.h:
* platform/network/cf/CertificateInfoCFNet.cpp: Removed.
* platform/network/cf/ResourceResponse.h:
* platform/network/mac/ResourceResponseMac.mm:
(WebCore::ResourceResponse::setCertificateChain):
(WebCore::ResourceResponse::certificateChain):
* platform/network/soup/ResourceError.h:
(WebCore::ResourceError::ResourceError):
(WebCore::ResourceError::tlsErrors):
(WebCore::ResourceError::setTLSErrors):
(WebCore::ResourceError::certificate):
(WebCore::ResourceError::setCertificate):
* platform/network/soup/ResourceErrorSoup.cpp:
(WebCore::ResourceError::tlsError):
(WebCore::ResourceError::platformCopy):
(WebCore::ResourceError::platformCompare):
* platform/network/soup/ResourceResponse.h:
(WebCore::ResourceResponse::ResourceResponse):
(WebCore::ResourceResponse::soupMessageCertificate):
(WebCore::ResourceResponse::setSoupMessageCertificate):
(WebCore::ResourceResponse::soupMessageTLSErrors):
(WebCore::ResourceResponse::setSoupMessageTLSErrors):
* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::toSoupMessage):
(WebCore::ResourceResponse::updateFromSoupMessage):

Source/WebKit2:

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

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

6 years agoMark compositing/regions/region-as-layer-in-another-flowthread.html as an image...
simon.fraser@apple.com [Wed, 23 Oct 2013 01:03:11 +0000 (01:03 +0000)]
Mark compositing/regions/region-as-layer-in-another-flowthread.html  as an image failure.

* platform/mac/TestExpectations:

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

6 years agoDashboard repaints constantly
simon.fraser@apple.com [Wed, 23 Oct 2013 00:55:19 +0000 (00:55 +0000)]
Dashboard repaints constantly
https://bugs.webkit.org/show_bug.cgi?id=122133

Reviewed by Tim Horton.

Pulsing shadows are really bad for battery life.

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

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

6 years agoUnreviewed, rolling out r157835.
commit-queue@webkit.org [Wed, 23 Oct 2013 00:48:03 +0000 (00:48 +0000)]
Unreviewed, rolling out r157835.
http://trac.webkit.org/changeset/157835
https://bugs.webkit.org/show_bug.cgi?id=123192

broke 32-bit builds (Requested by smfr on #webkit).

Source/WTF:

* wtf/MediaTime.cpp:
(WTF::signum):
* wtf/MediaTime.h:

Tools:

* TestWebKitAPI/Tests/WTF/MediaTime.cpp:
(TestWebKitAPI::TEST):

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

6 years agoNew flakiness dashboard's test pane should show the latest WebKit revision for each...
rniwa@webkit.org [Wed, 23 Oct 2013 00:44:20 +0000 (00:44 +0000)]
New flakiness dashboard's test pane should show the latest WebKit revision for each builder
https://bugs.webkit.org/show_bug.cgi?id=123189

Reviewed by Simon Fraser.

* index.html:
(TestResultsView._populateTestPane): Call _createTestResultHeader and _createTestResultRow with
a list of repository information.
(TestResultsView._createTestResultHeader): Optionally creates headers for a list of repositories.
(TestResultsView._createTestResultRow): Add a hyperlinked revision information for each builder.
Also add a hyperlink to file a Bugzilla bug when there is no bug associated with the test already.
* js/build.js:
(Build.formattedRevision): Extracted from Build.formattedRevisions.
(Build.formattedRevisions):

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

6 years agoRemote Layer Tree: Disable threaded scrolling for RemoteLayerTreeDrawingArea
timothy_horton@apple.com [Wed, 23 Oct 2013 00:39:34 +0000 (00:39 +0000)]
Remote Layer Tree: Disable threaded scrolling for RemoteLayerTreeDrawingArea
https://bugs.webkit.org/show_bug.cgi?id=123187

Reviewed by Dean Jackson.

* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::supportsThreadedScrolling):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
Threaded scrolling doesn't work with remote layer trees yet.
Let the DrawingArea subclass tell WebPage if it supports threaded
scrolling, and make TiledCoreAnimationDrawingArea say that it does.

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

6 years agoMinor VM* -> VM& cleanups in HashTable and Keywords.
akling@apple.com [Wed, 23 Oct 2013 00:26:25 +0000 (00:26 +0000)]
Minor VM* -> VM& cleanups in HashTable and Keywords.
<https://webkit.org/b/123183>

Turn some VM* variables that will never be null into VM&.

Reviewed by Geoffrey Garen.

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

6 years ago[WTF] Add a multiplication operator (and a few others) to MediaTime
jer.noble@apple.com [Wed, 23 Oct 2013 00:18:16 +0000 (00:18 +0000)]
[WTF] Add a multiplication operator (and a few others) to MediaTime
https://bugs.webkit.org/show_bug.cgi?id=123137

Reviewed by Eric Carlson.

Source/WTF:

Add a multiplication operator and an inequality operator to the
MediaTime class for use by MSE.

* wtf/MediaTime.cpp:
(WTF::signum): Moved to top of file.
(WTF::MediaTime::operator*): Added.
(WTF::MediaTime::operator!=): Added.
* wtf/MediaTime.h:
(WTF::operator*): Added non-class version of operator*.

Tools:

Add tests for new MediaTime operators.

* TestWebKitAPI/Tests/WTF/MediaTime.cpp:
(TestWebKitAPI::TEST):

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

6 years ago[Media] Refactor supportsType() factory method to take a parameters object.
jer.noble@apple.com [Wed, 23 Oct 2013 00:14:37 +0000 (00:14 +0000)]
[Media] Refactor supportsType() factory method to take a parameters object.
https://bugs.webkit.org/show_bug.cgi?id=122489

Reviewed by Eric Carlson.

In order to support adding new conditional properties with which to decide
what MediaPlayerPrivate subclass to create, replace the two versions of the
supportsType() factory method with a single one taking a parameters object.

At the same time, add a 'isMediaSource' parameter to that object, allowing
MediaPlayerPrivate subclasses which support the same type and codecs but
which do not both support MediaSource to be distinguised.

* platform/graphics/MediaPlayer.cpp:
(WebCore::bestMediaEngineForSupportParameters): Renamed from
    bestMediaEngineForTypeAndCodecs.
(WebCore::MediaPlayer::nextBestMediaEngine): Added convenience function.
(WebCore::MediaPlayer::loadWithNextMediaEngine): Call nextBestMediaEngine()
(WebCore::MediaPlayer::supportsType): Pass parameter object.
(WebCore::MediaPlayer::networkStateChanged): Call nextBestMediaEngine().
* platform/graphics/MediaPlayer.h:
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::MediaPlayerPrivateAVFoundationCF::supportsType): Handle parameter object.
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::registerMediaEngine): Remove extraneous
    extendedSupportsType method.
(WebCore::MediaPlayerPrivateAVFoundationObjC::supportsType): Handle parameter object.
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::supportsType): Ditto.
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Remove extraneous
    extendedSupportsType method.
(WebCore::MediaPlayerPrivateQTKit::supportsType): Handle parameter object.
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsType): Ditto.
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
* platform/graphics/wince/MediaPlayerPrivateWinCE.h:

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

6 years agoMerge SVGRenderBlock::styleWillChange() into styleDidChange().
akling@apple.com [Wed, 23 Oct 2013 00:12:55 +0000 (00:12 +0000)]
Merge SVGRenderBlock::styleWillChange() into styleDidChange().
<https://webkit.org/b/123181>

I meant to do this one in r157787, but better late than never.

Reviewed by Geoffrey Garen.

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

6 years agoMake tables on the new flakiness dashboard sortable
rniwa@webkit.org [Wed, 23 Oct 2013 00:08:57 +0000 (00:08 +0000)]
Make tables on the new flakiness dashboard sortable
https://bugs.webkit.org/show_bug.cgi?id=123141

Reviewed by Simon Fraser.

Use jquery.tablesorter.js to make test and builder tables sortable. The jquery plugin is already used by run-perf-tests.

* index.html:
(TestResultsView._populateTestPane): Add tablesorter to the class name and wrap tr's inside a tbody so that tablesorter
could sort them.
(TestResultsView._populateBuilderPane): Ditto.
* main.css:
(.resultsTable thead): Use cursor: pointer to signify the fact it's clickable.
(.resultsTable th): Don't repeat arrows.
(.resultsTable th.headerSortUp): Inline SVG up arrow.
(.resultsTable th.headerSortDown): Inline SVG down arrow.

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

6 years agoEducate webkitpy about Mavericks.
simon.fraser@apple.com [Wed, 23 Oct 2013 00:05:00 +0000 (00:05 +0000)]
Educate webkitpy about Mavericks.

Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo._determine_mac_version):
* Scripts/webkitpy/common/system/platforminfo_unittest.py:
(TestPlatformInfo.test_os_version):
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser):
* Scripts/webkitpy/port/builders.py:
* Scripts/webkitpy/port/mac.py:
(MacPort):
* Scripts/webkitpy/port/mac_unittest.py:
(test_versions):
(test_baseline_search_path):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(TestRebaselineTest.test_baseline_directory):
(TestRebaselineExpectations.test_rebaseline_expectations):

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

6 years agoREGRESSION: `if (false === (true && undefined)) console.log("wrong!");` logs "wrong...
ggaren@apple.com [Wed, 23 Oct 2013 00:00:03 +0000 (00:00 +0000)]
REGRESSION: `if (false === (true && undefined)) console.log("wrong!");` logs "wrong!", shouldn't!
https://bugs.webkit.org/show_bug.cgi?id=123179

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

* parser/NodeConstructors.h:
(JSC::LogicalOpNode::LogicalOpNode):
* parser/ResultType.h:
(JSC::ResultType::forLogicalOp): Don't assume that && produces a boolean.
This is JavaScript (aka Sparta).

LayoutTests:

* js/dom/branch-fold-correctness.html: Added a test for this case.

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

6 years agoUnreviewed build fix on EFL port after r157823
ryuan.choi@samsung.com [Tue, 22 Oct 2013 23:59:15 +0000 (23:59 +0000)]
Unreviewed build fix on EFL port after r157823

* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode): renamed getOperationType() to type().

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

6 years agoCTTE: Modernize RenderBlock a bit
weinig@apple.com [Tue, 22 Oct 2013 23:59:08 +0000 (23:59 +0000)]
CTTE: Modernize RenderBlock a bit
https://bugs.webkit.org/show_bug.cgi?id=123162

Reviewed by Andreas Kling.

Start threading references through RenderBlock. While we
are here, do some selective modernization as well.

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

6 years agoUpdate the build trigger list for Mavericks.
slewis@apple.com [Tue, 22 Oct 2013 23:55:02 +0000 (23:55 +0000)]
Update the build trigger list for Mavericks.

Unreviewed.

* BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
(_should_file_trigger_build):

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

6 years agoEven more PassRef<RenderStyle>!
akling@apple.com [Tue, 22 Oct 2013 23:32:24 +0000 (23:32 +0000)]
Even more PassRef<RenderStyle>!
<https://webkit.org/b/123147>

Convert the remaining WebCore code to use PassRef for RenderStyle
wherever they are known to be non-null.

Reviewed by Antti Koivisto.

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

6 years agoUnreviewed, rolling out r157819.
commit-queue@webkit.org [Tue, 22 Oct 2013 22:58:55 +0000 (22:58 +0000)]
Unreviewed, rolling out r157819.
http://trac.webkit.org/changeset/157819
https://bugs.webkit.org/show_bug.cgi?id=123180

Broke 32-bit builds (Requested by smfr on #webkit).

Source/JavaScriptCore:

* Configurations/JavaScriptCore.xcconfig:
* Configurations/ToolExecutable.xcconfig:

Source/WebCore:

* Configurations/WebCore.xcconfig:

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

6 years agoRename deleteLineBoxTree to deleteLines
antti@apple.com [Tue, 22 Oct 2013 22:37:25 +0000 (22:37 +0000)]
Rename deleteLineBoxTree to deleteLines
https://bugs.webkit.org/show_bug.cgi?id=123176

Reviewed by Andreas Kling.

RenderBlock::deleteLineBoxTree -> RenderBlock::deleteLines
RenderInline::deleteLineBoxTree -> RenderInline::deleteLines

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

6 years ago{ClipPathOperation, FilterOperation}::getOperationType() should not include 'get'
timothy_horton@apple.com [Tue, 22 Oct 2013 22:33:57 +0000 (22:33 +0000)]
{ClipPathOperation, FilterOperation}::getOperationType() should not include 'get'
https://bugs.webkit.org/show_bug.cgi?id=123172

Reviewed by Simon Fraser.

No new tests, just a rename.

"get" in WebCore tends to mean that the function has out arguments; these have no arguments.
Rename FilterOperation::getOperationType() to FilterOperation::type().
I noticed that ClipPathOperation had the same mistake, so I fixed it there too.

Removed long and useless list of WebCore files.

* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::encodeFilterOperation):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):
Adopt the new name.

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

6 years agoAdd Mavericks bots to the dashboard.
simon.fraser@apple.com [Tue, 22 Oct 2013 22:32:07 +0000 (22:32 +0000)]
Add Mavericks bots to the dashboard.

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

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

6 years agoAX: Add paramAttrs to fetch start and end text markers in a given rect.
commit-queue@webkit.org [Tue, 22 Oct 2013 22:30:32 +0000 (22:30 +0000)]
AX: Add paramAttrs to fetch start and end text markers in a given rect.
https://bugs.webkit.org/show_bug.cgi?id=122164

Patch by Samuel White <samuel_white@apple.com> on 2013-10-22
Reviewed by Chris Fleizach.

Source/WebCore:

Added ability to fetch end and start text markers inside a given bounds. This gives ScreenReaders
like VoiceOver a way to retrieve the text markers for a specified column of page text.

Test: platform/mac/accessibility/text-marker-for-bounds.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::mainFrame):
(WebCore::AccessibilityObject::topDocument):
(WebCore::AccessibilityObject::visiblePositionForBounds):
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.cpp:
* accessibility/AccessibilityRenderObject.h:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper screenToContents:]):
(-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

Tools:

Added accessibility element hooks to test endTextMarkerForBounds and startTextMarkerForBounds.

* DumpRenderTree/AccessibilityUIElement.cpp:
(endTextMarkerForBoundsCallback):
(startTextMarkerForBoundsCallback):
(AccessibilityUIElement::endTextMarkerForBounds):
(AccessibilityUIElement::startTextMarkerForBounds):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::endTextMarkerForBounds):
(AccessibilityUIElement::startTextMarkerForBounds):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):

LayoutTests:

Added test to ensure end/start text marker for bounds works as
expected. Updated bounds for range test to include new API.

* platform/mac/accessibility/bounds-for-range-expected.txt:
* platform/mac/accessibility/text-marker-for-bounds-expected.txt: Added.
* platform/mac/accessibility/text-marker-for-bounds.html: Added.

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

6 years ago[CSS Shapes] Match adjustLogicalLineTopAndLogicalHeightIfNeeded's implementation...
zoltan@webkit.org [Tue, 22 Oct 2013 22:07:32 +0000 (22:07 +0000)]
[CSS Shapes] Match adjustLogicalLineTopAndLogicalHeightIfNeeded's implementation with Blink's
https://bugs.webkit.org/show_bug.cgi?id=123033

Reviewed by David Hyatt.

In Blink I made this function in a bit different way. This change modifies it
to be identical, which helps a lot in the future cross-merging patches.

No new tests, covered by existing texts.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded):

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

6 years ago[iOS] Upstream more ARMv7s bits
dbates@webkit.org [Tue, 22 Oct 2013 22:02:43 +0000 (22:02 +0000)]
[iOS] Upstream more ARMv7s bits
https://bugs.webkit.org/show_bug.cgi?id=123052

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

* Configurations/JavaScriptCore.xcconfig:
* Configurations/ToolExecutable.xcconfig: Enable CLANG_ENABLE_OBJC_ARC for i386 as I'm
modifying a file in JavaScriptCore/Configurations.

Source/WebCore:

* Configurations/WebCore.xcconfig:

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

6 years agoTry to fix Mavericks build; use <> for framework include.
simon.fraser@apple.com [Tue, 22 Oct 2013 21:49:46 +0000 (21:49 +0000)]
Try to fix Mavericks build; use <> for framework include.

* page/CaptionUserPreferencesMediaAF.cpp:

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

6 years agoURTBF after r157803 for !ENABLE(CSS_FILTERS) platforms.
ossy@webkit.org [Tue, 22 Oct 2013 21:45:13 +0000 (21:45 +0000)]
URTBF after r157803 for !ENABLE(CSS_FILTERS) platforms.

* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
* Shared/WebCoreArgumentCoders.cpp:

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

6 years agoGammaFilterOperation seems to be dead code
timothy_horton@apple.com [Tue, 22 Oct 2013 21:40:41 +0000 (21:40 +0000)]
GammaFilterOperation seems to be dead code
https://bugs.webkit.org/show_bug.cgi?id=123173

Reviewed by Simon Fraser.

* platform/graphics/filters/FilterOperation.cpp:
* platform/graphics/filters/FilterOperation.h:
Remove dead code.

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

6 years agoThere should be a way to specify additional repository paths in NRWT
rniwa@webkit.org [Tue, 22 Oct 2013 21:24:18 +0000 (21:24 +0000)]
There should be a way to specify additional repository paths in NRWT
https://bugs.webkit.org/show_bug.cgi?id=123135

Reviewed by Alexey Proskuryakov.

Added --additional-repository-name and --additional-repository-path options to NRWT.
These options allow us to submit addtional repository information, such as of Safari's
to the new flakiness dashboard.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
* Scripts/webkitpy/port/base.py:
(Port.repository_paths):

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

6 years agoadd mac-mavericks to wkbuild_unittest.py.
lforschler@apple.com [Tue, 22 Oct 2013 21:08:47 +0000 (21:08 +0000)]
add mac-mavericks to wkbuild_unittest.py.

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

6 years agoRename some line box functions to be just about lines
antti@apple.com [Tue, 22 Oct 2013 21:03:38 +0000 (21:03 +0000)]
Rename some line box functions to be just about lines
https://bugs.webkit.org/show_bug.cgi?id=123168

Reviewed by Dave Hyatt.

firstLineBoxBaseline -> firstLineBaseline
hasInlineBoxChildren -> hasLines

Also use hasLines in a bunch of places where firstLineBox() was used.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):

    Also use hasRenderedText() instead of firstTextBox()

* rendering/RenderFullScreen.cpp:

    Fix namespace.

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

6 years ago[iOS] Upstream JSLock changes
dbates@webkit.org [Tue, 22 Oct 2013 20:40:34 +0000 (20:40 +0000)]
[iOS] Upstream JSLock changes
https://bugs.webkit.org/show_bug.cgi?id=123107

Reviewed by Geoffrey Garen.

* runtime/JSLock.cpp:
(JSC::JSLock::unlock):
(JSC::JSLock::dropAllLocks): Modified to take a SpinLock, used only on iOS.
(JSC::JSLock::dropAllLocksUnconditionally): Modified to take a SpinLock, used only on iOS. Also
use pre-increment instead of post-increment when we're not using the return value of the instruction.
(JSC::JSLock::grabAllLocks): Modified to take a SpinLock, used only on iOS. Also change
places where we were using post-increment/post-decrement to use pre-increment/pre-decrement,
since we don't use the return value of such instructions.
(JSC::JSLock::DropAllLocks::DropAllLocks): Modified to support releasing all locks unconditionally.
Take a spin lock before releasing all locks on iOS. Also, use nullptr instead of 0.
(JSC::JSLock::DropAllLocks::~DropAllLocks): Take a spin lock before acquiring all locks on iOS.
* runtime/JSLock.h: Remove extraneous argument name "exec" from DropAllLocks as the data type of
the argument is sufficiently descriptive of its purpose.

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

6 years agoAdding Mock class to test RTCPeerConnection
commit-queue@webkit.org [Tue, 22 Oct 2013 20:18:36 +0000 (20:18 +0000)]
Adding Mock class to test RTCPeerConnection
https://bugs.webkit.org/show_bug.cgi?id=122848

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-22
Reviewed by Eric Carlson.

The following tests can be run:

    RTCPeerConnection-createAnswer.html
    RTCPeerConnection-createOffer.html
    RTCPeerConnection-ice.html
    RTCPeerConnection-localDescription.html
    RTCPeerConnection-remoteDescription.html
    RTCPeerConnection-state.html

Tests that require a MediaStream object, by invoking getUserMedia,
are not ready to run yet.

No new tests needed.

* CMakeLists.txt:
* platform/mediastream/RTCPeerConnectionHandler.cpp:
(WebCore::createHandler):
* platform/mediastream/RTCPeerConnectionHandler.h:
* platform/mediastream/RTCPeerConnectionHandlerClient.h:
* platform/mock/RTCNotifiersMock.cpp: Added.
* platform/mock/RTCNotifiersMock.h: Added.
* platform/mock/RTCPeerConnectionHandlerMock.cpp: Added.
* platform/mock/RTCPeerConnectionHandlerMock.h: Copied from Source/WebCore/platform/mediastream/RTCPeerConnectionHandler.h.
* platform/mock/TimerEventBasedMock.h: Added.
* testing/Internals.cpp:
(WebCore::Internals::Internals):
(WebCore::Internals::enableMockRTCPeerConnectionHandler):
* testing/Internals.h:

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

6 years agoWebCore::fillWithEmptyClients adopts new empty clients before leaking their pointers
zandobersek@gmail.com [Tue, 22 Oct 2013 20:16:49 +0000 (20:16 +0000)]
WebCore::fillWithEmptyClients adopts new empty clients before leaking their pointers
https://bugs.webkit.org/show_bug.cgi?id=122945

Reviewed by Anders Carlsson.

* loader/EmptyClients.cpp:
(WebCore::fillWithEmptyClients): Store the static empty clients as NeverDestroyed, rather than
adopting the pointer of each heap-allocated object and then immediately leaking that pointer.

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

6 years agoSimplify HRTFDatabaseLoader's load map
zandobersek@gmail.com [Tue, 22 Oct 2013 20:10:52 +0000 (20:10 +0000)]
Simplify HRTFDatabaseLoader's load map
https://bugs.webkit.org/show_bug.cgi?id=122944

Reviewed by Eric Carlson.

* platform/audio/HRTFDatabaseLoader.cpp:
(WebCore::loaderMap): Return a reference to a NeverDestroyed HashMap that maps sample rates to loaders.
(WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary):
(WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
* platform/audio/HRTFDatabaseLoader.h: Remove the LoaderMap type definition, the private singleton of that type
and the singleton's unused getter.

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

6 years agoadd mac-mavericks to the target_platform list.
lforschler@apple.com [Tue, 22 Oct 2013 19:46:15 +0000 (19:46 +0000)]
add mac-mavericks to the target_platform list.

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

6 years agoUnreviewed, rolling out r157774.
commit-queue@webkit.org [Tue, 22 Oct 2013 19:28:53 +0000 (19:28 +0000)]
Unreviewed, rolling out r157774.
http://trac.webkit.org/changeset/157774
https://bugs.webkit.org/show_bug.cgi?id=123167

causes python test to fail (Requested by smfr on #webkit).

* 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@157804 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemote Layer Tree: Support hardware accelerated filters
timothy_horton@apple.com [Tue, 22 Oct 2013 19:25:09 +0000 (19:25 +0000)]
Remote Layer Tree: Support hardware accelerated filters
https://bugs.webkit.org/show_bug.cgi?id=123139

Reviewed by Anders Carlsson.

* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::ArgumentCoder<Length>::encode):
(CoreIPC::ArgumentCoder<Length>::decode):
Add simple coders for Length.

(CoreIPC::encodeFilterOperation):
(CoreIPC::decodeFilterOperation):
Serialize and deserialize FilterOperations, except for CUSTOM and VALIDATED_CUSTOM.

(CoreIPC::ArgumentCoder<Length>::encode):
(CoreIPC::ArgumentCoder<Length>::decode):
Add coders for FilterOperations that delegate to {en,de}codeFilterOperation
for each operation in the list.

* Shared/WebCoreArgumentCoders.h:
Drive-by fix indentation.
Expose the Length and FilterOperations coders.

* Shared/mac/RemoteLayerTreeTransaction.h:
Add FiltersChanged and LayerProperties::filters.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
Encode and decode our FilterOperations.

(WebKit::dumpChangedLayers):
Dump information about the layers' filters.

* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::commit):
Use PlatformCAFilters code to apply a FilterOperations object to our CALayer.

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::setFilters):
Replace existing filters with our new set, and note that they've changed.

(PlatformCALayerRemote::copyFiltersFrom):
Not yet implemented. Not critical for this feature, either.

(PlatformCALayerRemote::filtersCanBeComposited):
For now, this is the same as the Mac version.

* WebCore.exp.in:
Export a variety of filter-related things.

* platform/graphics/ca/PlatformCAFilters.h:
* platform/graphics/ca/mac/PlatformCAFiltersMac.mm:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::setFilters):
* platform/graphics/ca/win/PlatformCAFiltersWin.cpp:
(PlatformCAFilters::setFiltersOnLayer):
setFiltersOnLayer should take a PlatformLayer instead of a PlatformCALayer
as its argument, because it doesn't need a PlatformCALayer, and this way
we can share code with the RemoteLayerTreeHost, which only has PlatformLayers
and not PlatformCALayers.

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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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

6 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