Unreviewed EFL gardening

Skip crashing http tests.

* platform/efl-wk2/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162942 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Expose SQL database creation and modification times
https://bugs.webkit.org/show_bug.cgi?id=127728

Reviewed by Brady Eidson.

Source/WebCore: 

* platform/FileSystem.h:
* platform/posix/FileSystemPOSIX.cpp:
(WebCore::getFileCreationTime):
* platform/win/FileSystemWin.cpp:
(WebCore::getFileCreationTimeFromFindData):
(WebCore::getFileCreationTime):
Added functions to get file creation times. Not all OSes support that, but Darwin
and Windows do, as (I think) various BSD flavors.

* platform/gtk/FileSystemGtk.cpp: Added a stub for getFileCreationTime().

* platform/sql/SQLiteFileSystem.h:
* platform/sql/SQLiteFileSystem.cpp:
(WebCore::SQLiteFileSystem::databaseCreationTime):
(WebCore::SQLiteFileSystem::databaseModificationTime):
Expose it in the same strange manner other database file operations are.

* Modules/webdatabase/DatabaseDetails.h:
(WebCore::DatabaseDetails::DatabaseDetails):
(WebCore::DatabaseDetails::creationTime):
(WebCore::DatabaseDetails::modificationTime):
Added creation and modification times to DatabaseDetails.

* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseManager::ProposedDatabase::ProposedDatabase):
(WebCore::DatabaseManager::openDatabaseBackend):
ProposedDatabase is an unfortunate mechanism for communicating quota errors to the
client, we should really straighten it up. But for now, just leave the times uninitialized.

* Modules/webdatabase/DatabaseBackendBase.cpp: (WebCore::DatabaseBackendBase::details):
This code path is for handling quota errors, so there is no need to initialize most
of DatabaseDetails here as well.

* Modules/webdatabase/DatabaseTracker.cpp: (WebCore::DatabaseTracker::detailsForNameAndOrigin):
* Modules/webdatabase/DatabaseTracker.h:
Fill in database file times. Inlined and removed usageForDatabase function to
avoid rebuilding the path multiple times.

Source/WebKit2: 

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<DatabaseDetails>::encode):
(IPC::ArgumentCoder<DatabaseDetails>::decode):
Encode and decode new DatabaseDetails member variables.

* UIProcess/API/C/WKDatabaseManager.cpp:
(WKDatabaseManagerGetDatabaseDetailsCreationTimeKey):
(WKDatabaseManagerGetDatabaseDetailsModificationTimeKey):
* UIProcess/API/C/WKDatabaseManager.h:
Added new keys for database details.

* UIProcess/WebDatabaseManagerProxy.cpp:
(WebKit::WebDatabaseManagerProxy::databaseDetailsCreationTimeKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsModificationTimeKey):
(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
* UIProcess/WebDatabaseManagerProxy.h:
Set the new keys if times are valid.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162943 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] Use explicit, rather than canonical, AudioFormatFlags and types.
https://bugs.webkit.org/show_bug.cgi?id=127781

Reviewed by Eric Carlson.

Since every mac platform uses Float32 audio samples, use these types explicitly
rather than the implicit, canonical AudioSampleType type. Once we're using Float32
explicity, we can also use the explicit kAudioFormatFlagsNativeFloatPacked flag
rather than the canonical version.

* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestinationMac::configure):
* platform/audio/mac/AudioFileReaderMac.cpp:
(WebCore::AudioFileReader::createBus):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162944 268f45cc-cd09-0410-ab3c-d52691b4dbfc
HTMLMediaElement::m_platformLayerBorrowed is uninitialized.
https://bugs.webkit.org/show_bug.cgi?id=127759

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-01-28
Reviewed by Eric Carlson.

Initalize m_platformLayerBorrowed to false.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162945 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKit2 View Gestures (Swipe): Snapshots should be purgeable
https://bugs.webkit.org/show_bug.cgi?id=127390
<rdar://problem/15876775>

Reviewed by Anders Carlsson.

Make snapshots be purgeable, and implement a straightforward
(if perhaps expensive, for now) cache eviction strategy to limit the
number of snapshots to 20.

* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
When beginning a gesture, attempt to make the retrieved snapshot
non-volatile. If it was purged while volatile, we won't use it, but if it
is still valid, we'll go ahead and use it as the swipe layer's contents.

(WebKit::ViewGestureController::removeSwipeSnapshot):
When removing the swipe snapshot, make it volatile once again.

* UIProcess/mac/ViewSnapshotStore.h:
Store a creation time along with the image.
Store and return IOSurfaces instead of CGImages.
Store snapshots and render tree sizes separately, so that we can
throw away snapshots but keep the render tree sizes indefinitely.

* UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshotStore::pruneSnapshots):
Cap the number of snapshots we'll ever have live at 20.
Enforce this cap by first trying to remove snapshots farthest
from the current back-forward list's current item, falling back
to removing the least recently created snapshot if there are no
snapshots owned by the current back-forward list.

(WebKit::createIOSurfaceFromImage):
Build an IOSurface from the CGImage snapshot we took, for ease of
use of its purgeability API.

(WebKit::ViewSnapshotStore::recordSnapshot):
Bail from taking the snapshot if the image is empty; this can happen
if the view is out of the window when the snapshot is taken.

Mark snapshots as purgeable as soon as they go into the cache.

(WebKit::ViewSnapshotStore::snapshotAndRenderTreeSize):
Return the target render tree size even if there is no snapshot image.
Take care not to look up an empty UUID.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162946 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r162837): 5% regression on html5-full-render and 3% regression in DoYouEvenBench
https://bugs.webkit.org/show_bug.cgi?id=127722

Reviewed by Darin Adler.

Accumulate repaint region in RendeView instead of flushing rects directly to the system.

* dom/Document.cpp:
(WebCore::Document::recalcStyle):
(WebCore::Document::updateLayout):
(WebCore::Document::topDocument):
        
    Make less silly.

* page/FrameView.cpp:
(WebCore::FrameView::layout):
* rendering/RenderView.cpp:
(WebCore::RenderView::repaintViewRectangle):
(WebCore::RenderView::flushAccumulatedRepaintRegion):
(WebCore::RenderView::RepaintRegionAccumulator::RepaintRegionAccumulator):
(WebCore::RenderView::RepaintRegionAccumulator::~RepaintRegionAccumulator):
* rendering/RenderView.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162947 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove unneeded “WebCore::” prefixing in two .cpp files.

Rubberstamped by Alexey Proskuryakov.

* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

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