From 6f00b06313d2a74e1d2f6ec82cfcf00374201f7c Mon Sep 17 00:00:00 2001 From: Jonas Lochmann Date: Mon, 2 Nov 2020 01:00:00 +0100 Subject: [PATCH] Add tabs to the LockActivity --- .../timelimit/android/ui/lock/LockActivity.kt | 4 +- .../android/ui/lock/LockActivityAdapter.kt | 10 ++++- app/src/main/res/layout/lock_activity.xml | 38 ++++++++++++------- app/src/main/res/values-de/strings-lock.xml | 3 +- .../main/res/values-pt-rBR/strings-lock.xml | 1 - app/src/main/res/values/strings-lock.xml | 5 ++- 6 files changed, 42 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/io/timelimit/android/ui/lock/LockActivity.kt b/app/src/main/java/io/timelimit/android/ui/lock/LockActivity.kt index b5eb5ed..5070f1b 100644 --- a/app/src/main/java/io/timelimit/android/ui/lock/LockActivity.kt +++ b/app/src/main/java/io/timelimit/android/ui/lock/LockActivity.kt @@ -97,7 +97,7 @@ class LockActivity : AppCompatActivity(), ActivityViewModelHolder { model.init(blockedPackageName, blockedActivityName) - pager.adapter = LockActivityAdapter(supportFragmentManager) + pager.adapter = LockActivityAdapter(supportFragmentManager, this) model.content.observe(this) { if (isResumed && it is LockscreenContent.Blocked.BlockedCategory && it.reason == BlockingReason.RequiresCurrentDevice && !model.didOpenSetCurrentDeviceScreen) { @@ -126,6 +126,8 @@ class LockActivity : AppCompatActivity(), ActivityViewModelHolder { showAuth.value = position > 0 } }) + + tabs.setupWithViewPager(pager) } override fun onDestroy() { diff --git a/app/src/main/java/io/timelimit/android/ui/lock/LockActivityAdapter.kt b/app/src/main/java/io/timelimit/android/ui/lock/LockActivityAdapter.kt index a3da9d5..c3c0bea 100644 --- a/app/src/main/java/io/timelimit/android/ui/lock/LockActivityAdapter.kt +++ b/app/src/main/java/io/timelimit/android/ui/lock/LockActivityAdapter.kt @@ -16,11 +16,13 @@ package io.timelimit.android.ui.lock +import android.content.Context import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentPagerAdapter +import io.timelimit.android.R -class LockActivityAdapter(fragmentManager: FragmentManager): FragmentPagerAdapter(fragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) { +class LockActivityAdapter(fragmentManager: FragmentManager, private val context: Context): FragmentPagerAdapter(fragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) { override fun getCount(): Int = 2 override fun getItem(position: Int): Fragment = when (position) { @@ -28,4 +30,10 @@ class LockActivityAdapter(fragmentManager: FragmentManager): FragmentPagerAdapte 1 -> LockActionFragment() else -> throw IllegalArgumentException() } + + override fun getPageTitle(position: Int): CharSequence? = context.getString(when (position) { + 0 -> R.string.lock_tab_reason + 1 -> R.string.lock_tab_action + else -> throw IllegalArgumentException() + }) } \ No newline at end of file diff --git a/app/src/main/res/layout/lock_activity.xml b/app/src/main/res/layout/lock_activity.xml index 7585a1b..1ec69cf 100644 --- a/app/src/main/res/layout/lock_activity.xml +++ b/app/src/main/res/layout/lock_activity.xml @@ -13,26 +13,38 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . --> - - + android:layout_height="wrap_content" + android:id="@+id/tabs" + android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" /> - + - + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values-de/strings-lock.xml b/app/src/main/res/values-de/strings-lock.xml index 2c6f6f2..a494052 100644 --- a/app/src/main/res/values-de/strings-lock.xml +++ b/app/src/main/res/values-de/strings-lock.xml @@ -14,11 +14,12 @@ along with this program. If not, see . --> + Grund + Aktionen Gesperrt! Was wurde gesperrt? Warum wurde es gesperrt? - Wie geht es jetzt weiter? Vorübergehend erlauben diff --git a/app/src/main/res/values-pt-rBR/strings-lock.xml b/app/src/main/res/values-pt-rBR/strings-lock.xml index c209142..ee125aa 100644 --- a/app/src/main/res/values-pt-rBR/strings-lock.xml +++ b/app/src/main/res/values-pt-rBR/strings-lock.xml @@ -18,7 +18,6 @@ O que foi bloqueado? Por que foi bloqueado? - O que você pode fazer? permitir temporariamente diff --git a/app/src/main/res/values/strings-lock.xml b/app/src/main/res/values/strings-lock.xml index ecc48f1..1403dd9 100644 --- a/app/src/main/res/values/strings-lock.xml +++ b/app/src/main/res/values/strings-lock.xml @@ -13,12 +13,13 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . --> - + + Reason + Actions Blocked! What was blocked? Why was it blocked? - What can you do? allow temporarily