WelcomeFragment: Localize welcome screen strings
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
@@ -1,37 +0,0 @@
|
||||
[
|
||||
{
|
||||
"id": "0",
|
||||
"title": "FAQs",
|
||||
"subtitle": "Have questions? Find out the answers.",
|
||||
"icon": "ic_faq",
|
||||
"url": "https://gitlab.com/AuroraOSS/AuroraStore/-/wikis/Frequently%20Asked%20Questions"
|
||||
},
|
||||
{
|
||||
"id": "1",
|
||||
"title": "Source code",
|
||||
"icon": "ic_code",
|
||||
"subtitle": "Find out what's inside.",
|
||||
"url": "https://gitlab.com/AuroraOSS/AuroraStore/"
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"title": "License",
|
||||
"subtitle": "The GNU General Public License v3.0",
|
||||
"icon": "ic_license",
|
||||
"url": "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/LICENSE"
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"title": "Privacy policy",
|
||||
"subtitle": "Learn how Aurora Store uses your data",
|
||||
"icon": "ic_privacy",
|
||||
"url": "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/POLICY.md"
|
||||
},
|
||||
{
|
||||
"id": "4",
|
||||
"title": "Disclaimer",
|
||||
"subtitle": "Accountability and responsibility",
|
||||
"icon": "ic_disclaimer",
|
||||
"url": "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/DISCLAIMER.md"
|
||||
}
|
||||
]
|
||||
@@ -19,11 +19,13 @@
|
||||
|
||||
package com.aurora.store.data.model
|
||||
|
||||
import androidx.annotation.DrawableRes
|
||||
|
||||
data class Dash(
|
||||
var id: Int,
|
||||
var title: String,
|
||||
var subtitle: String,
|
||||
var icon: String,
|
||||
@DrawableRes var icon: Int,
|
||||
var url: String
|
||||
) {
|
||||
override fun equals(other: Any?): Boolean {
|
||||
|
||||
@@ -30,7 +30,6 @@ import com.aurora.store.R
|
||||
import com.aurora.store.data.model.Dash
|
||||
import com.aurora.store.databinding.ViewDashBinding
|
||||
import com.aurora.store.view.epoxy.views.BaseView
|
||||
import com.aurora.store.view.ui.onboarding.WelcomeFragment
|
||||
|
||||
@ModelView(
|
||||
autoLayout = ModelView.Size.MATCH_WIDTH_WRAP_HEIGHT,
|
||||
@@ -65,16 +64,7 @@ class DashView : RelativeLayout {
|
||||
fun dash(dash: Dash) {
|
||||
B.line1.text = dash.title
|
||||
B.line2.text = dash.subtitle
|
||||
|
||||
var icon = WelcomeFragment.icMap[dash.icon]
|
||||
if (icon == null)
|
||||
icon = R.drawable.ic_arrow_right
|
||||
B.img.setImageDrawable(
|
||||
ContextCompat.getDrawable(
|
||||
context,
|
||||
icon
|
||||
)
|
||||
)
|
||||
B.img.setImageDrawable(ContextCompat.getDrawable(context, dash.icon))
|
||||
}
|
||||
|
||||
@CallbackProp
|
||||
|
||||
@@ -27,9 +27,7 @@ import com.aurora.store.data.model.Dash
|
||||
import com.aurora.store.databinding.FragmentOnboardingWelcomeBinding
|
||||
import com.aurora.store.view.epoxy.views.preference.DashViewModel_
|
||||
import com.aurora.store.view.ui.commons.BaseFragment
|
||||
import com.google.gson.reflect.TypeToken
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import java.nio.charset.StandardCharsets
|
||||
|
||||
@AndroidEntryPoint
|
||||
class WelcomeFragment : BaseFragment(R.layout.fragment_onboarding_welcome) {
|
||||
@@ -37,16 +35,6 @@ class WelcomeFragment : BaseFragment(R.layout.fragment_onboarding_welcome) {
|
||||
private var _binding: FragmentOnboardingWelcomeBinding? = null
|
||||
private val binding get() = _binding!!
|
||||
|
||||
companion object {
|
||||
val icMap: MutableMap<String, Int> = mutableMapOf(
|
||||
"ic_faq" to R.drawable.ic_faq,
|
||||
"ic_code" to R.drawable.ic_code,
|
||||
"ic_license" to R.drawable.ic_license,
|
||||
"ic_privacy" to R.drawable.ic_privacy,
|
||||
"ic_disclaimer" to R.drawable.ic_disclaimer,
|
||||
)
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
_binding = FragmentOnboardingWelcomeBinding.bind(view)
|
||||
@@ -66,15 +54,42 @@ class WelcomeFragment : BaseFragment(R.layout.fragment_onboarding_welcome) {
|
||||
}
|
||||
|
||||
private fun loadDashFromAssets(): List<Dash> {
|
||||
val inputStream = requireContext().assets.open("dash.json")
|
||||
val bytes = ByteArray(inputStream.available())
|
||||
inputStream.read(bytes)
|
||||
inputStream.close()
|
||||
|
||||
val json = String(bytes, StandardCharsets.UTF_8)
|
||||
return gson.fromJson<MutableList<Dash>?>(
|
||||
json,
|
||||
object : TypeToken<MutableList<Dash?>?>() {}.type
|
||||
return listOf(
|
||||
Dash(
|
||||
id = 0,
|
||||
title = requireContext().getString(R.string.faqs_title),
|
||||
subtitle = requireContext().getString(R.string.faqs_subtitle),
|
||||
icon = R.drawable.ic_faq,
|
||||
url = "https://gitlab.com/AuroraOSS/AuroraStore/-/wikis/Frequently%20Asked%20Questions"
|
||||
),
|
||||
Dash(
|
||||
id = 1,
|
||||
title = requireContext().getString(R.string.source_code_title),
|
||||
subtitle = requireContext().getString(R.string.source_code_subtitle),
|
||||
icon = R.drawable.ic_code,
|
||||
url = "https://gitlab.com/AuroraOSS/AuroraStore/"
|
||||
),
|
||||
Dash(
|
||||
id = 2,
|
||||
title = requireContext().getString(R.string.menu_license),
|
||||
subtitle = requireContext().getString(R.string.license_subtitle),
|
||||
icon = R.drawable.ic_license,
|
||||
url = "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/LICENSE"
|
||||
),
|
||||
Dash(
|
||||
id = 3,
|
||||
title = requireContext().getString(R.string.privacy_policy_title),
|
||||
subtitle = requireContext().getString(R.string.privacy_policy_subtitle),
|
||||
icon = R.drawable.ic_privacy,
|
||||
url = "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/POLICY.md"
|
||||
),
|
||||
Dash(
|
||||
id = 4,
|
||||
title = requireContext().getString(R.string.menu_disclaimer),
|
||||
subtitle = requireContext().getString(R.string.disclaimer_subtitle),
|
||||
icon = R.drawable.ic_disclaimer,
|
||||
url = "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/DISCLAIMER.md"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -405,22 +405,27 @@
|
||||
<!-- InstallerFragment -->
|
||||
<string name="session_installer_subtitle">Session based installer for bundled/split APKs</string>
|
||||
<string name="session_installer_desc">Recommended, in-built and supports all Android versions</string>
|
||||
|
||||
<string name="root_installer_subtitle">Shell based installer using root permissions</string>
|
||||
<string name="root_installer_desc">Requires root/superuser privileges, supports all Android versions.</string>
|
||||
|
||||
<string name="native_installer_subtitle">Intent based installer, available on all devices</string>
|
||||
<string name="native_installer_desc">Best suited for devices running below Android 4.4</string>
|
||||
|
||||
<string name="services_installer_subtitle">Installer for background installations</string>
|
||||
<string name="services_installer_desc">Requires Aurora Services to be installed as a privileged-system app</string>
|
||||
|
||||
<string name="am_installer_subtitle">Full-featured open source package manager</string>
|
||||
<string name="am_installer_desc">Requires App Manager, need adb/root mode to install when miui optimization is on</string>
|
||||
|
||||
<string name="shizuku_installer_subtitle">Using system APIs directly with adb/root privileges</string>
|
||||
<string name="shizuku_installer_desc">Requires Shizuku or Sui, needs to be setup and permission granted</string>
|
||||
|
||||
<!-- ManualDownloadSheet -->
|
||||
<string name="manual_download_hint">Enter version code you wish to download</string>
|
||||
|
||||
<!-- WelcomeFragment -->
|
||||
<string name="faqs_title" translatable="false">FAQs</string>
|
||||
<string name="faqs_subtitle">Have questions? Find out the answers</string>
|
||||
<string name="source_code_title">Source code</string>
|
||||
<string name="source_code_subtitle">Find out what\'s inside</string>
|
||||
<string name="license_subtitle" translatable="false">The GNU General Public License v3.0</string>
|
||||
<string name="privacy_policy_title">Privacy policy</string>
|
||||
<string name="privacy_policy_subtitle">Learn how Aurora Store uses your data</string>
|
||||
<string name="disclaimer_subtitle">Accountability and responsibility</string>
|
||||
</resources>
|
||||
|
||||
Reference in New Issue
Block a user