Fix file rename in drawer views#4584
Open
geoffreysisco wants to merge 1 commit into
Open
Conversation
f8cd402 to
5c69d7f
Compare
EmmanuelMess
requested changes
May 7, 2026
Use file mode and parent directory from the selected item when invoking rename instead of fragment navigation state. Use HybridFile parent handling so rename follows Amaze filesystem abstractions for remote modes and DocumentFile-backed paths.
5c69d7f to
28bc998
Compare
Contributor
Author
|
Updated — I removed the raw That method already branches by Verified with:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Use file mode and parent directory from the selected item when invoking rename instead of fragment navigation state.
Description
Rename operations launched from drawer category views could fail with
Operation Unsuccessful even when the same file could be renamed
successfully from a normal filesystem directory.
MainFragment.rename()was invoking rename using the fragment's currentnavigation state:
mainFragmentViewModel.getOpenMode()mainFragmentViewModel.getCurrentPath()In drawer category views, those values represent the current category
view rather than the selected file's actual filesystem location.
This change uses the selected item's filesystem context instead:
f.getMode()f.getParent(requireContext())Rename operations now resolve against the selected file's actual
location rather than the fragment's current navigation state.
Issue tracker
Fixes #4560
Automatic tests
Manual tests
Done
Device: Pixel 9 Pro emulator
OS: Android 16
Rooted: No
Version: 3.11.2
Build tasks success
Successfully running following tasks on local:
./gradlew assembleDebug./gradlew spotlessCheck