Refresh the navbar with new icons and animations #1167
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.
This PR enhances the navbar icons and transition animations, thus improving navigation, clarity, and content.
Part of #790
Closes #911
Icons:
Now each navbar icon has two variations:
outline
andfilled
. The filled one is used when the item is selected, and the outline is used otherwise. This is done via a selector for each of the icons that manages this, so the navbar icon can be set to the selector. The old icons are not deleted and new ones are defined instead to not break other usages of the icons. This approach helps maintain consistency and ensures that the navigation experience is intuitive and visually appealing.Animations:
There are four animations in total, which are the left and right variations of both
slide-in
andslide-out
. These animations are used to create a smooth transition effect when navigating between different fragments in the app. ThenavOptionsLeftToRight
is used when navigating to a fragment with a higher item ID, andnavOptionsRightToLeft
is used when navigating to a fragment with a lower item ID. This ensures that the transitions feel natural based on the direction of navigation.Before:
Animations-before.webm
After:
Animations-after.webm
Tested on Pixel 8 API 34 Emulator.