2021-10-14 16:12:53 +01:00
/*
* Copyright ( c ) 2021 , Luke Wilde < lukew @ serenityos . org >
*
* SPDX - License - Identifier : BSD - 2 - Clause
*/
# pragma once
# include <LibWeb/HTML/Scripting/Environments.h>
2022-03-07 23:08:26 +01:00
# include <LibWeb/HTML/Window.h>
2021-10-14 16:12:53 +01:00
namespace Web : : HTML {
class WindowEnvironmentSettingsObject final : public EnvironmentSettingsObject {
public :
static void setup ( AK : : URL & creation_url , JS : : ExecutionContext & execution_context /* FIXME: null or an environment reservedEnvironment, a URL topLevelCreationURL, and an origin topLevelOrigin */ ) ;
virtual ~ WindowEnvironmentSettingsObject ( ) override = default ;
virtual RefPtr < DOM : : Document > responsible_document ( ) override ;
virtual String api_url_character_encoding ( ) override ;
virtual AK : : URL api_base_url ( ) override ;
virtual Origin origin ( ) override ;
virtual CanUseCrossOriginIsolatedAPIs cross_origin_isolated_capability ( ) override ;
private :
2022-03-07 23:08:26 +01:00
WindowEnvironmentSettingsObject ( Window & , JS : : ExecutionContext & execution_context ) ;
2021-10-14 16:12:53 +01:00
2022-03-07 23:08:26 +01:00
NonnullRefPtr < Window > m_window ;
2021-10-14 16:12:53 +01:00
} ;
}