-
-
Notifications
You must be signed in to change notification settings - Fork 3k
manager: Change to Miuix-style navigation transition animation #3141
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
YunZiA
commented
Jan 7, 2026
- 修改 常规 导航跳转动画为miuix风格
- 调整MainActivity launchMode 为 singleTask
- 调整 模块快捷刷入 实现逻辑
- 增加 Fab/列表卡片 导航跳转动画(仅适配部分页面)
- 改写搜索页动画,修复该动画导致的下拉组件崩溃 修复搜索页取消按钮不居中
- 修改 常规 导航跳转动画为miuix风格 - 调整MainActivity launchMode 为 singleTask - 调整 模块快捷刷入 实现逻辑 - 增加 Fab/列表卡片 导航跳转动画(仅适配部分页面) - 改写搜索页动画,修复该动画导致的下拉组件崩溃 修复搜索页取消按钮不居中
…epo.kt Co-authored-by: Copilot <[email protected]>
…epoDetailScreen.kt Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
…ile.kt Co-authored-by: Copilot <[email protected]>
…gation/RoutePopupStack.kt Co-authored-by: Copilot <[email protected]>
Co-authored-by: Copilot <[email protected]>
|
1、卡片跳转动画偶尔定位异常 |
|
1、搜索框抬起时背景模糊消失; |
YuKongA
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
大体上没问题了
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 38 out of 38 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
manager/app/src/main/java/me/weishu/kernelsu/ui/component/SuperSearchBar.kt
Outdated
Show resolved
Hide resolved
manager/app/src/main/java/me/weishu/kernelsu/ui/component/FloatingActionButton.kt
Outdated
Show resolved
Hide resolved
| </html> | ||
| """.trimIndent() | ||
|
|
||
| var layoutListener: ViewTreeObserver.OnGlobalLayoutListener? = null |
Copilot
AI
Jan 10, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Potential race condition or memory leak concern. The layoutListener is declared as a nullable variable at line 120 and assigned within the WebView setup, but the cleanup logic in onRelease checks if it's null before removing it. However, if onRelease is called while the WebView is still being set up or if multiple compositions occur, there could be listener leaks. Consider using a more robust pattern such as storing the listener in a remember block or ensuring proper lifecycle management.
| val listener = Consumer<Intent> { intent -> | ||
| val uri = intent.data ?: return@Consumer | ||
| if (!isManager || uri.scheme != "content" || intent.type != "application/zip") return@Consumer | ||
|
|
||
| if (isSafeMode) { | ||
| Toast.makeText( | ||
| context, | ||
| context.getString(R.string.safe_mode_module_disabled), Toast.LENGTH_SHORT | ||
| ) | ||
| .show() | ||
| } else { | ||
| zipUri = uri | ||
| installDialog.showConfirm( | ||
| title = context.getString(R.string.module), | ||
| content = context.getString( | ||
| R.string.module_install_prompt_with_name, | ||
| "\n${getDisplayName(uri)}" | ||
| if (isSafeMode) { | ||
| Toast.makeText( | ||
| context, | ||
| activity.getString(R.string.safe_mode_module_disabled), Toast.LENGTH_SHORT | ||
| ).show() | ||
| } else { | ||
| zipUri = uri | ||
| installDialog.showConfirm( | ||
| title = activity.getString(R.string.module), | ||
| content = activity.getString( | ||
| R.string.module_install_prompt_with_name, | ||
| "\n${getDisplayName(uri)}" | ||
| ) | ||
| ) | ||
| ) | ||
| } | ||
| } | ||
| activity.addOnNewIntentListener(listener) | ||
|
|
||
| onDispose { | ||
| activity.removeOnNewIntentListener(listener) | ||
| } |
Copilot
AI
Jan 10, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing error handling in the new intent listener. The Consumer<Intent> listener added at line 301 doesn't have any try-catch block to handle potential exceptions when processing the intent. If the intent processing fails (e.g., URI parsing errors, permission issues), it could crash the application. Consider wrapping the intent handling logic in a try-catch block with appropriate error logging and user feedback.
…tingActionButton.kt Co-authored-by: Copilot <[email protected]>