* github/main:
Bump version to 4
Remove unused DropdownMenu component
Route topic chip tap events up to NiaNavHost
Apply suggestions from code review
Migrate custom room configuration into a convention plugin
Update docs/ArchitectureLearningJourney.md - User action follow topic
Update docs/ArchitectureLearningJourney.md - Writing data
Change-Id: I417abcaba792bbf297a8156bb1c4cf677dcb8bea
This PR is about updating the operating system to macOS-12 as the previous one was going to be deprecated, as well as updating the checkout to v3 to avoid the warnings in the panel; adding setup SDK action to accept the license which was missing from the beginning.
I also added imports instead of adding them directly with the codes.
As a reference, there was another PR with a similar topic, but it wasn't complete: #483
Introduce Gradle Managed Device definitions to modules that have instrumented tests.
At the moment, defining it as a convention plugin isn't possible due to the bug. That bug is now fixed and will be included in Android Studio Flamingo.
Once Flamingo becomes stable, convert the GMD definitions as a convention plugin (#523)
Change-Id: I0866369e3d0bbe148ca5ec1f92bad59239a347b8
Adds a usage of accompanist/testharnness to force a given DpSize for its content, overriding the density if necessary to ensure that the size is achieved. This allows testing UI at arbitrary sizes on arbitrary emulators, lessening the need for using multiple emulators at different sizes (and filtering tests) when Android-specific window size has been hoisted appropriately.
The initial test using it is a test for checking whether or not the navigation bar or navigation rail is being shown, and these tests can run on any emulator.
Change-Id: I315384e5eafac23a3cd6d3818d9828f6d3c1acfc
* Move Hilt setup to convention plugin
* Disable Hilt on modules where it's not needed
* Enable non-transitive R classes
* Fix `configuration` blocks called in wrong scope
* Move imperative Flavors code from build.gradle
* Disable unnecessary build features globally
* Disable configure-on-demand as it's not encouraged
* Don't use internal AGP packages in plugins
Change-Id: I1bee3e3fd0103054637b979a350f9fd2312ae8ba
* github/main: (21 commits)
Add stacktrace for test command
Add TODO comment with bug
Update Compose compiler to 1.2.0, Kotlin to 1.7.0
Consistent tags & named parameter usage
Address review comments
Remove redundant dependency
Fix spotless
Move JankStats metric gathering further down
Add ForYou TopicSelection scrolling state
Add ForYou feed scrolling state
Add JankMetricDisposableEffect
Add AuthorsCarousel scrolling state
Add JankMetricEffect
Remove InterestItem state
Use DisposableEffect + rememberMetricsStateHolder for Interests tab selection
Use rememberMetricsStateHolder for navigation
Add rememberMetricsStateHolder composable
Introduce view extension to track jank
Inject JankStats with Hilt
Add jankStats and rudamentary jank logging
...
Change-Id: I1ff0fb3ccb7d6082c17c6e69f5d9ea9cabe1d733