diff options
author | A. Lopes <ajtluser@openmailbox.org> | 2015-06-10 22:04:06 +0100 |
---|---|---|
committer | A. Lopes <ajtluser@openmailbox.org> | 2015-06-10 22:04:06 +0100 |
commit | 9480940bbfd2a7631d358bc0dd8d2f32dc0b7714 (patch) | |
tree | 0641baf0ea21dbe91bd1ff4c07dd79f751b0fadb | |
parent | 1a5c0cb9a5409a6214797273b5398ef0e849cd63 (diff) | |
download | ranger-9480940bbfd2a7631d358bc0dd8d2f32dc0b7714.tar.gz |
Fix for issue #259. If all the contents of the current folder are
hidden, now when the user toggle show_hidden, the topmost file or directory is automatically selected. If the user toggles show_hidden, hiding all files and folders those files can now not be interacted with.
-rw-r--r-- | ranger/container/directory.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ranger/container/directory.py b/ranger/container/directory.py index b851eece..52b494d5 100644 --- a/ranger/container/directory.py +++ b/ranger/container/directory.py @@ -229,6 +229,15 @@ class Directory(FileSystemObject, Accumulator, Loadable): filters.append(lambda file: temporary_filter_search(file.basename)) self.files = [f for f in self.files_all if accept_file(f, filters)] + + # A fix for corner cases when the user invokes show_hidden on a + # directory that contains only hidden directories and hidden files. + if self.files and not self.pointed_obj: + self.pointed_obj = self.files[0] + elif not self.files: + self.content_loaded = False + self.pointed_obj = None + self.move_to_obj(self.pointed_obj) # XXX: Check for possible race conditions |