2011-02-04 Jeremy Orlow <jorlow@chromium.org>
authorjorlow@chromium.org <jorlow@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Feb 2011 23:45:27 +0000 (23:45 +0000)
committerjorlow@chromium.org <jorlow@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Feb 2011 23:45:27 +0000 (23:45 +0000)
commit383e15410943bba51b7fd92af63f3c33b0ab5f22
treeb7a5a0dc1cef4ff5ae296cb3e6277b39f4ef851d
parentfded1af5bfb219d4b3fcbbfeef1cc0f3fcf5e5c1
2011-02-04  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Nate Chapin.

        Second IndexedDB events overhaul patch
        https://bugs.webkit.org/show_bug.cgi?id=53813

        * storage/indexeddb/request-event-propagation-expected.txt: Added.
        * storage/indexeddb/request-event-propagation.html: Added.
2011-02-04  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Nate Chapin.

        Second IndexedDB events overhaul patch
        https://bugs.webkit.org/show_bug.cgi?id=53813

        If an IDBRequest has a IDBTransaction, it should propogate
        events through it. In order to do this, IDBRequest needs to
        hold a transaction frontend object rather than a backend one.

        Test: storage/indexeddb/request-event-propagation.html

        * storage/IDBCursor.cpp:
        (WebCore::IDBCursor::IDBCursor):
        * storage/IDBCursor.h:
        (WebCore::IDBCursor::create):
        * storage/IDBDatabase.cpp:
        (WebCore::IDBDatabase::setSetVersionTransaction):
        (WebCore::IDBDatabase::createObjectStore):
        (WebCore::IDBDatabase::deleteObjectStore):
        * storage/IDBDatabase.h:
        * storage/IDBIndex.cpp:
        (WebCore::IDBIndex::IDBIndex):
        (WebCore::IDBIndex::openCursor):
        (WebCore::IDBIndex::openKeyCursor):
        (WebCore::IDBIndex::get):
        (WebCore::IDBIndex::getKey):
        * storage/IDBIndex.h:
        (WebCore::IDBIndex::create):
        * storage/IDBObjectStore.cpp:
        (WebCore::IDBObjectStore::IDBObjectStore):
        (WebCore::IDBObjectStore::get):
        (WebCore::IDBObjectStore::add):
        (WebCore::IDBObjectStore::put):
        (WebCore::IDBObjectStore::deleteFunction):
        (WebCore::IDBObjectStore::createIndex):
        (WebCore::IDBObjectStore::deleteIndex):
        (WebCore::IDBObjectStore::openCursor):
        * storage/IDBObjectStore.h:
        (WebCore::IDBObjectStore::create):
        * storage/IDBRequest.cpp:
        (WebCore::IDBRequest::create):
        (WebCore::IDBRequest::IDBRequest):
        (WebCore::IDBRequest::resetReadyState):
        (WebCore::IDBRequest::onSuccess):
        (WebCore::IDBRequest::dispatchEvent):
        * storage/IDBRequest.h:
        * storage/IDBTransaction.cpp:
        (WebCore::IDBTransaction::IDBTransaction):
        (WebCore::IDBTransaction::objectStore):
        (WebCore::IDBTransaction::contextDestroyed):
        (WebCore::IDBTransaction::enqueueEvent):
        * storage/IDBTransaction.h:
        * storage/IDBTransaction.idl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed:
LayoutTests/ChangeLog
LayoutTests/storage/indexeddb/request-event-propagation-expected.txt [new file with mode: 0644]
LayoutTests/storage/indexeddb/request-event-propagation.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/storage/IDBCursor.cpp
Source/WebCore/storage/IDBCursor.h
Source/WebCore/storage/IDBDatabase.cpp
Source/WebCore/storage/IDBDatabase.h
Source/WebCore/storage/IDBIndex.cpp
Source/WebCore/storage/IDBIndex.h
Source/WebCore/storage/IDBObjectStore.cpp
Source/WebCore/storage/IDBObjectStore.h
Source/WebCore/storage/IDBRequest.cpp
Source/WebCore/storage/IDBRequest.h
Source/WebCore/storage/IDBTransaction.cpp
Source/WebCore/storage/IDBTransaction.h
Source/WebCore/storage/IDBTransaction.idl