-
Notifications
You must be signed in to change notification settings - Fork 108
feat:update agp = 8.9.0,and update other plugin;And adapt the relevant code logic ;default icon date #132
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
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.
Hello @lizy-coding, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
Summary of Changes
This pull request updates the Android Gradle Plugin (AGP) to version 8.9.1 and adapts the relevant code logic. It also updates other plugins and dependencies, targeting a newer JVM Toolchain (version 21). Additionally, it includes changes to improve code clarity and add descriptions for accessibility.
Highlights
- AGP and Plugin Updates: The AGP has been updated to 8.9.1, along with other plugin updates, requiring code adaptation to ensure compatibility.
- JVM Toolchain Upgrade: The JVM toolchain has been upgraded to version 21, which necessitates changes to source and target compatibility settings, as well as Kotlin options.
- Accessibility Improvements: Added content descriptions to various UI elements to improve accessibility for users.
- Dependency Updates: Several dependencies have been updated to their latest versions, including camera extensions, profile installer, Glance appwidget and material libraries, media3, navigation, datastore, and material3.
- Code Modernization: The code has been updated to use
androidx.compose.material.icons.automirrored
for icons likeArrowBack
andSend
to support layout direction mirroring.
Changelog
Click here to see the changelog
- .gitignore
- Added more files and directories to be ignored, including build outputs, logs, and Android Studio specific files.
- .idea/AndroidProjectSystem.xml
- Added file to specify the Android Project System component.
- .idea/other.xml
- Removed file containing device selection list.
- .idea/runConfigurations.xml
- Added file to ignore certain Run Configuration Producers.
- app/build.gradle.kts
- Upgraded JVM toolchain to version 21.
- Set source and target compatibility to Java version 21.
- Added compiler arguments for metadata version and Compose compatibility.
- Enabled buildConfig feature.
- Updated versions of various dependencies.
- app/src/main/java/com/google/android/samples/socialite/data/AppDatabase.kt
- Added
exportSchema = false
to the database configuration.
- Added
- app/src/main/java/com/google/android/samples/socialite/data/ChatDao.kt
- Added
@Transaction
annotation to all queries.
- Added
- app/src/main/java/com/google/android/samples/socialite/model/Chat.kt
- Added index on
attendeeId
inChat
data class.
- Added index on
- app/src/main/java/com/google/android/samples/socialite/ui/Flow.kt
- Modified
stateInUi
function to accept ViewModel as a parameter instead of using context receiver.
- Modified
- app/src/main/java/com/google/android/samples/socialite/ui/camera/Camera.kt
- Replaced
Icons.Filled.ArrowBack
withIcons.AutoMirrored.Filled.ArrowBack
. - Replaced
LocalLifecycleOwner.current
withandroidx.lifecycle.compose.LocalLifecycleOwner.current
. - Added content description for the back button.
- Replaced
- app/src/main/java/com/google/android/samples/socialite/ui/chat/ChatScreen.kt
- Replaced
Icons.Filled.ArrowBack
withIcons.AutoMirrored.Filled.ArrowBack
. - Replaced
Icons.Filled.Send
withIcons.AutoMirrored.Filled.Send
. - Replaced
LocalLifecycleOwner.current
withandroidx.lifecycle.compose.LocalLifecycleOwner
. - Added content descriptions for various UI elements, including icons and image previews.
- Replaced
- app/src/main/java/com/google/android/samples/socialite/ui/chat/ChatViewModel.kt
- Modified
stateInUi
calls to pass the ViewModel instance explicitly.
- Modified
- app/src/main/java/com/google/android/samples/socialite/ui/home/chatlist/ChatListViewModel.kt
- Modified
stateInUi
call to pass the ViewModel instance explicitly.
- Modified
- app/src/main/java/com/google/android/samples/socialite/ui/player/preloadmanager/PreloadManagerWrapper.kt
- Removed unused import.
- Removed unnecessary parameter from
DefaultPreloadManager
constructor. - Replaced
STAGE_LOADED_TO_POSITION_MS
withSTAGE_LOADED_FOR_DURATION_MS
.
- app/src/main/java/com/google/android/samples/socialite/ui/videoedit/VideoEditScreen.kt
- Replaced
Icons.Filled.VolumeMute
withIcons.AutoMirrored.Filled.VolumeMute
. - Added
Icons.Filled.CheckCircle
. - Added content descriptions for video preview and filter chips.
- Removed
iconColor
andselectedIconColor
parameters fromVideoEditFilterChip
function.
- Replaced
- app/src/main/res/values/strings.xml
- Added new string resources for content descriptions and video preview.
- build.gradle.kts
- Applied spotless plugin to subprojects.
- gradle/libs.versions.toml
- Updated versions of multiple libraries and plugins, including AGP, Compose BOM, Media3, Navigation, and others.
- Added lifecycleRuntimeCompose library version.
- gradle/wrapper/gradle-wrapper.properties
- Updated Gradle distribution URL to version 8.11.1.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemin
8000
i at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command>
or @gemini-code-assist <command>
. Below is a summary of the supported commands.
Feature | Command | Description |
---|---|---|
Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/
folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
A new AGP,
A fresh coat of paint bright,
Code adapts and sings.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
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.
Code Review
The pull request updates the Android Gradle Plugin (AGP) and other plugins, adapts relevant code logic, and updates the default icon date. The changes include updates to Gradle, Kotlin, dependencies, and various UI components. Overall, the changes seem reasonable, but there are some areas that could be improved.
Summary of Findings
- Missing ViewModel Context: The
stateInUi
extension function now requires aViewModel
instance. Ensure this is correctly passed in all usages to maintain proper lifecycle management ofStateFlow
. - Automirrored Icons: The pull request introduces
automirrored
icons for better RTL support. Verify that these icons are used consistently throughout the application where appropriate. - Content Description Updates: Several UI components now have updated content descriptions using
stringResource
. Ensure that these descriptions are accurate and provide meaningful context for accessibility. - AGP and Gradle Updates: The AGP and Gradle versions have been updated. Ensure that all dependencies and plugins are compatible with these new versions and that the build process is stable.
Merge Readiness
The pull request includes several updates and adaptations. Before merging, it's crucial to ensure that all changes are compatible and that the application functions as expected. The high
severity issue regarding the missing ViewModel context in stateInUi
must be addressed. Additionally, verify the accuracy of the new content descriptions and the stability of the updated AGP and Gradle versions. I am unable to approve this pull request, and recommend that others review and approve this code before merging.
app/src/main/java/com/google/android/samples/socialite/ui/camera/Camera.kt
Outdated
Show resolved
Hide resolved
- Add RTL support with autoMirrored vector drawables: * Add android:autoMirrored="true" to player control drawables (ic_ff_24dp.xml, ic_rw_24dp.xml, ic_play_24dp.xml, ic_pause_24dp.xml) * Use Icons.AutoMirrored.Filled.ArrowBack in Camera.kt for proper RTL layout - Fix icon imports across various UI components: * Fix incorrect references in ChatScreen.kt and VideoPlayerScreen.kt * Ensure proper fallback to standard icons where autoMirrored versions aren't available - Improve accessibility: * Add proper content descriptions using stringResource * Ensure all navigation elements have clear accessibility labels This commit enhances the app's internationalization support and accessibility compliance while maintaining compatibility with the existing codebase.
…ra/Camera.kt Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Duplicate of #43 |
No description provided.