From fdde23aa4ef897d6f14de49d9def68a6292802c0 Mon Sep 17 00:00:00 2001 From: Janne Koschinski <janne@kuschku.de> Date: Thu, 13 Dec 2018 19:59:18 +0100 Subject: [PATCH] Show an info message when certificate/host whitelist is empty --- .../whitelist/WhitelistFragment.kt | 11 +++++++ .../main/res/layout/preferences_whitelist.xml | 30 +++++++++++++++++++ app/src/main/res/values-de/strings.xml | 2 ++ app/src/main/res/values/strings.xml | 2 ++ 4 files changed, 45 insertions(+) diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/whitelist/WhitelistFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/whitelist/WhitelistFragment.kt index 5408e3a2d..9b1adb083 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/whitelist/WhitelistFragment.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/ui/clientsettings/whitelist/WhitelistFragment.kt @@ -25,6 +25,7 @@ import android.os.HandlerThread import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.TextView import androidx.core.view.ViewCompat import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.LinearLayoutManager @@ -34,6 +35,7 @@ import butterknife.ButterKnife import de.kuschku.quasseldroid.R import de.kuschku.quasseldroid.persistence.QuasselDatabase import de.kuschku.quasseldroid.ui.coresettings.SettingsFragment +import de.kuschku.quasseldroid.util.helper.visibleIf import javax.inject.Inject class WhitelistFragment : SettingsFragment(), SettingsFragment.Changeable, @@ -41,9 +43,15 @@ class WhitelistFragment : SettingsFragment(), SettingsFragment.Changeable, @BindView(R.id.certificate_whitelist) lateinit var certificateList: RecyclerView + @BindView(R.id.certificate_whitelist_empty) + lateinit var certificateListEmpty: TextView + @BindView(R.id.hostname_whitelist) lateinit var hostnameList: RecyclerView + @BindView(R.id.hostname_whitelist_empty) + lateinit var hostnameListEmpty: TextView + @Inject lateinit var database: QuasselDatabase @@ -90,6 +98,9 @@ class WhitelistFragment : SettingsFragment(), SettingsFragment.Changeable, certificateAdapter.list = it.certificates hostnameAdapter.list = it.hostnames } + + certificateListEmpty.visibleIf(whitelist?.certificates.isNullOrEmpty()) + hostnameListEmpty.visibleIf(whitelist?.hostnames.isNullOrEmpty()) } return view } diff --git a/app/src/main/res/layout/preferences_whitelist.xml b/app/src/main/res/layout/preferences_whitelist.xml index bec7bb789..5d879b723 100644 --- a/app/src/main/res/layout/preferences_whitelist.xml +++ b/app/src/main/res/layout/preferences_whitelist.xml @@ -32,6 +32,21 @@ style="@style/Widget.Subhead" android:text="@string/label_whitelist_certificates" /> + <TextView + android:id="@+id/certificate_whitelist_empty" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:paddingStart="?listPreferredItemPaddingLeft" + android:paddingLeft="?listPreferredItemPaddingLeft" + android:paddingEnd="?listPreferredItemPaddingRight" + android:paddingRight="?listPreferredItemPaddingRight" + android:text="@string/label_whitelist_certificates_empty" + android:textColor="?colorTextSecondary" + android:textStyle="italic" + android:visibility="gone" /> + <androidx.recyclerview.widget.RecyclerView android:id="@+id/certificate_whitelist" android:layout_width="match_parent" @@ -45,6 +60,21 @@ style="@style/Widget.Subhead" android:text="@string/label_whitelist_hostnames" /> + <TextView + android:id="@+id/hostname_whitelist_empty" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:minHeight="?android:attr/listPreferredItemHeightSmall" + android:paddingStart="?listPreferredItemPaddingLeft" + android:paddingLeft="?listPreferredItemPaddingLeft" + android:paddingEnd="?listPreferredItemPaddingRight" + android:paddingRight="?listPreferredItemPaddingRight" + android:text="@string/label_whitelist_hostnames_empty" + android:textColor="?colorTextSecondary" + android:textStyle="italic" + android:visibility="gone" /> + <androidx.recyclerview.widget.RecyclerView android:id="@+id/hostname_whitelist" android:layout_width="match_parent" diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 602230a76..c63bf7016 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -110,7 +110,9 @@ <string name="label_whitelist">Ignorieren</string> <string name="label_whitelist_ignore_date">Verfallsdatum wird ignoriert für dieses Zertifikat</string> <string name="label_whitelist_certificates">Zertifikate</string> + <string name="label_whitelist_certificates_empty">Keine Zertifikate auf der Whitelist</string> <string name="label_whitelist_hostnames">Hosts</string> + <string name="label_whitelist_hostnames_empty">Keine Hostnamen auf der Whitelist</string> <string name="label_who">Who</string> <string name="label_who_long">Informationen aller Nutzer aktualisieren</string> <string name="label_whois">Whois</string> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b04d0f2e3..65682e9c8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -112,7 +112,9 @@ <string name="label_whitelist">Ignore</string> <string name="label_whitelist_ignore_date">Expiration date is ignored for this certificate</string> <string name="label_whitelist_certificates">Certificates</string> + <string name="label_whitelist_certificates_empty">No certificates whitelisted</string> <string name="label_whitelist_hostnames">Hosts</string> + <string name="label_whitelist_hostnames_empty">No hosts whitelisted</string> <string name="label_who">Who</string> <string name="label_who_long">Update user information of all users</string> <string name="label_whois">Whois</string> -- GitLab