diff --git a/app/src/beta/res/values/strings.xml b/app/src/beta/res/values/strings.xml
index e97d05c..29cb590 100644
--- a/app/src/beta/res/values/strings.xml
+++ b/app/src/beta/res/values/strings.xml
@@ -1,4 +1,4 @@
- MyNero Beta
+ Mysu [beta]
\ No newline at end of file
diff --git a/app/src/main/java/net/mynero/wallet/fragment/home/HomeFragment.java b/app/src/main/java/net/mynero/wallet/fragment/home/HomeFragment.java
index 93aeaf7..e978438 100644
--- a/app/src/main/java/net/mynero/wallet/fragment/home/HomeFragment.java
+++ b/app/src/main/java/net/mynero/wallet/fragment/home/HomeFragment.java
@@ -84,7 +84,6 @@ public class HomeFragment extends Fragment implements TransactionInfoAdapter.TxI
RecyclerView txHistoryRecyclerView = view.findViewById(R.id.transaction_history_recyclerview);
TextView unlockedBalanceTextView = view.findViewById(R.id.balance_unlocked_textview);
TextView lockedBalanceTextView = view.findViewById(R.id.balance_locked_textview);
- ConstraintLayout noHistoryLayout = view.findViewById(R.id.no_history_layout);
BalanceService balanceService = BalanceService.getInstance();
HistoryService historyService = HistoryService.getInstance();
@@ -132,10 +131,21 @@ public class HomeFragment extends Fragment implements TransactionInfoAdapter.TxI
if (historyService != null) {
historyService.history.observe(getViewLifecycleOwner(), history -> {
if (history.isEmpty()) {
+ // DISPLAYING EMPTY WALLET HISTORY
+ Wallet wallet = WalletManager.getInstance().getWallet();
+ int textResId, botImgResId = 0;
+ if(wallet != null && wallet.isSynchronized()) {
+ textResId = R.string.no_history_nget_some_monero_in_here;
+ botImgResId = R.drawable.xmrchan_empty; // img for synchronized
+ } else {
+ textResId = R.string.no_history_loading;
+ botImgResId = R.drawable.xmrchan_loading; // img for loading
+ }
+
txHistoryRecyclerView.setVisibility(View.GONE);
- noHistoryLayout.setVisibility(View.VISIBLE);
- displayEmptyHistory(view);
+ displayEmptyHistory(true, view, textResId, botImgResId);
} else {
+ // POPULATED WALLET HISTORY
Collections.sort(history);
if (history.size() > 100) {
adapter.submitList(history.subList(0, 99));
@@ -143,7 +153,7 @@ public class HomeFragment extends Fragment implements TransactionInfoAdapter.TxI
adapter.submitList(history);
}
txHistoryRecyclerView.setVisibility(View.VISIBLE);
- noHistoryLayout.setVisibility(View.GONE);
+ displayEmptyHistory(false, view, R.string.no_history_nget_some_monero_in_here, R.drawable.xmrchan_loading);
}
});
}
@@ -167,16 +177,24 @@ public class HomeFragment extends Fragment implements TransactionInfoAdapter.TxI
}
}
- private void displayEmptyHistory(View view) {
+ private void displayEmptyHistory(boolean display, View view, int textResId, int botImgResId) {
+ TextView mnrjTextView = view.findViewById(R.id.monerochan_empty_tx_textview);
+ TextView textView = view.findViewById(R.id.empty_tx_textview);
+ ImageView botImageView = view.findViewById(R.id.monerochan_imageview);
+ view.findViewById(R.id.no_history_layout).setVisibility(display ? View.VISIBLE : View.GONE);
boolean displayMonerochan = PrefService.getInstance().getBoolean(Constants.PREF_MONEROCHAN, true);
if(displayMonerochan) {
- view.findViewById(R.id.monerochan_imageview).setVisibility(View.VISIBLE);
- view.findViewById(R.id.monerochan_empty_tx_textview).setVisibility(View.VISIBLE);
- view.findViewById(R.id.empty_tx_textview).setVisibility(View.GONE);
+ botImageView.setVisibility(View.VISIBLE);
+ mnrjTextView.setVisibility(View.VISIBLE);
+ textView.setVisibility(View.GONE);
} else {
- view.findViewById(R.id.monerochan_imageview).setVisibility(View.GONE);
- view.findViewById(R.id.monerochan_empty_tx_textview).setVisibility(View.GONE);
- view.findViewById(R.id.empty_tx_textview).setVisibility(View.VISIBLE);
+ botImageView.setVisibility(View.GONE);
+ mnrjTextView.setVisibility(View.GONE);
+ textView.setVisibility(View.VISIBLE);
}
+
+ botImageView.setImageResource(botImgResId);
+ mnrjTextView.setText(textResId);
+ textView.setText(textResId);
}
}
\ No newline at end of file
diff --git a/app/src/main/java/net/mynero/wallet/fragment/onboarding/OnboardingFragment.java b/app/src/main/java/net/mynero/wallet/fragment/onboarding/OnboardingFragment.java
index f15bb88..91c239f 100644
--- a/app/src/main/java/net/mynero/wallet/fragment/onboarding/OnboardingFragment.java
+++ b/app/src/main/java/net/mynero/wallet/fragment/onboarding/OnboardingFragment.java
@@ -14,11 +14,13 @@ import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
+import androidx.activity.OnBackPressedCallback;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.SwitchCompat;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
import androidx.lifecycle.ViewModelProvider;
import net.mynero.wallet.MainActivity;
@@ -131,12 +133,19 @@ public class OnboardingFragment extends Fragment implements NodeSelectionBottomS
}
private void bindListeners() {
+ // Disable onBack click
+ OnBackPressedCallback onBackPressedCallback = new OnBackPressedCallback(true) { @Override public void handleOnBackPressed() { } };
+ FragmentActivity activity = getActivity();
+ if(activity != null)
+ activity.getOnBackPressedDispatcher().addCallback(getViewLifecycleOwner(), onBackPressedCallback);
+
moreOptionsDropdownTextView.setOnClickListener(view12 -> mViewModel.onMoreOptionsClicked());
moreOptionsChevronImageView.setOnClickListener(view12 -> mViewModel.onMoreOptionsClicked());
seedOffsetCheckbox.setOnCheckedChangeListener((compoundButton, b) -> useOffset = b);
createWalletButton.setOnClickListener(view1 -> {
prepareDefaultNode();
+ onBackPressedCallback.setEnabled(false);
((MoneroApplication)getActivity().getApplication()).getExecutor().execute(() -> {
createOrImportWallet(
walletPasswordEditText.getText().toString(),
diff --git a/app/src/main/java/net/mynero/wallet/fragment/receive/ReceiveFragment.java b/app/src/main/java/net/mynero/wallet/fragment/receive/ReceiveFragment.java
index 67a6963..05202d5 100644
--- a/app/src/main/java/net/mynero/wallet/fragment/receive/ReceiveFragment.java
+++ b/app/src/main/java/net/mynero/wallet/fragment/receive/ReceiveFragment.java
@@ -98,9 +98,8 @@ public class ReceiveFragment extends Fragment {
int[] pixels = new int[width * height];
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
- boolean night = NightmodeHelper.getPreferredNightmode() == DayNightMode.NIGHT;
if (bitMatrix.get(j, i)) {
- pixels[i * width + j] = night ? 0xffffffff : 0x00000000;
+ pixels[i * width + j] = 0xffffffff;
} else {
pixels[i * height + j] = getResources().getColor(R.color.oled_colorBackground);
}
diff --git a/app/src/main/java/net/mynero/wallet/fragment/settings/SettingsFragment.java b/app/src/main/java/net/mynero/wallet/fragment/settings/SettingsFragment.java
index d93fba0..3cacbef 100644
--- a/app/src/main/java/net/mynero/wallet/fragment/settings/SettingsFragment.java
+++ b/app/src/main/java/net/mynero/wallet/fragment/settings/SettingsFragment.java
@@ -98,7 +98,6 @@ public class SettingsFragment extends Fragment implements PasswordBottomSheetDia
Button displayUtxosButton = view.findViewById(R.id.display_utxos_button);
selectNodeButton = view.findViewById(R.id.select_node_button);
- SwitchCompat nightModeSwitch = view.findViewById(R.id.day_night_switch);
SwitchCompat streetModeSwitch = view.findViewById(R.id.street_mode_switch);
SwitchCompat monerochanSwitch = view.findViewById(R.id.monerochan_switch);
SwitchCompat donationSwitch = view.findViewById(R.id.donate_per_tx_switch);
@@ -107,15 +106,6 @@ public class SettingsFragment extends Fragment implements PasswordBottomSheetDia
walletProxyAddressEditText = view.findViewById(R.id.wallet_proxy_address_edittext);
walletProxyPortEditText = view.findViewById(R.id.wallet_proxy_port_edittext);
- nightModeSwitch.setChecked(NightmodeHelper.getPreferredNightmode() == DayNightMode.NIGHT);
- nightModeSwitch.setOnCheckedChangeListener((compoundButton, b) -> {
- if (b) {
- NightmodeHelper.setAndSavePreferredNightmode(DayNightMode.NIGHT);
- } else {
- NightmodeHelper.setAndSavePreferredNightmode(DayNightMode.DAY);
- }
- });
-
streetModeSwitch.setChecked(PrefService.getInstance().getBoolean(Constants.PREF_STREET_MODE, false));
streetModeSwitch.setOnCheckedChangeListener((compoundButton, b) -> {
PrefService.getInstance().edit().putBoolean(Constants.PREF_STREET_MODE, b).apply();
diff --git a/app/src/main/java/net/mynero/wallet/util/NightmodeHelper.java b/app/src/main/java/net/mynero/wallet/util/NightmodeHelper.java
index 0eb1afa..61db511 100644
--- a/app/src/main/java/net/mynero/wallet/util/NightmodeHelper.java
+++ b/app/src/main/java/net/mynero/wallet/util/NightmodeHelper.java
@@ -23,17 +23,8 @@ import androidx.appcompat.app.AppCompatDelegate;
import net.mynero.wallet.service.PrefService;
public class NightmodeHelper {
- public static DayNightMode getPreferredNightmode() {
- return DayNightMode.valueOf(PrefService.getInstance().getString(Constants.PREF_NIGHT_MODE, DayNightMode.NIGHT.name()));
- }
-
public static void getAndSetPreferredNightmode() {
- setNightMode(getPreferredNightmode());
- }
-
- public static void setAndSavePreferredNightmode(DayNightMode mode) {
- PrefService.getInstance().edit().putString(Constants.PREF_NIGHT_MODE, mode.name()).apply();
- setNightMode(mode);
+ setNightMode(DayNightMode.NIGHT);
}
@SuppressLint("WrongConstant")
diff --git a/app/src/main/res/drawable/xmrchan_empty.png b/app/src/main/res/drawable/xmrchan_empty.png
new file mode 100644
index 0000000..479c512
Binary files /dev/null and b/app/src/main/res/drawable/xmrchan_empty.png differ
diff --git a/app/src/main/res/drawable/xmrchan_half.png b/app/src/main/res/drawable/xmrchan_half.png
new file mode 100644
index 0000000..e7ae47c
Binary files /dev/null and b/app/src/main/res/drawable/xmrchan_half.png differ
diff --git a/app/src/main/res/drawable/xmrchan_png.png b/app/src/main/res/drawable/xmrchan_loading.png
similarity index 99%
rename from app/src/main/res/drawable/xmrchan_png.png
rename to app/src/main/res/drawable/xmrchan_loading.png
index 6dd759c..4f8de0c 100644
Binary files a/app/src/main/res/drawable/xmrchan_png.png and b/app/src/main/res/drawable/xmrchan_loading.png differ
diff --git a/app/src/main/res/drawable/xmrchan_rifle.png b/app/src/main/res/drawable/xmrchan_rifle.png
new file mode 100644
index 0000000..efb8192
Binary files /dev/null and b/app/src/main/res/drawable/xmrchan_rifle.png differ
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index 10240cb..cb160fc 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -64,12 +64,13 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/balance_locked_textview"
- android:visibility="gone">
+ android:visibility="gone"
+ tools:visibility="visible">
@@ -77,16 +78,18 @@
android:id="@+id/monerochan_empty_tx_textview"
android:layout_width="0dp"
android:layout_height="wrap_content"
+ android:layout_marginTop="24dp"
android:text="@string/no_history_nget_some_monero_in_here"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/monerochan_imageview"
- app:layout_constraintTop_toTopOf="@id/monerochan_imageview"
- app:layout_constraintBottom_toBottomOf="@id/monerochan_imageview"/>
+ app:layout_constraintTop_toTopOf="@id/monerochan_imageview"/>
-
+ android:paddingEnd="24dp"
+ android:paddingStart="24dp"
+ android:paddingTop="24dp">
+
-
-
-
-
+ app:layout_constraintTop_toBottomOf="@id/appearance_settings_textview" />
+ tools:layout="@layout/fragment_onboarding">
+
+
+
]>
- MyNero
-
-
-
-
+ Mysu
Incorrect password!
-
Not a valid address
@@ -43,7 +38,7 @@
Street mode (hide balances)
Show Monerochan
Add occasional donation
- Randomly adds a 0.5%-1.5% MyNero donation to Txns. It\'s random so Txns don\'t have a consistently uncommon fingerprint, and the % is random so MyNero doesn\'t know the exact Txn amount.
+ Randomly adds a 0.5%-1.5% Mysu donation to Txns. It\'s random so Txns don\'t have a consistently uncommon fingerprint, and the % is random so Mysu doesn\'t know the exact Txn amount.
Display wallet keys
Connect to proxy
Connection failed
@@ -86,7 +81,8 @@
127.0.0.1
9050
- No history!\nGet some Monero in here!
+ Loading your wallet…
+ No transactions to display.\nAcquire coins by doing jobs, selling products, mining it, or buying some peer-to-peer.
Node: %1$s
Connected
Disconnected
@@ -124,7 +120,7 @@
Use password as seed offset
#%1$d: %2$s
Previous addresses
- Donate to MyNero
+ Donate to Mysu
Transactions
[ auth ]
To