diff --git a/app/src/main/java/com/itsaky/androidide/activities/ContributorsActivity.kt b/app/src/main/java/com/itsaky/androidide/activities/ContributorsActivity.kt index 3d572318f..4c044e945 100644 --- a/app/src/main/java/com/itsaky/androidide/activities/ContributorsActivity.kt +++ b/app/src/main/java/com/itsaky/androidide/activities/ContributorsActivity.kt @@ -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 { + updateMarginsRelative(0, 0, 0, 0) + height = 0 + } + + viewModel.fetchAll() + } else { + githubContributorsCard.visibility = View.INVISIBLE + translationContributorsCard.visibility = View.INVISIBLE + } + } } override fun onInsetsUpdated(insets: Rect) { diff --git a/app/src/main/res/layout/activity_contributors.xml b/app/src/main/res/layout/activity_contributors.xml index f3ed494cd..402b4769c 100644 --- a/app/src/main/res/layout/activity_contributors.xml +++ b/app/src/main/res/layout/activity_contributors.xml @@ -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"> + +