diff --git a/Userland/Libraries/LibWeb/HTML/Worker.cpp b/Userland/Libraries/LibWeb/HTML/Worker.cpp
index 899975c983..e7ccf27900 100644
--- a/Userland/Libraries/LibWeb/HTML/Worker.cpp
+++ b/Userland/Libraries/LibWeb/HTML/Worker.cpp
@@ -17,7 +17,7 @@
namespace Web::HTML {
// https://html.spec.whatwg.org/multipage/workers.html#dedicated-workers-and-the-worker-interface
-Worker::Worker(DeprecatedFlyString const& script_url, WorkerOptions const options, DOM::Document& document)
+Worker::Worker(String const& script_url, WorkerOptions const options, DOM::Document& document)
: DOM::EventTarget(document.realm())
, m_script_url(script_url)
, m_options(options)
@@ -47,7 +47,7 @@ void Worker::visit_edges(Cell::Visitor& visitor)
}
// https://html.spec.whatwg.org/multipage/workers.html#dom-worker
-WebIDL::ExceptionOr> Worker::create(DeprecatedFlyString const& script_url, WorkerOptions const options, DOM::Document& document)
+WebIDL::ExceptionOr> Worker::create(String const& script_url, WorkerOptions const options, DOM::Document& document)
{
dbgln_if(WEB_WORKER_DEBUG, "WebWorker: Creating worker with script_url = {}", script_url);
@@ -66,7 +66,7 @@ WebIDL::ExceptionOr> Worker::create(DeprecatedFlyString
auto& outside_settings = document.relevant_settings_object();
// 3. Parse the scriptURL argument relative to outside settings.
- auto url = document.parse_url(script_url);
+ auto url = document.parse_url(script_url.to_deprecated_string());
// 4. If this fails, throw a "SyntaxError" DOMException.
if (!url.is_valid()) {
diff --git a/Userland/Libraries/LibWeb/HTML/Worker.h b/Userland/Libraries/LibWeb/HTML/Worker.h
index 218a0b7383..58c3ecab54 100644
--- a/Userland/Libraries/LibWeb/HTML/Worker.h
+++ b/Userland/Libraries/LibWeb/HTML/Worker.h
@@ -26,9 +26,9 @@
namespace Web::HTML {
struct WorkerOptions {
- DeprecatedString type { "classic" };
- DeprecatedString credentials { "same-origin" };
- DeprecatedString name { "" };
+ String type { String::from_utf8("classic"sv).release_value_but_fixme_should_propagate_errors() };
+ String credentials { String::from_utf8("same-origin"sv).release_value_but_fixme_should_propagate_errors() };
+ String name { String {} };
};
// https://html.spec.whatwg.org/multipage/workers.html#dedicated-workers-and-the-worker-interface
@@ -36,8 +36,8 @@ class Worker : public DOM::EventTarget {
WEB_PLATFORM_OBJECT(Worker, DOM::EventTarget);
public:
- static WebIDL::ExceptionOr> create(DeprecatedFlyString const& script_url, WorkerOptions const options, DOM::Document& document);
- static WebIDL::ExceptionOr> construct_impl(JS::Realm& realm, DeprecatedFlyString const& script_url, WorkerOptions const options)
+ static WebIDL::ExceptionOr> create(String const& script_url, WorkerOptions const options, DOM::Document& document);
+ static WebIDL::ExceptionOr> construct_impl(JS::Realm& realm, String const& script_url, WorkerOptions const options)
{
auto& window = verify_cast(realm.global_object());
return Worker::create(script_url, options, window.associated_document());
@@ -60,7 +60,7 @@ public:
#undef __ENUMERATE
protected:
- Worker(DeprecatedFlyString const&, const WorkerOptions, DOM::Document&);
+ Worker(String const&, const WorkerOptions, DOM::Document&);
private:
static HTML::EventLoop& get_vm_event_loop(JS::VM& target_vm)
@@ -71,7 +71,7 @@ private:
virtual JS::ThrowCompletionOr initialize(JS::Realm&) override;
virtual void visit_edges(Cell::Visitor&) override;
- DeprecatedFlyString m_script_url;
+ String m_script_url;
WorkerOptions m_options;
JS::GCPtr m_document;
diff --git a/Userland/Libraries/LibWeb/HTML/Worker.idl b/Userland/Libraries/LibWeb/HTML/Worker.idl
index 4f92053381..a3e4eafb48 100644
--- a/Userland/Libraries/LibWeb/HTML/Worker.idl
+++ b/Userland/Libraries/LibWeb/HTML/Worker.idl
@@ -1,7 +1,7 @@
#import
#import
-[Exposed=(Window)]
+[Exposed=(Window), UseNewAKString]
interface Worker : EventTarget {
constructor(DOMString scriptURL, optional WorkerOptions options = {});