Skip to content

Commit 4ba63c0

Browse files
Remove author concept from app
Change-Id: Icd03c0288ba5f3f23dbcbdbefbbe802db2815793
1 parent 56b3c1d commit 4ba63c0

File tree

90 files changed

+269
-4975
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

90 files changed

+269
-4975
lines changed

.idea/codeStyles/Project.xml

-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ The app is currently in development. The `demoRelease` variant is [available on
2222
**Now in Android** displays content from the
2323
[Now in Android](https://developer.android.com/series/now-in-android) series. Users can browse for
2424
links to recent videos, articles and other content. Users can also follow topics they are interested
25-
in or follow specific authors.
25+
in.
2626

2727
## Screenshots
2828

app/build.gradle.kts

-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,6 @@ android {
7878
}
7979

8080
dependencies {
81-
implementation(project(":feature:author"))
8281
implementation(project(":feature:interests"))
8382
implementation(project(":feature:foryou"))
8483
implementation(project(":feature:bookmarks"))

app/src/main/java/com/google/samples/apps/nowinandroid/navigation/NiaNavHost.kt

-6
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@ import androidx.compose.runtime.Composable
2020
import androidx.compose.ui.Modifier
2121
import androidx.navigation.NavHostController
2222
import androidx.navigation.compose.NavHost
23-
import com.google.samples.apps.nowinandroid.feature.author.navigation.authorScreen
24-
import com.google.samples.apps.nowinandroid.feature.author.navigation.navigateToAuthor
2523
import com.google.samples.apps.nowinandroid.feature.bookmarks.navigation.bookmarksScreen
2624
import com.google.samples.apps.nowinandroid.feature.foryou.navigation.forYouNavigationRoute
2725
import com.google.samples.apps.nowinandroid.feature.foryou.navigation.forYouScreen
@@ -54,12 +52,8 @@ fun NiaNavHost(
5452
navigateToTopic = { topicId ->
5553
navController.navigateToTopic(topicId)
5654
},
57-
navigateToAuthor = { authorId ->
58-
navController.navigateToAuthor(authorId)
59-
},
6055
nestedGraphs = {
6156
topicScreen(onBackClick)
62-
authorScreen(onBackClick)
6357
}
6458
)
6559
}

benchmarks/src/main/java/com/google/samples/apps/nowinandroid/baselineprofile/BaselineProfileGenerator.kt

-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import androidx.benchmark.macro.junit4.BaselineProfileRule
2121
import androidx.test.uiautomator.By
2222
import com.google.samples.apps.nowinandroid.PACKAGE_NAME
2323
import com.google.samples.apps.nowinandroid.foryou.forYouScrollFeedDownUp
24-
import com.google.samples.apps.nowinandroid.foryou.forYouSelectAuthors
2524
import com.google.samples.apps.nowinandroid.foryou.forYouWaitForContent
2625
import com.google.samples.apps.nowinandroid.interests.interestsScrollPeopleDownUp
2726
import com.google.samples.apps.nowinandroid.interests.interestsScrollTopicsDownUp
@@ -47,7 +46,6 @@ class BaselineProfileGenerator {
4746

4847
// Scroll the feed critical user journey
4948
forYouWaitForContent()
50-
forYouSelectAuthors(true)
5149
forYouScrollFeedDownUp()
5250

5351
// Navigate to saved screen

benchmarks/src/main/java/com/google/samples/apps/nowinandroid/foryou/ForYouActions.kt

-37
Original file line numberDiff line numberDiff line change
@@ -31,43 +31,6 @@ fun MacrobenchmarkScope.forYouWaitForContent() {
3131
obj.wait(untilHasChildren(), 30_000)
3232
}
3333

34-
/**
35-
* Selects some authors, which will show the feed content for them.
36-
* [recheckAuthorsIfChecked] Authors may be already checked from the previous iteration.
37-
*/
38-
fun MacrobenchmarkScope.forYouSelectAuthors(recheckAuthorsIfChecked: Boolean = false) {
39-
val authors = device.findObject(By.res("forYou:authors"))
40-
41-
// Set gesture margin from sides not to trigger system gesture navigation
42-
val horizontalMargin = 10 * authors.visibleBounds.width() / 100
43-
authors.setGestureMargins(horizontalMargin, 0, horizontalMargin, 0)
44-
45-
// Select some authors to show some feed content
46-
repeat(3) { index ->
47-
val author = authors.children[index % authors.childCount]
48-
49-
when {
50-
// Author wasn't checked, so just do that
51-
!author.isChecked -> {
52-
author.click()
53-
device.waitForIdle()
54-
}
55-
56-
// The author was checked already and we want to recheck it, so just do it twice
57-
recheckAuthorsIfChecked -> {
58-
repeat(2) {
59-
author.click()
60-
device.waitForIdle()
61-
}
62-
}
63-
64-
else -> {
65-
// The author is checked, but we don't recheck it
66-
}
67-
}
68-
}
69-
}
70-
7134
fun MacrobenchmarkScope.forYouScrollFeedDownUp() {
7235
val feedList = device.findObject(By.res("forYou:feed"))
7336
device.flingElementDownUp(feedList)

benchmarks/src/main/java/com/google/samples/apps/nowinandroid/foryou/ScrollForYouFeedBenchmark.kt

-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ class ScrollForYouFeedBenchmark {
5050
}
5151
) {
5252
forYouWaitForContent()
53-
forYouSelectAuthors()
5453
forYouScrollFeedDownUp()
5554
}
5655
}

core/data-test/src/main/java/com/google/samples/apps/nowinandroid/core/data/test/TestDataModule.kt

-7
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,9 @@
1717
package com.google.samples.apps.nowinandroid.core.data.test
1818

1919
import com.google.samples.apps.nowinandroid.core.data.di.DataModule
20-
import com.google.samples.apps.nowinandroid.core.data.repository.AuthorsRepository
2120
import com.google.samples.apps.nowinandroid.core.data.repository.NewsRepository
2221
import com.google.samples.apps.nowinandroid.core.data.repository.TopicsRepository
2322
import com.google.samples.apps.nowinandroid.core.data.repository.UserDataRepository
24-
import com.google.samples.apps.nowinandroid.core.data.repository.fake.FakeAuthorsRepository
2523
import com.google.samples.apps.nowinandroid.core.data.repository.fake.FakeNewsRepository
2624
import com.google.samples.apps.nowinandroid.core.data.repository.fake.FakeTopicsRepository
2725
import com.google.samples.apps.nowinandroid.core.data.repository.fake.FakeUserDataRepository
@@ -42,11 +40,6 @@ interface TestDataModule {
4240
fakeTopicsRepository: FakeTopicsRepository
4341
): TopicsRepository
4442

45-
@Binds
46-
fun bindsAuthorRepository(
47-
fakeAuthorsRepository: FakeAuthorsRepository
48-
): AuthorsRepository
49-
5043
@Binds
5144
fun bindsNewsResourceRepository(
5245
fakeNewsRepository: FakeNewsRepository

core/data/src/main/java/com/google/samples/apps/nowinandroid/core/data/di/DataModule.kt

-7
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,7 @@
1616

1717
package com.google.samples.apps.nowinandroid.core.data.di
1818

19-
import com.google.samples.apps.nowinandroid.core.data.repository.AuthorsRepository
2019
import com.google.samples.apps.nowinandroid.core.data.repository.NewsRepository
21-
import com.google.samples.apps.nowinandroid.core.data.repository.OfflineFirstAuthorsRepository
2220
import com.google.samples.apps.nowinandroid.core.data.repository.OfflineFirstNewsRepository
2321
import com.google.samples.apps.nowinandroid.core.data.repository.OfflineFirstTopicsRepository
2422
import com.google.samples.apps.nowinandroid.core.data.repository.OfflineFirstUserDataRepository
@@ -40,11 +38,6 @@ interface DataModule {
4038
topicsRepository: OfflineFirstTopicsRepository
4139
): TopicsRepository
4240

43-
@Binds
44-
fun bindsAuthorsRepository(
45-
authorsRepository: OfflineFirstAuthorsRepository
46-
): AuthorsRepository
47-
4841
@Binds
4942
fun bindsNewsResourceRepository(
5043
newsRepository: OfflineFirstNewsRepository

core/data/src/main/java/com/google/samples/apps/nowinandroid/core/data/model/Author.kt

-29
This file was deleted.

core/data/src/main/java/com/google/samples/apps/nowinandroid/core/data/model/NewsResource.kt

-26
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616

1717
package com.google.samples.apps.nowinandroid.core.data.model
1818

19-
import com.google.samples.apps.nowinandroid.core.database.model.AuthorEntity
20-
import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceAuthorCrossRef
2119
import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceEntity
2220
import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceTopicCrossRef
2321
import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity
@@ -44,22 +42,6 @@ fun NetworkNewsResourceExpanded.asEntity() = NewsResourceEntity(
4442
type = type,
4543
)
4644

47-
/**
48-
* A shell [AuthorEntity] to fulfill the foreign key constraint when inserting
49-
* a [NewsResourceEntity] into the DB
50-
*/
51-
fun NetworkNewsResource.authorEntityShells() =
52-
authors.map { authorId ->
53-
AuthorEntity(
54-
id = authorId,
55-
name = "",
56-
imageUrl = "",
57-
twitter = "",
58-
mediumPage = "",
59-
bio = "",
60-
)
61-
}
62-
6345
/**
6446
* A shell [TopicEntity] to fulfill the foreign key constraint when inserting
6547
* a [NewsResourceEntity] into the DB
@@ -83,11 +65,3 @@ fun NetworkNewsResource.topicCrossReferences(): List<NewsResourceTopicCrossRef>
8365
topicId = topicId
8466
)
8567
}
86-
87-
fun NetworkNewsResource.authorCrossReferences(): List<NewsResourceAuthorCrossRef> =
88-
authors.map { authorId ->
89-
NewsResourceAuthorCrossRef(
90-
newsResourceId = id,
91-
authorId = authorId
92-
)
93-
}

core/data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/AuthorsRepository.kt

-33
This file was deleted.

core/data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/NewsRepository.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,9 @@ interface NewsRepository : Syncable {
3030
fun getNewsResources(): Flow<List<NewsResource>>
3131

3232
/**
33-
* Returns available news resources as a stream filtered by authors or topics.
33+
* Returns available news resources as a stream filtered by topics.
3434
*/
3535
fun getNewsResources(
36-
filterAuthorIds: Set<String> = emptySet(),
3736
filterTopicIds: Set<String> = emptySet(),
3837
): Flow<List<NewsResource>>
3938
}

core/data/src/main/java/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstAuthorsRepository.kt

-68
This file was deleted.

0 commit comments

Comments
 (0)