From 4ed4aa17d2eaa3e99a1f94273fe03739050411cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Hamal=20Dvo=C5=99=C3=A1k?= <mordae@anilinux.org> Date: Sun, 9 Mar 2025 11:07:03 +0100 Subject: [PATCH] Position cursor correctly when returning --- lazy_player/__init__.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lazy_player/__init__.py b/lazy_player/__init__.py index e198c0a..b467ddf 100644 --- a/lazy_player/__init__.py +++ b/lazy_player/__init__.py @@ -377,8 +377,18 @@ class MainWindow(Gtk.ApplicationWindow): elif keyval == Gdk.keyval_from_name("BackSpace"): if self.directory_history: prev_dir = self.directory_history.pop() + current_dir_name = Path(os.getcwd()).name os.chdir(prev_dir) self._populate_file_list() + + # Find and select the directory we came from + for i in range(self.list_store.get_n_items()): + item = self.list_store.get_item(i) + if item and cast(FileItem, item).name == current_dir_name: + self.list_view.scroll_to( + i, Gtk.ListScrollFlags.SELECT | Gtk.ListScrollFlags.FOCUS, None + ) + break return True return False