[Win] Unreviewed gardening.

* WebCore.vcxproj/WebCore.vcxproj.filters: Correct filter file so that source
files show up in their proper directories in Visual Studio.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159143 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Introduce IDBServerConnection (and start moving things to it).
https://bugs.webkit.org/show_bug.cgi?id=124193

Reviewed by Alexey Proskuryakov.

IDBServerConnection will be a purely asynchronous interface for database connections, transactions, and cursors.
Its interface will be 100% asynchronous and callback based - Perfect for an IPC divide.
Eventually none of the IDB<Foo>Backend classes will need IDBBackingStore<Foo> classes at all,
and they’ll all use IDBServerConnection directly.

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

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

Concrete implementation that - for now - wraps an IDBBackingStoreLevelDB:
* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp: Added.
(WebCore::IDBServerConnectionLevelDB::IDBServerConnectionLevelDB):
(WebCore::IDBServerConnectionLevelDB::deprecatedBackingStore):
(WebCore::IDBServerConnectionLevelDB::isClosed):
(WebCore::IDBServerConnectionLevelDB::getOrEstablishIDBDatabaseMetadata):
(WebCore::IDBServerConnectionLevelDB::deleteDatabase):
(WebCore::IDBServerConnectionLevelDB::close):
* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h: Added.

LevelDB created databases get LevelDB server connections:
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
(WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
(WebCore::IDBFactoryBackendLevelDB::open):

Replace most uses of IDBBackingStore with server connection:
* Modules/indexeddb/IDBDatabaseBackend.cpp:
(WebCore::IDBDatabaseBackend::create):
(WebCore::IDBDatabaseBackend::IDBDatabaseBackend):
(WebCore::IDBDatabaseBackend::openInternalAsync):
(WebCore::IDBDatabaseBackend::setIndexKeys):
(WebCore::IDBDatabaseBackend::openConnectionInternal):
(WebCore::IDBDatabaseBackend::deleteDatabaseAsync):
(WebCore::IDBDatabaseBackend::close):
* Modules/indexeddb/IDBDatabaseBackend.h:
(WebCore::IDBDatabaseBackend::serverConnection):

Change all the operations to access their DatabaseBackend’s server connection instead
if hanging on to a backing store directly:
* Modules/indexeddb/IDBTransactionBackend.cpp:
(WebCore::IDBTransactionBackend::IDBTransactionBackend):
(WebCore::IDBTransactionBackend::scheduleCreateObjectStoreOperation):
(WebCore::IDBTransactionBackend::scheduleDeleteObjectStoreOperation):
(WebCore::IDBTransactionBackend::scheduleCreateIndexOperation):
(WebCore::IDBTransactionBackend::scheduleDeleteIndexOperation):
(WebCore::IDBTransactionBackend::scheduleGetOperation):
(WebCore::IDBTransactionBackend::schedulePutOperation):
(WebCore::IDBTransactionBackend::scheduleOpenCursorOperation):
(WebCore::IDBTransactionBackend::scheduleCountOperation):
(WebCore::IDBTransactionBackend::scheduleDeleteRangeOperation):
(WebCore::IDBTransactionBackend::scheduleClearOperation):
* Modules/indexeddb/IDBTransactionBackend.h:

* Modules/indexeddb/IDBTransactionBackendOperations.cpp:
(WebCore::CreateObjectStoreOperation::perform):
(WebCore::CreateIndexOperation::perform):
(WebCore::DeleteIndexOperation::perform):
(WebCore::GetOperation::perform):
(WebCore::PutOperation::perform):
(WebCore::OpenCursorOperation::perform):
(WebCore::CountOperation::perform):
(WebCore::DeleteRangeOperation::perform):
(WebCore::ClearOperation::perform):
(WebCore::DeleteObjectStoreOperation::perform):
(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform):
* Modules/indexeddb/IDBTransactionBackendOperations.h:
(WebCore::CreateObjectStoreOperation::create):
(WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
(WebCore::DeleteObjectStoreOperation::create):
(WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
(WebCore::CreateIndexOperation::create):
(WebCore::CreateIndexOperation::CreateIndexOperation):
(WebCore::DeleteIndexOperation::create):
(WebCore::DeleteIndexOperation::DeleteIndexOperation):
(WebCore::GetOperation::create):
(WebCore::GetOperation::GetOperation):
(WebCore::PutOperation::create):
(WebCore::PutOperation::PutOperation):
(WebCore::OpenCursorOperation::create):
(WebCore::OpenCursorOperation::OpenCursorOperation):
(WebCore::CountOperation::create):
(WebCore::CountOperation::CountOperation):
(WebCore::DeleteRangeOperation::create):
(WebCore::DeleteRangeOperation::DeleteRangeOperation):
(WebCore::ClearOperation::create):
(WebCore::ClearOperation::ClearOperation):
* Modules/indexeddb/IDBTransactionCoordinator.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159144 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add fast/images/pdf-as-image-crop-box.html to the pile of tiny-color-mismatch tests.

* platform/mac-wk2/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159145 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Build GStreamer files on Windows.
https://bugs.webkit.org/show_bug.cgi?id=124180

Reviewed by Brent Fulgham.

Source/WebCore: 

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.vcxproj/copyForwardingHeaders.cmd:
Include gstreamer files in WinCairo build.

Source/WTF: 

* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.vcxproj/copy-files.cmd:
Include gobject files in WinCairo build.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159146 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Win] Unreviewed gardening.

* WTF.vcxproj/WTF.vcxproj.filters: Tidy up filters so files show up
in their proper directories.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159148 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove most uses of MutableArray
https://bugs.webkit.org/show_bug.cgi?id=124232

Reviewed by Sam Weinig.

* Shared/API/c/WKMutableArray.cpp:
(WKMutableArrayCreate):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebRenderLayer.h:
(WebKit::WebRenderLayer::create):
(WebKit::WebRenderLayer::WebRenderLayer):
* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::WebRenderObject):
* Shared/WebRenderObject.h:
(WebKit::WebRenderObject::create):
(WebKit::WebRenderObject::WebRenderObject):
* WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
(WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159149 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make RenderBlockRareData be in a hashtable instead of being a member variable.
https://bugs.webkit.org/show_bug.cgi?id=124056

Reviewed by Anders Carlsson.

Right now RenderBlock has 4 bytes taken up by a m_rareData member that is almost
never allocated. This is better off in a separate hash, so that RenderBlock can
get 4 bytes back.
        
Since RenderBlockFlow's rare data member was recently removed and folded into
RenderBlock, we need to undo that change and put the rare data member back in
RenderBlockFlow. RenderBlockFlowRareData inheriting from RenderBlockRareData
was not a good idea anyway, since RenderBlockFlows also very rarely need the
RenderBlockRareData members, and were thus paying a heavier cost when the rare
data was created than was necessary.
 
* rendering/RenderBlock.cpp:
(WebCore::RenderBlockRareData::RenderBlockRareData):
(WebCore::RenderBlock::~RenderBlock):
(WebCore::RenderBlock::hasRareData):
(WebCore::getRareData):
(WebCore::ensureRareData):
(WebCore::RenderBlock::ensureShapeInsideInfo):
(WebCore::RenderBlock::shapeInsideInfo):
(WebCore::RenderBlock::setShapeInsideInfo):
(WebCore::RenderBlock::paginationStrut):
(WebCore::RenderBlock::pageLogicalOffset):
(WebCore::RenderBlock::setPaginationStrut):
(WebCore::RenderBlock::setPageLogicalOffset):
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::setMaxMarginBeforeValues):
(WebCore::RenderBlockFlow::setMaxMarginAfterValues):
(WebCore::RenderBlockFlow::setMustDiscardMarginBefore):
(WebCore::RenderBlockFlow::setMustDiscardMarginAfter):
(WebCore::RenderBlockFlow::mustDiscardMarginBefore):
(WebCore::RenderBlockFlow::mustDiscardMarginAfter):
(WebCore::RenderBlockFlow::setBreakAtLineToAvoidWidow):
(WebCore::RenderBlockFlow::setDidBreakAtLineToAvoidWidow):
(WebCore::RenderBlockFlow::clearDidBreakAtLineToAvoidWidow):
(WebCore::RenderBlockFlow::clearShouldBreakAtLineToAvoidWidow):
(WebCore::RenderBlockFlow::setRenderNamedFlowFragment):
(WebCore::RenderBlockFlow::ensureRareBlockFlowData):
(WebCore::RenderBlockFlow::materializeRareBlockFlowData):
* rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::shouldBreakAtLineToAvoidWidow):
(WebCore::RenderBlockFlow::lineBreakToAvoidWidow):
(WebCore::RenderBlockFlow::didBreakAtLineToAvoidWidow):
(WebCore::RenderBlockFlow::lineGridBox):
(WebCore::RenderBlockFlow::setLineGridBox):
(WebCore::RenderBlockFlow::renderNamedFlowFragment):
(WebCore::RenderBlockFlow::maxPositiveMarginBefore):
(WebCore::RenderBlockFlow::maxNegativeMarginBefore):
(WebCore::RenderBlockFlow::maxPositiveMarginAfter):
(WebCore::RenderBlockFlow::maxNegativeMarginAfter):
(WebCore::RenderBlockFlow::initMaxMarginValues):
(WebCore::RenderBlockFlow::hasRareBlockFlowData):
(WebCore::RenderBlockFlow::rareBlockFlowData):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159150 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: ContentFlowTreeContentView should use only one DOMTreeOutline
https://bugs.webkit.org/show_bug.cgi?id=124230

Reviewed by Timothy Hatcher.

Changed ContentFlowTreeContentView to use one DOMTreeOutline by just
populating it with root DOMTreeElements directly. That is very
similar to how DOMTreeOutline works when omitRootDOMNode is used.

Now that ContentFlowTreeContentView has only one DOMTreeOutline,
it makes sense to change its base class to be DOMTreeContentView instead.
Also, with that I've changed its name to ContentFlowDOMTreeContentView.

I had to move all the DOMTree document loading code from DOMTreeContentView to a
new class called FrameDOMTreeContentView. This is used to display the DOM of the
frame objects. FrameDOMTreeContentView is also inheriting from DOMTreeContentView.

Issues that are fixed as a side effect:
- Selection path components are now displaying all the sibling elements for contentFlow.contentNodes
(those are the nodes that have "-webkit-flow-into" set directly).
- Keyboard navigation works for the contentFlow.contentNodes.
- Search is implemented in DOMTreeContentView, so that code now works for flows too.
The DOMAgents's search API will use all the Documents to lookup for nodes, so it might
find DOM nodes that are not part of the flow. This is in line with the behavior for the
frames.

* UserInterface/ContentFlowDOMTreeContentView.js: Renamed from ContentFlowTreeContentView
to better reflect the inheritance from DOMTreeContentView.
(WebInspector.ContentFlowDOMTreeContentView):
(WebInspector.ContentFlowDOMTreeContentView.prototype.closed):
(WebInspector.ContentFlowDOMTreeContentView.prototype._createContentTrees):
(WebInspector.ContentFlowDOMTreeContentView.prototype._contentNodeWasAdded):
(WebInspector.ContentFlowDOMTreeContentView.prototype._contentNodeWasRemoved):
* UserInterface/ContentView.js:
(WebInspector.ContentView):
* UserInterface/DOMTreeContentView.js:
(WebInspector.DOMTreeContentView):
(WebInspector.DOMTreeContentView.prototype.closed):
(WebInspector.DOMTreeContentView.prototype.):
(WebInspector.DOMTreeContentView.prototype._restoreSelectedNodeAfterUpdate):
(WebInspector.DOMTreeContentView.prototype._selectedNodeDidChange):
* UserInterface/FrameDOMTreeContentView.js: Added.
(WebInspector.FrameDOMTreeContentView):
(WebInspector.FrameDOMTreeContentView.prototype.get domTree):
(WebInspector.FrameDOMTreeContentView.prototype.closed):
(WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeAvailable):
(WebInspector.FrameDOMTreeContentView.prototype._rootDOMNodeInvalidated):
(WebInspector.FrameDOMTreeContentView.prototype._requestRootDOMNode):
* UserInterface/Main.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159151 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove more functionality from MutableArray
https://bugs.webkit.org/show_bug.cgi?id=124235

Reviewed by Beth Dakin.

* Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(encodeToObjectStream):
* Shared/API/c/WKMutableArray.cpp:
(WKArrayAppendItem):
(WKArrayRemoveItemAtIndex):
* Shared/Cocoa/WKNSArray.mm:
(-[WKNSArray copyWithZone:]):
* Shared/ImmutableArray.h:
(WebKit::ImmutableArray::elements):
* Shared/MutableArray.cpp:
* Shared/MutableArray.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[sh4] Fix load32WithUnalignedHalfWords function in baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=124233

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

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::load32WithUnalignedHalfWords): Do not claim scratch register too early.
Test already covered by fast/regex/pcre-test-1.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159153 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix windows build bustage.

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