dolphin
dolphin copied to clipboard
Android: Scalable Navigation
After getting the appropriate fixes in for the UI, I'm happy to release a new way of navigating the main activity!
Navigation is now controlled via the Androidx Navigation Component. This is a backwards compatible support library that makes navigation code much simpler. We don't see the full extent of the benefits here, but that will come in later PRs. For now we're getting 3 new layouts for the main activity. All 3 are based around NavigationViews that show buttons to navigate between each section of the app.
Additionally, we get a new section that breaks out the three dot menu in the top right corner. This is the More Fragment that holds all additional options with some new icons to fit.
Here's a demo to show everything working -
https://user-images.githubusercontent.com/14132249/220541347-d8b29f8b-8e39-4d2d-b30d-5afb70903540.mp4
The only things blocking this besides code review/design changes/etc would be
- [x] #11594 ~~Restoring scroll state on recreation~~
Please let me know if you have any suggestions!
Looks good! Tapping the Grid Options button on a tablet results in the menu not quite coming up all the way at first - I've gotta drag it up the rest of the way myself
Looks good! Tapping the Grid Options button on a tablet results in the menu not quite coming up all the way at first - I've gotta drag it up the rest of the way myself
This mostly pertains to how modal bottom sheets operate. By default they follow certain keylines based on display size/resolution. In the future I should probably find a better way to avoid this behavior since it does look a little weird.
Design LGTM!
I've decided to push off scroll state restoration to another PR. I'm getting stuck on some weird layout issue but that shouldn't get in the way of this change.
With that, I'm ready for final review/merge.
I no longer feel confident in the code and UI quality in this PR. I may try to continue this effort at another time.