Skip to content

Commit

Permalink
language
Browse files Browse the repository at this point in the history
  • Loading branch information
iamsh4shank committed Jun 2, 2021
1 parent 82a4a0c commit 88dca8d
Show file tree
Hide file tree
Showing 11 changed files with 42 additions and 20 deletions.
6 changes: 5 additions & 1 deletion mifosng-android/src/main/java/com/mifos/App.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@
package com.mifos;

import android.content.Context;
import android.content.SharedPreferences;
import android.graphics.Typeface;
import android.os.Build;
import android.os.StrictMode;
import android.preference.PreferenceManager;

import androidx.multidex.MultiDexApplication;

import com.crashlytics.android.Crashlytics;
Expand Down Expand Up @@ -94,5 +97,6 @@ public void setComponent(ApplicationComponent applicationComponent) {

@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(LanguageHelper.onAttach(base, "en"));
super.attachBaseContext(LanguageHelper.onAttach(base));
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package com.mifos.mifosxdroid

import android.content.Intent
import android.content.SharedPreferences
import android.os.Bundle
import android.preference.ListPreference
import android.preference.Preference.OnPreferenceChangeListener
Expand All @@ -11,12 +13,14 @@ import com.mifos.utils.FragmentConstants
import com.mifos.utils.LanguageHelper
import com.mifos.utils.ThemeHelper


/**
* Created by mayankjindal on 22/07/17.
*/
class SettingsFragment : PreferenceFragment(), OnSharedPreferenceChangeListener {
class SettingsFragment : PreferenceFragment(), SharedPreferences.OnSharedPreferenceChangeListener {
var mEnableSyncSurvey: SwitchPreference? = null
private lateinit var languages: Array<String>
private var languageCallback: LanguageCallback? = null

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
addPreferencesFromResource(R.xml.preferences)
Expand All @@ -33,20 +37,27 @@ class SettingsFragment : PreferenceFragment(), OnSharedPreferenceChangeListener
}
true
}
val themePreference = findPreference("dark_mode") as ListPreference

val langPref = findPreference("language_type") as ListPreference
langPref.onPreferenceChangeListener = OnPreferenceChangeListener {preference, newValue ->
LanguageHelper.setLocale(this.activity, newValue.toString())
startActivity(Intent(activity, activity.javaClass))
preferenceScreen = null
addPreferencesFromResource(R.xml.preferences)
preferenceScreen.sharedPreferences.registerOnSharedPreferenceChangeListener(this)
true
}

val themePreference = findPreference(resources.getString(R.string.mode_key)) as ListPreference
themePreference.onPreferenceChangeListener = OnPreferenceChangeListener { preference, newValue ->
val themeOption = newValue as String
ThemeHelper.applyTheme(themeOption)
startActivity(Intent(activity, activity.javaClass))
Toast.makeText(activity, "Switched to ${themeOption.toString()} Mode", Toast.LENGTH_SHORT).show()
true
}
}

override fun onResume() {
super.onResume()
preferenceScreen.sharedPreferences.registerOnSharedPreferenceChangeListener(this)
}

override fun onPause() {
super.onPause()
preferenceScreen.sharedPreferences.unregisterOnSharedPreferenceChangeListener(this)
Expand All @@ -57,16 +68,8 @@ class SettingsFragment : PreferenceFragment(), OnSharedPreferenceChangeListener
}

override fun onSharedPreferenceChanged(sharedPreferences: SharedPreferences, s: String) {
val preference = findPreference(s)
if (preference is ListPreference) {
LanguageHelper.setLocale(this.activity, preference.value)
Toast.makeText(activity, R.string.lang_changed, Toast.LENGTH_SHORT).show()
//this.languageCallback.updateNavDrawer();
startActivity(Intent(activity, activity.javaClass))
//refresh settings fragment
preferenceScreen = null
addPreferencesFromResource(R.xml.preferences)
}
val preference = findPreference(s) as ListPreference
LanguageHelper.setLocale(this.activity, preference.value)
}

interface LanguageCallback {
Expand Down
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-ca/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -162,4 +162,5 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">S\'ha canviat l\'idioma</string>
<string name="lang_change_description">Seleccioneu l\'idioma en què voleu veure l\'aplicació</string>
<string name="dark_mode">mode fosc</string>
</resources>
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-es/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -162,4 +162,5 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">Idioma cambiado</string>
<string name="lang_change_description">Seleccione el idioma en el que desea ver la aplicación</string>
<string name="dark_mode">modo oscuro</string>
</resources>
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-fr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -608,5 +608,6 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">La langue a changé</string>
<string name="lang_change_description">Sélectionnez la langue dans laquelle vous souhaitez afficher l\'application</string>
<string name="dark_mode">mode sombre</string>

</resources>
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-hi/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -636,5 +636,6 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">भाषा बदली गए</string>
<string name="lang_change_description">उस भाषा का चयन करें जिसमें आप ऐप देखना चाहते हैं</string>
<string name="dark_mode">डार्क मोडं</string>

</resources>
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-kn/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -592,4 +592,5 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">ಭಾಷೆ ಬದಲಾಗಿದೆ</string>
<string name="lang_change_description">ನೀವು ಅಪ್ಲಿಕೇಶನ್ ವೀಕ್ಷಿಸಲು ಬಯಸುವ ಭಾಷೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ</string>
<string name="dark_mode">ಡಾರ್ಕ್ ಮೋಡ್</string>
</resources>
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-sw/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -728,5 +728,6 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">Lugha Imebadilishwa</string>
<string name="lang_change_description">Chagua lugha ambayo unataka kutazama programu</string>
<string name="dark_mode">hali ya giza</string>

</resources>
1 change: 1 addition & 0 deletions mifosng-android/src/main/res/values-zh/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -717,6 +717,7 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">语言已更改</string>
<string name="lang_change_description">选择您要查看应用程序的语言</string>
<string name="dark_mode">暗模式</string>


</resources>
7 changes: 7 additions & 0 deletions mifosng-android/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -844,6 +844,12 @@
<item>System Default</item>
</string-array>

<string-array name="dark_mode_values" translatable="false">
<item>light</item>
<item>dark</item>
<item>default</item>
</string-array>


<!-- About App -->
<string name="about_app">Field Officer Application is an application
Expand All @@ -867,6 +873,7 @@
<string name="language_type" translatable="false">language_type</string>
<string name="lang_changed">Language Changed</string>
<string name="lang_change_description">Select the language in which you want to view the app</string>
<string name="mode_key">dark_mode</string>

<string-array name="language_option" translatable="false">
<item>Catalan</item>
Expand Down
3 changes: 2 additions & 1 deletion mifosng-android/src/main/res/xml/preferences.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@

<ListPreference
android:title="@string/dark_mode"
android:key="dark_mode"
android:key="@string/mode_key"
android:defaultValue="light"
android:entries="@array/dark_mode_entries"
android:entryValues="@array/dark_mode_values" />
</PreferenceScreen>

0 comments on commit 88dca8d

Please sign in to comment.