mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 09:08:12 +00:00
LibGUI: Turn GUI::Application::the() into a pointer
During app teardown, the Application object may be destroyed before something else, and so having Application::the() return a reference was obscuring the truth about its lifetime. This patch makes the API more honest by returning a pointer. While this makes call sites look a bit more sketchy, do note that the global Application pointer only becomes null during app teardown.
This commit is contained in:
parent
f7577585a6
commit
ca93c22ae2
26 changed files with 51 additions and 49 deletions
|
@ -225,7 +225,7 @@ int run_in_desktop_mode(RefPtr<Core::ConfigFile> config, String initial_location
|
|||
};
|
||||
|
||||
window->show();
|
||||
return GUI::Application::the().exec();
|
||||
return GUI::Application::the()->exec();
|
||||
}
|
||||
|
||||
int run_in_windowed_mode(RefPtr<Core::ConfigFile> config, String initial_location)
|
||||
|
@ -627,7 +627,7 @@ int run_in_windowed_mode(RefPtr<Core::ConfigFile> config, String initial_locatio
|
|||
app_menu.add_action(properties_action);
|
||||
app_menu.add_separator();
|
||||
app_menu.add_action(GUI::CommonActions::make_quit_action([](auto&) {
|
||||
GUI::Application::the().quit(0);
|
||||
GUI::Application::the()->quit();
|
||||
}));
|
||||
|
||||
auto& view_menu = menubar->add_menu("View");
|
||||
|
@ -646,7 +646,7 @@ int run_in_windowed_mode(RefPtr<Core::ConfigFile> config, String initial_locatio
|
|||
GUI::AboutDialog::show("File Manager", Gfx::Bitmap::load_from_file("/res/icons/32x32/filetype-folder.png"), window);
|
||||
}));
|
||||
|
||||
GUI::Application::the().set_menubar(move(menubar));
|
||||
GUI::Application::the()->set_menubar(move(menubar));
|
||||
|
||||
main_toolbar.add_action(go_back_action);
|
||||
main_toolbar.add_action(go_forward_action);
|
||||
|
@ -856,5 +856,5 @@ int run_in_windowed_mode(RefPtr<Core::ConfigFile> config, String initial_locatio
|
|||
return GUI::Window::CloseRequestDecision::Close;
|
||||
};
|
||||
|
||||
return GUI::Application::the().exec();
|
||||
return GUI::Application::the()->exec();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue