Commit graph

125 commits

Author SHA1 Message Date
Pavel Shliak
6f81b80114 Everywhere: Include HashMap only where it's actually used 2024-12-09 12:31:16 +01:00
Jonne Ransijn
d7596a0a61 AK: Don't implicitly convert Optional<T&> to Optional<T>
C++ will jovially select the implicit conversion operator, even if it's
complete bogus, such as for unknown-size types or non-destructible
types. Therefore, all such conversions (which incur a copy) must
(unfortunately) be explicit so that non-copyable types continue to work.

NOTE: We make an exception for trivially copyable types, since they
are, well, trivially copyable.

Co-authored-by: kleines Filmröllchen <filmroellchen@serenityos.org>
2024-12-04 01:58:22 +01:00
Pavel Shliak
4d5acc7a00 LibWeb: Remove IDBRequest.idl FIXME 2024-12-01 22:04:05 +01:00
stelar7
6c9a8362d6 LibWeb: Implement the wait step for open_a_database_connection 2024-11-26 14:50:27 +01:00
stelar7
4357c3229c LibWeb: Implement legacyOutputDidListenersThrowFlag 2024-11-26 14:50:27 +01:00
stelar7
932fb2024e LibWeb: Store IndexedDB Databases mappings properly 2024-11-26 14:50:27 +01:00
stelar7
1656d8fe07 LibWeb: Implement most of upgrade_a_database for IndexedDB 2024-11-26 14:50:27 +01:00
stelar7
ca25f76ccc LibWeb: Remove old FIXMEs 2024-11-26 14:50:27 +01:00
stelar7
9aebe5f2eb LibWeb: Dont take a reference to the request in IDBFactory::open() 2024-11-26 14:50:27 +01:00
stelar7
bb31b682a5 LibWeb: Implement IDBDatabase::close() 2024-11-26 14:50:27 +01:00
stelar7
49ad27816b LibWeb: Properly implement IDBRequest::result() 2024-11-26 14:50:27 +01:00
stelar7
204d776cdb LibWeb: Properly implement IDBRequest::error() 2024-11-26 14:50:27 +01:00
stelar7
29ddaa76e7 LibWeb: Implement IDBRequest::ready_state() 2024-11-26 14:50:27 +01:00
stelar7
a4b876b43e LibWeb: Implement IDBRequest::source() 2024-11-26 14:50:27 +01:00
stelar7
48fae7b64f LibWeb: Add IDBKeyRange 2024-11-26 14:50:27 +01:00
stelar7
20a92a81c4 LibWeb: Add IDBTransaction 2024-11-26 14:50:27 +01:00
stelar7
16ce2b975a LibWeb: Add IDBObjectStore 2024-11-26 14:50:27 +01:00
stelar7
297c775b34 LibWeb: Add IDBIndex 2024-11-26 14:50:27 +01:00
stelar7
71772d97dc LibWeb: Add IDBCursor 2024-11-26 14:50:27 +01:00
stelar7
331f26a88b LibWeb: Implement IDBFactory::cmp 2024-11-25 11:53:50 +01:00
stelar7
c43b93e6fa LibWeb: Implement convert_a_value_to_a_key for IndexedDB 2024-11-25 11:53:50 +01:00
stelar7
34479e5664 LibWeb: Add a Key type for IndexedDB 2024-11-25 11:53:50 +01:00
Shannon Booth
f87041bf3a LibGC+Everywhere: Factor out a LibGC from LibJS
Resulting in a massive rename across almost everywhere! Alongside the
namespace change, we now have the following names:

 * JS::NonnullGCPtr -> GC::Ref
 * JS::GCPtr -> GC::Ptr
 * JS::HeapFunction -> GC::Function
 * JS::CellImpl -> GC::Cell
 * JS::Handle -> GC::Root
2024-11-15 14:49:20 +01:00
Shannon Booth
9b79a686eb LibJS+LibWeb: Use realm.create<T> instead of heap.allocate<T>
The main motivation behind this is to remove JS specifics of the Realm
from the implementation of the Heap.

As a side effect of this change, this is a bit nicer to read than the
previous approach, and in my opinion, also makes it a little more clear
that this method is specific to a JavaScript Realm.
2024-11-13 16:51:44 -05:00
Timothy Flynn
93712b24bf Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00