Don Turner
707117a4f2
Merge branch 'main' into kotlinify
1 year ago
Don Turner
89d39a7242
Merge pull request #767 from SimonMarquis/resource-prefix
...
Enforce `resourcePrefix` on Android library modules
1 year ago
Simon Marquis
65f0d5b2d9
Update feature/foryou/src/main/kotlin/com/google/samples/apps/nowinandroid/feature/foryou/navigation/ForYouNavigation.kt
1 year ago
Don Turner
9d41ffa318
Merge branch 'main' into kotlinify
1 year ago
Simon Marquis
b6d82e24df
Merge branch 'main' into kotlinify
1 year ago
lihenggui
2a2d8ed88d
Change the name of FOR_YOU_NAVIGATION_ROUTE to FOR_YOU_ROUTE
1 year ago
lihenggui
32e1ec0447
Remove violations: property-naming
1 year ago
lihenggui
f8f932705a
Remove violations: discouraged-comment-location
1 year ago
Simon Marquis
caa482bc71
Kotlinify codebase
...
- Remove unnecessary nullable types
- Replace no-op method bodies with Unit
- Convert to expression body
- Replace if with when
- Remove braces from 'when' entries
- Remove braces from if statement
- Convert to single line lambda
- oneline if/returns
- Replace 'contains' call with 'in' operator
Following this refactor, it could be great to envision a more "strict" code formatter like ktlint 1.0 (we are currently stuck at 0.48.1)
1 year ago
Simon Marquis
988002e692
Update Robolectric 4.11.1
...
- https://github.com/robolectric/robolectric/releases/tag/robolectric-4.11
- https://github.com/robolectric/robolectric/releases/tag/robolectric-4.11.1
> Robolectric 4.11 adds support for Android SDK 34 (U). It also contains many bug fixes, performance improvements, and Shadow API enhancements. Robolectric 4.11 removes support for Android SDKs 18 and below.
Removing explicit API 33 Robolectric configuration.
1 year ago
tunjid
b2498c763f
🤖 Updates screenshots
1 year ago
dahunsi
03d2455f41
Use lazy vertical staggered grid in feed to maximize space utilization
...
Change-Id: I66fff57bd0f11f5f73e7e5c9b5c51b0fa6a76926
1 year ago
Simon Marquis
b2cd980170
Merge remote-tracking branch 'origin/main' into resource-prefix
1 year ago
Simon Marquis
ebfe01affd
Enforce `resourcePrefix` on Android library modules
...
```
:ui-test-hilt-manifest -> ui_test_hilt_manifest_
:core:analytics -> core_analytics_
:core:common -> core_common_
:core:data -> core_data_
:core:data-test -> core_data_test_
:core:database -> core_database_
:core:datastore -> core_datastore_
:core:datastore-test -> core_datastore_test_
:core:designsystem -> core_designsystem_
:core:domain -> core_domain_
:core:network -> core_network_
:core:notifications -> core_notifications_
:core:testing -> core_testing_
:core:ui -> core_ui_
:feature:bookmarks -> feature_bookmarks_
:feature:foryou -> feature_foryou_
:feature:interests -> feature_interests_
:feature:search -> feature_search_
:feature:settings -> feature_settings_
:feature:topic -> feature_topic_
:sync:sync-test -> sync_test_
:sync:work -> sync_work_
```
1 year ago
Simon Marquis
a33dafccad
Migrate from `java` to `kotlin` sourceSet directory
1 year ago
Roy Matero
298f3ce4db
Merge branch 'android:main' into main
1 year ago
Jose Alcérreca
5b79869324
Adds dark screenshot tests and fixes background colors in ForYou ( #918 )
...
* Adds dark screenshot tests and fixes background colors in ForYou
* 🤖 Updates screenshots
1 year ago
Roy Matero
4e6cda1965
Renamed toggle function signature with boolean parameters
...
Change-Id: I0d6c0ed4d4c0ee4bd387e5645fc558970f5f202b
1 year ago
Jose Alcérreca
886158d3cb
Adds Screenshot testing with Roborazzi ( #876 )
...
* Adds screenshot tests using Roborazzi (Robolectric Native Graphics)
- Adds Roborazzi to convention plugins
- Adds Screenshot helper in :core-testing
- Creates screenshot suites for :app and :feature-foryou
* CI and spotless
* Moves :app tests to testDemo and makes NiaAppScreenSizesScreenshotTests prettier
* CI: Moves local tests to their own step
* CI: Adds --rerun to screenshot task
* CI: Moves screenshots before local tests
* CI: Fixes wrong if statement in workflow
* CI WIP: trying to trigger the push step
* CI: Re-enables roborazzi verification
* Fixes flaky screenshot tests by setting LocalInspectionMode on
* CI: screenshot commits now use the original author intead of bot account
* CI: Disables globbing because file_pattern didn't work
* CI: Trying new file pattern for png files
* CI: Adds a check for forks
* 🤖 Updates screenshots
* Code review: toml cleanup, comments
* Use new github.event.pull_request.head.repo.fork
Co-authored-by: Simon Marquis <contact@simon-marquis.fr>
* Uses Robolectric qualifiers to set the dpi, adds section to README
* Spotless
* Delegates creation of repository to Hilt in test
* Revert "Use new github.event.pull_request.head.repo.fork"
* 🤖 Updates screenshots
* Empty commit to trigger GHA on main branch
* Makes time zones deterministic in screenshot tests
* Increases GMD timeout to 90m, but it has to be reduced
---------
Co-authored-by: Simon Marquis <contact@simon-marquis.fr>
1 year ago
Simon Marquis
daa2228132
Restore original `type` labels
1 year ago
Simon Marquis
0377fd8712
Replace `NewsResourceType` enum with simpler String type
...
See this discussion for rationale: https://github.com/android/nowinandroid/discussions/901
1 year ago
Adetunji Dahunsi
153b34fd50
Merge pull request #850 from qamarelsafadi/loading-progress-for-image
...
Fix #849 : Loading progress for image
1 year ago
Don Turner
492697ce6b
Merge pull request #873 from SimonMarquis/misc-warnings
...
Fix miscellaneous warnings
1 year ago
Qamar A. Safadi
2db3e0c804
Merge branch 'android:main' into loading-progress-for-image
1 year ago
Don Turner
8901e5932a
Merge pull request #872 from SimonMarquis/data-objects
...
Convert 'sealed' sub-object to 'data object'
1 year ago
Qamar A. Safadi
8aa0457ca9
Merge branch 'android:main' into loading-progress-for-image
2 years ago
dahunsi
03610d229a
Update feedItemsSize calculation
...
Change-Id: I2bf6a2fa0e210cef1318707d948a49d2ef010452
2 years ago
Simon Marquis
4bdc9705af
Fix miscellaneous warnings
...
- Remove unused namespace declaration
- Collapse empty manifest tags
- Remove redundant qualifier name
- Remove redundant suppression
2 years ago
Simon Marquis
b7799f0475
Convert 'sealed' sub-object to 'data object'
2 years ago
qamarelsafadi
f1a2993adc
feat: remove add placeholder todo
2 years ago
TJ Dahunsi
e13e84c155
Replace usages of 'displacement' to 'moved' in parameter names
...
Change-Id: I5b3da60041b046454e848d187f6dd2bfadf22b9a
2 years ago
TJ Dahunsi
eeb4973265
PR feedback
...
Change-Id: I48492e3c121ff8b2ee6bbbac08aa1829f6a6467f
2 years ago
TJ Dahunsi
cb1d50e65e
Even better names
...
Change-Id: Ia699c3ce8fd1ce7a6e406b00c81dc196b487ed65
2 years ago
TJ Dahunsi
3aec705048
Add padding to scrollbars
2 years ago
TJ Dahunsi
31b4841cb2
Add scrollbars to app
2 years ago
TJ Dahunsi
4af86580eb
Move analytics tracking of news deep link to an extension method
...
Change-Id: Id3d1a30d86634b9176067696db5ecfd4d02854a5
2 years ago
TJ Dahunsi
c4686cfa54
Track when deep link notifications are opened
...
Change-Id: I223b1c8fbca36f9b7f2a35d9cb2fa901d6f5be91
2 years ago
Tomáš Mlynarič
19ffb53150
Don't use lambda contentType for a single item
...
Change-Id: I0588c031428d523707463c5f0f0b6c586ea5e2c3
2 years ago
Tomáš Mlynarič
4a8a43551a
Add contentType to news feed
...
Before
ScrollForYouFeedBenchmark_scrollFeedCompilationFull
frameDurationCpuMs P50 4.9, P90 6.9, P95 7.6, P99 9.5
frameOverrunMs P50 -10.3, P90 -6.8, P95 -2.8, P99 -2.1
Traces: Iteration 0 1 2 3 4 5 6 7 8 9
After
ScrollForYouFeedBenchmark_scrollFeedCompilationFull
frameDurationCpuMs P50 4.6, P90 6.3, P95 7.2, P99 9.2
frameOverrunMs P50 -10.6, P90 -8.7, P95 -7.8, P99 -4.7
Traces: Iteration 0 1 2 3 4 5 6 7 8 9
Change-Id: I5589776f9627c27154873529c9ca9dd055a8a8ef
2 years ago
James Rose
7826b4f5f2
Merge pull request #748 from SimonMarquis/fix/permissions
...
Grant `POST_NOTIFICATIONS` permission in more instrumented tests
2 years ago
Amaury Medeiros
512930c239
Fix inline comment as suggested in PR
2 years ago
Amaury Medeiros
87c27f6b82
Apply suggested changes to inline comment
2 years ago
Amaury Medeiros
dd70bbd589
Fix ForYouScreen Compose Previews
...
Permissions should only be called in an Activity context, which is a layoutlib limitation. We need to avoid launching the permission request when in LocalInspectionMode, otherwise we'll have render errors on the ForYouScreen previews.
2 years ago
Miłosz Moczkowski
5bf66739bd
Remove redundant statements
...
Change-Id: Iaa25b7ba033d5e9c85cc2dc433197ed7b8b6cb89
2 years ago
Simon Marquis
9aba5cc0fe
Cleanup unused string resources
2 years ago
Simon Marquis
823c4db201
Grant `POST_NOTIFICATIONS` permission in more instrumented tests
...
Continues the work initiated in #738 .
Extract the SDK version check inside a `GrantPostNotificationPermissionRule` class that delegates to a regular `GrantPermissionRule`.
2 years ago
Simon Marquis
a93cce92f7
Update ForYouScreenTest.kt
2 years ago
Simon Marquis
69879ff874
Grant permission only if TIRAMISU or above
2 years ago
Simon Marquis
331e8cffac
Grant `POST_NOTIFICATIONS` permission in instrumented tests
2 years ago
TJ Dahunsi
5d51cdcd28
Fix navigation tests
2 years ago
TJ Dahunsi
ef97cb941c
Route notification deep link through for you screen
2 years ago
TJ Dahunsi
2499c0a0bd
Notify users when news are updated
2 years ago
James Rose
050db2cb72
Merge branch 'main' into jr/track-viewed
2 years ago
mlykotom
3b7e7e3c02
Use ReportDrawnWhen
...
Change-Id: I77b4db63f72f43c6c826e66358f7672792ef137d
2 years ago
Adetunji Dahunsi
08956492c8
Backend triggered sync
...
Change-Id: I53c43b136ebb755f6258b1e815301dddb3b536a3
2 years ago
Chris Sinco
93c01ad184
Fix trailing commas based on spotless check
2 years ago
Chris Sinco
049750dd51
Merge branch 'main' into ui-polish
2 years ago
Amaury Medeiros
6b605a779c
Fix ForYouScreenTopicSelection Compose Preview
2 years ago
James Rose
57c13d84bd
Incorporate code review changes: Move UserNewsResourceRepository to data
...
module; move UserNewsResource to model module. Implement unread dot for
bookmarked articles. Keep the flows cold in UserNewsResourceRepository.
2 years ago
James Rose
ebfbb5bafd
Display unread state on the news feed and bottom nav bar
...
When a news resource is unread, display a dot on its card in the news
feed. When the For You section has unread resources, display a dot on
its icon in the navigation bar.
Update the read status when a resource is opened.
2 years ago
James Rose
bd450099fb
Replace GetUserNewsResourcesUseCase with UserNewsResourceRepository
...
This moves the responsibility for joining the UserData and the
NewsResources to UserNewsResourceRepository. This way, the work can be
done once and shared with all consumers in a SharedFlow, rather than
having each consumer perform the join itself by invoking the UseCase.
2 years ago
Adetunji Dahunsi
ae58d1e1b0
Merge pull request #592 from android/tj/news-resource-query
...
Add NewsResourceQuery to better query encapsulation
2 years ago
Adetunji Dahunsi
09f5c3bc61
Add NewsResourceQuery to better query encapsulation
...
Change-Id: I93f8c8ae2d1144975f6f9ff1ba93be9a4600768a
2 years ago
Alex Vanyo
874c2d1487
Merge pull request #561 from SimonMarquis/update/androidx-lifecycle
...
Updgrade androidx-lifecycle from 2.6.0-alpha03 to 2.6.0-alpha05
2 years ago
Caren
17ffb5bf3e
Merge pull request #586 from takagimeow/fix/add-padding-for-loading-wheel
...
Add padding between the loading wheel and the top of the screen
2 years ago
Keisuke Takagi
cc3f7905e5
Resolved format violations error
2 years ago
Simon Marquis
4d4f7d4a15
Merge remote-tracking branch 'origin/main' into update/androidx-lifecycle
2 years ago
Keisuke Takagi
8b8401e3ec
Add padding between the loading wheel and the top of the screen
2 years ago
Don Turner
4284e6912e
Merge remote-tracking branch 'github/main' into feb9automerger
...
* 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
2 years ago
Márton Braun
322ff63dbc
Route topic chip tap events up to NiaNavHost
...
Change-Id: I228c486f5cde1bb47530e8f115a435bfa34381a7
2 years ago
Don Turner
2a4d0434a5
Add Firebase analytics. See go/nia-firebase-services.
...
Change-Id: I0cbbda0bba761d8019241f6165db231fe94fb689
2 years ago
Simon Marquis
f9a3533df3
Updgrade androidx-lifecycle from 2.6.0-alpha03 to 2.6.0-alpha05
...
> `Transformations` is now written in Kotlin. This is a *source incompatible change* for those classes written in Kotlin that were directly using syntax such as `Transformations.map`
> Kotlin code *must* now use the Kotlin extension method syntax that was previously only available when using `lifecycle-livedata-ktx`.
> The `collectAsStateWithLifecycle()` APIs of `lifecycle-runtime-compose` are no longer in experimental status. (I09d42, b/258835424)
Changelog: https://developer.android.com/jetpack/androidx/releases/lifecycle#2.6.0-alpha05
2 years ago
Milosz Moczkowski
5b8fef7c26
Merge pull request #528 from android/refactor/preview_parameters
...
Replace global variables with PreviewParameterProvider
2 years ago
Don Turner
f9dcdb4390
More refactoring
2 years ago
Don Turner
e536c396f9
Move new UseCase and tests into separate files
...
Change-Id: I4c337473ca0a60a5fccbb8aa640735cf7d616e71
2 years ago
Miłosz Moczkowski
bcb4d7d592
Replace global variables with PreviewParameterProvider
2 years ago
Don Turner
5a29414b7a
Fix spotless
2 years ago
Don Turner
a9bf21aaf4
Add UseCase for getting followed news resources, refactor ForYouVM
2 years ago
Manuel Vivo
20c29a6c09
Fix bookmarking scrolling to top of the page bug ( #548 )
2 years ago
Márton Braun
1d081ce26f
Fix formatting for a trailing comma
...
Change-Id: I300ec889aa9cd726a3cc60294e0cf7707e3361a6
2 years ago
Márton Braun
11fbf53f12
Merge pull request #543 from android/mb/trailing-commas
...
Enable trailing commas via .editorconfig
2 years ago
Milosz Moczkowski
893ac390a6
Merge pull request #524 from andhiratobing/main
...
Set item keys for smart recomposition of topics
2 years ago
Márton Braun
819dd494ad
Run Spotless to add trailing commas (and apply other rule updates)
...
Change-Id: I5f8e49a3ef004c7e9e7dfe4bc55f0a35dc575209
2 years ago
Angie Sasmita
cfbf782613
Merge pull request #542 from android/as/dynamic-color-option
...
Add dynamic color option in settings for API >=32
2 years ago
mlykotom
6b48b355cc
Merge branch 'main' into tm/fix-benchmarks-no-people
...
Change-Id: I94ca19fad5527c11a2f0f28cc43a23ab22f419a7
2 years ago
Angie Sasmita
6046f6e943
Add dynamic color option in settings for API >=32
...
Change-Id: Ib42c1cbd0208e98ef7610a1c8aca5d721aa464e6
2 years ago
ratobing
8eac9a4bdd
Set item keys for smart recomposition of topics
2 years ago
Don Turner
24df51349d
Move mapping logic into secondary constructor
...
Change-Id: I032326f502d27f2d3bd9fb8273ae44df878d172c
2 years ago
Don Turner
355b0540aa
Move construction of UserNewsResource into separate function
...
Change-Id: I7c1f6427cd7d95c2016349fec301b88455b33cf2
2 years ago
Chris Sinco
2f454de21c
Spacing polish based on design spec
2 years ago
Don Turner
5638e253ae
Fix unit and UI tests. Apply spotless.
...
Change-Id: Iab75852a27a44309d349f84e65226911ab59fcd5
2 years ago
magicalmeghan
ec4bceead3
Renamed SaveableNewsResource to UserNewsResource
2 years ago
magicalmeghan
6941e2082b
Renamed SaveableNewsResource to UserNewsResource
2 years ago
Nick Rout
8a051eaa5c
Fix spotless issues
2 years ago
Nick Rout
c12fe1fbe5
Update :core-designsystem module based on Figma file
2 years ago
mlykotom
0018144827
LoadingWheel testTag for every loading wheel
...
Change-Id: I7728e1717925abdfb607e93f3d48226910d42c0d
2 years ago
mlykotom
ec6e902c0f
Waiting for topic selection
...
Change-Id: I44226a7c5e693ee92eed27070c09cd4e0751e674
2 years ago
Jolanda Verhoef
4ba63c0de8
Remove author concept from app
...
Change-Id: Icd03c0288ba5f3f23dbcbdbefbbe802db2815793
2 years ago
Márton Braun
9c22a7a4e7
Remove `Stream` suffixes
...
Change-Id: I45decae965d7e35289d3fa31fc58b8c463fbead1
2 years ago
mlykotom
9c22af19eb
Rename variables
...
Change-Id: Iccfc7cdd76c8ad1c866eeff8d621952c3e9c4db6
2 years ago