From 6cbe38f80a6a9a97c65601f6eaab4eb09378132f Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 17 Nov 2018 19:06:33 +0100 Subject: [PATCH 1/3] Language switch implementation - enable to switch between english and system language --- app/src/main/AndroidManifest.xml | 2 +- .../samourai/wallet/SettingsActivity2.java | 15 ++++++ .../com/samourai/wallet/language/App.java | 28 +++++++++++ .../wallet/language/LocaleManager.java | 47 +++++++++++++++++++ .../com/samourai/wallet/util/PrefsUtil.java | 1 + app/src/main/res/values-de/strings.xml | 7 ++- app/src/main/res/values/strings.xml | 6 ++- app/src/main/res/xml/settings_prefs.xml | 7 +++ 8 files changed, 110 insertions(+), 3 deletions(-) create mode 100644 app/src/main/java/com/samourai/wallet/language/App.java create mode 100644 app/src/main/java/com/samourai/wallet/language/LocaleManager.java diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index de2e3cd32..3c8148f1a 100755 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -37,7 +37,7 @@ tools:node="replace" /> OK Abbrechen - Block-Explorer + Voreinstellungen Unsichtbar-Modus Fernzugriff Wallet @@ -593,6 +593,11 @@ Angeforderter Betrag Addresstyp Pfad + + + Systemsprache verwenden + Deaktivieren um Englisch zu verwenden + Diese Änderung wird erst nach einem Neustart der App wirksam. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ca00e6f4e..032fb4d60 100755 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -20,7 +20,7 @@ OK Cancel - Block explorer + Preferences Stealth Remote Wallet @@ -633,4 +633,8 @@ Copy Show Log + Use system language + Uncheck to use english + This change takes effect after a restart of the app. + diff --git a/app/src/main/res/xml/settings_prefs.xml b/app/src/main/res/xml/settings_prefs.xml index 36e07789b..4a61ec461 100755 --- a/app/src/main/res/xml/settings_prefs.xml +++ b/app/src/main/res/xml/settings_prefs.xml @@ -7,4 +7,11 @@ android:key="explorer" /> + + From edc25e92838e8491df60eb5e108d90f4b8f93ea9 Mon Sep 17 00:00:00 2001 From: Unknown Date: Mon, 19 Nov 2018 00:14:59 +0100 Subject: [PATCH 2/3] Language switch for API > 25 - the language switch option now also works for API Levels > 25 - replaced toast message with Alert Dialog - app now restarts itself on language change --- .../com/samourai/wallet/AboutActivity.java | 4 +-- .../samourai/wallet/AddressCalcActivity.java | 4 +-- .../com/samourai/wallet/BalanceActivity.java | 3 +- .../samourai/wallet/BatchSendActivity.java | 3 +- .../samourai/wallet/CreateWalletActivity.java | 4 +-- .../com/samourai/wallet/ExodusActivity.java | 4 +-- .../java/com/samourai/wallet/FeeActivity.java | 4 +-- .../com/samourai/wallet/LandingActivity.java | 4 +-- .../com/samourai/wallet/MainActivity.java | 4 +-- .../com/samourai/wallet/MainActivity2.java | 4 +-- .../com/samourai/wallet/OpenDimeActivity.java | 4 +-- .../samourai/wallet/PayNymCalcActivity.java | 4 +-- .../com/samourai/wallet/PinEntryActivity.java | 4 +-- .../com/samourai/wallet/ReceiveActivity.java | 4 +-- .../wallet/RecoveryWordsActivity.java | 4 +-- .../wallet/RestoreSeedWalletActivity.java | 4 +-- .../com/samourai/wallet/SendActivity.java | 3 +- .../com/samourai/wallet/SettingsActivity.java | 4 +-- .../samourai/wallet/SettingsActivity2.java | 33 ++++++++++++++----- .../com/samourai/wallet/TxAnimUIActivity.java | 4 +-- .../com/samourai/wallet/UTXOActivity.java | 4 +-- .../samourai/wallet/bip47/BIP47Activity.java | 3 +- .../com/samourai/wallet/bip47/BIP47Add.java | 3 +- .../samourai/wallet/bip47/BIP47ShowQR.java | 3 +- .../bip47/paynym/ClaimPayNymActivity.java | 4 +-- .../wallet/language/BaseActivity.java | 11 +++++++ .../language/BaseAppCompatActivity.java | 11 +++++++ .../wallet/language/BaseFragmentActivity.java | 11 +++++++ .../language/BasePreferenceActivity.java | 11 +++++++ .../wallet/ricochet/RicochetActivity.java | 4 +-- .../wallet/spend/SendNewUIActivity.java | 4 +-- .../samourai/wallet/tx/TxDetailsActivity.java | 4 +-- .../wallet/tx/TxPrivacyDetailsActivity.java | 4 +-- .../wallet/whirlpool/ChooseCycleType.java | 4 +-- .../wallet/whirlpool/CycleDetail.java | 4 +-- .../wallet/whirlpool/EmptyWhirlPool.java | 4 +-- .../wallet/whirlpool/NewWhirlpoolCycle.java | 4 +-- .../wallet/whirlpool/WhirlPoolActivity.java | 4 +-- .../wallet/whirlpool/WhirlpoolMain.java | 4 +-- app/src/main/res/values-de/strings.xml | 2 +- app/src/main/res/values/strings.xml | 2 +- 41 files changed, 138 insertions(+), 73 deletions(-) create mode 100644 app/src/main/java/com/samourai/wallet/language/BaseActivity.java create mode 100644 app/src/main/java/com/samourai/wallet/language/BaseAppCompatActivity.java create mode 100644 app/src/main/java/com/samourai/wallet/language/BaseFragmentActivity.java create mode 100644 app/src/main/java/com/samourai/wallet/language/BasePreferenceActivity.java diff --git a/app/src/main/java/com/samourai/wallet/AboutActivity.java b/app/src/main/java/com/samourai/wallet/AboutActivity.java index 8f662eae3..37cd81d39 100755 --- a/app/src/main/java/com/samourai/wallet/AboutActivity.java +++ b/app/src/main/java/com/samourai/wallet/AboutActivity.java @@ -1,11 +1,11 @@ package com.samourai.wallet; -import android.app.Activity; import android.os.Bundle; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.util.AppUtil; -public class AboutActivity extends Activity { +public class AboutActivity extends BaseActivity { @Override public void onCreate(Bundle savedInstanceState) { diff --git a/app/src/main/java/com/samourai/wallet/AddressCalcActivity.java b/app/src/main/java/com/samourai/wallet/AddressCalcActivity.java index 980076de0..aecadbd6d 100644 --- a/app/src/main/java/com/samourai/wallet/AddressCalcActivity.java +++ b/app/src/main/java/com/samourai/wallet/AddressCalcActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet; -import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.pm.ActivityInfo; @@ -27,6 +26,7 @@ import com.samourai.wallet.bip47.rpc.PaymentCode; import com.samourai.wallet.hd.HD_Address; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.ricochet.RicochetMeta; import com.samourai.wallet.segwit.BIP49Util; import com.samourai.wallet.segwit.BIP84Util; @@ -37,7 +37,7 @@ import org.bitcoinj.core.ECKey; -public class AddressCalcActivity extends Activity { +public class AddressCalcActivity extends BaseActivity { private EditText edIndex = null; private Spinner spType = null; diff --git a/app/src/main/java/com/samourai/wallet/BalanceActivity.java b/app/src/main/java/com/samourai/wallet/BalanceActivity.java index 30aa93ffa..256d59963 100644 --- a/app/src/main/java/com/samourai/wallet/BalanceActivity.java +++ b/app/src/main/java/com/samourai/wallet/BalanceActivity.java @@ -76,6 +76,7 @@ import com.samourai.wallet.hd.HD_Address; import com.samourai.wallet.hd.HD_Wallet; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.permissions.PermissionsUtil; import com.samourai.wallet.segwit.BIP49Util; @@ -132,7 +133,7 @@ import info.guardianproject.netcipher.proxy.OrbotHelper; -public class BalanceActivity extends Activity { +public class BalanceActivity extends BaseActivity { private final static int SCAN_COLD_STORAGE = 2011; private final static int SCAN_QR = 2012; diff --git a/app/src/main/java/com/samourai/wallet/BatchSendActivity.java b/app/src/main/java/com/samourai/wallet/BatchSendActivity.java index 675196a03..d1c9ff6dc 100644 --- a/app/src/main/java/com/samourai/wallet/BatchSendActivity.java +++ b/app/src/main/java/com/samourai/wallet/BatchSendActivity.java @@ -49,6 +49,7 @@ import com.samourai.wallet.bip47.rpc.PaymentAddress; import com.samourai.wallet.bip47.rpc.PaymentCode; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.segwit.BIP49Util; import com.samourai.wallet.segwit.SegwitAddress; import com.samourai.wallet.segwit.bech32.Bech32Util; @@ -92,7 +93,7 @@ import org.bitcoinj.crypto.MnemonicException; import org.bouncycastle.util.encoders.Hex; -public class BatchSendActivity extends Activity { +public class BatchSendActivity extends BaseActivity { private final static int SCAN_QR = 2012; private final static int FEE_SELECT = 2013; diff --git a/app/src/main/java/com/samourai/wallet/CreateWalletActivity.java b/app/src/main/java/com/samourai/wallet/CreateWalletActivity.java index 3d6cde5fc..43c0fbd9a 100644 --- a/app/src/main/java/com/samourai/wallet/CreateWalletActivity.java +++ b/app/src/main/java/com/samourai/wallet/CreateWalletActivity.java @@ -7,7 +7,6 @@ import android.os.Bundle; import android.os.Looper; import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.view.View; @@ -23,6 +22,7 @@ import com.samourai.wallet.fragments.PassphraseEntryFragment; import com.samourai.wallet.fragments.PinEntryFragment; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseFragmentActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.util.AddressFactory; import com.samourai.wallet.util.AppUtil; @@ -41,7 +41,7 @@ import static com.samourai.wallet.R.id.dots; -public class CreateWalletActivity extends FragmentActivity implements +public class CreateWalletActivity extends BaseFragmentActivity implements PinEntryFragment.onPinEntryListener, PassphraseEntryFragment.onPassPhraseListener { private ViewPager wallet_create_viewpager; diff --git a/app/src/main/java/com/samourai/wallet/ExodusActivity.java b/app/src/main/java/com/samourai/wallet/ExodusActivity.java index 0391f7d47..8c7c04af2 100644 --- a/app/src/main/java/com/samourai/wallet/ExodusActivity.java +++ b/app/src/main/java/com/samourai/wallet/ExodusActivity.java @@ -1,11 +1,11 @@ package com.samourai.wallet; -import android.app.Activity; import android.os.Bundle; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.util.TimeOutUtil; -public class ExodusActivity extends Activity { +public class ExodusActivity extends BaseActivity { @Override public void onCreate(Bundle savedInstanceState) { diff --git a/app/src/main/java/com/samourai/wallet/FeeActivity.java b/app/src/main/java/com/samourai/wallet/FeeActivity.java index 65706f33e..cd4531ed0 100644 --- a/app/src/main/java/com/samourai/wallet/FeeActivity.java +++ b/app/src/main/java/com/samourai/wallet/FeeActivity.java @@ -1,7 +1,6 @@ package com.samourai.wallet; import android.app.ActionBar; -import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; @@ -17,6 +16,7 @@ import android.widget.Toast; import android.util.Log; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.send.FeeUtil; import com.samourai.wallet.send.SuggestedFee; import com.samourai.wallet.util.AppUtil; @@ -26,7 +26,7 @@ import java.text.NumberFormat; import java.util.Locale; -public class FeeActivity extends Activity { +public class FeeActivity extends BaseActivity { private Button btLowFee = null; private Button btAutoFee = null; diff --git a/app/src/main/java/com/samourai/wallet/LandingActivity.java b/app/src/main/java/com/samourai/wallet/LandingActivity.java index 402354c77..f404a9816 100644 --- a/app/src/main/java/com/samourai/wallet/LandingActivity.java +++ b/app/src/main/java/com/samourai/wallet/LandingActivity.java @@ -1,7 +1,6 @@ package com.samourai.wallet; import android.Manifest; -import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.Context; @@ -35,6 +34,7 @@ import com.samourai.wallet.crypto.DecryptionException; import com.samourai.wallet.hd.HD_Wallet; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.permissions.PermissionsUtil; import com.samourai.wallet.util.AppUtil; @@ -53,7 +53,7 @@ import java.io.IOException; import java.io.InputStreamReader; -public class LandingActivity extends Activity implements PopupMenu.OnMenuItemClickListener { +public class LandingActivity extends BaseActivity implements PopupMenu.OnMenuItemClickListener { private ProgressDialog progressDialog = null; diff --git a/app/src/main/java/com/samourai/wallet/MainActivity.java b/app/src/main/java/com/samourai/wallet/MainActivity.java index 4c5104902..946302f89 100755 --- a/app/src/main/java/com/samourai/wallet/MainActivity.java +++ b/app/src/main/java/com/samourai/wallet/MainActivity.java @@ -1,16 +1,16 @@ package com.samourai.wallet; -import android.app.Activity; import android.content.Intent; import android.os.Bundle; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.util.PrefsUtil; import org.bitcoinj.params.MainNetParams; import org.bitcoinj.params.TestNet3Params; //import android.util.Log; -public class MainActivity extends Activity { +public class MainActivity extends BaseActivity { private static boolean genesis = false; diff --git a/app/src/main/java/com/samourai/wallet/MainActivity2.java b/app/src/main/java/com/samourai/wallet/MainActivity2.java index 53f26d8d0..3e58925ec 100755 --- a/app/src/main/java/com/samourai/wallet/MainActivity2.java +++ b/app/src/main/java/com/samourai/wallet/MainActivity2.java @@ -1,7 +1,6 @@ package com.samourai.wallet; import android.app.ActionBar; -import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.BroadcastReceiver; @@ -21,6 +20,7 @@ import com.samourai.wallet.access.AccessFactory; import com.samourai.wallet.api.APIFactory; import com.samourai.wallet.crypto.AESUtil; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.prng.PRNGFixes; import com.samourai.wallet.service.BackgroundManager; @@ -36,7 +36,7 @@ import org.bitcoinj.params.MainNetParams; import org.bitcoinj.params.TestNet3Params; -public class MainActivity2 extends Activity { +public class MainActivity2 extends BaseActivity { private ProgressDialog progress = null; diff --git a/app/src/main/java/com/samourai/wallet/OpenDimeActivity.java b/app/src/main/java/com/samourai/wallet/OpenDimeActivity.java index 4344ef36a..b318f03a0 100644 --- a/app/src/main/java/com/samourai/wallet/OpenDimeActivity.java +++ b/app/src/main/java/com/samourai/wallet/OpenDimeActivity.java @@ -13,7 +13,6 @@ import java.util.List; import java.util.NoSuchElementException; -import android.app.Activity; import android.app.AlertDialog; import android.app.PendingIntent; import android.content.BroadcastReceiver; @@ -59,6 +58,7 @@ import com.google.zxing.client.android.encode.QRCodeEncoder; import com.samourai.wallet.access.AccessFactory; import com.samourai.wallet.api.APIFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.send.SweepUtil; import com.samourai.wallet.util.AppUtil; import com.samourai.wallet.util.BlockExplorerUtil; @@ -72,7 +72,7 @@ import org.json.JSONException; import org.json.JSONObject; -public class OpenDimeActivity extends Activity { +public class OpenDimeActivity extends BaseActivity { static { FileSystemFactory.registerFileSystem(new JavaFsFileSystemCreator()); diff --git a/app/src/main/java/com/samourai/wallet/PayNymCalcActivity.java b/app/src/main/java/com/samourai/wallet/PayNymCalcActivity.java index 44276cd92..24672fb1b 100644 --- a/app/src/main/java/com/samourai/wallet/PayNymCalcActivity.java +++ b/app/src/main/java/com/samourai/wallet/PayNymCalcActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet; -import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.pm.ActivityInfo; @@ -24,6 +23,7 @@ import com.samourai.wallet.bip47.BIP47Util; import com.samourai.wallet.bip47.rpc.PaymentAddress; import com.samourai.wallet.bip47.rpc.PaymentCode; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.segwit.SegwitAddress; import com.samourai.wallet.util.AppUtil; @@ -32,7 +32,7 @@ import org.bitcoinj.core.ECKey; -public class PayNymCalcActivity extends Activity { +public class PayNymCalcActivity extends BaseActivity { private EditText edPayNym = null; private EditText edIndex = null; diff --git a/app/src/main/java/com/samourai/wallet/PinEntryActivity.java b/app/src/main/java/com/samourai/wallet/PinEntryActivity.java index c042cf56d..c815a2f2c 100755 --- a/app/src/main/java/com/samourai/wallet/PinEntryActivity.java +++ b/app/src/main/java/com/samourai/wallet/PinEntryActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet; -import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.DialogInterface; @@ -26,6 +25,7 @@ import com.samourai.wallet.crypto.DecryptionException; import com.samourai.wallet.hd.HD_Wallet; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.util.AddressFactory; import com.samourai.wallet.util.AppUtil; @@ -46,7 +46,7 @@ import java.io.IOException; import java.io.InputStreamReader; -public class PinEntryActivity extends Activity { +public class PinEntryActivity extends BaseActivity { private Button ta = null; private Button tb = null; diff --git a/app/src/main/java/com/samourai/wallet/ReceiveActivity.java b/app/src/main/java/com/samourai/wallet/ReceiveActivity.java index b4bc40dbe..d1ef75cf0 100644 --- a/app/src/main/java/com/samourai/wallet/ReceiveActivity.java +++ b/app/src/main/java/com/samourai/wallet/ReceiveActivity.java @@ -18,7 +18,6 @@ import android.support.transition.TransitionManager; import android.support.v4.content.FileProvider; import android.support.v4.content.LocalBroadcastManager; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.text.Editable; import android.text.TextWatcher; @@ -44,6 +43,7 @@ import com.google.zxing.client.android.encode.QRCodeEncoder; import com.samourai.wallet.api.APIFactory; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.segwit.BIP49Util; import com.samourai.wallet.segwit.BIP84Util; import com.samourai.wallet.util.AddressFactory; @@ -70,7 +70,7 @@ import java.util.Locale; import java.util.Objects; -public class ReceiveActivity extends AppCompatActivity { +public class ReceiveActivity extends BaseAppCompatActivity { private static int imgWidth = 0; diff --git a/app/src/main/java/com/samourai/wallet/RecoveryWordsActivity.java b/app/src/main/java/com/samourai/wallet/RecoveryWordsActivity.java index 1a05d7698..0f8e1ad6c 100644 --- a/app/src/main/java/com/samourai/wallet/RecoveryWordsActivity.java +++ b/app/src/main/java/com/samourai/wallet/RecoveryWordsActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet; -import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Bundle; @@ -16,10 +15,11 @@ import android.widget.TextView; import com.samourai.wallet.access.AccessFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.util.AppUtil; import com.samourai.wallet.util.TimeOutUtil; -public class RecoveryWordsActivity extends Activity { +public class RecoveryWordsActivity extends BaseActivity { private GridView recoveryWordsGrid; private Button returnToWallet; private CheckBox desclaimerCheckbox; diff --git a/app/src/main/java/com/samourai/wallet/RestoreSeedWalletActivity.java b/app/src/main/java/com/samourai/wallet/RestoreSeedWalletActivity.java index 33ee92d2b..d813f42d1 100644 --- a/app/src/main/java/com/samourai/wallet/RestoreSeedWalletActivity.java +++ b/app/src/main/java/com/samourai/wallet/RestoreSeedWalletActivity.java @@ -6,7 +6,6 @@ import android.os.Bundle; import android.os.Looper; import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.view.View; @@ -22,6 +21,7 @@ import com.samourai.wallet.fragments.PinEntryFragment; import com.samourai.wallet.hd.HD_Wallet; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseFragmentActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.util.AddressFactory; import com.samourai.wallet.util.AppUtil; @@ -46,7 +46,7 @@ import static com.samourai.wallet.R.id.dots; -public class RestoreSeedWalletActivity extends FragmentActivity implements +public class RestoreSeedWalletActivity extends BaseFragmentActivity implements PinEntryFragment.onPinEntryListener, ImportWalletFragment.onRestoreDataSets { private ViewPager wallet_create_viewpager; diff --git a/app/src/main/java/com/samourai/wallet/SendActivity.java b/app/src/main/java/com/samourai/wallet/SendActivity.java index 6419b6887..8409454fb 100644 --- a/app/src/main/java/com/samourai/wallet/SendActivity.java +++ b/app/src/main/java/com/samourai/wallet/SendActivity.java @@ -57,6 +57,7 @@ import com.samourai.wallet.bip47.rpc.PaymentAddress; import com.samourai.wallet.bip47.rpc.PaymentCode; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.ricochet.RicochetActivity; import com.samourai.wallet.ricochet.RicochetMeta; @@ -99,7 +100,7 @@ import org.json.JSONException; import org.json.JSONObject; -public class SendActivity extends Activity { +public class SendActivity extends BaseActivity { private final static int SCAN_QR = 2012; private final static int RICOCHET = 2013; diff --git a/app/src/main/java/com/samourai/wallet/SettingsActivity.java b/app/src/main/java/com/samourai/wallet/SettingsActivity.java index ddbd61347..60b01da55 100755 --- a/app/src/main/java/com/samourai/wallet/SettingsActivity.java +++ b/app/src/main/java/com/samourai/wallet/SettingsActivity.java @@ -12,15 +12,15 @@ import android.os.Bundle; import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; -import android.preference.PreferenceActivity; import android.util.Log; import android.view.MenuItem; //import android.util.Log; +import com.samourai.wallet.language.BasePreferenceActivity; import com.samourai.wallet.permissions.PermissionsUtil; import com.samourai.wallet.util.AppUtil; -public class SettingsActivity extends PreferenceActivity { +public class SettingsActivity extends BasePreferenceActivity { @Override protected void onCreate(Bundle savedInstanceState) { diff --git a/app/src/main/java/com/samourai/wallet/SettingsActivity2.java b/app/src/main/java/com/samourai/wallet/SettingsActivity2.java index a7253149a..42ec59c1f 100755 --- a/app/src/main/java/com/samourai/wallet/SettingsActivity2.java +++ b/app/src/main/java/com/samourai/wallet/SettingsActivity2.java @@ -18,7 +18,6 @@ import android.preference.EditTextPreference; import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; -import android.preference.PreferenceActivity; import android.text.Editable; import android.text.InputType; import android.text.TextWatcher; @@ -53,6 +52,7 @@ import com.samourai.wallet.crypto.AESUtil; import com.samourai.wallet.crypto.DecryptionException; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BasePreferenceActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.ricochet.RicochetMeta; import com.samourai.wallet.segwit.BIP49Util; @@ -82,7 +82,7 @@ import info.guardianproject.netcipher.proxy.OrbotHelper; -public class SettingsActivity2 extends PreferenceActivity { +public class SettingsActivity2 extends BasePreferenceActivity { private ProgressDialog progress = null; private boolean steathActivating = false; @@ -113,13 +113,28 @@ public boolean onPreferenceClick(Preference preference) { cbLanguage.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { public boolean onPreferenceChange(Preference preference, Object newValue) { - if (cbLanguage.isChecked()) { - PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, false); - } - else { - PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, true); - } - Toast.makeText(getApplicationContext(), R.string.options_restartRequired, Toast.LENGTH_LONG).show(); + new AlertDialog.Builder(SettingsActivity2.this) + .setTitle(R.string.app_name) + .setMessage(R.string.options_sureToChangeLanguage) + .setCancelable(false) + .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int whichButton) { + + + if (cbLanguage.isChecked()) { + PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, true); + } else { + PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, false); + } + AppUtil.getInstance(SettingsActivity2.this).restartApp(); + + } + }).setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int whichButton) { + ; + } + }).show(); + return true; } }); diff --git a/app/src/main/java/com/samourai/wallet/TxAnimUIActivity.java b/app/src/main/java/com/samourai/wallet/TxAnimUIActivity.java index 775a5df24..7981052f4 100644 --- a/app/src/main/java/com/samourai/wallet/TxAnimUIActivity.java +++ b/app/src/main/java/com/samourai/wallet/TxAnimUIActivity.java @@ -12,7 +12,6 @@ import android.os.Looper; import android.support.v4.content.FileProvider; import android.support.v4.content.LocalBroadcastManager; -import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.Display; @@ -31,6 +30,7 @@ import com.samourai.wallet.api.APIFactory; import com.samourai.wallet.bip47.BIP47Meta; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.segwit.BIP49Util; import com.samourai.wallet.segwit.BIP84Util; import com.samourai.wallet.segwit.bech32.Bech32Util; @@ -64,7 +64,7 @@ import java.text.SimpleDateFormat; import java.util.List; -public class TxAnimUIActivity extends AppCompatActivity { +public class TxAnimUIActivity extends BaseAppCompatActivity { private TransactionProgressView progressView = null; diff --git a/app/src/main/java/com/samourai/wallet/UTXOActivity.java b/app/src/main/java/com/samourai/wallet/UTXOActivity.java index 9d836804b..ca50e485e 100644 --- a/app/src/main/java/com/samourai/wallet/UTXOActivity.java +++ b/app/src/main/java/com/samourai/wallet/UTXOActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet; -import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; @@ -33,6 +32,7 @@ import com.google.zxing.client.android.encode.QRCodeEncoder; import com.samourai.wallet.api.APIFactory; import com.samourai.wallet.bip47.BIP47Meta; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.segwit.SegwitAddress; import com.samourai.wallet.send.BlockedUTXO; import com.samourai.wallet.send.MyTransactionOutPoint; @@ -54,7 +54,7 @@ import java.util.ArrayList; import java.util.List; -public class UTXOActivity extends Activity { +public class UTXOActivity extends BaseActivity { private class DisplayData { private String addr = null; diff --git a/app/src/main/java/com/samourai/wallet/bip47/BIP47Activity.java b/app/src/main/java/com/samourai/wallet/bip47/BIP47Activity.java index 017a31835..2e6b6b137 100755 --- a/app/src/main/java/com/samourai/wallet/bip47/BIP47Activity.java +++ b/app/src/main/java/com/samourai/wallet/bip47/BIP47Activity.java @@ -38,6 +38,7 @@ import net.i2p.android.ext.floatingactionbutton.FloatingActionsMenu; import net.i2p.android.ext.floatingactionbutton.FloatingActionButton; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.segwit.bech32.Bech32Util; import com.yanzhenjie.zbar.Symbol; @@ -107,7 +108,7 @@ import com.squareup.picasso.Picasso; import com.squareup.picasso.Target; -public class BIP47Activity extends Activity { +public class BIP47Activity extends BaseActivity { private static final int EDIT_PCODE = 2000; private static final int RECOMMENDED_PCODE = 2001; diff --git a/app/src/main/java/com/samourai/wallet/bip47/BIP47Add.java b/app/src/main/java/com/samourai/wallet/bip47/BIP47Add.java index 59afbd7be..25d53c2ae 100755 --- a/app/src/main/java/com/samourai/wallet/bip47/BIP47Add.java +++ b/app/src/main/java/com/samourai/wallet/bip47/BIP47Add.java @@ -20,6 +20,7 @@ import com.samourai.wallet.access.AccessFactory; import com.samourai.wallet.crypto.DecryptionException; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.util.CharSequenceX; import com.samourai.wallet.util.FormatsUtil; @@ -34,7 +35,7 @@ import java.io.IOException; -public class BIP47Add extends Activity { +public class BIP47Add extends BaseActivity { private EditText edLabel = null; private EditText edPCode = null; diff --git a/app/src/main/java/com/samourai/wallet/bip47/BIP47ShowQR.java b/app/src/main/java/com/samourai/wallet/bip47/BIP47ShowQR.java index 5030b45e1..8ce862920 100755 --- a/app/src/main/java/com/samourai/wallet/bip47/BIP47ShowQR.java +++ b/app/src/main/java/com/samourai/wallet/bip47/BIP47ShowQR.java @@ -33,6 +33,7 @@ import com.google.zxing.client.android.encode.QRCodeEncoder; import com.samourai.wallet.BuildConfig; import com.samourai.wallet.bip47.paynym.ClaimPayNymActivity; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.util.AppUtil; import com.samourai.wallet.R; import com.squareup.picasso.Picasso; @@ -46,7 +47,7 @@ import java.io.FileOutputStream; import java.io.IOException; -public class BIP47ShowQR extends Activity { +public class BIP47ShowQR extends BaseActivity { private static Display display = null; private static int imgWidth = 0; diff --git a/app/src/main/java/com/samourai/wallet/bip47/paynym/ClaimPayNymActivity.java b/app/src/main/java/com/samourai/wallet/bip47/paynym/ClaimPayNymActivity.java index b28d737ea..5a5a2b47b 100644 --- a/app/src/main/java/com/samourai/wallet/bip47/paynym/ClaimPayNymActivity.java +++ b/app/src/main/java/com/samourai/wallet/bip47/paynym/ClaimPayNymActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet.bip47.paynym; -import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.DialogInterface; @@ -12,6 +11,7 @@ import android.widget.Button; import com.samourai.wallet.bip47.BIP47Util; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.util.AppUtil; import com.samourai.wallet.R; @@ -21,7 +21,7 @@ import org.json.JSONException; import org.json.JSONObject; -public class ClaimPayNymActivity extends Activity { +public class ClaimPayNymActivity extends BaseActivity { private Button btClaim = null; private Button btRefuse = null; diff --git a/app/src/main/java/com/samourai/wallet/language/BaseActivity.java b/app/src/main/java/com/samourai/wallet/language/BaseActivity.java new file mode 100644 index 000000000..edc259166 --- /dev/null +++ b/app/src/main/java/com/samourai/wallet/language/BaseActivity.java @@ -0,0 +1,11 @@ +package com.samourai.wallet.language; + +import android.app.Activity; +import android.content.Context; + +public abstract class BaseActivity extends Activity { + @Override + protected void attachBaseContext(Context base) { + super.attachBaseContext(LocaleManager.setLocale(base)); + } +} diff --git a/app/src/main/java/com/samourai/wallet/language/BaseAppCompatActivity.java b/app/src/main/java/com/samourai/wallet/language/BaseAppCompatActivity.java new file mode 100644 index 000000000..bf3b81161 --- /dev/null +++ b/app/src/main/java/com/samourai/wallet/language/BaseAppCompatActivity.java @@ -0,0 +1,11 @@ +package com.samourai.wallet.language; + +import android.content.Context; +import android.support.v7.app.AppCompatActivity; + +public abstract class BaseAppCompatActivity extends AppCompatActivity { + @Override + protected void attachBaseContext(Context base) { + super.attachBaseContext(LocaleManager.setLocale(base)); + } +} diff --git a/app/src/main/java/com/samourai/wallet/language/BaseFragmentActivity.java b/app/src/main/java/com/samourai/wallet/language/BaseFragmentActivity.java new file mode 100644 index 000000000..3a5f54674 --- /dev/null +++ b/app/src/main/java/com/samourai/wallet/language/BaseFragmentActivity.java @@ -0,0 +1,11 @@ +package com.samourai.wallet.language; + +import android.content.Context; +import android.support.v4.app.FragmentActivity; + +public abstract class BaseFragmentActivity extends FragmentActivity { + @Override + protected void attachBaseContext(Context base) { + super.attachBaseContext(LocaleManager.setLocale(base)); + } +} diff --git a/app/src/main/java/com/samourai/wallet/language/BasePreferenceActivity.java b/app/src/main/java/com/samourai/wallet/language/BasePreferenceActivity.java new file mode 100644 index 000000000..36d8018e1 --- /dev/null +++ b/app/src/main/java/com/samourai/wallet/language/BasePreferenceActivity.java @@ -0,0 +1,11 @@ +package com.samourai.wallet.language; + +import android.content.Context; +import android.preference.PreferenceActivity; + +public abstract class BasePreferenceActivity extends PreferenceActivity { + @Override + protected void attachBaseContext(Context base) { + super.attachBaseContext(LocaleManager.setLocale(base)); + } +} diff --git a/app/src/main/java/com/samourai/wallet/ricochet/RicochetActivity.java b/app/src/main/java/com/samourai/wallet/ricochet/RicochetActivity.java index 25d53e404..a3208e42b 100644 --- a/app/src/main/java/com/samourai/wallet/ricochet/RicochetActivity.java +++ b/app/src/main/java/com/samourai/wallet/ricochet/RicochetActivity.java @@ -1,6 +1,5 @@ package com.samourai.wallet.ricochet; -import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.DialogInterface; @@ -25,6 +24,7 @@ import com.samourai.wallet.bip47.rpc.PaymentAddress; import com.samourai.wallet.bip47.rpc.PaymentCode; import com.samourai.wallet.hd.HD_WalletFactory; +import com.samourai.wallet.language.BaseActivity; import com.samourai.wallet.payload.PayloadUtil; import com.samourai.wallet.util.CharSequenceX; import com.samourai.wallet.send.PushTx; @@ -37,7 +37,7 @@ import java.io.IOException; import java.util.Iterator; -public class RicochetActivity extends Activity { +public class RicochetActivity extends BaseActivity { private String strPCode = null; private boolean samouraiFeeViaBIP47 = false; diff --git a/app/src/main/java/com/samourai/wallet/spend/SendNewUIActivity.java b/app/src/main/java/com/samourai/wallet/spend/SendNewUIActivity.java index efb30bb70..5f847557c 100644 --- a/app/src/main/java/com/samourai/wallet/spend/SendNewUIActivity.java +++ b/app/src/main/java/com/samourai/wallet/spend/SendNewUIActivity.java @@ -2,7 +2,6 @@ import android.os.Bundle; import android.os.Handler; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.Menu; import android.view.View; @@ -13,13 +12,14 @@ import android.widget.ViewSwitcher; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.spend.widgets.EntropyBar; import com.samourai.wallet.spend.widgets.SendTransactionDetailsView; import java.util.Objects; -public class SendNewUIActivity extends AppCompatActivity { +public class SendNewUIActivity extends BaseAppCompatActivity { private SendTransactionDetailsView sendTransactionDetailsView; private ViewSwitcher amountViewSwitcher; diff --git a/app/src/main/java/com/samourai/wallet/tx/TxDetailsActivity.java b/app/src/main/java/com/samourai/wallet/tx/TxDetailsActivity.java index 52ff4ff95..b414f1773 100644 --- a/app/src/main/java/com/samourai/wallet/tx/TxDetailsActivity.java +++ b/app/src/main/java/com/samourai/wallet/tx/TxDetailsActivity.java @@ -2,7 +2,6 @@ import android.os.Bundle; import android.support.v4.content.ContextCompat; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.transition.AutoTransition; import android.transition.TransitionManager; @@ -13,12 +12,13 @@ import android.widget.TextView; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.widgets.CircleImageView; import java.util.Objects; -public class TxDetailsActivity extends AppCompatActivity { +public class TxDetailsActivity extends BaseAppCompatActivity { private CircleImageView payNymAvatar; private TextView payNymUsername, btcUnit, btcValue; diff --git a/app/src/main/java/com/samourai/wallet/tx/TxPrivacyDetailsActivity.java b/app/src/main/java/com/samourai/wallet/tx/TxPrivacyDetailsActivity.java index d12b10522..b790e391b 100644 --- a/app/src/main/java/com/samourai/wallet/tx/TxPrivacyDetailsActivity.java +++ b/app/src/main/java/com/samourai/wallet/tx/TxPrivacyDetailsActivity.java @@ -1,7 +1,6 @@ package com.samourai.wallet.tx; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.transition.TransitionManager; import android.view.Menu; @@ -10,11 +9,12 @@ import android.widget.Button; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import java.util.Objects; -public class TxPrivacyDetailsActivity extends AppCompatActivity { +public class TxPrivacyDetailsActivity extends BaseAppCompatActivity { private Button hideLogButton, copyBtn; private ViewGroup logContainer; diff --git a/app/src/main/java/com/samourai/wallet/whirlpool/ChooseCycleType.java b/app/src/main/java/com/samourai/wallet/whirlpool/ChooseCycleType.java index 9f8892573..82f74d84c 100644 --- a/app/src/main/java/com/samourai/wallet/whirlpool/ChooseCycleType.java +++ b/app/src/main/java/com/samourai/wallet/whirlpool/ChooseCycleType.java @@ -2,14 +2,14 @@ import android.content.Intent; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.View; import android.view.ViewGroup; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; -public class ChooseCycleType extends AppCompatActivity { +public class ChooseCycleType extends BaseAppCompatActivity { private ViewGroup superChargeButton, standardButton; diff --git a/app/src/main/java/com/samourai/wallet/whirlpool/CycleDetail.java b/app/src/main/java/com/samourai/wallet/whirlpool/CycleDetail.java index ac8d20489..b95f50fea 100644 --- a/app/src/main/java/com/samourai/wallet/whirlpool/CycleDetail.java +++ b/app/src/main/java/com/samourai/wallet/whirlpool/CycleDetail.java @@ -3,17 +3,17 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.Menu; import android.view.View; import android.widget.TextView; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.whirlpool.views.CycleDetailHeader; -public class CycleDetail extends AppCompatActivity { +public class CycleDetail extends BaseAppCompatActivity { private CycleDetailHeader cycleDetailHeader; private Boolean showMenuItems = false; diff --git a/app/src/main/java/com/samourai/wallet/whirlpool/EmptyWhirlPool.java b/app/src/main/java/com/samourai/wallet/whirlpool/EmptyWhirlPool.java index afceca5a7..419925a07 100644 --- a/app/src/main/java/com/samourai/wallet/whirlpool/EmptyWhirlPool.java +++ b/app/src/main/java/com/samourai/wallet/whirlpool/EmptyWhirlPool.java @@ -9,7 +9,6 @@ import android.support.v4.content.ContextCompat; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.LayoutInflater; import android.view.View; @@ -19,8 +18,9 @@ import android.widget.TextView; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; -public class EmptyWhirlPool extends AppCompatActivity { +public class EmptyWhirlPool extends BaseAppCompatActivity { private ImageView[] indicators; private ViewPager viewPager; diff --git a/app/src/main/java/com/samourai/wallet/whirlpool/NewWhirlpoolCycle.java b/app/src/main/java/com/samourai/wallet/whirlpool/NewWhirlpoolCycle.java index 8b29045a2..09cd25625 100644 --- a/app/src/main/java/com/samourai/wallet/whirlpool/NewWhirlpoolCycle.java +++ b/app/src/main/java/com/samourai/wallet/whirlpool/NewWhirlpoolCycle.java @@ -10,7 +10,6 @@ import android.support.annotation.FloatRange; import android.support.annotation.NonNull; import android.support.v4.content.ContextCompat; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.DefaultItemAnimator; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; @@ -21,12 +20,13 @@ import android.widget.Toast; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.whirlpool.adapters.CoinsAdapter; import com.samourai.wallet.whirlpool.models.Coin; import java.util.ArrayList; -public class NewWhirlpoolCycle extends AppCompatActivity { +public class NewWhirlpoolCycle extends BaseAppCompatActivity { private RecyclerView recyclerView; private CoinsAdapter coinsAdapter; diff --git a/app/src/main/java/com/samourai/wallet/whirlpool/WhirlPoolActivity.java b/app/src/main/java/com/samourai/wallet/whirlpool/WhirlPoolActivity.java index 05b923664..3f160be1c 100644 --- a/app/src/main/java/com/samourai/wallet/whirlpool/WhirlPoolActivity.java +++ b/app/src/main/java/com/samourai/wallet/whirlpool/WhirlPoolActivity.java @@ -1,7 +1,6 @@ package com.samourai.wallet.whirlpool; import android.support.transition.TransitionManager; -import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.support.v7.widget.Toolbar; import android.transition.Transition; @@ -9,10 +8,11 @@ import android.view.ViewGroup; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import java.util.Objects; -public class WhirlPoolActivity extends AppCompatActivity { +public class WhirlPoolActivity extends BaseAppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { diff --git a/app/src/main/java/com/samourai/wallet/whirlpool/WhirlpoolMain.java b/app/src/main/java/com/samourai/wallet/whirlpool/WhirlpoolMain.java index 303d38725..19dc7689e 100644 --- a/app/src/main/java/com/samourai/wallet/whirlpool/WhirlpoolMain.java +++ b/app/src/main/java/com/samourai/wallet/whirlpool/WhirlpoolMain.java @@ -2,7 +2,6 @@ import android.content.Intent; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.DividerItemDecoration; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; @@ -11,13 +10,14 @@ import android.view.View; import com.samourai.wallet.R; +import com.samourai.wallet.language.BaseAppCompatActivity; import com.samourai.wallet.whirlpool.adapters.CyclesAdapter; import com.samourai.wallet.whirlpool.models.Coin; import com.samourai.wallet.whirlpool.models.Cycle; import java.util.ArrayList; -public class WhirlpoolMain extends AppCompatActivity { +public class WhirlpoolMain extends BaseAppCompatActivity { private RecyclerView CycleRecyclerView; private CyclesAdapter CyclesAdapter; diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 6edaac6ef..021eae3ec 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -597,7 +597,7 @@ Systemsprache verwenden Deaktivieren um Englisch zu verwenden - Diese Änderung wird erst nach einem Neustart der App wirksam. + Die App wird neugestartet, um diese Änderung vorzunehmen. Fortfahren? diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 032fb4d60..06267a180 100755 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -635,6 +635,6 @@ Use system language Uncheck to use english - This change takes effect after a restart of the app. + The app will be restarted to make this change. Do you want to continue? From 4e3ca408274b65ffdc59fc4ccdbd2e488a38361b Mon Sep 17 00:00:00 2001 From: Unknown Date: Mon, 19 Nov 2018 08:31:14 +0100 Subject: [PATCH 3/3] fix checkbox from changing state after cancelling --- .../main/java/com/samourai/wallet/SettingsActivity2.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/samourai/wallet/SettingsActivity2.java b/app/src/main/java/com/samourai/wallet/SettingsActivity2.java index 42ec59c1f..f2098a6a5 100755 --- a/app/src/main/java/com/samourai/wallet/SettingsActivity2.java +++ b/app/src/main/java/com/samourai/wallet/SettingsActivity2.java @@ -122,9 +122,11 @@ public void onClick(DialogInterface dialog, int whichButton) { if (cbLanguage.isChecked()) { - PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, true); - } else { PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, false); + cbLanguage.setChecked(false); + } else { + PrefsUtil.getInstance(SettingsActivity2.this).setValue(PrefsUtil.USE_SYSTEM_LANGUAGE, true); + cbLanguage.setChecked(true); } AppUtil.getInstance(SettingsActivity2.this).restartApp(); @@ -135,7 +137,7 @@ public void onClick(DialogInterface dialog, int whichButton) { } }).show(); - return true; + return false; } });