1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:58:12 +00:00

Welcome: Use fallible try_create()

This commit is contained in:
thankyouverycool 2023-01-29 08:58:22 -05:00 committed by Linus Groh
parent 89a4a9c7a7
commit c216d71b6c
2 changed files with 15 additions and 3 deletions

View file

@ -20,9 +20,17 @@
#include <LibGfx/Font/BitmapFont.h>
#include <LibGfx/Palette.h>
WelcomeWidget::WelcomeWidget()
ErrorOr<NonnullRefPtr<WelcomeWidget>> WelcomeWidget::try_create()
{
load_from_gml(welcome_window_gml).release_value_but_fixme_should_propagate_errors();
auto welcome_widget = TRY(adopt_nonnull_ref_or_enomem(new (nothrow) WelcomeWidget()));
TRY(welcome_widget->create_widgets());
return welcome_widget;
}
ErrorOr<void> WelcomeWidget::create_widgets()
{
TRY(load_from_gml(welcome_window_gml));
m_web_view = find_descendant_of_type_named<WebView::OutOfProcessWebView>("web_view");
m_web_view->load(URL::create_with_file_scheme(DeprecatedString::formatted("{}/README.md", Core::StandardPaths::home_directory())));
@ -75,6 +83,8 @@ WelcomeWidget::WelcomeWidget()
}
set_random_tip();
return {};
}
ErrorOr<void> WelcomeWidget::open_and_parse_tips_file()

View file

@ -13,10 +13,12 @@ class WelcomeWidget final : public GUI::Widget {
C_OBJECT(WelcomeWidget);
public:
static ErrorOr<NonnullRefPtr<WelcomeWidget>> try_create();
virtual ~WelcomeWidget() override = default;
private:
WelcomeWidget();
WelcomeWidget() = default;
ErrorOr<void> create_widgets();
virtual void paint_event(GUI::PaintEvent&) override;