From 57308fb2acdaa47d4414b9dd50a1207b455636ec Mon Sep 17 00:00:00 2001 From: Devota Aabel Date: Fri, 8 Mar 2024 14:25:32 -0500 Subject: [PATCH] Increased jvm memory and fixed trending indexing bug (#93) --- .../core/repository/mastodon/TrendsRepository.kt | 9 ++------- .../paging/TrendingHashtagsRemoteMediator.kt | 10 +++++++++- .../social/firefly/feature/discover/DiscoverTab.kt | 7 ------- gradle.properties | 4 ++-- 4 files changed, 13 insertions(+), 17 deletions(-) diff --git a/core/repository/mastodon/src/main/java/social/firefly/core/repository/mastodon/TrendsRepository.kt b/core/repository/mastodon/src/main/java/social/firefly/core/repository/mastodon/TrendsRepository.kt index 39a80e4d..ed280f53 100644 --- a/core/repository/mastodon/src/main/java/social/firefly/core/repository/mastodon/TrendsRepository.kt +++ b/core/repository/mastodon/src/main/java/social/firefly/core/repository/mastodon/TrendsRepository.kt @@ -50,12 +50,7 @@ class TrendsRepository internal constructor( dao.deleteAll() } - suspend fun insertAll(data: List) { - dao.upsertAll(data.mapIndexed { index, hashtag -> - TrendingHashTag( - hashTagName = hashtag.name, - position = index - ) - }) + suspend fun insertAll(data: List) { + dao.upsertAll(data) } } \ No newline at end of file diff --git a/core/repository/paging/src/main/java/social/firefly/core/repository/paging/TrendingHashtagsRemoteMediator.kt b/core/repository/paging/src/main/java/social/firefly/core/repository/paging/TrendingHashtagsRemoteMediator.kt index 0d5c2dae..9a217e7a 100644 --- a/core/repository/paging/src/main/java/social/firefly/core/repository/paging/TrendingHashtagsRemoteMediator.kt +++ b/core/repository/paging/src/main/java/social/firefly/core/repository/paging/TrendingHashtagsRemoteMediator.kt @@ -5,6 +5,7 @@ import androidx.paging.LoadType import androidx.paging.PagingState import androidx.paging.RemoteMediator import kotlinx.coroutines.delay +import social.firefly.core.database.model.entities.hashtagCollections.TrendingHashTag import social.firefly.core.database.model.entities.hashtagCollections.TrendingHashTagWrapper import social.firefly.core.repository.mastodon.DatabaseDelegate import social.firefly.core.repository.mastodon.HashtagRepository @@ -53,7 +54,14 @@ class TrendingHashtagsRemoteMediator( nextPositionIndex = 0 } hashtagRepository.insertAll(hashtags) - repository.insertAll(hashtags) + repository.insertAll( + hashtags.mapIndexed { index, hashTag -> + TrendingHashTag( + hashTag.name, + position = nextPositionIndex + index, + ) + } + ) } nextPositionIndex += hashtags.size diff --git a/feature/discover/src/main/java/social/firefly/feature/discover/DiscoverTab.kt b/feature/discover/src/main/java/social/firefly/feature/discover/DiscoverTab.kt index 91b493c0..2c1f2998 100644 --- a/feature/discover/src/main/java/social/firefly/feature/discover/DiscoverTab.kt +++ b/feature/discover/src/main/java/social/firefly/feature/discover/DiscoverTab.kt @@ -6,13 +6,6 @@ import social.firefly.common.utils.StringFactory import social.firefly.core.ui.common.hashtag.quickview.HashTagQuickViewUiState import social.firefly.core.ui.postcard.PostCardUiState -enum class DiscoverTab2(val tabTitle: StringFactory) { - HASHTAGS(StringFactory.resource(R.string.hashtags_tab)), - POSTS(StringFactory.resource(R.string.posts_tab)), - LINKS(StringFactory.resource(R.string.links_tab)), - SUGGESTIONS(StringFactory.resource(R.string.hashtags_tab)), -} - sealed class DiscoverTab(val tabTitle: StringFactory, val index: Int) { data class Hashtags(val hashtags: Flow>) : DiscoverTab(StringFactory.resource(R.string.hashtags_tab), 0) diff --git a/gradle.properties b/gradle.properties index 3c5031eb..817e04e0 100644 --- a/gradle.properties +++ b/gradle.properties @@ -6,7 +6,7 @@ # http://www.gradle.org/docs/current/userguide/build_environment.html # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. -org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +org.gradle.jvmargs=-Xmx4096m -Dfile.encoding=UTF-8 # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects @@ -20,4 +20,4 @@ kotlin.code.style=official # Enables namespacing of each library's R class so that its R class includes only the # resources declared in the library itself and none from the library's dependencies, # thereby reducing the size of the R class for that library -android.nonTransitiveRClass=true \ No newline at end of file +android.nonTransitiveRClass=true