Timothy Flynn
2d45e1fca5
LibWeb: Port the CSS namespace to IDL
2023-03-15 12:48:25 -04:00
Timothy Flynn
9c569e8a0f
LibWeb: Implement the [PutForwards] IDL extended attribute
...
For example, consider the attribute:
interface Element {
[PutForwards=value] readonly attribute DOMTokenList classList;
}
When `classList` is set, we should instead set the attribute `value` on
the `classList` attribute of the Element interface.
2023-03-14 16:30:19 -04:00
Timothy Flynn
0aa4466ce9
LibWeb: Port {set,clear}{Timeout,Interval} to IDL
2023-03-14 09:07:40 -04:00
Timothy Flynn
2895b7e733
LibWeb: Port the WindowOrWorkerGlobalScopeMixin timer handler to String
...
This will make porting to IDL a bit cleaner.
2023-03-14 09:07:40 -04:00
Timothy Flynn
dd992e7dad
LibWeb: Move timer implementations to WindowOrWorkerGlobalScopeMixin
...
This is where it belongs according to the spec, and where these methods'
IDL will be placed.
This forces us to implement a few steps closer to the spec as well.
2023-03-14 09:07:40 -04:00
Timothy Flynn
97536e4684
LibWeb+Ladybird+Userland: Port window.[alert,confirm,prompt] to String
...
LibGUI and WebDriver (read: JSON) API boundaries use DeprecatedString,
so that is as far as these changes can reach.
The one change which isn't just a DeprecatedString to String replacement
is handling the "null" prompt response. We previously checked for the
null DeprecatedString, whereas we now represent this as an empty
Optional<String>.
2023-03-13 22:05:22 +00:00
Linus Groh
41b8d81d49
LibWeb/HTML: Remove redundant namespace qualifiers from Window.{cpp,h}
2023-03-11 18:26:40 +00:00
Linus Groh
324dacbc5d
LibWeb/HTML: Propagate OOM errors from Window::{local,session}_storage()
...
This requires a bit of error type conversion glue as HashMap::try_ensure
expects the callback to return ErrorOr<T> like the function itself does.
2023-03-11 18:26:40 +00:00
Linus Groh
4da68384e6
LibWeb/HTML: Make Window::m{location,navigator} lazily allocated
...
This now matches the other window-owned objects, which already do this:
m_crypto, m_performance, m_screen.
2023-03-11 17:53:50 +00:00
Linus Groh
22552382ff
LibWeb/HTML: Use CreateMethodProperty for Window namespace properties
...
This makes sure the property attributes are correct (writable and
configurable), which they currently aren't for either CSS or
WebAssembly.
2023-03-11 17:32:07 +00:00
Linus Groh
d4d49e00a2
LibWeb/Bindings: Remove now unused REPLACEABLE_PROPERTY_SETTER() macro
2023-03-07 23:33:34 +00:00
Linus Groh
351e5ca917
LibWeb/HTML: Port Window.queueMicrotask() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
129ab02470
LibWeb/HTML: Port Window.structuredClone() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
a31c561a5a
LibWeb/HTML: Port Window.sessionStorage to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
37e9302dd9
LibWeb/HTML: Port Window.localStorage to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
5cc6b1c4db
LibWeb/HTML: Port Window.fetch() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
a2fb3a1653
LibWeb/HTML: Port Window.cancelAnimationFrame() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
211e6c1fbc
LibWeb/HTML: Port Window.requestAnimationFrame() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
86589f09dc
LibWeb/HTML: Port Window.cancelIdleCallback() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
b410804f54
LibWeb/HTML: Port Window.requestIdleCallback() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
606b9ff6f3
LibWeb/HTML: Port Window.getSelection() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
56550b6ec0
LibWeb/HTML: Port Window.focus() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
b59505aba5
LibWeb/HTML: Port Window.getComputedStyle() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
8454eb874f
LibWeb/HTML: Port Window.devicePixelRatio to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
46e547d774
LibWeb/HTML: Port Window.outer{Width,Height} to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
80acf03278
LibWeb/HTML: Port Window.screen{X,Y} / Window.screen{Left,Top} to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
3d075e55f5
LibWeb/HTML: Port Window.scrollBy() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
2b6d9cca1a
LibWeb/HTML: Port Window.scroll() to IDL
...
...with various changes required due to ScrollBehavior / ScrollOptions
moving from Element.idl to Window.idl.
2023-03-07 23:33:34 +00:00
Linus Groh
40b4ee88de
LibWeb/HTML: Port Window.scroll{X,Y} / Window.page{X,Y}Offset to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
25f53a577d
LibWeb/HTML: Port Window.inner{Width,Height} to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
0c691087ca
LibWeb/HTML: Port Window.screen to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
2beb99b76e
LibWeb/HTML: Port Window.matchMedia() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
198db2ebd9
LibWeb/HTML: Port Window.crypto to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
7de9179a6d
LibWeb/HTML: Port Window.performance to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
95ce5735ce
LibWeb/HTML: Port Window.event to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
6dd1934ed8
LibWeb/HTML: Port Window.atob() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
192f5e61f6
LibWeb/HTML: Port Window.btoa() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
94f1eff291
LibWeb/HTML: Port Window.isSecureContext to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
188aac5077
LibWeb/HTML: Port Window.origin to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
376fb9ae40
LibWeb/HTML: Hook up WindowOrWorkerGlobalScopeMixin to Window
...
This prepares us to use the shared implementations from this class.
2023-03-07 23:33:34 +00:00
Linus Groh
b2409517bd
LibWeb/HTML: Port Window.open() to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
efa48142d2
LibWeb/HTML: Port Window.frameElement to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
c6353ac8cd
LibWeb/HTML: Port Window.parent to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
dba8dbe07d
LibWeb/HTML: Port Window.top to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
baaf891c64
LibWeb/HTML: Port Window.length to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
c42496187b
LibWeb/HTML: Port Window.history to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
eccc0d90de
LibWeb/HTML: Port Window.location to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
0e40841990
LibWeb/HTML: Port Window.name to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
0e587420a8
LibWeb/HTML: Port Window.document to IDL
2023-03-07 23:33:34 +00:00
Linus Groh
dcff775ab1
LibWeb/HTML: Port Window.frames to IDL
2023-03-07 23:33:34 +00:00