From 75faa9239a39873a057c5032d9b7a99fb1d348c5 Mon Sep 17 00:00:00 2001 From: david072 Date: Fri, 17 Nov 2023 21:04:18 +0100 Subject: [PATCH] Calendar/EventManager: Set m_dirty directly --- Userland/Applications/Calendar/AddEventDialog.cpp | 2 -- Userland/Applications/Calendar/EventManager.cpp | 9 ++++++--- Userland/Applications/Calendar/EventManager.h | 5 ++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Userland/Applications/Calendar/AddEventDialog.cpp b/Userland/Applications/Calendar/AddEventDialog.cpp index 8cb3d0fb1f..a8b651a147 100644 --- a/Userland/Applications/Calendar/AddEventDialog.cpp +++ b/Userland/Applications/Calendar/AddEventDialog.cpp @@ -119,8 +119,6 @@ ErrorOr AddEventDialog::add_event_to_calendar() .end = m_end_date_time, }); - m_event_manager.set_dirty(true); - return {}; } diff --git a/Userland/Applications/Calendar/EventManager.cpp b/Userland/Applications/Calendar/EventManager.cpp index 73544ad0b4..81f0648365 100644 --- a/Userland/Applications/Calendar/EventManager.cpp +++ b/Userland/Applications/Calendar/EventManager.cpp @@ -26,26 +26,28 @@ OwnPtr EventManager::create() void EventManager::add_event(Event event) { m_events.append(move(event)); - set_dirty(true); + m_dirty = true; on_events_change(); } void EventManager::set_events(Vector events) { m_events = move(events); + m_dirty = true; on_events_change(); } ErrorOr EventManager::save(FileSystemAccessClient::File& file) { set_filename(file.filename()); - set_dirty(false); auto stream = file.release_stream(); auto json = TRY(serialize_events()); TRY(stream->write_some(json.to_byte_string().bytes())); stream->close(); + m_dirty = false; + return {}; } @@ -95,13 +97,14 @@ ErrorOr> EventManager::deserialize_events(JsonArray const& json) ErrorOr EventManager::load_file(FileSystemAccessClient::File& file) { set_filename(file.filename()); - set_dirty(false); auto content = TRY(file.stream().read_until_eof()); auto json = TRY(AK::JsonParser(content).parse()); auto events = TRY(deserialize_events(json.as_array())); set_events(events); + m_dirty = false; + return {}; } diff --git a/Userland/Applications/Calendar/EventManager.h b/Userland/Applications/Calendar/EventManager.h index f1dea3c492..8f9aecf2bb 100644 --- a/Userland/Applications/Calendar/EventManager.h +++ b/Userland/Applications/Calendar/EventManager.h @@ -32,8 +32,6 @@ public: String const& current_filename() const { return m_current_filename; } void set_filename(String const& filename) { m_current_filename = filename; } - bool dirty() const { return m_dirty; } - void set_dirty(bool dirty) { m_dirty = dirty; } ErrorOr save(FileSystemAccessClient::File& file); ErrorOr load_file(FileSystemAccessClient::File& file); @@ -41,6 +39,7 @@ public: void set_events(Vector); void clear() { m_events.clear(); } + bool is_dirty() const { return m_dirty; } Span events() const { return m_events.span(); } Function on_events_change; @@ -53,8 +52,8 @@ private: Vector m_events; - String m_current_filename; bool m_dirty { false }; + String m_current_filename; }; }