mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-21 12:05:15 +00:00
LibWebView+UI: Rename ChromeOptions to BrowserOptions
This commit is contained in:
parent
6078143241
commit
e00c0c176e
Notes:
github-actions[bot]
2025-03-15 23:58:57 +00:00
Author: https://github.com/trflynn89 Commit: https://github.com/LadybirdBrowser/ladybird/commit/e00c0c176e1 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3959 Reviewed-by: https://github.com/awesomekling ✅
16 changed files with 42 additions and 42 deletions
|
@ -149,7 +149,7 @@ void Application::initialize(Main::Arguments const& arguments, URL::URL new_tab_
|
|||
if (debug_process_type == ProcessType::WebContent)
|
||||
disable_site_isolation = true;
|
||||
|
||||
m_chrome_options = {
|
||||
m_browser_options = {
|
||||
.urls = sanitize_urls(raw_urls, new_tab_page_url),
|
||||
.raw_urls = move(raw_urls),
|
||||
.new_tab_page_url = move(new_tab_page_url),
|
||||
|
@ -170,7 +170,7 @@ void Application::initialize(Main::Arguments const& arguments, URL::URL new_tab_
|
|||
};
|
||||
|
||||
if (webdriver_content_ipc_path.has_value())
|
||||
m_chrome_options.webdriver_content_ipc_path = *webdriver_content_ipc_path;
|
||||
m_browser_options.webdriver_content_ipc_path = *webdriver_content_ipc_path;
|
||||
|
||||
m_web_content_options = {
|
||||
.command_line = MUST(String::join(' ', arguments.strings)),
|
||||
|
@ -188,9 +188,9 @@ void Application::initialize(Main::Arguments const& arguments, URL::URL new_tab_
|
|||
.paint_viewport_scrollbars = disable_scrollbar_painting ? PaintViewportScrollbars::No : PaintViewportScrollbars::Yes,
|
||||
};
|
||||
|
||||
create_platform_options(m_chrome_options, m_web_content_options);
|
||||
create_platform_options(m_browser_options, m_web_content_options);
|
||||
|
||||
if (m_chrome_options.disable_sql_database == DisableSQLDatabase::No) {
|
||||
if (m_browser_options.disable_sql_database == DisableSQLDatabase::No) {
|
||||
m_database = Database::create().release_value_but_fixme_should_propagate_errors();
|
||||
m_cookie_jar = CookieJar::create(*m_database).release_value_but_fixme_should_propagate_errors();
|
||||
} else {
|
||||
|
@ -225,7 +225,7 @@ ErrorOr<NonnullRefPtr<WebContentClient>> Application::launch_web_content_process
|
|||
void Application::launch_spare_web_content_process()
|
||||
{
|
||||
// Disable spare processes when debugging WebContent. Otherwise, it breaks running `gdb attach -p $(pidof WebContent)`.
|
||||
if (chrome_options().debug_helper_process == ProcessType::WebContent)
|
||||
if (browser_options().debug_helper_process == ProcessType::WebContent)
|
||||
return;
|
||||
|
||||
if (m_has_queued_task_to_launch_spare_web_content_process)
|
||||
|
@ -293,7 +293,7 @@ ErrorOr<void> Application::launch_image_decoder_server()
|
|||
ErrorOr<void> Application::launch_devtools_server()
|
||||
{
|
||||
VERIFY(!m_devtools);
|
||||
m_devtools = TRY(DevTools::DevToolsServer::create(*this, m_chrome_options.devtools_port));
|
||||
m_devtools = TRY(DevTools::DevToolsServer::create(*this, m_browser_options.devtools_port));
|
||||
return {};
|
||||
}
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@ public:
|
|||
|
||||
static Application& the() { return *s_the; }
|
||||
|
||||
static ChromeOptions const& chrome_options() { return the().m_chrome_options; }
|
||||
static BrowserOptions const& browser_options() { return the().m_browser_options; }
|
||||
static WebContentOptions& web_content_options() { return the().m_web_content_options; }
|
||||
|
||||
static Requests::RequestClient& request_server_client() { return *the().m_request_server_client; }
|
||||
|
@ -84,7 +84,7 @@ protected:
|
|||
virtual void process_did_exit(Process&&);
|
||||
|
||||
virtual void create_platform_arguments(Core::ArgsParser&) { }
|
||||
virtual void create_platform_options(ChromeOptions&, WebContentOptions&) { }
|
||||
virtual void create_platform_options(BrowserOptions&, WebContentOptions&) { }
|
||||
|
||||
virtual Optional<ByteString> ask_user_for_download_folder() const { return {}; }
|
||||
|
||||
|
@ -127,7 +127,7 @@ private:
|
|||
|
||||
static Application* s_the;
|
||||
|
||||
ChromeOptions m_chrome_options;
|
||||
BrowserOptions m_browser_options;
|
||||
WebContentOptions m_web_content_options;
|
||||
|
||||
RefPtr<Requests::RequestClient> m_request_server_client;
|
||||
|
|
|
@ -118,13 +118,13 @@ void UIProcessConnectionFromClient::die()
|
|||
void UIProcessConnectionFromClient::create_new_tab(Vector<ByteString> urls)
|
||||
{
|
||||
if (on_new_tab)
|
||||
on_new_tab(sanitize_urls(urls, Application::chrome_options().new_tab_page_url));
|
||||
on_new_tab(sanitize_urls(urls, Application::browser_options().new_tab_page_url));
|
||||
}
|
||||
|
||||
void UIProcessConnectionFromClient::create_new_window(Vector<ByteString> urls)
|
||||
{
|
||||
if (on_new_window)
|
||||
on_new_window(sanitize_urls(urls, Application::chrome_options().new_tab_page_url));
|
||||
on_new_window(sanitize_urls(urls, Application::browser_options().new_tab_page_url));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -19,11 +19,11 @@ static ErrorOr<NonnullRefPtr<ClientType>> launch_server_process(
|
|||
ClientArguments&&... client_arguments)
|
||||
{
|
||||
auto process_type = WebView::process_type_from_name(server_name);
|
||||
auto const& chrome_options = WebView::Application::chrome_options();
|
||||
auto const& browser_options = WebView::Application::browser_options();
|
||||
|
||||
auto candidate_server_paths = TRY(get_paths_for_helper_process(server_name));
|
||||
|
||||
if (chrome_options.profile_helper_process == process_type) {
|
||||
if (browser_options.profile_helper_process == process_type) {
|
||||
arguments.prepend({
|
||||
"--tool=callgrind"sv,
|
||||
"--instr-atstart=no"sv,
|
||||
|
@ -31,13 +31,13 @@ static ErrorOr<NonnullRefPtr<ClientType>> launch_server_process(
|
|||
});
|
||||
}
|
||||
|
||||
if (chrome_options.debug_helper_process == process_type)
|
||||
if (browser_options.debug_helper_process == process_type)
|
||||
arguments.append("--wait-for-debugger"sv);
|
||||
|
||||
for (auto [i, path] : enumerate(candidate_server_paths)) {
|
||||
Core::ProcessSpawnOptions options { .name = server_name, .arguments = arguments };
|
||||
|
||||
if (chrome_options.profile_helper_process == process_type) {
|
||||
if (browser_options.profile_helper_process == process_type) {
|
||||
options.executable = "valgrind"sv;
|
||||
options.search_for_executable_in_path = true;
|
||||
arguments[2] = path;
|
||||
|
@ -60,7 +60,7 @@ static ErrorOr<NonnullRefPtr<ClientType>> launch_server_process(
|
|||
|
||||
WebView::Application::the().add_child_process(move(process));
|
||||
|
||||
if (chrome_options.profile_helper_process == process_type) {
|
||||
if (browser_options.profile_helper_process == process_type) {
|
||||
dbgln();
|
||||
dbgln("\033[1;45mLaunched {} process under callgrind!\033[0m", server_name);
|
||||
dbgln("\033[100mRun `\033[4mcallgrind_control -i on\033[24m` to start instrumentation and `\033[4mcallgrind_control -i off\033[24m` stop it again.\033[0m");
|
||||
|
@ -187,7 +187,7 @@ ErrorOr<NonnullRefPtr<Requests::RequestClient>> launch_request_server_process()
|
|||
arguments.append(s_ladybird_resource_root);
|
||||
}
|
||||
|
||||
for (auto const& certificate : WebView::Application::chrome_options().certificates)
|
||||
for (auto const& certificate : WebView::Application::browser_options().certificates)
|
||||
arguments.append(ByteString::formatted("--certificate={}", certificate));
|
||||
|
||||
if (auto server = mach_server_name(); server.has_value()) {
|
||||
|
@ -196,7 +196,7 @@ ErrorOr<NonnullRefPtr<Requests::RequestClient>> launch_request_server_process()
|
|||
}
|
||||
|
||||
auto client = TRY(launch_server_process<Requests::RequestClient>("RequestServer"sv, move(arguments)));
|
||||
WebView::Application::chrome_options().dns_settings.visit(
|
||||
WebView::Application::browser_options().dns_settings.visit(
|
||||
[](WebView::SystemDNS) {},
|
||||
[&](WebView::DNSOverTLS const& dns_over_tls) {
|
||||
dbgln("Setting DNS server to {}:{} with TLS", dns_over_tls.server_address, dns_over_tls.port);
|
||||
|
|
|
@ -59,7 +59,7 @@ using DNSSettings = Variant<SystemDNS, DNSOverTLS, DNSOverUDP>;
|
|||
|
||||
constexpr inline u16 default_devtools_port = 6000;
|
||||
|
||||
struct ChromeOptions {
|
||||
struct BrowserOptions {
|
||||
Vector<URL::URL> urls;
|
||||
Vector<ByteString> raw_urls;
|
||||
URL::URL new_tab_page_url;
|
||||
|
|
|
@ -604,10 +604,10 @@ void ViewImplementation::initialize_client(CreateNewClient create_new_client)
|
|||
client().async_set_device_pixels_per_css_pixel(m_client_state.page_index, m_device_pixel_ratio);
|
||||
client().async_set_system_visibility_state(m_client_state.page_index, m_system_visibility_state);
|
||||
|
||||
if (auto webdriver_content_ipc_path = Application::chrome_options().webdriver_content_ipc_path; webdriver_content_ipc_path.has_value())
|
||||
if (auto webdriver_content_ipc_path = Application::browser_options().webdriver_content_ipc_path; webdriver_content_ipc_path.has_value())
|
||||
client().async_connect_to_webdriver(m_client_state.page_index, *webdriver_content_ipc_path);
|
||||
|
||||
if (Application::chrome_options().allow_popups == AllowPopups::Yes)
|
||||
if (Application::browser_options().allow_popups == AllowPopups::Yes)
|
||||
client().async_debug_request(m_client_state.page_index, "block-pop-ups"sv, "off"sv);
|
||||
|
||||
if (auto const& user_agent_preset = Application::web_content_options().user_agent_preset; user_agent_preset.has_value())
|
||||
|
|
|
@ -286,7 +286,7 @@
|
|||
self.info_bar = [[InfoBar alloc] init];
|
||||
}
|
||||
|
||||
auto message = MUST(String::formatted("DevTools is enabled on port {}", WebView::Application::chrome_options().devtools_port));
|
||||
auto message = MUST(String::formatted("DevTools is enabled on port {}", WebView::Application::browser_options().devtools_port));
|
||||
|
||||
[self.info_bar showWithMessage:Ladybird::string_to_ns_string(message)
|
||||
dismissButtonTooltip:@"Disable DevTools"
|
||||
|
@ -814,7 +814,7 @@
|
|||
{
|
||||
Tab* tab = nil;
|
||||
|
||||
for (auto const& url : WebView::Application::chrome_options().urls) {
|
||||
for (auto const& url : WebView::Application::browser_options().urls) {
|
||||
auto activate_tab = tab == nil ? Web::HTML::ActivateTab::Yes : Web::HTML::ActivateTab::No;
|
||||
|
||||
auto* controller = [self createNewTab:url
|
||||
|
|
|
@ -100,8 +100,8 @@ static NSString* const TOOLBAR_TAB_OVERVIEW_IDENTIFIER = @"ToolbarTabOverviewIde
|
|||
m_page_index = 0;
|
||||
|
||||
m_settings = {
|
||||
.scripting_enabled = WebView::Application::chrome_options().disable_scripting == WebView::DisableScripting::Yes ? NO : YES,
|
||||
.block_popups = WebView::Application::chrome_options().allow_popups == WebView::AllowPopups::Yes ? NO : YES,
|
||||
.scripting_enabled = WebView::Application::browser_options().disable_scripting == WebView::DisableScripting::Yes ? NO : YES,
|
||||
.block_popups = WebView::Application::browser_options().allow_popups == WebView::AllowPopups::Yes ? NO : YES,
|
||||
.autoplay_enabled = WebView::Application::web_content_options().enable_autoplay == WebView::EnableAutoplay::Yes ? YES : NO,
|
||||
};
|
||||
|
||||
|
@ -234,7 +234,7 @@ static NSString* const TOOLBAR_TAB_OVERVIEW_IDENTIFIER = @"ToolbarTabOverviewIde
|
|||
|
||||
self.tab.titlebarAppearsTransparent = NO;
|
||||
|
||||
[delegate createNewTab:WebView::Application::chrome_options().new_tab_page_url
|
||||
[delegate createNewTab:WebView::Application::browser_options().new_tab_page_url
|
||||
fromTab:[self tab]
|
||||
activateTab:Web::HTML::ActivateTab::Yes];
|
||||
|
||||
|
|
|
@ -58,8 +58,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
|
||||
WebView::ChromeProcess chrome_process;
|
||||
|
||||
if (auto const& chrome_options = WebView::Application::chrome_options(); chrome_options.force_new_process == WebView::ForceNewProcess::No) {
|
||||
auto disposition = TRY(chrome_process.connect(chrome_options.raw_urls, chrome_options.new_window));
|
||||
if (auto const& browser_options = WebView::Application::browser_options(); browser_options.force_new_process == WebView::ForceNewProcess::No) {
|
||||
auto disposition = TRY(chrome_process.connect(browser_options.raw_urls, browser_options.new_window));
|
||||
|
||||
if (disposition == WebView::ChromeProcess::ProcessDisposition::ExitProcess) {
|
||||
outln("Opening in existing process");
|
||||
|
|
|
@ -64,7 +64,7 @@ void Application::create_platform_arguments(Core::ArgsParser& args_parser)
|
|||
});
|
||||
}
|
||||
|
||||
void Application::create_platform_options(WebView::ChromeOptions& chrome_options, WebView::WebContentOptions& web_content_options)
|
||||
void Application::create_platform_options(WebView::BrowserOptions& browser_options, WebView::WebContentOptions& web_content_options)
|
||||
{
|
||||
if (!test_root_path.is_empty()) {
|
||||
// --run-tests implies --layout-test-mode.
|
||||
|
@ -73,7 +73,7 @@ void Application::create_platform_options(WebView::ChromeOptions& chrome_options
|
|||
|
||||
if (is_layout_test_mode) {
|
||||
// Allow window.open() to succeed for tests.
|
||||
chrome_options.allow_popups = WebView::AllowPopups::Yes;
|
||||
browser_options.allow_popups = WebView::AllowPopups::Yes;
|
||||
|
||||
// Ensure consistent font rendering between operating systems.
|
||||
web_content_options.force_fontconfig = WebView::ForceFontconfig::Yes;
|
||||
|
|
|
@ -29,7 +29,7 @@ public:
|
|||
}
|
||||
|
||||
virtual void create_platform_arguments(Core::ArgsParser&) override;
|
||||
virtual void create_platform_options(WebView::ChromeOptions&, WebView::WebContentOptions&) override;
|
||||
virtual void create_platform_options(WebView::BrowserOptions&, WebView::WebContentOptions&) override;
|
||||
|
||||
ErrorOr<void> launch_test_fixtures();
|
||||
|
||||
|
|
|
@ -83,8 +83,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
|
||||
auto& view = app->create_web_view(move(theme), window_size);
|
||||
|
||||
VERIFY(!WebView::Application::chrome_options().urls.is_empty());
|
||||
auto const& url = WebView::Application::chrome_options().urls.first();
|
||||
VERIFY(!WebView::Application::browser_options().urls.is_empty());
|
||||
auto const& url = WebView::Application::browser_options().urls.first();
|
||||
if (!url.is_valid()) {
|
||||
warnln("Invalid URL: \"{}\"", url);
|
||||
return Error::from_string_literal("Invalid URL");
|
||||
|
@ -99,7 +99,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
}
|
||||
|
||||
RefPtr<Core::Timer> timer;
|
||||
if (!WebView::Application::chrome_options().webdriver_content_ipc_path.has_value())
|
||||
if (!WebView::Application::browser_options().webdriver_content_ipc_path.has_value())
|
||||
timer = TRY(load_page_for_screenshot_and_exit(Core::EventLoop::current(), view, url, app->screenshot_timeout));
|
||||
|
||||
return app->execute();
|
||||
|
|
|
@ -21,7 +21,7 @@ Application::Application(Badge<WebView::Application>, Main::Arguments& arguments
|
|||
{
|
||||
}
|
||||
|
||||
void Application::create_platform_options(WebView::ChromeOptions&, WebView::WebContentOptions& web_content_options)
|
||||
void Application::create_platform_options(WebView::BrowserOptions&, WebView::WebContentOptions& web_content_options)
|
||||
{
|
||||
web_content_options.config_path = Settings::the()->directory();
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ public:
|
|||
void set_active_window(BrowserWindow& w) { m_active_window = &w; }
|
||||
|
||||
private:
|
||||
virtual void create_platform_options(WebView::ChromeOptions&, WebView::WebContentOptions&) override;
|
||||
virtual void create_platform_options(WebView::BrowserOptions&, WebView::WebContentOptions&) override;
|
||||
|
||||
virtual Optional<ByteString> ask_user_for_download_folder() const override;
|
||||
|
||||
|
|
|
@ -574,7 +574,7 @@ BrowserWindow::BrowserWindow(Vector<URL::URL> const& initial_urls, IsPopupWindow
|
|||
|
||||
m_enable_scripting_action = new QAction("Enable Scripting", this);
|
||||
m_enable_scripting_action->setCheckable(true);
|
||||
m_enable_scripting_action->setChecked(WebView::Application::chrome_options().disable_scripting == WebView::DisableScripting::No);
|
||||
m_enable_scripting_action->setChecked(WebView::Application::browser_options().disable_scripting == WebView::DisableScripting::No);
|
||||
debug_menu->addAction(m_enable_scripting_action);
|
||||
QObject::connect(m_enable_scripting_action, &QAction::triggered, this, [this] {
|
||||
bool state = m_enable_scripting_action->isChecked();
|
||||
|
@ -596,7 +596,7 @@ BrowserWindow::BrowserWindow(Vector<URL::URL> const& initial_urls, IsPopupWindow
|
|||
|
||||
m_block_pop_ups_action = new QAction("Block Pop-ups", this);
|
||||
m_block_pop_ups_action->setCheckable(true);
|
||||
m_block_pop_ups_action->setChecked(WebView::Application::chrome_options().allow_popups == WebView::AllowPopups::No);
|
||||
m_block_pop_ups_action->setChecked(WebView::Application::browser_options().allow_popups == WebView::AllowPopups::No);
|
||||
debug_menu->addAction(m_block_pop_ups_action);
|
||||
QObject::connect(m_block_pop_ups_action, &QAction::triggered, this, [this] {
|
||||
bool state = m_block_pop_ups_action->isChecked();
|
||||
|
@ -738,7 +738,7 @@ void BrowserWindow::devtools_enabled()
|
|||
m_enable_devtools_action->setText("Disable &DevTools");
|
||||
statusBar()->addPermanentWidget(disable_button);
|
||||
|
||||
auto message = MUST(String::formatted("DevTools is enabled on port {}", WebView::Application::chrome_options().devtools_port));
|
||||
auto message = MUST(String::formatted("DevTools is enabled on port {}", WebView::Application::browser_options().devtools_port));
|
||||
statusBar()->showMessage(qstring_from_ak_string(message));
|
||||
}
|
||||
|
||||
|
|
|
@ -84,8 +84,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
|
||||
WebView::ChromeProcess chrome_process;
|
||||
|
||||
if (app->chrome_options().force_new_process == WebView::ForceNewProcess::No) {
|
||||
auto disposition = TRY(chrome_process.connect(app->chrome_options().raw_urls, app->chrome_options().new_window));
|
||||
if (app->browser_options().force_new_process == WebView::ForceNewProcess::No) {
|
||||
auto disposition = TRY(chrome_process.connect(app->browser_options().raw_urls, app->browser_options().new_window));
|
||||
|
||||
if (disposition == WebView::ChromeProcess::ProcessDisposition::ExitProcess) {
|
||||
outln("Opening in existing process");
|
||||
|
@ -129,7 +129,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
app->new_window(urls);
|
||||
};
|
||||
|
||||
auto& window = app->new_window(app->chrome_options().urls);
|
||||
auto& window = app->new_window(app->browser_options().urls);
|
||||
window.setWindowTitle("Ladybird");
|
||||
|
||||
if (Ladybird::Settings::the()->is_maximized()) {
|
||||
|
|
Loading…
Add table
Reference in a new issue