mirror of
https://github.com/m2049r/xmrwallet
synced 2025-09-14 08:40:49 +02:00
Compare commits
15 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
5d489a634b | ||
![]() |
59b6f484fd | ||
![]() |
ecaa49d67d | ||
![]() |
d2dc53599e | ||
![]() |
4d8b26f97f | ||
![]() |
581c76e7be | ||
![]() |
6f66862870 | ||
![]() |
dd92f7bb36 | ||
![]() |
46808d306b | ||
![]() |
20503d2cbd | ||
![]() |
604691ca7e | ||
![]() |
1b626ba2b0 | ||
![]() |
0ed7bdfcee | ||
![]() |
524c3dd79f | ||
![]() |
197dffeae1 |
@@ -3,13 +3,11 @@ jobs:
|
||||
build:
|
||||
working_directory: ~/code
|
||||
docker:
|
||||
- image: circleci/android:api-28-ndk
|
||||
- image: cimg/android:2022.03-ndk
|
||||
environment:
|
||||
JVM_OPTS: -Xmx3200m
|
||||
steps:
|
||||
- checkout
|
||||
- run: yes | sdkmanager --licenses || exit 0
|
||||
- run: yes | sdkmanager --update || exit 0
|
||||
- restore_cache:
|
||||
key: jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}
|
||||
- run:
|
||||
|
@@ -8,8 +8,8 @@ android {
|
||||
applicationId "com.m2049r.xmrwallet"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 31
|
||||
versionCode 1303
|
||||
versionName "2.3.3 'Baldaŭ'"
|
||||
versionCode 1402
|
||||
versionName "2.4.2 'Baldaŭ'"
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
@@ -111,6 +111,7 @@ android {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
namespace 'com.m2049r.xmrwallet'
|
||||
}
|
||||
|
||||
static def getId(name) {
|
||||
@@ -129,7 +130,7 @@ dependencies {
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
|
||||
implementation 'androidx.preference:preference:1.2.0'
|
||||
|
||||
implementation 'com.google.android.material:material:1.5.0'
|
||||
implementation 'com.google.android.material:material:1.6.0'
|
||||
|
||||
implementation 'me.dm7.barcodescanner:zxing:1.9.8'
|
||||
implementation "com.squareup.okhttp3:okhttp:4.9.3"
|
||||
|
@@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.m2049r.xmrwallet">
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||
|
@@ -78,7 +78,7 @@ public class BTChipTransportAndroidHID implements BTChipTransport {
|
||||
}
|
||||
|
||||
private static final int VID = 0x2C97;
|
||||
private static final int[] PID_HIDS = {0x0001, 0x0004};
|
||||
private static final int[] PID_HIDS = {0x0001, 0x0004, 0x0005};
|
||||
|
||||
private UsbDeviceConnection connection;
|
||||
private UsbInterface dongleInterface;
|
||||
|
@@ -415,7 +415,14 @@ public class NodeFragment extends Fragment
|
||||
}
|
||||
etNodeHost.setError(null);
|
||||
nodeInfo.setRpcPort(port);
|
||||
nodeInfo.setName(etNodeName.getEditText().getText().toString().trim());
|
||||
// setName() may trigger reverse DNS
|
||||
Helper.runWithNetwork(new Helper.Action() {
|
||||
@Override
|
||||
public boolean run() {
|
||||
nodeInfo.setName(etNodeName.getEditText().getText().toString().trim());
|
||||
return true;
|
||||
}
|
||||
});
|
||||
nodeInfo.setUsername(etNodeUser.getEditText().getText().toString().trim());
|
||||
nodeInfo.setPassword(etNodePass.getEditText().getText().toString()); // no trim for pw
|
||||
return true;
|
||||
|
@@ -30,7 +30,6 @@ import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.transition.MaterialElevationScale;
|
||||
import com.m2049r.xmrwallet.data.Subaddress;
|
||||
import com.m2049r.xmrwallet.layout.SubaddressInfoAdapter;
|
||||
import com.m2049r.xmrwallet.ledger.LedgerProgressDialog;
|
||||
@@ -117,14 +116,6 @@ public class SubaddressFragment extends Fragment implements SubaddressInfoAdapte
|
||||
managerMode = ((b != null) && (MODE_MANAGER.equals(b.getString(KEY_MODE))));
|
||||
|
||||
View view = inflater.inflate(R.layout.fragment_subaddress, container, false);
|
||||
|
||||
final MaterialElevationScale exitTransition = new MaterialElevationScale(false);
|
||||
exitTransition.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
setExitTransition(exitTransition);
|
||||
final MaterialElevationScale reenterTransition = new MaterialElevationScale(true);
|
||||
reenterTransition.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
setReenterTransition(reenterTransition);
|
||||
|
||||
view.findViewById(R.id.fab).setOnClickListener(this);
|
||||
|
||||
if (managerMode) {
|
||||
@@ -154,11 +145,6 @@ public class SubaddressFragment extends Fragment implements SubaddressInfoAdapte
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
postponeEnterTransition();
|
||||
view.getViewTreeObserver().addOnPreDrawListener(() -> {
|
||||
startPostponedEnterTransition();
|
||||
return true;
|
||||
});
|
||||
}
|
||||
|
||||
public void loadList() {
|
||||
|
@@ -29,15 +29,15 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.transition.Transition;
|
||||
import androidx.transition.TransitionInflater;
|
||||
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.google.android.material.transition.MaterialContainerTransform;
|
||||
import com.m2049r.xmrwallet.data.Subaddress;
|
||||
import com.m2049r.xmrwallet.layout.TransactionInfoAdapter;
|
||||
import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
import com.m2049r.xmrwallet.util.ThemeHelper;
|
||||
import com.m2049r.xmrwallet.widget.Toolbar;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -102,10 +102,8 @@ public class SubaddressInfoFragment extends Fragment
|
||||
@Override
|
||||
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
final MaterialContainerTransform transform = new MaterialContainerTransform();
|
||||
transform.setDrawingViewId(R.id.fragment_container);
|
||||
transform.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
transform.setAllContainerColors(ThemeHelper.getThemedColor(getContext(), android.R.attr.colorBackground));
|
||||
Transition transform = TransitionInflater.from(requireContext())
|
||||
.inflateTransition(R.transition.details);
|
||||
setSharedElementEnterTransition(transform);
|
||||
}
|
||||
|
||||
|
@@ -36,9 +36,9 @@ import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.transition.Transition;
|
||||
import androidx.transition.TransitionInflater;
|
||||
|
||||
import com.google.android.material.transition.MaterialContainerTransform;
|
||||
import com.google.android.material.transition.MaterialElevationScale;
|
||||
import com.m2049r.xmrwallet.data.Subaddress;
|
||||
import com.m2049r.xmrwallet.data.UserNotes;
|
||||
import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
@@ -96,13 +96,6 @@ public class TxFragment extends Fragment {
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||
View view = inflater.inflate(R.layout.fragment_tx_info, container, false);
|
||||
|
||||
final MaterialElevationScale exitTransition = new MaterialElevationScale(false);
|
||||
exitTransition.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
setExitTransition(exitTransition);
|
||||
final MaterialElevationScale reenterTransition = new MaterialElevationScale(true);
|
||||
reenterTransition.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
setReenterTransition(reenterTransition);
|
||||
|
||||
cvXmrTo = view.findViewById(R.id.cvXmrTo);
|
||||
tvTxXmrToKey = view.findViewById(R.id.tvTxXmrToKey);
|
||||
tvDestinationBtc = view.findViewById(R.id.tvDestinationBtc);
|
||||
@@ -347,10 +340,8 @@ public class TxFragment extends Fragment {
|
||||
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setHasOptionsMenu(true);
|
||||
final MaterialContainerTransform transform = new MaterialContainerTransform();
|
||||
transform.setDrawingViewId(R.id.fragment_container);
|
||||
transform.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
transform.setAllContainerColors(ThemeHelper.getThemedColor(getContext(), android.R.attr.colorBackground));
|
||||
Transition transform = TransitionInflater.from(requireContext())
|
||||
.inflateTransition(R.transition.details);
|
||||
setSharedElementEnterTransition(transform);
|
||||
}
|
||||
|
||||
|
@@ -539,7 +539,7 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
|
||||
@Override
|
||||
public void onSendRequest(View view) {
|
||||
replaceFragmentWithTransition(view, SendFragment.newInstance(uri), null, null);
|
||||
replaceFragment(SendFragment.newInstance(uri), null, null);
|
||||
uri = null; // only use uri once
|
||||
}
|
||||
|
||||
@@ -800,10 +800,6 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
int transition;
|
||||
if (newFragment instanceof TxFragment)
|
||||
transition = R.string.tx_details_transition_name;
|
||||
else if (newFragment instanceof ReceiveFragment)
|
||||
transition = R.string.receive_transition_name;
|
||||
else if (newFragment instanceof SendFragment)
|
||||
transition = R.string.send_transition_name;
|
||||
else if (newFragment instanceof SubaddressInfoFragment)
|
||||
transition = R.string.subaddress_info_transition_name;
|
||||
else
|
||||
@@ -960,7 +956,7 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
Bundle b = new Bundle();
|
||||
b.putString("address", address);
|
||||
b.putString("name", getWalletName());
|
||||
replaceFragmentWithTransition(view, new ReceiveFragment(), null, b);
|
||||
replaceFragment(new ReceiveFragment(), null, b);
|
||||
Timber.d("ReceiveFragment placed");
|
||||
}
|
||||
|
||||
|
@@ -43,7 +43,6 @@ import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.github.brnunes.swipeablerecyclerview.SwipeableRecyclerViewTouchListener;
|
||||
import com.google.android.material.transition.MaterialElevationScale;
|
||||
import com.m2049r.xmrwallet.layout.TransactionInfoAdapter;
|
||||
import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
@@ -204,11 +203,6 @@ public class WalletFragment extends Fragment
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
postponeEnterTransition();
|
||||
view.getViewTreeObserver().addOnPreDrawListener(() -> {
|
||||
startPostponedEnterTransition();
|
||||
return true;
|
||||
});
|
||||
}
|
||||
|
||||
void showBalance(String balance) {
|
||||
@@ -333,19 +327,9 @@ public class WalletFragment extends Fragment
|
||||
// Callbacks from TransactionInfoAdapter
|
||||
@Override
|
||||
public void onInteraction(final View view, final TransactionInfo infoItem) {
|
||||
final MaterialElevationScale exitTransition = new MaterialElevationScale(false);
|
||||
exitTransition.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
setExitTransition(exitTransition);
|
||||
final MaterialElevationScale reenterTransition = new MaterialElevationScale(true);
|
||||
reenterTransition.setDuration(getResources().getInteger(R.integer.tx_item_transition_duration));
|
||||
setReenterTransition(reenterTransition);
|
||||
|
||||
activityCallback.onTxDetailsRequest(view, infoItem);
|
||||
}
|
||||
|
||||
// called from activity
|
||||
|
||||
|
||||
// if account index has changed scroll to top?
|
||||
private int accountIndex = 0;
|
||||
|
||||
@@ -538,8 +522,6 @@ public class WalletFragment extends Fragment
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
setExitTransition(null);
|
||||
setReenterTransition(null);
|
||||
Timber.d("onResume()");
|
||||
activityCallback.setTitle(walletTitle, walletSubtitle);
|
||||
activityCallback.setToolbarButton(Toolbar.BUTTON_NONE);
|
||||
|
@@ -8,17 +8,17 @@
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/llNotice"
|
||||
android:layout_alignParentTop="true"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentTop="true"
|
||||
android:orientation="vertical" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvPull"
|
||||
android:layout_below="@+id/llNotice"
|
||||
style="@style/MoneroLabel.Heading"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/llNotice"
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:gravity="center"
|
||||
@@ -52,7 +52,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignParentEnd="true"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_margin="24dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:background="@drawable/gradient_oval"
|
||||
android:elevation="6dp">
|
||||
|
||||
@@ -67,7 +68,7 @@
|
||||
app:borderWidth="0dp"
|
||||
app:elevation="0dp"
|
||||
app:fabSize="normal"
|
||||
app:pressedTranslationZ="0dp" />
|
||||
|
||||
app:pressedTranslationZ="0dp"
|
||||
app:tint="?attr/toolbarTextColor" />
|
||||
</FrameLayout>
|
||||
</RelativeLayout>
|
||||
</RelativeLayout>
|
||||
|
@@ -3,8 +3,7 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:transitionName="@string/receive_transition_name">
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<EditText
|
||||
android:id="@+id/etDummy"
|
||||
@@ -98,7 +97,6 @@
|
||||
android:backgroundTint="#ffffffff"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:foreground="?android:attr/selectableItemBackground"
|
||||
card_view:contentPadding="4dp">
|
||||
|
||||
<TextView
|
||||
@@ -110,8 +108,8 @@
|
||||
android:drawablePadding="4dp"
|
||||
android:text="@string/label_receive_info_gen_qr_code"
|
||||
android:textAlignment="center"
|
||||
android:textSize="16sp"
|
||||
android:textColor="#2D1A2E"
|
||||
android:textSize="16sp"
|
||||
android:visibility="visible"
|
||||
card_view:drawableStartCompat="@drawable/ic_info_outline_black_24dp" />
|
||||
|
||||
@@ -119,7 +117,8 @@
|
||||
android:id="@+id/qrCode"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:adjustViewBounds="true" />
|
||||
android:adjustViewBounds="true"
|
||||
android:src="#fff" />
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<TextView
|
||||
|
@@ -4,8 +4,7 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:transitionName="@string/send_transition_name">
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/llNotice"
|
||||
|
@@ -69,6 +69,7 @@
|
||||
app:borderWidth="0dp"
|
||||
app:elevation="0dp"
|
||||
app:fabSize="normal"
|
||||
app:pressedTranslationZ="0dp" />
|
||||
app:pressedTranslationZ="0dp"
|
||||
app:tint="?attr/toolbarTextColor" />
|
||||
</FrameLayout>
|
||||
</FrameLayout>
|
||||
</FrameLayout>
|
||||
|
@@ -5,8 +5,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:padding="8dp"
|
||||
android:transitionName="@string/subaddress_info_transition_name">
|
||||
android:padding="8dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvAddress"
|
||||
@@ -14,6 +13,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/header_top_first"
|
||||
android:transitionName="@string/subaddress_info_transition_name"
|
||||
tools:text="#1: 8AioXCmK...aGivEa7C" />
|
||||
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
|
@@ -4,8 +4,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="8dp"
|
||||
android:fillViewport="true"
|
||||
android:transitionName="@string/tx_details_transition_name">
|
||||
android:fillViewport="true">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
@@ -33,6 +32,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:selectAllOnFocus="true"
|
||||
android:textIsSelectable="true"
|
||||
android:transitionName="@string/tx_details_transition_name"
|
||||
tools:text="+ 1,092.00229" />
|
||||
|
||||
<TextView
|
||||
|
@@ -177,7 +177,6 @@
|
||||
android:layout_weight="1"
|
||||
android:enabled="false"
|
||||
android:text="@string/label_wallet_receive"
|
||||
android:transitionName="@string/receive_btn_transition_name"
|
||||
app:icon="@drawable/ic_hand" />
|
||||
|
||||
<Button
|
||||
@@ -190,7 +189,6 @@
|
||||
android:layout_weight="1"
|
||||
android:enabled="false"
|
||||
android:text="@string/label_wallet_send"
|
||||
android:transitionName="@string/send_btn_transition_name"
|
||||
app:icon="@drawable/ic_send" />
|
||||
</LinearLayout>
|
||||
|
||||
|
3
app/src/main/res/transition/details.xml
Normal file
3
app/src/main/res/transition/details.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<changeTransform android:duration="@integer/tx_item_transition_duration" />
|
||||
</transitionSet>
|
@@ -290,7 +290,7 @@
|
||||
<string name="menu_language">Idioma</string>
|
||||
<string name="language_system_default">Utilitzar Idioma del Sistema</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restablir desde Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restablir desde Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Comunicant amb Ledger</string>
|
||||
<string name="progress_ledger_confirm">Es requereix confirmació en Ledger!</string>
|
||||
|
@@ -286,7 +286,7 @@
|
||||
<string name="menu_language">Sprache</string>
|
||||
<string name="language_system_default">Benutze Systemsprache</string>
|
||||
|
||||
<string name="fab_restore_ledger">Wallet mit Ledger Nano S wiederherstellen</string>
|
||||
<string name="fab_restore_ledger">Wallet mit Ledger Nano wiederherstellen</string>
|
||||
|
||||
<string name="progress_ledger_progress">Kommunikation mit Ledger</string>
|
||||
<string name="progress_ledger_confirm">Bestätigung auf Ledger benötigt!</string>
|
||||
|
@@ -283,7 +283,7 @@
|
||||
<string name="menu_language">Language</string>
|
||||
<string name="language_system_default">Use System Language</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restore from Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restore from Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Communicating with Ledger</string>
|
||||
<string name="progress_ledger_confirm">Confirmation on Ledger required!</string>
|
||||
|
@@ -290,7 +290,7 @@
|
||||
<string name="menu_language">Lingvo</string>
|
||||
<string name="language_system_default">Uzi la sistemlingvon</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restaŭri de Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restaŭri de Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Komunikante kun Ledger</string>
|
||||
<string name="progress_ledger_confirm">Konfirmo je la Ledger estas postulita!</string>
|
||||
|
@@ -273,7 +273,7 @@
|
||||
<string name="menu_language">Lenguaje</string>
|
||||
<string name="language_system_default">Usar Idioma del Sistema</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restaurar desde Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restaurar desde Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Comunicándose con Ledger</string>
|
||||
<string name="progress_ledger_confirm">¡Confirmación en Ledger requerida!</string>
|
||||
|
@@ -285,7 +285,7 @@
|
||||
<string name="menu_language">Keel</string>
|
||||
<string name="language_system_default">Kasuta süsteemi keelt</string>
|
||||
|
||||
<string name="fab_restore_ledger">Taasta seadmelt Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Taasta seadmelt Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Suhtlen seadmega Ledger</string>
|
||||
<string name="progress_ledger_confirm">Seadmelt Ledger on vajalik kinnitus!</string>
|
||||
|
@@ -284,7 +284,7 @@
|
||||
<string name="tx_subaddress">Sous-adresse</string>
|
||||
<string name="generate_address_label_sub">Sous-adresse publique #%1$d: %2$s</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restaurer depuis Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restaurer depuis Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Communication avec Ledger</string>
|
||||
<string name="progress_ledger_confirm">Confirmation requise sur Ledger !</string>
|
||||
|
@@ -283,7 +283,7 @@
|
||||
<string name="menu_language">Nyelv</string>
|
||||
<string name="language_system_default">Rendszernyelv használata</string>
|
||||
|
||||
<string name="fab_restore_ledger">Visszaállítás Ledger Nano S-ről</string>
|
||||
<string name="fab_restore_ledger">Visszaállítás Ledger Nano-ről</string>
|
||||
|
||||
<string name="progress_ledger_progress">Kommunikáció a Ledgerrel</string>
|
||||
<string name="progress_ledger_confirm">Ledgeren való megerősítés szükséges!</string>
|
||||
|
@@ -286,7 +286,7 @@
|
||||
<string name="menu_language">Lingua</string>
|
||||
<string name="language_system_default">Usa lingua di sistema</string>
|
||||
|
||||
<string name="fab_restore_ledger">Ripristina da Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Ripristina da Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">In comunicazione con Ledger</string>
|
||||
<string name="progress_ledger_confirm">Conferma su Ledger richiesta!</string>
|
||||
|
@@ -289,7 +289,7 @@
|
||||
<string name="menu_language">言語</string>
|
||||
<string name="language_system_default">システムの言語を使う</string>
|
||||
|
||||
<string name="fab_restore_ledger">レッジャーナノSから復元</string>
|
||||
<string name="fab_restore_ledger">レッジャーナノから復元</string>
|
||||
|
||||
<string name="progress_ledger_progress">レッジャーと通信中</string>
|
||||
<string name="progress_ledger_confirm">レッジャーでの承認が必要です!</string>
|
||||
|
@@ -283,7 +283,7 @@
|
||||
<string name="menu_language">Language</string>
|
||||
<string name="language_system_default">Use System Language</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restore from Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restore from Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Communicating with Ledger</string>
|
||||
<string name="progress_ledger_confirm">Confirmation on Ledger required!</string>
|
||||
|
@@ -281,7 +281,7 @@
|
||||
<string name="menu_language">Taal</string>
|
||||
<string name="language_system_default">Systeemtaal gebruiken</string>
|
||||
|
||||
<string name="fab_restore_ledger">Herstellen met Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Herstellen met Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Communiceren met Ledger…</string>
|
||||
<string name="progress_ledger_confirm">Bevestiging op Ledger vereist!</string>
|
||||
|
@@ -282,7 +282,7 @@
|
||||
<string name="menu_language">Idioma</string>
|
||||
<string name="language_system_default">Usar o idioma do sistema</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restaurar da Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restaurar da Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">Comunicando com a Ledger</string>
|
||||
<string name="progress_ledger_confirm">Necessária confirmação na Ledger!</string>
|
||||
@@ -422,13 +422,13 @@ aqui.</string>
|
||||
<string name="menu_deletecache">Resetar carteira!</string>
|
||||
<string name="deletecache_alert_message"><![CDATA[Esta carteira será resetada, perdendo todos os dados "off-chain" (como notas, contas & nomes de subendereços, chaves de transações privadas, …)! Use isso SOMENTE se esta carteira estiver corrompida e não carrega!]]></string>
|
||||
|
||||
<string name="node_tor_error">Tor required</string>
|
||||
<string name="node_waiting">\u00A0WAITING FOR NODE\u00A0</string>
|
||||
<string name="tor_enable_background">"Allow Background Starts" in Orbot Settings to use Tor!</string>
|
||||
<string name="node_tor_error">Necessário Tor</string>
|
||||
<string name="node_waiting">\u00A0ESPERANDO PELO NÓ\u00A0</string>
|
||||
<string name="tor_enable_background">"Permitir inicializações em segundo plano" nas opções do Orbot para usar o Tor!</string>
|
||||
<string name="tor_noshift">SideShift.ai doesn\'t support Tor.\nDisable Tor to swap XMR.</string>
|
||||
|
||||
<string name="label_seed_offset_encrypt">Seed encryption (EXPERIMENTAL)</string>
|
||||
<string name="seed_offset_hint">Seed Offset Phrase (optional)</string>
|
||||
<string name="label_seed_offset_encrypt">Encriptação da Semente (EXPERIMENTAL)</string>
|
||||
<string name="seed_offset_hint">Senha de dedução da semente (opcional)</string>
|
||||
|
||||
<string name="menu_settings">Settings</string>
|
||||
<string name="title_iface">Interface</string> <!-- like: User Intreface -->
|
||||
|
@@ -285,7 +285,7 @@
|
||||
<string name="menu_language">Linguagem</string>
|
||||
<string name="language_system_default">Usar linguagem de sistema</string>
|
||||
|
||||
<string name="fab_restore_ledger">Restaurar de Ledger Nano S</string>
|
||||
<string name="fab_restore_ledger">Restaurar de Ledger Nano</string>
|
||||
|
||||
<string name="progress_ledger_progress">A comunicar com o Ledger</string>
|
||||
<string name="progress_ledger_confirm">Confirmação com Ledger necessária!</string>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user