Skip to content

🐛 add AnimatedNavigationSuiteScaffold and NavigationSuite components for enhanced navigation experience#860

Merged
SorrowBlue merged 1 commit intomainfrom
fix/859-navigationbar-item-count-issue-on-screen-transition
Sep 2, 2025
Merged

🐛 add AnimatedNavigationSuiteScaffold and NavigationSuite components for enhanced navigation experience#860
SorrowBlue merged 1 commit intomainfrom
fix/859-navigationbar-item-count-issue-on-screen-transition

Conversation

@SorrowBlue
Copy link
Copy Markdown
Owner

@SorrowBlue SorrowBlue commented Sep 2, 2025

fixed: #859

@SorrowBlue SorrowBlue requested a review from Copilot September 2, 2025 10:41
@SorrowBlue SorrowBlue self-assigned this Sep 2, 2025
@SorrowBlue SorrowBlue linked an issue Sep 2, 2025 that may be closed by this pull request
@github-actions github-actions Bot added the type: 🐛bug 「バグ、予期しない動作」[Bugs, unexpected behavior] label Sep 2, 2025
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds AnimatedNavigationSuiteScaffold and NavigationSuite components for enhanced navigation experience, introducing new Material3 navigation components and adapting existing scaffold layouts to support custom navigation implementations.

  • Introduces new NavigationSuite components with support for different navigation types (bars, rails, drawers)
  • Adds ShortNavigationBar component implementation with Material3 design patterns
  • Updates CanonicalScaffoldLayout to use new navigation item components with RowScope support

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
CanonicalScaffoldLayout.kt Updates import statements and changes navigationItems parameter to use RowScope
ShortNavigationBar.kt New comprehensive implementation of Material3 short navigation bar component
NavigationSuiteScaffold2.kt Adds NavigationSuiteItem component with support for different navigation types
NavigationSuiteScaffold.kt Implements NavigationSuite component that wraps different navigation implementations
AnimatedNavigationSuiteScaffold.kt Moves and updates AnimatedNavigationSuiteScaffold with new package and RowScope support

@@ -0,0 +1,535 @@
@file:Suppress("INVISIBLE_REFERENCE", "detekt.all")
Copy link

Copilot AI Sep 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The detekt.all suppression disables all static analysis checks for this entire file. This is overly broad and hides potential code quality issues. Consider using specific suppressions for only the necessary violations instead.

Suggested change
@file:Suppress("INVISIBLE_REFERENCE", "detekt.all")
@file:Suppress("INVISIBLE_REFERENCE")

Copilot uses AI. Check for mistakes.
@@ -0,0 +1,206 @@
@file:Suppress("INVISIBLE_REFERENCE", "detekt.all")
Copy link

Copilot AI Sep 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The detekt.all suppression disables all static analysis checks for this entire file. This is overly broad and hides potential code quality issues. Consider using specific suppressions for only the necessary violations instead.

Suggested change
@file:Suppress("INVISIBLE_REFERENCE", "detekt.all")
@file:Suppress("INVISIBLE_REFERENCE")

Copilot uses AI. Check for mistakes.
Comment on lines +515 to +534
/*@VisibleForTesting*/
internal val TopIconItemVerticalPadding = NavigationBarVerticalItemTokens.ContainerBetweenSpace
/*@VisibleForTesting*/
internal val TopIconIndicatorVerticalPadding =
(NavigationBarVerticalItemTokens.ActiveIndicatorHeight -
NavigationBarVerticalItemTokens.IconSize) / 2
/*@VisibleForTesting*/
internal val TopIconIndicatorHorizontalPadding =
(NavigationBarVerticalItemTokens.ActiveIndicatorWidth -
NavigationBarVerticalItemTokens.IconSize) / 2
/*@VisibleForTesting*/
internal val StartIconIndicatorVerticalPadding =
(NavigationBarHorizontalItemTokens.ActiveIndicatorHeight -
NavigationBarHorizontalItemTokens.IconSize) / 2
/*@VisibleForTesting*/
internal val TopIconIndicatorToLabelPadding: Dp = 4.dp
/*@VisibleForTesting*/
internal val StartIconIndicatorHorizontalPadding =
NavigationBarHorizontalItemTokens.ActiveIndicatorLeadingSpace
/*@VisibleForTesting*/
Copy link

Copilot AI Sep 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The @VisibleForTesting annotations are commented out instead of using proper annotations. Either use proper @VisibleForTesting annotations from androidx.annotation library or remove these comments if testing visibility is not needed.

Suggested change
/*@VisibleForTesting*/
internal val TopIconItemVerticalPadding = NavigationBarVerticalItemTokens.ContainerBetweenSpace
/*@VisibleForTesting*/
internal val TopIconIndicatorVerticalPadding =
(NavigationBarVerticalItemTokens.ActiveIndicatorHeight -
NavigationBarVerticalItemTokens.IconSize) / 2
/*@VisibleForTesting*/
internal val TopIconIndicatorHorizontalPadding =
(NavigationBarVerticalItemTokens.ActiveIndicatorWidth -
NavigationBarVerticalItemTokens.IconSize) / 2
/*@VisibleForTesting*/
internal val StartIconIndicatorVerticalPadding =
(NavigationBarHorizontalItemTokens.ActiveIndicatorHeight -
NavigationBarHorizontalItemTokens.IconSize) / 2
/*@VisibleForTesting*/
internal val TopIconIndicatorToLabelPadding: Dp = 4.dp
/*@VisibleForTesting*/
internal val StartIconIndicatorHorizontalPadding =
NavigationBarHorizontalItemTokens.ActiveIndicatorLeadingSpace
/*@VisibleForTesting*/
internal val TopIconItemVerticalPadding = NavigationBarVerticalItemTokens.ContainerBetweenSpace
internal val TopIconIndicatorVerticalPadding =
(NavigationBarVerticalItemTokens.ActiveIndicatorHeight -
NavigationBarVerticalItemTokens.IconSize) / 2
internal val TopIconIndicatorHorizontalPadding =
(NavigationBarVerticalItemTokens.ActiveIndicatorWidth -
NavigationBarVerticalItemTokens.IconSize) / 2
internal val StartIconIndicatorVerticalPadding =
(NavigationBarHorizontalItemTokens.ActiveIndicatorHeight -
NavigationBarHorizontalItemTokens.IconSize) / 2
internal val TopIconIndicatorToLabelPadding: Dp = 4.dp
internal val StartIconIndicatorHorizontalPadding =
NavigationBarHorizontalItemTokens.ActiveIndicatorLeadingSpace

Copilot uses AI. Check for mistakes.
@SorrowBlue SorrowBlue changed the title 🐛 add AnimatedNavigationSuiteScaffold and NavigationSuite compone… 🐛 add AnimatedNavigationSuiteScaffold and NavigationSuite components for enhanced navigation experience Sep 2, 2025
@SorrowBlue SorrowBlue merged commit 1779b33 into main Sep 2, 2025
22 checks passed
@SorrowBlue SorrowBlue deleted the fix/859-navigationbar-item-count-issue-on-screen-transition branch September 2, 2025 11:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: 🐛bug 「バグ、予期しない動作」[Bugs, unexpected behavior]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix NavigationBar item count issue on screen transition

2 participants