mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-24 02:12:09 -05:00
Browser: Use CommonActions where possible and various fixes
This replaces some actions with CommonActions and also adds '...' to menu items that require user input.
This commit is contained in:
parent
3b9e8ec597
commit
578318ca0f
5 changed files with 17 additions and 11 deletions
|
@ -135,10 +135,10 @@ BookmarksBarWidget::BookmarksBarWidget(const String& bookmarks_file, bool enable
|
|||
on_bookmark_click(m_context_menu_url, Mod_Ctrl);
|
||||
}));
|
||||
m_context_menu->add_separator();
|
||||
m_context_menu->add_action(GUI::Action::create("&Edit", [this](auto&) {
|
||||
m_context_menu->add_action(GUI::Action::create("&Edit...", [this](auto&) {
|
||||
edit_bookmark(m_context_menu_url);
|
||||
}));
|
||||
m_context_menu->add_action(GUI::Action::create("&Delete", [this](auto&) {
|
||||
m_context_menu->add_action(GUI::CommonActions::make_delete_action([this](auto&) {
|
||||
remove_bookmark(m_context_menu_url);
|
||||
}));
|
||||
|
||||
|
|
|
@ -125,12 +125,10 @@ void BrowserWindow::build_menus()
|
|||
auto& file_menu = add_menu("&File");
|
||||
file_menu.add_action(WindowActions::the().create_new_tab_action());
|
||||
|
||||
auto close_tab_action = GUI::Action::create(
|
||||
"&Close Tab", { Mod_Ctrl, Key_W }, Gfx::Bitmap::try_load_from_file("/res/icons/16x16/close-tab.png"), [this](auto&) {
|
||||
active_tab().on_tab_close_request(active_tab());
|
||||
},
|
||||
auto close_tab_action = GUI::CommonActions::make_close_tab_action([this](auto&) {
|
||||
active_tab().on_tab_close_request(active_tab());
|
||||
},
|
||||
this);
|
||||
close_tab_action->set_status_tip("Close current tab");
|
||||
file_menu.add_action(close_tab_action);
|
||||
|
||||
file_menu.add_separator();
|
||||
|
@ -220,7 +218,7 @@ void BrowserWindow::build_menus()
|
|||
auto& settings_menu = add_menu("&Settings");
|
||||
|
||||
m_change_homepage_action = GUI::Action::create(
|
||||
"Set Homepage URL", [this](auto&) {
|
||||
"Set Homepage URL...", [this](auto&) {
|
||||
auto homepage_url = Config::read_string("Browser", "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()) {
|
||||
|
@ -237,7 +235,7 @@ void BrowserWindow::build_menus()
|
|||
|
||||
m_search_engine_actions.set_exclusive(true);
|
||||
auto& search_engine_menu = settings_menu.add_submenu("&Search Engine");
|
||||
|
||||
search_engine_menu.set_icon(Gfx::Bitmap::try_load_from_file("/res/icons/16x16/find.png"));
|
||||
bool search_engine_set = false;
|
||||
auto add_search_engine = [&](auto& name, auto& url_format) {
|
||||
auto action = GUI::Action::create_checkable(
|
||||
|
|
|
@ -324,10 +324,10 @@ Tab::Tab(BrowserWindow& window)
|
|||
};
|
||||
|
||||
m_tab_context_menu = GUI::Menu::construct();
|
||||
m_tab_context_menu->add_action(GUI::Action::create("&Reload Tab", [this](auto&) {
|
||||
m_tab_context_menu->add_action(GUI::CommonActions::make_reload_action([this](auto&) {
|
||||
this->window().reload_action().activate();
|
||||
}));
|
||||
m_tab_context_menu->add_action(GUI::Action::create("&Close Tab", [this](auto&) {
|
||||
m_tab_context_menu->add_action(GUI::CommonActions::make_close_tab_action([this](auto&) {
|
||||
on_tab_close_request(*this);
|
||||
}));
|
||||
m_tab_context_menu->add_action(GUI::Action::create("&Duplicate Tab", [this](auto&) {
|
||||
|
|
|
@ -40,6 +40,7 @@ NonnullRefPtr<Action> make_help_action(Function<void(Action&)>, Core::Object* pa
|
|||
NonnullRefPtr<Action> make_go_back_action(Function<void(Action&)>, Core::Object* parent = nullptr);
|
||||
NonnullRefPtr<Action> make_go_forward_action(Function<void(Action&)>, Core::Object* parent = nullptr);
|
||||
NonnullRefPtr<Action> make_go_home_action(Function<void(Action&)> callback, Core::Object* parent = nullptr);
|
||||
NonnullRefPtr<Action> make_close_tab_action(Function<void(Action&)> callback, Core::Object* parent = nullptr);
|
||||
NonnullRefPtr<Action> make_reload_action(Function<void(Action&)>, Core::Object* parent = nullptr);
|
||||
NonnullRefPtr<Action> make_select_all_action(Function<void(Action&)>, Core::Object* parent = nullptr);
|
||||
NonnullRefPtr<Action> make_rename_action(Function<void(Action&)>, Core::Object* parent = nullptr);
|
||||
|
|
|
@ -136,6 +136,13 @@ NonnullRefPtr<Action> make_go_home_action(Function<void(Action&)> callback, Core
|
|||
return Action::create("Go &Home", { Mod_Alt, Key_Home }, Gfx::Bitmap::try_load_from_file("/res/icons/16x16/go-home.png"), move(callback), parent);
|
||||
}
|
||||
|
||||
NonnullRefPtr<Action> make_close_tab_action(Function<void(Action&)> callback, Core::Object* parent)
|
||||
{
|
||||
auto action = Action::create("&Close Tab", { Mod_Ctrl, Key_W }, Gfx::Bitmap::try_load_from_file("/res/icons/16x16/close-tab.png"), move(callback), parent);
|
||||
action->set_status_tip("Close current tab");
|
||||
return action;
|
||||
}
|
||||
|
||||
NonnullRefPtr<Action> make_reload_action(Function<void(Action&)> callback, Core::Object* parent)
|
||||
{
|
||||
return Action::create("&Reload", { Mod_Ctrl, Key_R }, Key_F5, Gfx::Bitmap::try_load_from_file("/res/icons/16x16/reload.png"), move(callback), parent);
|
||||
|
|
Loading…
Add table
Reference in a new issue