Change language issue resolved with delacate functions of Android.
Minor bugs fixes
This commit is contained in:
15
.idea/deploymentTargetDropDown.xml
generated
15
.idea/deploymentTargetDropDown.xml
generated
@@ -3,20 +3,7 @@
|
||||
<component name="deploymentTargetDropDown">
|
||||
<value>
|
||||
<entry key="app">
|
||||
<State>
|
||||
<runningDeviceTargetSelectedWithDropDown>
|
||||
<Target>
|
||||
<type value="RUNNING_DEVICE_TARGET" />
|
||||
<deviceKey>
|
||||
<Key>
|
||||
<type value="VIRTUAL_DEVICE_PATH" />
|
||||
<value value="$PROJECT_DIR$/../.android/avd/Pixel_6_API_27.avd" />
|
||||
</Key>
|
||||
</deviceKey>
|
||||
</Target>
|
||||
</runningDeviceTargetSelectedWithDropDown>
|
||||
<timeTargetWasSelectedWithDropDown value="2024-10-18T12:15:13.580519Z" />
|
||||
</State>
|
||||
<State />
|
||||
</entry>
|
||||
</value>
|
||||
</component>
|
||||
|
||||
@@ -17,8 +17,8 @@ android {
|
||||
applicationId "com.woka"
|
||||
minSdk 24
|
||||
targetSdk 34
|
||||
versionCode 43
|
||||
versionName "25.9"
|
||||
versionCode 48
|
||||
versionName "25.9.0"
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
@@ -47,6 +47,12 @@ android {
|
||||
jvmTarget = '1.8'
|
||||
}
|
||||
|
||||
bundle {
|
||||
language {
|
||||
enableSplit = false
|
||||
}
|
||||
}
|
||||
|
||||
buildFeatures{
|
||||
viewBinding true
|
||||
buildConfig true
|
||||
|
||||
@@ -88,7 +88,6 @@
|
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode|fontScale|fontWeightAdjustment|screenLayout"
|
||||
android:exported="false"
|
||||
android:launchMode="singleTask"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/TransparentActivity" />
|
||||
<activity
|
||||
android:name=".home.notifications.NotificationsActivity"
|
||||
@@ -125,7 +124,6 @@
|
||||
<activity
|
||||
android:name=".home.views.MoreHomeActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/TransparentActivity" />
|
||||
<activity
|
||||
android:name=".players.views.LiveStreamPlayerActivity"
|
||||
@@ -137,11 +135,11 @@
|
||||
<activity
|
||||
android:name=".home.views.ExploreWokaActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/TransparentActivity" />
|
||||
<activity
|
||||
android:name=".home.views.HomeActivity"
|
||||
android:exported="false"
|
||||
android:configChanges="locale|layoutDirection|screenLayout|orientation"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name=".onboard.views.OnboardActivity"
|
||||
@@ -151,6 +149,7 @@
|
||||
<activity
|
||||
android:name=".onboard.views.WelcomeActivity"
|
||||
android:exported="true"
|
||||
android:configChanges="locale|layoutDirection|screenLayout|orientation"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/Theme.App.Starting">
|
||||
<intent-filter>
|
||||
|
||||
@@ -709,8 +709,8 @@ class AudioBooksActivity : WokaBaseActivity() {
|
||||
|
||||
adView2.setAdSize(
|
||||
AdSize(
|
||||
binding.trailerImage.width / resources.displayMetrics.density.toInt(),
|
||||
binding.trailerImage.height / resources.displayMetrics.density.toInt(),
|
||||
(binding.trailerImage.width / resources.displayMetrics.density).toInt(),
|
||||
(binding.trailerImage.height / resources.displayMetrics.density).toInt(),
|
||||
)
|
||||
)
|
||||
adView2.adUnitId = AUDIO_BOOKS_TRAILER_AD
|
||||
|
||||
@@ -42,7 +42,7 @@ import com.woka.streamingurls.StreamingUrlRepository
|
||||
import com.woka.userPreference.UserType
|
||||
import com.woka.userdata.userDataModels.UserDataResponse
|
||||
import com.woka.utils.ProgressView
|
||||
import com.woka.utils.changeLocale
|
||||
import com.woka.utils.getStringFromLocale
|
||||
import com.woka.utils.hide
|
||||
import com.woka.utils.scaleAnimate
|
||||
import com.woka.utils.show
|
||||
@@ -70,11 +70,6 @@ class Home1Fragment : Fragment() {
|
||||
private val clickHelper = ClicksHelper
|
||||
private val adClickHelper = AdClicksHelper
|
||||
|
||||
override fun onAttach(context: Context) {
|
||||
super.onAttach(context)
|
||||
context.changeLocale(userPrefs?.appLanguage?:"en")
|
||||
}
|
||||
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater, container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
@@ -227,17 +222,17 @@ class Home1Fragment : Fragment() {
|
||||
|
||||
viewModel.localeChangeLiveData.observe(viewLifecycleOwner) {
|
||||
binding.apply {
|
||||
helloTxt.text = getString(R.string.hello)
|
||||
welcomeText.text = getString(R.string.welcome_to_wokaland)
|
||||
helloTxt.text = context?.getStringFromLocale(R.string.hello)
|
||||
welcomeText.text = context?.getStringFromLocale(R.string.welcome_to_wokaland)
|
||||
|
||||
webSeriesTxt.text = getString(R.string.web_series)
|
||||
liveTvTxt.text = getString(R.string.live_tv)
|
||||
shopTxt.text = getString(R.string.shop)
|
||||
karaokeTxt.text = getString(R.string.karaoke)
|
||||
audioBooksTxt.text = getString(R.string.audio_books)
|
||||
playTxt.text = getString(R.string.games)
|
||||
webSeriesTxt.text = context?.getStringFromLocale(R.string.web_series)
|
||||
liveTvTxt.text = context?.getStringFromLocale(R.string.live_tv)
|
||||
shopTxt.text = context?.getStringFromLocale(R.string.shop)
|
||||
karaokeTxt.text = context?.getStringFromLocale(R.string.karaoke)
|
||||
audioBooksTxt.text = context?.getStringFromLocale(R.string.audio_books)
|
||||
playTxt.text = context?.getStringFromLocale(R.string.games)
|
||||
|
||||
moreTxt.text = getString(R.string.more)
|
||||
moreTxt.text = context?.getStringFromLocale(R.string.more)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -440,7 +435,7 @@ class Home1Fragment : Fragment() {
|
||||
"translationX",
|
||||
resources.displayMetrics.widthPixels - binding.tvView.width - (2 * endMargin)
|
||||
).apply {
|
||||
duration = 7000
|
||||
duration = 8000
|
||||
repeatCount = ValueAnimator.INFINITE
|
||||
repeatMode = ValueAnimator.REVERSE
|
||||
start()
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.woka.home.fragments
|
||||
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
@@ -36,7 +35,7 @@ import com.woka.streamingurls.StreamingUrlRepository
|
||||
import com.woka.userPreference.UserType
|
||||
import com.woka.userdata.userDataModels.UserDataResponse
|
||||
import com.woka.utils.ProgressView
|
||||
import com.woka.utils.changeLocale
|
||||
import com.woka.utils.getStringFromLocale
|
||||
import com.woka.utils.hide
|
||||
import com.woka.utils.show
|
||||
import com.woka.webseries.views.WebSeriesActivity
|
||||
@@ -53,11 +52,6 @@ class Home2Fragment : Fragment() {
|
||||
|
||||
private val clickHelper = ClicksHelper
|
||||
|
||||
override fun onAttach(context: Context) {
|
||||
super.onAttach(context)
|
||||
context.changeLocale(WokaApp.userPrefs?.appLanguage ?: "en")
|
||||
}
|
||||
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater, container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
@@ -237,21 +231,21 @@ class Home2Fragment : Fragment() {
|
||||
|
||||
viewModel.localeChangeLiveData.observe(viewLifecycleOwner) {
|
||||
binding.apply {
|
||||
helloTxt.text = getString(R.string.hello)
|
||||
welcomeText.text = getString(R.string.welcome_to_wokaland)
|
||||
helloTxt.text = context?.getStringFromLocale(R.string.hello)
|
||||
welcomeText.text = context?.getStringFromLocale(R.string.welcome_to_wokaland)
|
||||
|
||||
webSeriesTxt.text = getString(R.string.web_series)
|
||||
liveTvTxt.text = getString(R.string.live_tv)
|
||||
shopTxt.text = getString(R.string.shop)
|
||||
karaokeTxt.text = getString(R.string.karaoke)
|
||||
audioBooksTxt.text = getString(R.string.audio_books)
|
||||
gamesTxt.text = getString(R.string.games)
|
||||
wokaFmTxt.text = getString(R.string.woka_fm)
|
||||
webSeriesTxt.text = context?.getStringFromLocale(R.string.web_series)
|
||||
liveTvTxt.text = context?.getStringFromLocale(R.string.live_tv)
|
||||
shopTxt.text = context?.getStringFromLocale(R.string.shop)
|
||||
karaokeTxt.text = context?.getStringFromLocale(R.string.karaoke)
|
||||
audioBooksTxt.text = context?.getStringFromLocale(R.string.audio_books)
|
||||
gamesTxt.text = context?.getStringFromLocale(R.string.games)
|
||||
wokaFmTxt.text = context?.getStringFromLocale(R.string.woka_fm)
|
||||
|
||||
exploreWokaTxt.text = getString(R.string.explore_woka)
|
||||
comingSoonTxt.text = getString(R.string.coming_soonn_on_woka)
|
||||
playTrailerTxt.text = getString(R.string.play_trailer)
|
||||
masila.text = getString(R.string.masila)
|
||||
exploreWokaTxt.text = context?.getStringFromLocale(R.string.explore_woka)
|
||||
comingSoonTxt.text = context?.getStringFromLocale(R.string.coming_soonn_on_woka)
|
||||
playTrailerTxt.text = context?.getStringFromLocale(R.string.play_trailer)
|
||||
masila.text = context?.getStringFromLocale(R.string.masila)
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.woka.home.fragments
|
||||
|
||||
import android.app.Dialog
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.content.res.ColorStateList
|
||||
import android.graphics.Color
|
||||
@@ -65,7 +64,7 @@ import com.woka.players.models.VideoViewData
|
||||
import com.woka.players.views.PlayerActivity
|
||||
import com.woka.userPreference.UserType
|
||||
import com.woka.userdata.UserRepository
|
||||
import com.woka.utils.changeLocale
|
||||
import com.woka.utils.getStringFromLocale
|
||||
import com.woka.utils.hide
|
||||
import com.woka.utils.isNetworkConnected
|
||||
import com.woka.utils.setVisibility
|
||||
@@ -110,11 +109,6 @@ class MyListFragment : Fragment() {
|
||||
|
||||
private val clickHelper = ClicksHelper
|
||||
|
||||
override fun onAttach(context: Context) {
|
||||
super.onAttach(context)
|
||||
context.changeLocale(userPrefs?.appLanguage?:"en")
|
||||
}
|
||||
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater, container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
@@ -151,14 +145,12 @@ class MyListFragment : Fragment() {
|
||||
binding.noSignInView.show()
|
||||
}
|
||||
|
||||
updateListData()
|
||||
|
||||
return binding.root
|
||||
}
|
||||
|
||||
private fun initViews() {
|
||||
binding.apply {
|
||||
title.text = getString(R.string.favorites)
|
||||
title.text = context?.getStringFromLocale(R.string.favorites)
|
||||
|
||||
(rvWebSeriesEnglish.itemAnimator as SimpleItemAnimator).supportsChangeAnimations = false
|
||||
(rvWebSeriesHindi.itemAnimator as SimpleItemAnimator).supportsChangeAnimations = false
|
||||
@@ -207,7 +199,7 @@ class MyListFragment : Fragment() {
|
||||
activity,
|
||||
FavoritesActivity::class.java
|
||||
).apply {
|
||||
putExtra(EXTRA_FAVORITE_TITLE, getString(R.string.web_series_english))
|
||||
putExtra(EXTRA_FAVORITE_TITLE, context?.getStringFromLocale(R.string.web_series_english))
|
||||
putExtra(EXTRA_FAVORITE_CONTENT_TYPE, ContentType.SERIES.id)
|
||||
putExtra(EXTRA_FAVORITE_WEB_SERIES_IS_ENGLISH, true)
|
||||
})
|
||||
@@ -225,7 +217,7 @@ class MyListFragment : Fragment() {
|
||||
activity,
|
||||
FavoritesActivity::class.java
|
||||
).apply {
|
||||
putExtra(EXTRA_FAVORITE_TITLE, getString(R.string.web_series_hindi))
|
||||
putExtra(EXTRA_FAVORITE_TITLE, context?.getStringFromLocale(R.string.web_series_hindi))
|
||||
putExtra(EXTRA_FAVORITE_CONTENT_TYPE, ContentType.SERIES.id)
|
||||
putExtra(EXTRA_FAVORITE_WEB_SERIES_IS_ENGLISH, false)
|
||||
})
|
||||
@@ -239,7 +231,7 @@ class MyListFragment : Fragment() {
|
||||
openedViewAll = PostType.AUDIO_BOOKS
|
||||
favActivityLauncher?.launch(
|
||||
Intent(activity, FavoritesActivity::class.java).apply {
|
||||
putExtra(EXTRA_FAVORITE_TITLE, getString(R.string.audio_books))
|
||||
putExtra(EXTRA_FAVORITE_TITLE, context?.getStringFromLocale(R.string.audio_books))
|
||||
putExtra(EXTRA_FAVORITE_CONTENT_TYPE, ContentType.AUDIO.id)
|
||||
}
|
||||
)
|
||||
@@ -253,7 +245,7 @@ class MyListFragment : Fragment() {
|
||||
openedViewAll = PostType.GAMES
|
||||
favActivityLauncher?.launch(
|
||||
Intent(activity, FavoritesActivity::class.java).apply {
|
||||
putExtra(EXTRA_FAVORITE_TITLE, getString(R.string.games))
|
||||
putExtra(EXTRA_FAVORITE_TITLE, context?.getStringFromLocale(R.string.games))
|
||||
putExtra(EXTRA_FAVORITE_CONTENT_TYPE, ContentType.GAME.id)
|
||||
}
|
||||
)
|
||||
@@ -267,7 +259,7 @@ class MyListFragment : Fragment() {
|
||||
openedViewAll = PostType.KARAOKE
|
||||
favActivityLauncher?.launch(
|
||||
Intent(activity, FavoritesActivity::class.java).apply {
|
||||
putExtra(EXTRA_FAVORITE_TITLE, getString(R.string.karaoke))
|
||||
putExtra(EXTRA_FAVORITE_TITLE, context?.getStringFromLocale(R.string.karaoke))
|
||||
putExtra(EXTRA_FAVORITE_CONTENT_TYPE, ContentType.KARAOKE_VIDEO.id)
|
||||
}
|
||||
)
|
||||
@@ -471,6 +463,8 @@ class MyListFragment : Fragment() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
updateListData()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -502,15 +496,26 @@ class MyListFragment : Fragment() {
|
||||
private fun setObservers() {
|
||||
binding.apply {
|
||||
viewModel.localeChangeLiveData.observe(viewLifecycleOwner) {
|
||||
binding.title.text = getString(R.string.favorites)
|
||||
|
||||
webSeriesEngTxt.text = getString(R.string.web_series_english)
|
||||
webSeriesHinTxt.text = getString(R.string.web_series_hindi)
|
||||
audioBooksTxt.text = getString(R.string.audio_books)
|
||||
karaokeTxt.text = getString(R.string.karaoke)
|
||||
gamesTxt.text = getString(R.string.games)
|
||||
binding.title.text = context?.getStringFromLocale(R.string.favorites)
|
||||
|
||||
noDataTxt.text = getString(R.string.no_favorites_added)
|
||||
webSeriesEngTxt.text = context?.getStringFromLocale(R.string.web_series_english)
|
||||
webSeriesHinTxt.text = context?.getStringFromLocale(R.string.web_series_hindi)
|
||||
audioBooksTxt.text = context?.getStringFromLocale(R.string.audio_books)
|
||||
karaokeTxt.text = context?.getStringFromLocale(R.string.karaoke)
|
||||
gamesTxt.text = context?.getStringFromLocale(R.string.games)
|
||||
|
||||
gamesViewAll.text = context?.getStringFromLocale(R.string.view_all)
|
||||
audioBooksViewAll.text = context?.getStringFromLocale(R.string.view_all)
|
||||
karaokeViewAll.text = context?.getStringFromLocale(R.string.view_all)
|
||||
webSeriesHinViewAll.text = context?.getStringFromLocale(R.string.view_all)
|
||||
webSeriesEngViewAll.text = context?.getStringFromLocale(R.string.view_all)
|
||||
|
||||
noSignIn.signIm.text = context?.getStringFromLocale(R.string.free_sign_in)
|
||||
noSignIn.title.text = context?.getStringFromLocale(R.string.continue_to_woka)
|
||||
noSignIn.message.text = context?.getStringFromLocale(R.string.to_continue_please_sign_in_for_more_adventures_and_features)
|
||||
|
||||
noDataTxt.text = context?.getStringFromLocale(R.string.no_favorites_added)
|
||||
|
||||
if (webSeriesEAdapter.currentList.isNotEmpty()) {
|
||||
webSeriesEAdapter.notifyItemRangeChanged(0, webSeriesEAdapter.currentList.size)
|
||||
@@ -725,7 +730,7 @@ class MyListFragment : Fragment() {
|
||||
watchCard.backgroundTintList =
|
||||
ColorStateList.valueOf(it.getColor(R.color.audio_grad_one))
|
||||
}
|
||||
watchCard.text = getString(R.string.listen_now)
|
||||
watchCard.text = context?.getStringFromLocale(R.string.listen_now)
|
||||
watchCard.setOnClickListener {
|
||||
onAudioListenClicked(audioBookData)
|
||||
}
|
||||
@@ -752,7 +757,7 @@ class MyListFragment : Fragment() {
|
||||
|
||||
fav.setOnClickListener {
|
||||
if (context?.isNetworkConnected() == false) {
|
||||
toast(getString(R.string.no_internet))
|
||||
toast(context?.getStringFromLocale(R.string.no_internet))
|
||||
return@setOnClickListener
|
||||
}
|
||||
|
||||
@@ -937,7 +942,7 @@ class MyListFragment : Fragment() {
|
||||
watchCard.backgroundTintList =
|
||||
ColorStateList.valueOf(it.getColor(R.color.game_grad_one))
|
||||
}
|
||||
watchCard.text = getString(R.string.play_now)
|
||||
watchCard.text = context?.getStringFromLocale(R.string.play_now)
|
||||
watchCard.setOnClickListener {
|
||||
activity?.let { activity ->
|
||||
gameData.game_url?.let {
|
||||
@@ -990,7 +995,7 @@ class MyListFragment : Fragment() {
|
||||
|
||||
fav.setOnClickListener {
|
||||
if (context?.isNetworkConnected() == false) {
|
||||
toast(getString(R.string.no_internet))
|
||||
toast(context?.getStringFromLocale(R.string.no_internet))
|
||||
return@setOnClickListener
|
||||
}
|
||||
|
||||
@@ -1177,7 +1182,7 @@ class MyListFragment : Fragment() {
|
||||
ColorStateList.valueOf(it.getColor(R.color.game_grad_one))
|
||||
}
|
||||
watchCard.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_mic, 0, 0, 0)
|
||||
watchCard.text = getString(R.string.sing_now)
|
||||
watchCard.text = context?.getStringFromLocale(R.string.sing_now)
|
||||
|
||||
like.setOnClickListener {
|
||||
KaraokeRepository.likeUnLikeSong(
|
||||
@@ -1201,7 +1206,7 @@ class MyListFragment : Fragment() {
|
||||
|
||||
fav.setOnClickListener {
|
||||
if (context?.isNetworkConnected() == false) {
|
||||
toast(getString(R.string.no_internet))
|
||||
toast(context?.getStringFromLocale(R.string.no_internet))
|
||||
return@setOnClickListener
|
||||
}
|
||||
|
||||
|
||||
@@ -28,10 +28,6 @@ object MyListRepository {
|
||||
*/
|
||||
private var shallLoadNewData: Boolean = true
|
||||
|
||||
fun setLoadNewDataFlag(loadNew: Boolean){
|
||||
this.shallLoadNewData = loadNew
|
||||
}
|
||||
|
||||
fun clearData(){
|
||||
shallLoadNewData = true
|
||||
myFavData.result?.let {
|
||||
|
||||
@@ -8,6 +8,8 @@ import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import androidx.cardview.widget.CardView
|
||||
import com.woka.R
|
||||
import com.woka.utils.LOCALE_ENGLISH
|
||||
import com.woka.utils.getStringFromLocale
|
||||
|
||||
class BottomNavigation: FrameLayout {
|
||||
|
||||
@@ -110,10 +112,10 @@ class BottomNavigation: FrameLayout {
|
||||
bottomTabSelectListener?.onBottomTabSelected(tab)
|
||||
}
|
||||
|
||||
fun initTitles(){
|
||||
homeTxt?.text = context.getString(R.string.home)
|
||||
myListTxt?.text = context.getString(R.string.my_list)
|
||||
exploreWokaTxt?.text = context.getString(R.string.explore_woka)
|
||||
fun initTitles(it: String = LOCALE_ENGLISH){
|
||||
homeTxt?.text = context.getStringFromLocale(R.string.home)
|
||||
myListTxt?.text = context.getStringFromLocale(R.string.my_list)
|
||||
exploreWokaTxt?.text = context.getStringFromLocale(R.string.explore_woka)
|
||||
}
|
||||
|
||||
interface OnBottomTabSelectListener{
|
||||
|
||||
@@ -26,7 +26,6 @@ import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.lifecycle.Observer
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import com.bumptech.glide.Glide
|
||||
import com.woka.BuildConfig
|
||||
import com.woka.R
|
||||
@@ -70,6 +69,7 @@ import com.woka.utils.ProgressView
|
||||
import com.woka.utils.TERMS_N_CONDITIONS_URL
|
||||
import com.woka.utils.WokaBaseActivity
|
||||
import com.woka.utils.changeLocale
|
||||
import com.woka.utils.getStringFromLocale
|
||||
import com.woka.utils.hide
|
||||
import com.woka.utils.lightStatusBar
|
||||
import com.woka.utils.setVisibility
|
||||
@@ -163,15 +163,15 @@ class HomeActivity : WokaBaseActivity(),
|
||||
}else if (binding.bottomNav.getSelectedTab() != HOME){
|
||||
binding.bottomNav.selectTab(HOME)
|
||||
}else {
|
||||
decisionDialog.title = getString(R.string.app_name_caps)
|
||||
decisionDialog.message = getString(R.string.do_you_want_to_exit_from_the_woka_app)
|
||||
decisionDialog.title = getStringFromLocale(R.string.app_name_caps)
|
||||
decisionDialog.message = getStringFromLocale(R.string.do_you_want_to_exit_from_the_woka_app)
|
||||
|
||||
decisionDialog.setPositiveButton(getString(R.string.yes)){
|
||||
decisionDialog.setPositiveButton(getStringFromLocale(R.string.yes)){
|
||||
@Suppress("DEPRECATION")
|
||||
super.onBackPressed()
|
||||
}
|
||||
|
||||
decisionDialog.setNegativeButton(getString(R.string.no))
|
||||
decisionDialog.setNegativeButton(getStringFromLocale(R.string.no))
|
||||
|
||||
decisionDialog.show()
|
||||
}
|
||||
@@ -205,7 +205,7 @@ class HomeActivity : WokaBaseActivity(),
|
||||
toast(it.errorMessage)
|
||||
}
|
||||
is ApiResult.Loading -> {
|
||||
progressView.show(getString(R.string.logging_you_out))
|
||||
progressView.show(getStringFromLocale(R.string.logging_you_out))
|
||||
}
|
||||
is ApiResult.Success -> {
|
||||
startActivity(Intent(this, OnboardActivity::class.java).apply {
|
||||
@@ -228,7 +228,7 @@ class HomeActivity : WokaBaseActivity(),
|
||||
toast(it.errorMessage)
|
||||
}
|
||||
is ApiResult.Loading -> {
|
||||
progressView.show(getString(R.string.please_wait))
|
||||
progressView.show(getStringFromLocale(R.string.please_wait))
|
||||
}
|
||||
is ApiResult.Success -> {
|
||||
progressView.hide()
|
||||
@@ -292,7 +292,7 @@ class HomeActivity : WokaBaseActivity(),
|
||||
|
||||
notifications.hide()
|
||||
|
||||
getString(R.string.login_register)
|
||||
getStringFromLocale(R.string.login_register)
|
||||
}else{
|
||||
// showing menu options
|
||||
if (userPrefs?.userType == UserType.GUARDIAN){
|
||||
@@ -305,22 +305,22 @@ class HomeActivity : WokaBaseActivity(),
|
||||
|
||||
notifications.show()
|
||||
|
||||
getString(R.string.logout)
|
||||
getStringFromLocale(R.string.logout)
|
||||
}
|
||||
}
|
||||
|
||||
viewModel.localeChangeLiveData.observe(this){
|
||||
// locale has changed
|
||||
binding.apply {
|
||||
bottomNav.initTitles()
|
||||
themeTxt.text = getString(R.string.theme)
|
||||
helloTxt.text = getString(R.string.hello)
|
||||
sbBtn.text = getString(R.string.logout)
|
||||
bottomNav.initTitles(it)
|
||||
themeTxt.text = getStringFromLocale(R.string.theme, it)
|
||||
helloTxt.text = getStringFromLocale(R.string.hello, it)
|
||||
sbBtn.text = getStringFromLocale(R.string.logout, it)
|
||||
|
||||
sbBtn.text = if (userPrefs?.userType == UserType.GUEST || userPrefs?.userType == UserType.NONE){
|
||||
getString(R.string.login_register)
|
||||
getStringFromLocale(R.string.login_register, it)
|
||||
}else{
|
||||
getString(R.string.logout)
|
||||
getStringFromLocale(R.string.logout, it)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -388,12 +388,12 @@ class HomeActivity : WokaBaseActivity(),
|
||||
}else{
|
||||
// signing out user
|
||||
decisionDialog.apply {
|
||||
title = getString(R.string.woka)
|
||||
message = getString(R.string.do_you_want_to_log_out)
|
||||
setPositiveButton(getString(R.string.yes)){
|
||||
title = getStringFromLocale(R.string.woka)
|
||||
message = getStringFromLocale(R.string.do_you_want_to_log_out)
|
||||
setPositiveButton(getStringFromLocale(R.string.yes)){
|
||||
viewModel.logout()
|
||||
}
|
||||
setNegativeButton(getString(R.string.no))
|
||||
setNegativeButton(getStringFromLocale(R.string.no))
|
||||
show()
|
||||
}
|
||||
}
|
||||
@@ -439,13 +439,13 @@ class HomeActivity : WokaBaseActivity(),
|
||||
|
||||
sbDeActivateAccountCard.setOnClickListener {
|
||||
decisionDialog.apply {
|
||||
title = getString(R.string.deactivate_woka_account)
|
||||
title = getStringFromLocale(R.string.deactivate_woka_account)
|
||||
message =
|
||||
getString(R.string.by_clicking_on_the_button_below_your_account_will_get_deactivated_your_data_will_be_erased_after_a_month)
|
||||
setPositiveButton(getString(R.string.yes)){
|
||||
getStringFromLocale(R.string.by_clicking_on_the_button_below_your_account_will_get_deactivated_your_data_will_be_erased_after_a_month)
|
||||
setPositiveButton(getStringFromLocale(R.string.yes)){
|
||||
viewModel.deActivateAccount()
|
||||
}
|
||||
setNegativeButton(getString(R.string.no))
|
||||
setNegativeButton(getStringFromLocale(R.string.no))
|
||||
show()
|
||||
}
|
||||
|
||||
@@ -456,7 +456,7 @@ class HomeActivity : WokaBaseActivity(),
|
||||
startActivity(
|
||||
Intent(this@HomeActivity, WebViewActivity::class.java).apply {
|
||||
putExtra(WEB_VIEW_URL, TERMS_N_CONDITIONS_URL)
|
||||
putExtra(WEB_VIEW_TITLE, getString(R.string.terms_conditions))
|
||||
putExtra(WEB_VIEW_TITLE, getStringFromLocale(R.string.terms_conditions))
|
||||
}
|
||||
)
|
||||
|
||||
@@ -467,7 +467,7 @@ class HomeActivity : WokaBaseActivity(),
|
||||
startActivity(
|
||||
Intent(this@HomeActivity, WebViewActivity::class.java).apply {
|
||||
putExtra(WEB_VIEW_URL, PRIVACY_N_POLICY_URL)
|
||||
putExtra(WEB_VIEW_TITLE, getString(R.string.privacy_policy))
|
||||
putExtra(WEB_VIEW_TITLE, getStringFromLocale(R.string.privacy_policy))
|
||||
}
|
||||
)
|
||||
|
||||
@@ -690,7 +690,7 @@ class HomeActivity : WokaBaseActivity(),
|
||||
sbUserName.text = text
|
||||
}
|
||||
|
||||
sbBtn.text = getString(R.string.logout)
|
||||
sbBtn.text = getStringFromLocale(R.string.logout)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -708,8 +708,8 @@ class KaraokeActivity : WokaBaseActivity() {
|
||||
|
||||
adView2.setAdSize(
|
||||
AdSize(
|
||||
binding.trailerImage.width / resources.displayMetrics.density.toInt(),
|
||||
binding.trailerImage.height / resources.displayMetrics.density.toInt(),
|
||||
(binding.trailerImage.width / resources.displayMetrics.density).toInt(),
|
||||
(binding.trailerImage.height / resources.displayMetrics.density).toInt(),
|
||||
)
|
||||
)
|
||||
adView2.adUnitId = KARAOKE_TRAILER_AD
|
||||
|
||||
@@ -113,7 +113,7 @@ class LanguageFragment : Fragment() {
|
||||
is ApiResult.Loading -> {}
|
||||
is ApiResult.Success -> {
|
||||
progressView.hide()
|
||||
requireActivity().changeLocale(locale)
|
||||
changeLocale(locale)
|
||||
|
||||
response.data?.let {
|
||||
completeGuestLogin(response.data)
|
||||
|
||||
@@ -17,6 +17,8 @@ import android.view.Window
|
||||
import android.view.inputmethod.InputMethodManager
|
||||
import android.widget.EditText
|
||||
import android.widget.Toast
|
||||
import androidx.appcompat.app.AppCompatDelegate
|
||||
import androidx.core.os.LocaleListCompat
|
||||
import androidx.core.view.WindowCompat
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.google.i18n.phonenumbers.PhoneNumberUtil
|
||||
@@ -56,23 +58,35 @@ fun View.setVisibility(show: Boolean){
|
||||
else hide()
|
||||
}
|
||||
|
||||
fun changeLocale(language: String){
|
||||
val lanReg = when (language){
|
||||
LOCALE_HINDI -> "hi-IN"
|
||||
else -> "en-US"
|
||||
}
|
||||
|
||||
@Suppress("DEPRECATION")
|
||||
fun Context.changeLocale(language: String){
|
||||
val locale = Locale(language)
|
||||
Locale.setDefault(locale)
|
||||
val config: Configuration = this.resources.configuration
|
||||
config.locale = locale
|
||||
config.setLayoutDirection(locale)
|
||||
this.resources.updateConfiguration(
|
||||
config,
|
||||
this.resources.displayMetrics
|
||||
AppCompatDelegate.setApplicationLocales(
|
||||
LocaleListCompat.create(Locale.forLanguageTag(lanReg))
|
||||
)
|
||||
|
||||
// saving to user preferences
|
||||
userPrefs?.appLanguage = language
|
||||
}
|
||||
|
||||
fun Context.getStringFromLocale(id: Int, locale: String = userPrefs?.appLanguage?: LOCALE_ENGLISH): String {
|
||||
var newResources = resources
|
||||
try {
|
||||
val config = Configuration(resources.configuration)
|
||||
config.setLocale(Locale(locale))
|
||||
createConfigurationContext(config)?.resources?.let {
|
||||
newResources = it
|
||||
}
|
||||
}catch (e: Exception){
|
||||
// do nothing
|
||||
}
|
||||
|
||||
return newResources.getString(id)
|
||||
}
|
||||
|
||||
fun Activity.closeKeyboard(){
|
||||
this.currentFocus?.let {
|
||||
(this.getSystemService(Activity.INPUT_METHOD_SERVICE) as InputMethodManager)
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.woka.utils
|
||||
import android.content.Context
|
||||
import android.content.res.Configuration
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import com.woka.WokaApp.Companion.userPrefs
|
||||
import kotlin.math.min
|
||||
|
||||
/*
|
||||
@@ -16,6 +15,5 @@ open class WokaBaseActivity: AppCompatActivity() {
|
||||
configuration.fontScale = min(configuration.fontScale.toDouble(), 1.0).toFloat()
|
||||
applyOverrideConfiguration(configuration)
|
||||
super.attachBaseContext(newBase)
|
||||
changeLocale(userPrefs?.appLanguage?: LOCALE_ENGLISH)
|
||||
}
|
||||
}
|
||||
@@ -520,8 +520,8 @@ class WebSeriesFragment : Fragment() {
|
||||
|
||||
adView2.setAdSize(
|
||||
AdSize(
|
||||
binding.masilaImage.width / resources.displayMetrics.density.toInt(),
|
||||
binding.masilaImage.height / resources.displayMetrics.density.toInt(),
|
||||
(binding.masilaImage.width / resources.displayMetrics.density).toInt(),
|
||||
(binding.masilaImage.height / resources.displayMetrics.density).toInt(),
|
||||
)
|
||||
)
|
||||
adView2.adUnitId = WEB_SERIES_TRAILER_AD
|
||||
|
||||
@@ -616,8 +616,8 @@ class GamesActivity : WokaBaseActivity() {
|
||||
|
||||
adView2.setAdSize(
|
||||
AdSize(
|
||||
binding.trailerImage.width / resources.displayMetrics.density.toInt(),
|
||||
binding.trailerImage.height / resources.displayMetrics.density.toInt(),
|
||||
(binding.trailerImage.width / resources.displayMetrics.density).toInt(),
|
||||
(binding.trailerImage.height / resources.displayMetrics.density).toInt(),
|
||||
)
|
||||
)
|
||||
adView2.adUnitId = GAME_TRAILER_AD
|
||||
|
||||
@@ -308,6 +308,8 @@
|
||||
android:orientation="vertical"
|
||||
android:visibility="visible"
|
||||
|
||||
android:layout_marginStart="10dp"
|
||||
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0"
|
||||
@@ -393,6 +395,8 @@
|
||||
android:orientation="vertical"
|
||||
android:visibility="visible"
|
||||
|
||||
android:layout_marginEnd="10dp"
|
||||
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
@@ -438,7 +442,7 @@
|
||||
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.05"
|
||||
app:layout_constraintHorizontal_bias="0.06"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
|
||||
app:layout_constraintTop_toTopOf="@id/g1"
|
||||
@@ -522,6 +526,8 @@
|
||||
android:orientation="vertical"
|
||||
android:visibility="visible"
|
||||
|
||||
android:layout_marginEnd="10dp"
|
||||
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.98"
|
||||
|
||||
@@ -162,4 +162,8 @@
|
||||
<string name="have_a_fun_time">आनंद करने का समय</string>
|
||||
<string name="load_more">और लोड करें</string>
|
||||
<string name="notifications">सूचनाएं</string>
|
||||
|
||||
<string name="continue_to_woka">WOKA से जुड़े रहे</string>
|
||||
<string name="to_continue_please_sign_in_for_more_adventures_and_features">कृपया अधिक रोमांच और सुविधाओ के लिए साइन इन करे...</string>
|
||||
<string name="free_sign_in">फ्री साइन इन</string>
|
||||
</resources>
|
||||
Reference in New Issue
Block a user