2011-02-04 Jeremy Orlow <jorlow@chromium.org>
authorjorlow@chromium.org <jorlow@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Feb 2011 23:43:19 +0000 (23:43 +0000)
committerjorlow@chromium.org <jorlow@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Feb 2011 23:43:19 +0000 (23:43 +0000)
commitfded1af5bfb219d4b3fcbbfeef1cc0f3fcf5e5c1
tree25de54b1803d7669035d789229e1d6d2c81024c0
parent9b138a52a3b9eb2f8a635c5200f322b0fe990617
2011-02-04  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Nate Chapin.

        First step towards event propogation within IndexedDB
        https://bugs.webkit.org/show_bug.cgi?id=53795

        This is the first step towards implementing
        http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
        within IndexedDB. I've created a method that knows how
        to capture and bubble (based on Node's dispatchGenericEvent).
        I've then changed IDBRequest to use it.

        The only functional change is that preventDefault now must
        be called in error events to prevent the transaction from
        being aborted. The tests reflect this change and there's one
        specific test to look at this behavior.

        * storage/indexeddb/cursor-index-delete-expected.txt:
        * storage/indexeddb/cursor-index-delete.html:
        * storage/indexeddb/database-quota-expected.txt:
        * storage/indexeddb/database-quota.html:
        * storage/indexeddb/duplicates-expected.txt:
        * storage/indexeddb/duplicates.html:
        * storage/indexeddb/error-causes-abort-by-default-expected.txt: Copied from LayoutTests/storage/indexeddb/cursor-index-delete-expected.txt.
        * storage/indexeddb/error-causes-abort-by-default.html: Added.
        * storage/indexeddb/index-basics-expected.txt:
        * storage/indexeddb/index-basics.html:
        * storage/indexeddb/objectstore-autoincrement-expected.txt:
        * storage/indexeddb/objectstore-autoincrement.html:
        * storage/indexeddb/objectstore-basics-expected.txt:
        * storage/indexeddb/objectstore-basics.html:
2011-02-04  Jeremy Orlow  <jorlow@chromium.org>

        Reviewed by Nate Chapin.

        First step towards event propogation within IndexedDB
        https://bugs.webkit.org/show_bug.cgi?id=53795

        This is the first step towards implementing
        http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
        within IndexedDB. I've created a method that knows how
        to capture and bubble (based on Node's dispatchGenericEvent).
        I've then changed IDBRequest to use it.

        The only functional change is that preventDefault now must
        be called in error events to prevent the transaction from
        being aborted. The tests reflect this change and there's one
        specific test to look at this behavior.

        Test: storage/indexeddb/error-causes-abort-by-default.html

        * storage/IDBAbortEvent.cpp:
        (WebCore::IDBAbortEvent::create):
        (WebCore::IDBAbortEvent::IDBAbortEvent):
        * storage/IDBAbortEvent.h:
        * storage/IDBCompleteEvent.cpp:
        (WebCore::IDBCompleteEvent::create):
        (WebCore::IDBCompleteEvent::IDBCompleteEvent):
        * storage/IDBCompleteEvent.h:
        * storage/IDBErrorEvent.cpp:
        (WebCore::IDBErrorEvent::IDBErrorEvent):
        * storage/IDBEvent.cpp:
        (WebCore::IDBEvent::IDBEvent):
        (WebCore::IDBEvent::dispatch):
        * storage/IDBEvent.h:
        * storage/IDBRequest.cpp:
        (WebCore::IDBRequest::dispatchEvent):
        * storage/IDBRequest.h:
        * storage/IDBSuccessEvent.cpp:
        (WebCore::IDBSuccessEvent::IDBSuccessEvent):
        * storage/IDBTransaction.cpp:
        (WebCore::IDBTransaction::onAbort):
        (WebCore::IDBTransaction::onComplete):
        * storage/IDBTransaction.h:
        (WebCore::IDBTransaction::backend):
        * storage/IDBTransactionBackendImpl.cpp:
        (WebCore::IDBTransactionBackendImpl::taskTimerFired):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77688 268f45cc-cd09-0410-ab3c-d52691b4dbfc
31 files changed:
LayoutTests/ChangeLog
LayoutTests/storage/indexeddb/cursor-index-delete-expected.txt
LayoutTests/storage/indexeddb/cursor-index-delete.html
LayoutTests/storage/indexeddb/cursor-update-expected.txt
LayoutTests/storage/indexeddb/cursor-update.html
LayoutTests/storage/indexeddb/database-quota-expected.txt
LayoutTests/storage/indexeddb/database-quota.html
LayoutTests/storage/indexeddb/duplicates-expected.txt
LayoutTests/storage/indexeddb/duplicates.html
LayoutTests/storage/indexeddb/error-causes-abort-by-default-expected.txt [new file with mode: 0644]
LayoutTests/storage/indexeddb/error-causes-abort-by-default.html [new file with mode: 0644]
LayoutTests/storage/indexeddb/index-basics-expected.txt
LayoutTests/storage/indexeddb/index-basics.html
LayoutTests/storage/indexeddb/objectstore-autoincrement-expected.txt
LayoutTests/storage/indexeddb/objectstore-autoincrement.html
LayoutTests/storage/indexeddb/objectstore-basics-expected.txt
LayoutTests/storage/indexeddb/objectstore-basics.html
Source/WebCore/ChangeLog
Source/WebCore/storage/IDBAbortEvent.cpp
Source/WebCore/storage/IDBAbortEvent.h
Source/WebCore/storage/IDBCompleteEvent.cpp
Source/WebCore/storage/IDBCompleteEvent.h
Source/WebCore/storage/IDBErrorEvent.cpp
Source/WebCore/storage/IDBEvent.cpp
Source/WebCore/storage/IDBEvent.h
Source/WebCore/storage/IDBRequest.cpp
Source/WebCore/storage/IDBRequest.h
Source/WebCore/storage/IDBSuccessEvent.cpp
Source/WebCore/storage/IDBTransaction.cpp
Source/WebCore/storage/IDBTransaction.h
Source/WebCore/storage/IDBTransactionBackendImpl.cpp