diff --git a/Libraries/LibWeb/DOM/Window.cpp b/Libraries/LibWeb/DOM/Window.cpp index f5f48e2a5b5..22f307a7c9e 100644 --- a/Libraries/LibWeb/DOM/Window.cpp +++ b/Libraries/LibWeb/DOM/Window.cpp @@ -29,6 +29,7 @@ #include #include #include +#include #include namespace Web { @@ -81,10 +82,16 @@ void Window::set_timeout(JS::Function& callback, i32 interval) i32 Window::request_animation_frame(JS::Function& callback) { + // FIXME: This is extremely fake! + static double fake_timestamp = 0; + i32 link_id = GUI::DisplayLink::register_callback([handle = make_handle(&callback)](i32 link_id) { auto* function = const_cast(static_cast(handle.cell())); auto& interpreter = function->interpreter(); - interpreter.call(function); + JS::MarkedValueList arguments(interpreter.heap()); + arguments.append(JS::Value(fake_timestamp)); + fake_timestamp += 10; + interpreter.call(function, {}, move(arguments)); GUI::DisplayLink::unregister_callback(link_id); });