improve storage permission ui ux#15977
Merged
alperozturk96 merged 22 commits intomasterfrom Nov 26, 2025
Merged
Conversation
1 task
56330e0 to
4b23583
Compare
kra-mo
approved these changes
Nov 20, 2025
b169219 to
f9eb762
Compare
Collaborator
Author
|
The apostrophe (') is a special character. To show it in the UI |
kra-mo
approved these changes
Nov 20, 2025
53ab2b3 to
ae85691
Compare
1 task
ea5c7e9 to
236cd26
Compare
tobiasKaminsky
approved these changes
Nov 26, 2025
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
…ission Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Co-authored-by: kramo <git@kramo.page> Signed-off-by: Alper Öztürk <67455295+alperozturk96@users.noreply.github.com>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: alperozturk <alper_ozturk@proton.me>
044e88b to
56edf13
Compare
Signed-off-by: alperozturk <alper_ozturk@proton.me>
|
APK file: https://www.kaminsky.me/nc-dev/android-artifacts/15977.apk |
|
test-Unit test failed: https://www.kaminsky.me/nc-dev/android-integrationTests/15977-Unit-test-10-46 |
|
blue-Light-Screenshot test failed, but no output was generated. Maybe a preliminary stage failed. |
Closed
4 tasks
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.

Changes
This PR simplifies and consolidates the app’s storage-permission handling to improve clarity, reduce duplicated logic.
StoragePermissionDialog
MEDIA_LOCATION)UploadListActivity
PermissionUtil
Remove the external override flag.
Consolidated storage-permission checks.
Reduced code duplication and improved readability.
Storage Permission Banner Behavior
@kra-mo
When the user denies storage permissions, including full file access, media access, or limited access, the app can no longer trigger the native permission dialog. Because these permissions are essential for both auto and manual uploads, the banner provides clear user guidance.
The banner offers the following options:
Media Access → Opens the system settings page for granting media access.
Full File Access → Redirects the user to the app-specific full-file access settings page.
Don’t Ask Again → Allows the user to permanently dismiss the banner if they do not wish to see it again.