diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
index a80278b..0c0c338 100644
--- a/.idea/deploymentTargetDropDown.xml
+++ b/.idea/deploymentTargetDropDown.xml
@@ -3,20 +3,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/app/build.gradle b/app/build.gradle
index 33e4b9a..cbf0151 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -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
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9593580..0192a06 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -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" />
diff --git a/app/src/main/java/com/woka/audiobooks/views/AudioBooksActivity.kt b/app/src/main/java/com/woka/audiobooks/views/AudioBooksActivity.kt
index 6b44a44..69714e4 100644
--- a/app/src/main/java/com/woka/audiobooks/views/AudioBooksActivity.kt
+++ b/app/src/main/java/com/woka/audiobooks/views/AudioBooksActivity.kt
@@ -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
diff --git a/app/src/main/java/com/woka/home/fragments/Home1Fragment.kt b/app/src/main/java/com/woka/home/fragments/Home1Fragment.kt
index edfe88b..c90dc5a 100644
--- a/app/src/main/java/com/woka/home/fragments/Home1Fragment.kt
+++ b/app/src/main/java/com/woka/home/fragments/Home1Fragment.kt
@@ -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()
diff --git a/app/src/main/java/com/woka/home/fragments/Home2Fragment.kt b/app/src/main/java/com/woka/home/fragments/Home2Fragment.kt
index 95499bb..ab0bb85 100644
--- a/app/src/main/java/com/woka/home/fragments/Home2Fragment.kt
+++ b/app/src/main/java/com/woka/home/fragments/Home2Fragment.kt
@@ -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)
}
}
diff --git a/app/src/main/java/com/woka/home/fragments/MyListFragment.kt b/app/src/main/java/com/woka/home/fragments/MyListFragment.kt
index d325634..20c279c 100644
--- a/app/src/main/java/com/woka/home/fragments/MyListFragment.kt
+++ b/app/src/main/java/com/woka/home/fragments/MyListFragment.kt
@@ -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
}
diff --git a/app/src/main/java/com/woka/home/mylist/MyListRepository.kt b/app/src/main/java/com/woka/home/mylist/MyListRepository.kt
index 1f0f127..36ff94d 100644
--- a/app/src/main/java/com/woka/home/mylist/MyListRepository.kt
+++ b/app/src/main/java/com/woka/home/mylist/MyListRepository.kt
@@ -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 {
diff --git a/app/src/main/java/com/woka/home/views/BottomNavigation.kt b/app/src/main/java/com/woka/home/views/BottomNavigation.kt
index ae3b955..f10c819 100644
--- a/app/src/main/java/com/woka/home/views/BottomNavigation.kt
+++ b/app/src/main/java/com/woka/home/views/BottomNavigation.kt
@@ -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{
diff --git a/app/src/main/java/com/woka/home/views/HomeActivity.kt b/app/src/main/java/com/woka/home/views/HomeActivity.kt
index 4e5ab6c..822415d 100644
--- a/app/src/main/java/com/woka/home/views/HomeActivity.kt
+++ b/app/src/main/java/com/woka/home/views/HomeActivity.kt
@@ -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)
}
}
diff --git a/app/src/main/java/com/woka/karaoke/views/KaraokeActivity.kt b/app/src/main/java/com/woka/karaoke/views/KaraokeActivity.kt
index 309f9e6..a72294b 100644
--- a/app/src/main/java/com/woka/karaoke/views/KaraokeActivity.kt
+++ b/app/src/main/java/com/woka/karaoke/views/KaraokeActivity.kt
@@ -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
diff --git a/app/src/main/java/com/woka/onboard/fragments/LanguageFragment.kt b/app/src/main/java/com/woka/onboard/fragments/LanguageFragment.kt
index 9d29858..9db19bd 100644
--- a/app/src/main/java/com/woka/onboard/fragments/LanguageFragment.kt
+++ b/app/src/main/java/com/woka/onboard/fragments/LanguageFragment.kt
@@ -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)
diff --git a/app/src/main/java/com/woka/utils/Extensions.kt b/app/src/main/java/com/woka/utils/Extensions.kt
index c227bb1..8ba78cc 100644
--- a/app/src/main/java/com/woka/utils/Extensions.kt
+++ b/app/src/main/java/com/woka/utils/Extensions.kt
@@ -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)
diff --git a/app/src/main/java/com/woka/utils/WokaBaseActivity.kt b/app/src/main/java/com/woka/utils/WokaBaseActivity.kt
index 9f36afb..ea355ea 100644
--- a/app/src/main/java/com/woka/utils/WokaBaseActivity.kt
+++ b/app/src/main/java/com/woka/utils/WokaBaseActivity.kt
@@ -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)
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/woka/webseries/views/fragments/WebSeriesFragment.kt b/app/src/main/java/com/woka/webseries/views/fragments/WebSeriesFragment.kt
index 8447eae..6ff64e2 100644
--- a/app/src/main/java/com/woka/webseries/views/fragments/WebSeriesFragment.kt
+++ b/app/src/main/java/com/woka/webseries/views/fragments/WebSeriesFragment.kt
@@ -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
diff --git a/app/src/main/java/com/woka/wokagames/views/GamesActivity.kt b/app/src/main/java/com/woka/wokagames/views/GamesActivity.kt
index 89e4e7c..c8559cb 100644
--- a/app/src/main/java/com/woka/wokagames/views/GamesActivity.kt
+++ b/app/src/main/java/com/woka/wokagames/views/GamesActivity.kt
@@ -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
diff --git a/app/src/main/res/layout/fragment_home_1.xml b/app/src/main/res/layout/fragment_home_1.xml
index 22adede..da6a789 100644
--- a/app/src/main/res/layout/fragment_home_1.xml
+++ b/app/src/main/res/layout/fragment_home_1.xml
@@ -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"
diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml
index cf48fed..711bc9d 100644
--- a/app/src/main/res/values-hi/strings.xml
+++ b/app/src/main/res/values-hi/strings.xml
@@ -162,4 +162,8 @@
आनंद करने का समय
और लोड करें
सूचनाएं
+
+ WOKA से जुड़े रहे
+ कृपया अधिक रोमांच और सुविधाओ के लिए साइन इन करे...
+ फ्री साइन इन
\ No newline at end of file