-
Notifications
You must be signed in to change notification settings - Fork 144
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.automirroredfor icons likeArrowBackandSendto 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 = falseto the database configuration.
- Added
- app/src/main/java/com/google/android/samples/socialite/data/ChatDao.kt
- Added
@Transactionannotation to all queries.
- Added
- app/src/main/java/com/google/android/samples/socialite/model/Chat.kt
- Added index on
attendeeIdinChatdata class.
- Added index on
- app/src/main/java/com/google/android/samples/socialite/ui/Flow.kt
- Modified
stateInUifunction 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.ArrowBackwithIcons.AutoMirrored.Filled.ArrowBack. - Replaced
LocalLifecycleOwner.currentwithandroidx.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.ArrowBackwithIcons.AutoMirrored.Filled.ArrowBack. - Replaced
Icons.Filled.SendwithIcons.AutoMirrored.Filled.Send. - Replaced
LocalLifecycleOwner.currentwithandroidx.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
stateInUicalls to pass the ViewModel instance explicitly.
- Modified
- app/src/main/java/com/google/android/samples/socialite/ui/home/chatlist/ChatListViewModel.kt
- Modified
stateInUicall 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
DefaultPreloadManagerconstructor. - Replaced
STAGE_LOADED_TO_POSITION_MSwithSTAGE_LOADED_FOR_DURATION_MS.
- app/src/main/java/com/google/android/samples/socialite/ui/videoedit/VideoEditScreen.kt
- Replaced
Icons.Filled.VolumeMutewithIcons.AutoMirrored.Filled.VolumeMute. - Added
Icons.Filled.CheckCircle. - Added content descriptions for video preview and filter chips.
- Removed
iconColorandselectedIconColorparameters fromVideoEditFilterChipfunction.
- 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 Gemini 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
stateInUiextension function now requires aViewModelinstance. Ensure this is correctly passed in all usages to maintain proper lifecycle management ofStateFlow. - Automirrored Icons: The pull request introduces
automirroredicons 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.