diff --git a/app/src/main/java/com/fastaccess/github/ui/modules/issue/fragment/IssueFragment.kt b/app/src/main/java/com/fastaccess/github/ui/modules/issue/fragment/IssueFragment.kt index c92e5dd5..ccbda1da 100644 --- a/app/src/main/java/com/fastaccess/github/ui/modules/issue/fragment/IssueFragment.kt +++ b/app/src/main/java/com/fastaccess/github/ui/modules/issue/fragment/IssueFragment.kt @@ -85,8 +85,15 @@ class IssueFragment : BaseFragment(), LockUnlockFragment.OnLockReasonSelected, savedInstanceState: Bundle? ) { swipeRefresh.appBarLayout = appBar + val scrollTop = toolbar.menu?.findItem(R.id.scrollTop) appBar.addOnOffsetChangedListener(AppBarLayout.OnOffsetChangedListener { _, p1 -> - toolbar.menu?.findItem(R.id.scrollTop)?.isVisible = p1 < 0 + val isVisible = p1 < 0 + if (isVisible && scrollTop?.isVisible == false) { + scrollTop.isVisible = true + } + if (!isVisible && scrollTop?.isVisible == true) { + scrollTop.isVisible = false + } }) setupToolbar("", R.menu.issue_menu) (recyclerView.itemAnimator as? SimpleItemAnimator)?.supportsChangeAnimations = false @@ -247,7 +254,7 @@ class IssueFragment : BaseFragment(), LockUnlockFragment.OnLockReasonSelected, opener.text = SpannableBuilder.builder() .bold(model.author?.login) - .append(" opened this issue ") + .append(getString(R.string.opened_this_issue)) .append(model.createdAt?.timeAgo()) userIcon.loadAvatar(model.author?.avatarUrl, model.author?.url ?: "") diff --git a/app/src/main/java/com/fastaccess/github/ui/modules/trending/fragment/viewmodel/TrendingViewModel.kt b/app/src/main/java/com/fastaccess/github/ui/modules/trending/fragment/viewmodel/TrendingViewModel.kt index e8b6edf0..ce6937ee 100644 --- a/app/src/main/java/com/fastaccess/github/ui/modules/trending/fragment/viewmodel/TrendingViewModel.kt +++ b/app/src/main/java/com/fastaccess/github/ui/modules/trending/fragment/viewmodel/TrendingViewModel.kt @@ -4,6 +4,7 @@ import androidx.lifecycle.MutableLiveData import com.fastaccess.data.model.FirebaseTrendingConfigModel import com.fastaccess.data.model.TrendingModel import com.fastaccess.data.model.parcelable.FilterTrendingModel +import com.fastaccess.data.repository.SchedulerProvider import com.fastaccess.domain.repository.services.ScrapService import com.fastaccess.github.BuildConfig import com.fastaccess.github.base.BaseViewModel @@ -20,7 +21,8 @@ import javax.inject.Named */ class TrendingViewModel @Inject constructor( @Named(value = "github_trending") private val databaseReference: DatabaseReference, - private val retrofitBuilder: Retrofit.Builder + private val retrofitBuilder: Retrofit.Builder, + private val schedulerProvider: SchedulerProvider ) : BaseViewModel() { private var trendingModel = FirebaseTrendingConfigModel() @@ -50,6 +52,8 @@ class TrendingViewModel @Inject constructor( val language = if (model.lang == "All") "" else model.lang.replace(" ", "_").toLowerCase() service?.getTrending(language, model.since.name.toLowerCase())?.let { observable -> justSubscribe(observable + .subscribeOn(schedulerProvider.ioThread()) + .observeOn(schedulerProvider.uiThread()) .map { html -> val document = Jsoup.parse(html, "") val list = document.select(trendingModel.listName) diff --git a/resources/src/main/res/values/strings.xml b/resources/src/main/res/values/strings.xml index 789749de..dff1aef1 100644 --- a/resources/src/main/res/values/strings.xml +++ b/resources/src/main/res/values/strings.xml @@ -121,6 +121,7 @@ Unlock Unlock Everything Feeds + opened this issue