From 24c243942d3f56dc44c4e9bf0aaa80465e22bd20 Mon Sep 17 00:00:00 2001 From: Marco Cutecchia Date: Tue, 15 Jun 2021 22:49:34 +0200 Subject: [PATCH] Browser: Add setting to change homepage URL --- Userland/Applications/Browser/BrowserWindow.cpp | 17 +++++++++++++++++ Userland/Applications/Browser/BrowserWindow.h | 1 + 2 files changed, 18 insertions(+) diff --git a/Userland/Applications/Browser/BrowserWindow.cpp b/Userland/Applications/Browser/BrowserWindow.cpp index d1dbcc7f7f4..e1273669cca 100644 --- a/Userland/Applications/Browser/BrowserWindow.cpp +++ b/Userland/Applications/Browser/BrowserWindow.cpp @@ -248,6 +248,23 @@ void BrowserWindow::build_menus() auto& settings_menu = menubar->add_menu("&Settings"); + m_change_homepage_action = GUI::Action::create( + "Set Homepage URL", [this](auto&) { + auto config = Core::ConfigFile::get_for_app("Browser"); + String homepage_url = config->read_entry("Preferences", "Home", "about:blank"); + if (GUI::InputBox::show(this, homepage_url, "Enter URL", "Change homepage URL") == GUI::InputBox::ExecOK) { + if (URL(homepage_url).is_valid()) { + config->write_entry("Preferences", "Home", homepage_url); + Browser::g_home_url = homepage_url; + } else { + GUI::MessageBox::show_error(this, "The URL you have entered is not valid"); + } + } + }, + this); + + settings_menu.add_action(*m_change_homepage_action); + m_search_engine_actions.set_exclusive(true); auto& search_engine_menu = settings_menu.add_submenu("&Search Engine"); diff --git a/Userland/Applications/Browser/BrowserWindow.h b/Userland/Applications/Browser/BrowserWindow.h index e9c25228324..ec149ca7e3c 100644 --- a/Userland/Applications/Browser/BrowserWindow.h +++ b/Userland/Applications/Browser/BrowserWindow.h @@ -55,6 +55,7 @@ private: GUI::ActionGroup m_search_engine_actions; RefPtr m_disable_user_agent_spoofing; RefPtr m_disable_search_engine_action; + RefPtr m_change_homepage_action; }; }