1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 06:37:43 +00:00

LibCore+Userland: Make Core::Timer::create_repeating() return ErrorOr

The FIXMEs must flow!
This commit is contained in:
Sam Atkins 2023-01-11 16:20:17 +00:00 committed by Andreas Kling
parent 1d4f287582
commit a15d44f019
12 changed files with 19 additions and 17 deletions

View file

@ -89,7 +89,7 @@ ClockSettingsWidget::ClockSettingsWidget()
m_clock_preview_update_timer = Core::Timer::create_repeating(1000, [&]() { m_clock_preview_update_timer = Core::Timer::create_repeating(1000, [&]() {
update_clock_preview(); update_clock_preview();
}); }).release_value_but_fixme_should_propagate_errors();
m_clock_preview_update_timer->start(); m_clock_preview_update_timer->start();
update_clock_preview(); update_clock_preview();
} }

View file

@ -250,7 +250,7 @@ void MonitorSettingsWidget::apply_settings()
if (seconds_until_revert <= 0) { if (seconds_until_revert <= 0) {
box->close(); box->close();
} }
}); }).release_value_but_fixme_should_propagate_errors();
revert_timer->start(); revert_timer->start();
// If the user selects "No", closes the window or the window gets closed by the 10 seconds timer, revert the changes. // If the user selects "No", closes the window or the window gets closed by the 10 seconds timer, revert the changes.

View file

@ -37,10 +37,10 @@ ErrorOr<void> HighlightPreviewWidget::reload_cursor()
m_cursor_params = Gfx::CursorParams::parse_from_filename(cursor_path, m_cursor_bitmap->rect().center()).constrained(*m_cursor_bitmap); m_cursor_params = Gfx::CursorParams::parse_from_filename(cursor_path, m_cursor_bitmap->rect().center()).constrained(*m_cursor_bitmap);
// Setup cursor animation: // Setup cursor animation:
if (m_cursor_params.frames() > 1 && m_cursor_params.frame_ms() > 0) { if (m_cursor_params.frames() > 1 && m_cursor_params.frame_ms() > 0) {
m_frame_timer = Core::Timer::create_repeating(m_cursor_params.frame_ms(), [&] { m_frame_timer = TRY(Core::Timer::create_repeating(m_cursor_params.frame_ms(), [&] {
m_cursor_frame = (m_cursor_frame + 1) % m_cursor_params.frames(); m_cursor_frame = (m_cursor_frame + 1) % m_cursor_params.frames();
update(); update();
}); }));
m_frame_timer->start(); m_frame_timer->start();
} else { } else {
m_frame_timer = nullptr; m_frame_timer = nullptr;

View file

@ -51,7 +51,7 @@ ImageEditor::ImageEditor(NonnullRefPtr<Image> image)
m_marching_ants_offset %= (marching_ant_length * 2); m_marching_ants_offset %= (marching_ant_length * 2);
if (!m_image->selection().is_empty() || m_image->selection().in_interactive_selection()) if (!m_image->selection().is_empty() || m_image->selection().in_interactive_selection())
update(); update();
}); }).release_value_but_fixme_should_propagate_errors();
m_marching_ants_timer->start(); m_marching_ants_timer->start();
} }

View file

@ -453,9 +453,9 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
TRY(Core::System::unveil("/tmp/session/%sid/portal/config", "rw")); TRY(Core::System::unveil("/tmp/session/%sid/portal/config", "rw"));
TRY(Core::System::unveil(nullptr, nullptr)); TRY(Core::System::unveil(nullptr, nullptr));
auto modified_state_check_timer = Core::Timer::create_repeating(500, [&] { auto modified_state_check_timer = TRY(Core::Timer::create_repeating(500, [&] {
window->set_modified(tty_has_foreground_process() || shell_child_process_count() > 0); window->set_modified(tty_has_foreground_process() || shell_child_process_count() > 0);
}); }));
listener.on_confirm_close_changed = [&](bool confirm_close) { listener.on_confirm_close_changed = [&](bool confirm_close) {
if (confirm_close) { if (confirm_close) {

View file

@ -786,7 +786,7 @@ void Editor::create_tokens_info_timer()
m_tokens_info_timer = Core::Timer::create_repeating((int)token_info_timer_interval_ms, [this] { m_tokens_info_timer = Core::Timer::create_repeating((int)token_info_timer_interval_ms, [this] {
on_token_info_timer_tick(); on_token_info_timer_tick();
m_tokens_info_timer->stop(); m_tokens_info_timer->stop();
}); }).release_value_but_fixme_should_propagate_errors();
m_tokens_info_timer->start(); m_tokens_info_timer->start();
} }

View file

@ -140,7 +140,8 @@ void Field::initialize()
++m_time_elapsed; ++m_time_elapsed;
m_time_label.set_text(human_readable_digital_time(m_time_elapsed)); m_time_label.set_text(human_readable_digital_time(m_time_elapsed));
}, },
this); this)
.release_value_but_fixme_should_propagate_errors();
// Square with mine will be filled with background color later, i.e. red // Square with mine will be filled with background color later, i.e. red
m_mine_palette.set_color(Gfx::ColorRole::Base, Color::from_rgb(0xff4040)); m_mine_palette.set_color(Gfx::ColorRole::Base, Color::from_rgb(0xff4040));

View file

@ -111,7 +111,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
uint64_t seconds_elapsed = 0; uint64_t seconds_elapsed = 0;
auto timer = Core::Timer::create_repeating(1000, [&]() { auto timer = TRY(Core::Timer::create_repeating(1000, [&]() {
++seconds_elapsed; ++seconds_elapsed;
uint64_t hours = seconds_elapsed / 3600; uint64_t hours = seconds_elapsed / 3600;
@ -119,7 +119,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
uint64_t seconds = seconds_elapsed % 60; uint64_t seconds = seconds_elapsed % 60;
statusbar.set_text(2, DeprecatedString::formatted("Time: {:02}:{:02}:{:02}", hours, minutes, seconds)); statusbar.set_text(2, DeprecatedString::formatted("Time: {:02}:{:02}:{:02}", hours, minutes, seconds));
}); }));
game.on_game_start = [&]() { game.on_game_start = [&]() {
seconds_elapsed = 0; seconds_elapsed = 0;

View file

@ -158,11 +158,11 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
uint64_t seconds_elapsed = 0; uint64_t seconds_elapsed = 0;
auto timer = Core::Timer::create_repeating(1000, [&]() { auto timer = TRY(Core::Timer::create_repeating(1000, [&]() {
++seconds_elapsed; ++seconds_elapsed;
statusbar.set_text(2, DeprecatedString::formatted("Time: {}", format_seconds(seconds_elapsed))); statusbar.set_text(2, DeprecatedString::formatted("Time: {}", format_seconds(seconds_elapsed)));
}); }));
game.on_game_start = [&]() { game.on_game_start = [&]() {
seconds_elapsed = 0; seconds_elapsed = 0;

View file

@ -16,9 +16,9 @@ class Timer final : public Object {
C_OBJECT(Timer); C_OBJECT(Timer);
public: public:
static NonnullRefPtr<Timer> create_repeating(int interval_ms, Function<void()>&& timeout_handler, Object* parent = nullptr) static ErrorOr<NonnullRefPtr<Timer>> create_repeating(int interval_ms, Function<void()>&& timeout_handler, Object* parent = nullptr)
{ {
auto timer = adopt_ref(*new Timer(interval_ms, move(timeout_handler), parent)); auto timer = TRY(adopt_nonnull_ref_or_enomem(new Timer(interval_ms, move(timeout_handler), parent)));
timer->stop(); timer->stop();
return timer; return timer;
} }

View file

@ -139,7 +139,8 @@ DHCPv4Client::DHCPv4Client(Vector<DeprecatedString> interfaces_with_dhcp_enabled
} }
m_check_timer = Core::Timer::create_repeating( m_check_timer = Core::Timer::create_repeating(
1000, [this] { try_discover_ifs(); }, this); 1000, [this] { try_discover_ifs(); }, this)
.release_value_but_fixme_should_propagate_errors();
m_check_timer->start(); m_check_timer->start();

View file

@ -537,7 +537,7 @@ void Menu::start_activation_animation(MenuItem& item)
float opacity = (float)animation->step / 10.0f; float opacity = (float)animation->step / 10.0f;
animation->window->set_opacity(opacity); animation->window->set_opacity(opacity);
}); }).release_value_but_fixme_should_propagate_errors();
timer->start(); timer->start();
} }