From b704a524c80acf923be23d57884daf0c8a604574 Mon Sep 17 00:00:00 2001 From: Gustavo Henrique Santos Souza de Miranda Date: Sat, 12 Jul 2025 02:55:39 -0300 Subject: [PATCH] Fixed the new entry creation flow by prompting for a title if none is set. --- src/pilgrim/ui/screens/edit_entry_screen.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/pilgrim/ui/screens/edit_entry_screen.py b/src/pilgrim/ui/screens/edit_entry_screen.py index 24e05ef..7e680b6 100644 --- a/src/pilgrim/ui/screens/edit_entry_screen.py +++ b/src/pilgrim/ui/screens/edit_entry_screen.py @@ -42,7 +42,7 @@ class EditEntryScreen(Screen): self.is_new_entry = False self.has_unsaved_changes = False self.new_entry_content = "" - self.new_entry_title = "New Entry" + self.new_entry_title = "" self.next_entry_id = 1 self._updating_display = False self._original_content = "" @@ -906,11 +906,22 @@ class EditEntryScreen(Screen): self.notify("Empty entry cannot be saved") return # Passe a lista de fotos para o método de criação - self.call_later(self._async_create_entry, content, photos_to_link) + if self.new_entry_title == "": + self.app.push_screen(RenameEntryModal(current_name=""), lambda result: self._handle_save_after_rename(result,content, + photos_to_link)) + else: + self.call_later(self._async_create_entry, content, photos_to_link) else: # Passe a lista de fotos para o método de atualização self.call_later(self._async_update_entry, content, photos_to_link) + def _handle_save_after_rename(self, result: str | None, content: str, photos_to_link: List[Photo]) -> None: + if result is None: + self.notify("Save cancelled") + return + self.new_entry_title = result + self.call_later(self._async_create_entry, content, photos_to_link) + async def _async_create_entry(self, content: str, photos_to_link: List[Photo]): """Creates a new entry and links the referenced photos.""" try: @@ -937,7 +948,7 @@ class EditEntryScreen(Screen): self.is_new_entry = False self.has_unsaved_changes = False self._original_content = new_entry.text - self.new_entry_title = "New Entry" + self.new_entry_title = "" self.next_entry_id = max(entry.id for entry in self.entries) + 1 self._update_entry_display()