mirror of
https://gitee.com/zhangsken/AndroidIDE.git
synced 2026-10-16 07:49:44 +08:00
fix: add 'no internet' message in contributors activity
This commit is contained in:
@@ -20,11 +20,16 @@ package com.itsaky.androidide.activities
|
||||
import android.graphics.Rect
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import android.view.ViewGroup.MarginLayoutParams
|
||||
import androidx.activity.viewModels
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.core.view.updateLayoutParams
|
||||
import androidx.core.view.updateMarginsRelative
|
||||
import com.itsaky.androidide.R
|
||||
import com.itsaky.androidide.adapters.ContributorsGridAdapter
|
||||
import com.itsaky.androidide.app.LimitlessIDEActivity
|
||||
import com.itsaky.androidide.databinding.ActivityContributorsBinding
|
||||
import com.itsaky.androidide.utils.getConnectionInfo
|
||||
import com.itsaky.androidide.viewmodel.ContributorsViewModel
|
||||
|
||||
/**
|
||||
@@ -57,9 +62,12 @@ class ContributorsActivity : LimitlessIDEActivity() {
|
||||
githubContributors.apply {
|
||||
sectionTitle.setText(R.string.title_github_contributors)
|
||||
}
|
||||
|
||||
translationContributors.apply {
|
||||
sectionTitle.setText(R.string.title_crowdin_translators)
|
||||
}
|
||||
|
||||
noConnection.root.setText(R.string.msg_no_internet)
|
||||
}
|
||||
|
||||
viewModel._crowdinTranslators.observe(this) { translators ->
|
||||
@@ -70,7 +78,21 @@ class ContributorsActivity : LimitlessIDEActivity() {
|
||||
binding.githubContributors.sectionItems.adapter = ContributorsGridAdapter(githubContributors)
|
||||
}
|
||||
|
||||
viewModel.fetchAll()
|
||||
val connectionInfo = getConnectionInfo(this)
|
||||
binding.apply {
|
||||
if (connectionInfo.isConnected) {
|
||||
// hide the 'no internet' message
|
||||
noConnection.root.updateLayoutParams<MarginLayoutParams> {
|
||||
updateMarginsRelative(0, 0, 0, 0)
|
||||
height = 0
|
||||
}
|
||||
|
||||
viewModel.fetchAll()
|
||||
} else {
|
||||
githubContributorsCard.visibility = View.INVISIBLE
|
||||
translationContributorsCard.visibility = View.INVISIBLE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onInsetsUpdated(insets: Rect) {
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
android:layout_marginEnd="16dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
app:layout_constraintTop_toBottomOf="@id/no_connection">
|
||||
|
||||
<include
|
||||
android:id="@+id/github_contributors"
|
||||
@@ -76,6 +76,17 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/translation_contributors_card" />
|
||||
|
||||
<include
|
||||
android:id="@+id/no_connection"
|
||||
layout="@layout/layout_chip_error"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="16dp"
|
||||
app:layout_constraintBottom_toTopOf="@id/github_contributors_card"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
|
||||
Reference in New Issue
Block a user