1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 16:07:47 +00:00

LibWeb: Implement XMLHttpRequest.onreadystatechange

This commit is contained in:
Andreas Kling 2021-09-19 01:40:13 +02:00
parent 824be02cb0
commit dc8707527f
3 changed files with 16 additions and 0 deletions

View file

@ -15,6 +15,7 @@
#include <LibWeb/DOM/EventListener.h>
#include <LibWeb/DOM/ExceptionOr.h>
#include <LibWeb/DOM/Window.h>
#include <LibWeb/HTML/EventHandler.h>
#include <LibWeb/HTML/EventNames.h>
#include <LibWeb/Loader/ResourceLoader.h>
#include <LibWeb/Origin.h>
@ -260,4 +261,14 @@ JS::Object* XMLHttpRequest::create_wrapper(JS::GlobalObject& global_object)
return wrap(global_object, *this);
}
HTML::EventHandler XMLHttpRequest::onreadystatechange()
{
return event_handler_attribute(Web::XHR::EventNames::readystatechange);
}
void XMLHttpRequest::set_onreadystatechange(HTML::EventHandler value)
{
set_event_handler_attribute(Web::XHR::EventNames::readystatechange, move(value));
}
}

View file

@ -58,6 +58,9 @@ public:
String get_response_header(const String& name) { return m_response_headers.get(name).value_or({}); }
HTML::EventHandler onreadystatechange();
void set_onreadystatechange(HTML::EventHandler);
private:
virtual void ref_event_target() override { ref(); }
virtual void unref_event_target() override { unref(); }

View file

@ -18,4 +18,6 @@ interface XMLHttpRequest : XMLHttpRequestEventTarget {
ByteString? getResponseHeader(ByteString name);
attribute EventHandler onreadystatechange;
};