mirror of
https://github.com/m2049r/xmrwallet
synced 2025-03-28 10:13:05 +01:00
Restyle UI (#690)
* enable testnet flavor * v0.17.1.0 * migrate to androidx & material * new color themes * bump version v1.15.2
This commit is contained in:
parent
e5b15b7816
commit
1829d30b61
app
build.gradle
src/main
AndroidManifest.xml
java/com/m2049r/xmrwallet
BaseActivity.javaGenerateFragment.javaGenerateReviewFragment.javaLoginActivity.javaLoginFragment.javaMainActivity.javaNodeFragment.javaReceiveFragment.javaScannerFragment.javaSecureActivity.javaTxFragment.javaWalletActivity.javaWalletFragment.javaXmrWalletApplication.java
dialog
fragment/send
SendAddressWizardFragment.javaSendBtcConfirmWizardFragment.javaSendBtcSuccessWizardFragment.javaSendConfirmWizardFragment.javaSendFragment.javaSendSuccessWizardFragment.javaSendWizardFragment.java
layout
model
onboarding
service
WalletService.java
exchange
util
ColorHelper.javaDayNightMode.javaHelper.javaKeyStoreHelper.javaLocaleHelper.javaNightmodeHelper.javaNotice.java
widget
xmrto
res
color
drawable-night
ic_emptygunther.xmlic_gunther_streetmode.xmlic_onboarding_fingerprint.xmlic_onboarding_nodes.xmlic_onboarding_seed.xmlic_onboarding_welcome.xmlic_onboarding_xmrto.xml
drawable-v24
drawable
backgound_seed.xmlbackgound_spinner.xmlbackgound_spinner_gray.xmlbutton_default.xmlbutton_disabled.xmlbutton_green.xmlbutton_selector.xmlbutton_selector_green.xmldot_dark.xmldot_light.xmlgradient_all.xmlgradient_oval.xmlic_add_circle_outline.xmlic_add_circle_white.xmlic_all_inclusive_24dp.xmlic_arrow_back_white_24dp.xmlic_check_circle.xmlic_check_circle_xmr.xmlic_check_gray_24dp.xmlic_close_white_24dp.xmlic_content_copy_24dp.xmlic_content_copy_black_24dp.xmlic_content_nocopy_black_24dp.xmlic_content_paste_24dp.xmlic_done_all.xmlic_emptygunther.xmlic_error_red_36dp.xmlic_favorite_24dp.xml
@ -7,9 +7,9 @@ android {
|
||||
applicationId "com.m2049r.xmrwallet"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 28
|
||||
versionCode 408
|
||||
versionName "1.14.8 'On Board'"
|
||||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
||||
versionCode 502
|
||||
versionName "1.15.2 'Dark Fork'"
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
cppFlags "-std=c++11"
|
||||
@ -17,6 +17,11 @@ android {
|
||||
}
|
||||
}
|
||||
}
|
||||
bundle {
|
||||
language {
|
||||
enableSplit = false
|
||||
}
|
||||
}
|
||||
|
||||
flavorDimensions 'type', 'net'
|
||||
productFlavors {
|
||||
@ -28,6 +33,11 @@ android {
|
||||
applicationIdSuffix '.stage'
|
||||
versionNameSuffix ' (stage)'
|
||||
}
|
||||
devnet {
|
||||
dimension 'net'
|
||||
applicationIdSuffix '.test'
|
||||
versionNameSuffix ' (test)'
|
||||
}
|
||||
alpha {
|
||||
dimension 'type'
|
||||
applicationIdSuffix '.alpha'
|
||||
@ -70,7 +80,8 @@ android {
|
||||
def availableLocales = ["en"]
|
||||
new File("app/src/main/res/").eachFileMatch(~/^values-.*/) { file ->
|
||||
def languageTag = file.name.substring(7).replace("-r", "-")
|
||||
availableLocales.add(languageTag)
|
||||
if (languageTag != "night")
|
||||
availableLocales.add(languageTag)
|
||||
}
|
||||
|
||||
// APKs for the same app that all have the same version information.
|
||||
@ -100,30 +111,30 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation "com.android.support:appcompat-v7:$rootProject.ext.supportVersion"
|
||||
implementation "com.android.support:design:$rootProject.ext.supportVersion"
|
||||
implementation "com.android.support:support-v4:$rootProject.ext.supportVersion"
|
||||
implementation "com.android.support:recyclerview-v7:$rootProject.ext.supportVersion"
|
||||
implementation "com.android.support:cardview-v7:$rootProject.ext.supportVersion"
|
||||
implementation "com.android.support:swiperefreshlayout:$rootProject.ext.supportVersion"
|
||||
implementation "com.android.support.constraint:constraint-layout:$rootProject.ext.constraintVersion"
|
||||
implementation 'me.dm7.barcodescanner:zxing:1.9.8'
|
||||
implementation 'androidx.core:core:1.3.2'
|
||||
implementation 'androidx.appcompat:appcompat:1.2.0'
|
||||
implementation group: 'com.google.android.material', name: 'material', version: '1.3.0-alpha03'
|
||||
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
||||
implementation 'androidx.recyclerview:recyclerview:1.1.0'
|
||||
implementation 'androidx.cardview:cardview:1.0.0'
|
||||
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.1'
|
||||
|
||||
implementation 'me.dm7.barcodescanner:zxing:1.9.8'
|
||||
implementation "com.squareup.okhttp3:okhttp:$rootProject.ext.okHttpVersion"
|
||||
implementation "com.burgstaller:okhttp-digest:1.18"
|
||||
implementation "com.burgstaller:okhttp-digest:2.0"
|
||||
implementation "com.jakewharton.timber:timber:$rootProject.ext.timberVersion"
|
||||
|
||||
implementation 'com.nulab-inc:zxcvbn:1.2.3'
|
||||
implementation 'com.nulab-inc:zxcvbn:1.3.0'
|
||||
|
||||
implementation 'dnsjava:dnsjava:2.1.8'
|
||||
implementation 'org.jitsi:dnssecjava:1.1.3'
|
||||
implementation 'org.slf4j:slf4j-nop:1.7.25'
|
||||
implementation 'dnsjava:dnsjava:2.1.9'
|
||||
implementation 'org.jitsi:dnssecjava:1.2.0'
|
||||
implementation 'org.slf4j:slf4j-nop:1.7.30'
|
||||
implementation 'com.github.brnunes:swipeablerecyclerview:1.0.2'
|
||||
|
||||
// https://mvnrepository.com/artifact/com.github.aelstad/keccakj
|
||||
implementation 'com.github.aelstad:keccakj:1.1.0'
|
||||
|
||||
|
||||
testImplementation "junit:junit:$rootProject.ext.junitVersion"
|
||||
testImplementation "org.mockito:mockito-all:$rootProject.ext.mockitoVersion"
|
||||
testImplementation "com.squareup.okhttp3:mockwebserver:$rootProject.ext.okHttpVersion"
|
||||
|
@ -20,8 +20,9 @@
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/MyMaterialTheme"
|
||||
android:usesCleartextTraffic="true">
|
||||
<activity android:name=".MainActivity"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:configChanges="orientation|keyboardHidden|uiMode"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="portrait">
|
||||
<intent-filter>
|
||||
@ -31,13 +32,13 @@
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".WalletActivity"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
android:configChanges="orientation|keyboardHidden|uiMode"
|
||||
android:label="@string/wallet_activity_name"
|
||||
android:launchMode="singleTask"
|
||||
android:screenOrientation="behind" />
|
||||
android:screenOrientation="behind"/>
|
||||
<activity
|
||||
android:name=".LoginActivity"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
android:configChanges="orientation|keyboardHidden|uiMode"
|
||||
android:label="@string/app_name"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="locked">
|
||||
@ -65,10 +66,11 @@
|
||||
android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
|
||||
android:resource="@xml/usb_device_filter" />
|
||||
</activity>
|
||||
<activity android:name=".onboarding.OnBoardingActivity"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
<activity
|
||||
android:name=".onboarding.OnBoardingActivity"
|
||||
android:configChanges="orientation|keyboardHidden|uiMode"
|
||||
android:launchMode="singleTask"
|
||||
android:screenOrientation="portrait"/>
|
||||
android:screenOrientation="portrait" />
|
||||
|
||||
<service
|
||||
android:name=".service.WalletService"
|
||||
@ -77,7 +79,7 @@
|
||||
android:label="Monero Wallet Service" />
|
||||
|
||||
<provider
|
||||
android:name="android.support.v4.content.FileProvider"
|
||||
android:name="androidx.core.content.FileProvider"
|
||||
android:authorities="${applicationId}.fileprovider"
|
||||
android:exported="false"
|
||||
android:grantUriPermissions="true">
|
||||
|
@ -15,9 +15,9 @@ import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.os.PowerManager;
|
||||
import android.support.annotation.CallSuper;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.app.Fragment;
|
||||
import androidx.annotation.CallSuper;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.m2049r.xmrwallet.data.BarcodeData;
|
||||
|
@ -17,13 +17,9 @@
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.text.Editable;
|
||||
import android.text.Html;
|
||||
import android.text.InputType;
|
||||
@ -38,9 +34,15 @@ import android.view.WindowManager;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.Button;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.Switch;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.switchmaterial.SwitchMaterial;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.model.WalletManager;
|
||||
import com.m2049r.xmrwallet.util.FingerprintHelper;
|
||||
@ -202,13 +204,13 @@ public class GenerateFragment extends Fragment {
|
||||
if (FingerprintHelper.isDeviceSupported(getContext())) {
|
||||
llFingerprintAuth.setVisibility(View.VISIBLE);
|
||||
|
||||
final Switch swFingerprintAllowed = (Switch) llFingerprintAuth.getChildAt(0);
|
||||
final SwitchMaterial swFingerprintAllowed = (SwitchMaterial) llFingerprintAuth.getChildAt(0);
|
||||
swFingerprintAllowed.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
if (!swFingerprintAllowed.isChecked()) return;
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(getActivity());
|
||||
builder.setMessage(Html.fromHtml(getString(R.string.generate_fingerprint_warn)))
|
||||
.setCancelable(false)
|
||||
.setPositiveButton(getString(R.string.label_ok), null)
|
||||
@ -507,7 +509,7 @@ public class GenerateFragment extends Fragment {
|
||||
|
||||
String name = etWalletName.getEditText().getText().toString();
|
||||
String password = etWalletPassword.getEditText().getText().toString();
|
||||
boolean fingerprintAuthAllowed = ((Switch) llFingerprintAuth.getChildAt(0)).isChecked();
|
||||
boolean fingerprintAuthAllowed = ((SwitchMaterial) llFingerprintAuth.getChildAt(0)).isChecked();
|
||||
|
||||
// create the real wallet password
|
||||
String crazyPass = KeyStoreHelper.getCrazyPass(getActivity(), password);
|
||||
@ -646,7 +648,7 @@ public class GenerateFragment extends Fragment {
|
||||
if (ledgerDialog != null) return;
|
||||
final Activity activity = getActivity();
|
||||
View promptsView = getLayoutInflater().inflate(R.layout.prompt_ledger_seed, null);
|
||||
android.app.AlertDialog.Builder alertDialogBuilder = new android.app.AlertDialog.Builder(activity);
|
||||
MaterialAlertDialogBuilder alertDialogBuilder = new MaterialAlertDialogBuilder(activity);
|
||||
alertDialogBuilder.setView(promptsView);
|
||||
|
||||
final TextInputLayout etSeed = promptsView.findViewById(R.id.etSeed);
|
||||
|
@ -16,14 +16,10 @@
|
||||
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.text.Editable;
|
||||
import android.text.Html;
|
||||
import android.text.TextWatcher;
|
||||
@ -40,10 +36,17 @@ import android.widget.ImageButton;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.ScrollView;
|
||||
import android.widget.Switch;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.switchmaterial.SwitchMaterial;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.ledger.Ledger;
|
||||
import com.m2049r.xmrwallet.ledger.LedgerProgressDialog;
|
||||
import com.m2049r.xmrwallet.model.NetworkType;
|
||||
@ -118,31 +121,11 @@ public class GenerateReviewFragment extends Fragment {
|
||||
tvWalletSpendKey.setTextIsSelectable(allowCopy);
|
||||
tvWalletPassword.setTextIsSelectable(allowCopy);
|
||||
|
||||
bAccept.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
acceptWallet();
|
||||
}
|
||||
});
|
||||
view.findViewById(R.id.bCopyViewKey).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
copyViewKey();
|
||||
}
|
||||
});
|
||||
bCopyAddress.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
copyAddress();
|
||||
}
|
||||
});
|
||||
bCopyAddress.setClickable(false);
|
||||
view.findViewById(R.id.bAdvancedInfo).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
showAdvancedInfo();
|
||||
}
|
||||
});
|
||||
bAccept.setOnClickListener(v -> acceptWallet());
|
||||
view.findViewById(R.id.bCopyViewKey).setOnClickListener(v -> copyViewKey());
|
||||
bCopyAddress.setEnabled(false);
|
||||
bCopyAddress.setOnClickListener(v -> copyAddress());
|
||||
view.findViewById(R.id.bAdvancedInfo).setOnClickListener(v -> showAdvancedInfo());
|
||||
|
||||
Bundle args = getArguments();
|
||||
type = args.getString(REQUEST_TYPE);
|
||||
@ -287,8 +270,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
showAdvanced = true;
|
||||
}
|
||||
if (showAdvanced) bAdvancedInfo.setVisibility(View.VISIBLE);
|
||||
bCopyAddress.setClickable(true);
|
||||
bCopyAddress.setImageResource(R.drawable.ic_content_copy_black_24dp);
|
||||
bCopyAddress.setEnabled(true);
|
||||
activityCallback.setTitle(name, getString(R.string.details_title));
|
||||
activityCallback.setToolbarButton(
|
||||
GenerateReviewFragment.VIEW_TYPE_ACCEPT.equals(type) ? Toolbar.BUTTON_NONE : Toolbar.BUTTON_BACK);
|
||||
@ -352,7 +334,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAttach(Context context) {
|
||||
public void onAttach(@NonNull Context context) {
|
||||
super.onAttach(context);
|
||||
if (context instanceof Listener) {
|
||||
this.activityCallback = (Listener) context;
|
||||
@ -399,7 +381,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
|
||||
String type = getArguments().getString(REQUEST_TYPE); // intance variable <type> not set yet
|
||||
if (GenerateReviewFragment.VIEW_TYPE_ACCEPT.equals(type)) {
|
||||
inflater.inflate(R.menu.wallet_details_help_menu, menu);
|
||||
@ -448,7 +430,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
protected Boolean doInBackground(String... params) {
|
||||
if (params.length != 2) return false;
|
||||
final String userPassword = params[0];
|
||||
final boolean fingerPassValid = Boolean.valueOf(params[1]);
|
||||
final boolean fingerPassValid = Boolean.parseBoolean(params[1]);
|
||||
newPassword = KeyStoreHelper.getCrazyPass(getActivity(), userPassword);
|
||||
final boolean success = changeWalletPassword(newPassword);
|
||||
if (success) {
|
||||
@ -488,7 +470,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
LayoutInflater li = LayoutInflater.from(getActivity());
|
||||
View promptsView = li.inflate(R.layout.prompt_changepw, null);
|
||||
|
||||
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity());
|
||||
AlertDialog.Builder alertDialogBuilder = new MaterialAlertDialogBuilder(getActivity());
|
||||
alertDialogBuilder.setView(promptsView);
|
||||
|
||||
final TextInputLayout etPasswordA = promptsView.findViewById(R.id.etWalletPasswordA);
|
||||
@ -498,7 +480,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
etPasswordB.setHint(getString(R.string.prompt_changepwB, walletName));
|
||||
|
||||
LinearLayout llFingerprintAuth = promptsView.findViewById(R.id.llFingerprintAuth);
|
||||
final Switch swFingerprintAllowed = (Switch) llFingerprintAuth.getChildAt(0);
|
||||
final SwitchMaterial swFingerprintAllowed = (SwitchMaterial) llFingerprintAuth.getChildAt(0);
|
||||
if (FingerprintHelper.isDeviceSupported(getActivity())) {
|
||||
llFingerprintAuth.setVisibility(View.VISIBLE);
|
||||
|
||||
@ -507,7 +489,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
public void onClick(View view) {
|
||||
if (!swFingerprintAllowed.isChecked()) return;
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(getActivity());
|
||||
builder.setMessage(Html.fromHtml(getString(R.string.generate_fingerprint_warn)))
|
||||
.setCancelable(false)
|
||||
.setPositiveButton(getString(R.string.label_ok), null)
|
||||
@ -596,7 +578,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
etPasswordA.setError(getString(R.string.generate_empty_passwordB));
|
||||
} else if (!newPasswordA.equals(newPasswordB)) {
|
||||
etPasswordB.setError(getString(R.string.generate_bad_passwordB));
|
||||
} else if (newPasswordA.equals(newPasswordB)) {
|
||||
} else {
|
||||
new AsyncChangePassword().execute(newPasswordA, Boolean.toString(swFingerprintAllowed.isChecked()));
|
||||
Helper.hideKeyboardAlways(getActivity());
|
||||
openDialog.dismiss();
|
||||
@ -619,7 +601,7 @@ public class GenerateReviewFragment extends Fragment {
|
||||
etPasswordA.setError(getString(R.string.generate_empty_passwordB));
|
||||
} else if (!newPasswordA.equals(newPasswordB)) {
|
||||
etPasswordB.setError(getString(R.string.generate_bad_passwordB));
|
||||
} else if (newPasswordA.equals(newPasswordB)) {
|
||||
} else {
|
||||
new AsyncChangePassword().execute(newPasswordA, Boolean.toString(swFingerprintAllowed.isChecked()));
|
||||
Helper.hideKeyboardAlways(getActivity());
|
||||
openDialog.dismiss();
|
||||
|
@ -16,7 +16,6 @@
|
||||
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
@ -30,10 +29,6 @@ import android.hardware.usb.UsbManager;
|
||||
import android.media.MediaScannerConnection;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MenuItem;
|
||||
@ -43,6 +38,14 @@ import android.widget.EditText;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.appcompat.app.AppCompatDelegate;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.m2049r.xmrwallet.data.Node;
|
||||
import com.m2049r.xmrwallet.data.NodeInfo;
|
||||
import com.m2049r.xmrwallet.dialog.AboutFragment;
|
||||
@ -55,10 +58,13 @@ import com.m2049r.xmrwallet.model.NetworkType;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.model.WalletManager;
|
||||
import com.m2049r.xmrwallet.service.WalletService;
|
||||
import com.m2049r.xmrwallet.util.ColorHelper;
|
||||
import com.m2049r.xmrwallet.util.DayNightMode;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
import com.m2049r.xmrwallet.util.KeyStoreHelper;
|
||||
import com.m2049r.xmrwallet.util.LocaleHelper;
|
||||
import com.m2049r.xmrwallet.util.MoneroThreadPoolExecutor;
|
||||
import com.m2049r.xmrwallet.util.NightmodeHelper;
|
||||
import com.m2049r.xmrwallet.widget.Toolbar;
|
||||
|
||||
import java.io.File;
|
||||
@ -69,7 +75,6 @@ import java.nio.channels.FileChannel;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
@ -85,6 +90,7 @@ public class LoginActivity extends BaseActivity
|
||||
private static final String GENERATE_STACK = "gen";
|
||||
|
||||
private static final String NODES_PREFS_NAME = "nodes";
|
||||
private static final String PREF_DAEMON_TESTNET = "daemon_testnet";
|
||||
private static final String PREF_DAEMON_STAGENET = "daemon_stagenet";
|
||||
private static final String PREF_DAEMON_MAINNET = "daemon_mainnet";
|
||||
|
||||
@ -163,6 +169,10 @@ public class LoginActivity extends BaseActivity
|
||||
loadLegacyList(sharedPref.getString(PREF_DAEMON_STAGENET, null));
|
||||
sharedPref.edit().remove(PREF_DAEMON_STAGENET).apply();
|
||||
break;
|
||||
case NetworkType_Testnet:
|
||||
loadLegacyList(sharedPref.getString(PREF_DAEMON_TESTNET, null));
|
||||
sharedPref.edit().remove(PREF_DAEMON_TESTNET).apply();
|
||||
break;
|
||||
default:
|
||||
throw new IllegalStateException("unsupported net " + WalletManager.getInstance().getNetworkType());
|
||||
}
|
||||
@ -337,8 +347,8 @@ public class LoginActivity extends BaseActivity
|
||||
}
|
||||
};
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
AlertDialog diag = builder.setMessage(getString(R.string.details_alert_message))
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this);
|
||||
builder.setMessage(getString(R.string.details_alert_message))
|
||||
.setPositiveButton(getString(R.string.details_alert_yes), dialogClickListener)
|
||||
.setNegativeButton(getString(R.string.details_alert_no), dialogClickListener)
|
||||
.show();
|
||||
@ -426,7 +436,7 @@ public class LoginActivity extends BaseActivity
|
||||
LayoutInflater li = LayoutInflater.from(this);
|
||||
View promptsView = li.inflate(R.layout.prompt_rename, null);
|
||||
|
||||
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
|
||||
AlertDialog.Builder alertDialogBuilder = new MaterialAlertDialogBuilder(this);
|
||||
alertDialogBuilder.setView(promptsView);
|
||||
|
||||
final EditText etRename = promptsView.findViewById(R.id.etRename);
|
||||
@ -581,7 +591,7 @@ public class LoginActivity extends BaseActivity
|
||||
}
|
||||
};
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this);
|
||||
builder.setMessage(getString(R.string.archive_alert_message))
|
||||
.setTitle(walletName)
|
||||
.setPositiveButton(getString(R.string.archive_alert_yes), dialogClickListener)
|
||||
@ -653,11 +663,11 @@ public class LoginActivity extends BaseActivity
|
||||
break;
|
||||
case NetworkType_Testnet:
|
||||
toolbar.setSubtitle(getString(R.string.connect_testnet));
|
||||
toolbar.setBackgroundResource(R.color.colorPrimaryDark);
|
||||
toolbar.setBackgroundResource(ColorHelper.getThemedResourceId(this, R.attr.colorPrimaryDark));
|
||||
break;
|
||||
case NetworkType_Stagenet:
|
||||
toolbar.setSubtitle(getString(R.string.connect_stagenet));
|
||||
toolbar.setBackgroundResource(R.color.colorPrimaryDark);
|
||||
toolbar.setBackgroundResource(ColorHelper.getThemedResourceId(this, R.attr.colorPrimaryDark));
|
||||
break;
|
||||
default:
|
||||
throw new IllegalStateException("NetworkType unknown: " + net);
|
||||
@ -1124,41 +1134,54 @@ public class LoginActivity extends BaseActivity
|
||||
|
||||
public void onChangeLocale() {
|
||||
final ArrayList<Locale> availableLocales = LocaleHelper.getAvailableLocales(LoginActivity.this);
|
||||
String[] localeDisplayName = new String[1 + availableLocales.size()];
|
||||
|
||||
Collections.sort(availableLocales, new Comparator<Locale>() {
|
||||
@Override
|
||||
public int compare(Locale locale1, Locale locale2) {
|
||||
String localeString1 = LocaleHelper.getDisplayName(locale1, true);
|
||||
String localeString2 = LocaleHelper.getDisplayName(locale2, true);
|
||||
return localeString1.compareTo(localeString2);
|
||||
}
|
||||
Collections.sort(availableLocales, (locale1, locale2) -> {
|
||||
String localeString1 = LocaleHelper.getDisplayName(locale1, true);
|
||||
String localeString2 = LocaleHelper.getDisplayName(locale2, true);
|
||||
return localeString1.compareTo(localeString2);
|
||||
});
|
||||
|
||||
localeDisplayName[0] = getString(R.string.language_system_default);
|
||||
for (int i = 1; i < localeDisplayName.length; i++) {
|
||||
Locale locale = availableLocales.get(i - 1);
|
||||
localeDisplayName[i] = LocaleHelper.getDisplayName(locale, true);
|
||||
String[] localeDisplayNames = new String[1 + availableLocales.size()];
|
||||
localeDisplayNames[0] = getString(R.string.language_system_default);
|
||||
for (int i = 1; i < localeDisplayNames.length; i++) {
|
||||
localeDisplayNames[i] = LocaleHelper.getDisplayName(availableLocales.get(i - 1), true);
|
||||
}
|
||||
|
||||
int currentLocaleIndex = 0;
|
||||
String currentLocaleName = LocaleHelper.getLocale(LoginActivity.this);
|
||||
if (!currentLocaleName.isEmpty()) {
|
||||
Locale currentLocale = Locale.forLanguageTag(currentLocaleName);
|
||||
String currentLocalizedString = LocaleHelper.getDisplayName(currentLocale, true);
|
||||
currentLocaleIndex = Arrays.asList(localeDisplayName).indexOf(currentLocalizedString);
|
||||
String currentLocaleTag = LocaleHelper.getPreferredLanguageTag(LoginActivity.this);
|
||||
if (!currentLocaleTag.isEmpty()) {
|
||||
Locale currentLocale = Locale.forLanguageTag(currentLocaleTag);
|
||||
String currentLocaleName = LocaleHelper.getDisplayName(currentLocale, true);
|
||||
currentLocaleIndex = Arrays.asList(localeDisplayNames).indexOf(currentLocaleName);
|
||||
if (currentLocaleIndex < 0) currentLocaleIndex = 0;
|
||||
}
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this);
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(LoginActivity.this);
|
||||
builder.setTitle(getString(R.string.menu_language));
|
||||
builder.setSingleChoiceItems(localeDisplayName, currentLocaleIndex, new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int i) {
|
||||
dialog.dismiss();
|
||||
builder.setSingleChoiceItems(localeDisplayNames, currentLocaleIndex, (dialog, i) -> {
|
||||
dialog.dismiss();
|
||||
|
||||
LocaleHelper.setLocale(LoginActivity.this,
|
||||
(i == 0) ? "" : availableLocales.get(i - 1).toLanguageTag());
|
||||
startActivity(getIntent().addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK));
|
||||
LocaleHelper.setAndSaveLocale(this,
|
||||
(i == 0) ? "" : availableLocales.get(i - 1).toLanguageTag());
|
||||
startActivity(getIntent().addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK));
|
||||
});
|
||||
builder.show();
|
||||
}
|
||||
|
||||
public void onChangeTheme() {
|
||||
final DayNightMode currentDayNightSetting = DayNightMode.getValue(AppCompatDelegate.getDefaultNightMode());
|
||||
// selection will be empty if UNKNOWN
|
||||
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(LoginActivity.this);
|
||||
builder.setTitle(getString(R.string.menu_daynight));
|
||||
|
||||
String[] modeNames = getResources().getStringArray(R.array.daynight_themes);
|
||||
|
||||
builder.setSingleChoiceItems(modeNames, currentDayNightSetting.ordinal(), (dialog, i) -> {
|
||||
dialog.dismiss();
|
||||
final DayNightMode mode = DayNightMode.values()[i];
|
||||
if (currentDayNightSetting != mode) {
|
||||
NightmodeHelper.setAndSavePreferredNightmode(LoginActivity.this, mode);
|
||||
LoginActivity.this.recreate();
|
||||
}
|
||||
});
|
||||
builder.show();
|
||||
@ -1227,6 +1250,9 @@ public class LoginActivity extends BaseActivity
|
||||
case R.id.action_language:
|
||||
onChangeLocale();
|
||||
return true;
|
||||
case R.id.action_theme:
|
||||
onChangeTheme();
|
||||
return true;
|
||||
case R.id.action_ledger_seed:
|
||||
Fragment f = getSupportFragmentManager().findFragmentById(R.id.fragment_container);
|
||||
if (f instanceof GenerateFragment) {
|
||||
|
@ -19,11 +19,6 @@ package com.m2049r.xmrwallet;
|
||||
import android.content.Context;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.design.widget.FloatingActionButton;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
@ -38,6 +33,12 @@ import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.floatingactionbutton.FloatingActionButton;
|
||||
import com.m2049r.xmrwallet.data.NodeInfo;
|
||||
import com.m2049r.xmrwallet.layout.NodeInfoAdapter;
|
||||
import com.m2049r.xmrwallet.layout.WalletInfoAdapter;
|
||||
@ -63,6 +64,7 @@ public class LoginFragment extends Fragment implements WalletInfoAdapter.OnInter
|
||||
private List<WalletManager.WalletInfo> walletList = new ArrayList<>();
|
||||
private List<WalletManager.WalletInfo> displayedList = new ArrayList<>();
|
||||
|
||||
private View tvGuntherSays;
|
||||
private ImageView ivGunther;
|
||||
private TextView tvNodeName;
|
||||
private TextView tvNodeAddress;
|
||||
@ -143,6 +145,7 @@ public class LoginFragment extends Fragment implements WalletInfoAdapter.OnInter
|
||||
Timber.d("onCreateView");
|
||||
View view = inflater.inflate(R.layout.fragment_login, container, false);
|
||||
|
||||
tvGuntherSays = view.findViewById(R.id.tvGuntherSays);
|
||||
ivGunther = view.findViewById(R.id.ivGunther);
|
||||
fabScreen = view.findViewById(R.id.fabScreen);
|
||||
fab = view.findViewById(R.id.fab);
|
||||
@ -275,13 +278,15 @@ public class LoginFragment extends Fragment implements WalletInfoAdapter.OnInter
|
||||
if (displayedList.isEmpty()) {
|
||||
fab.startAnimation(fab_pulse);
|
||||
if (ivGunther.getDrawable() == null) {
|
||||
ivGunther.setImageResource(R.drawable.gunther_desaturated);
|
||||
ivGunther.setImageResource(R.drawable.ic_emptygunther);
|
||||
tvGuntherSays.setVisibility(View.VISIBLE);
|
||||
}
|
||||
} else {
|
||||
fab.clearAnimation();
|
||||
if (ivGunther.getDrawable() != null) {
|
||||
ivGunther.setImageDrawable(null);
|
||||
}
|
||||
tvGuntherSays.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
// remove information of non-existent wallet
|
||||
|
@ -18,13 +18,14 @@ package com.m2049r.xmrwallet;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
||||
import com.m2049r.xmrwallet.onboarding.OnBoardingActivity;
|
||||
import com.m2049r.xmrwallet.onboarding.OnBoardingManager;
|
||||
|
||||
public class MainActivity extends AppCompatActivity {
|
||||
public class MainActivity extends BaseActivity {
|
||||
@Override
|
||||
protected void onCreate(@Nullable final Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
@ -16,16 +16,19 @@
|
||||
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.widget.SwipeRefreshLayout;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
@ -445,7 +448,7 @@ public class NodeFragment extends Fragment
|
||||
}
|
||||
|
||||
EditDialog(final NodeInfo nodeInfo) {
|
||||
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity());
|
||||
AlertDialog.Builder alertDialogBuilder = new MaterialAlertDialogBuilder(getActivity());
|
||||
LayoutInflater li = LayoutInflater.from(alertDialogBuilder.getContext());
|
||||
View promptsView = li.inflate(R.layout.prompt_editnode, null);
|
||||
alertDialogBuilder.setView(promptsView);
|
||||
|
@ -25,12 +25,6 @@ import android.net.Uri;
|
||||
import android.nfc.NfcManager;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.content.FileProvider;
|
||||
import android.support.v4.view.MenuItemCompat;
|
||||
import android.support.v7.widget.ShareActionProvider;
|
||||
import android.text.Editable;
|
||||
import android.text.InputType;
|
||||
import android.text.TextWatcher;
|
||||
@ -42,7 +36,6 @@ import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageView;
|
||||
@ -50,6 +43,13 @@ import android.widget.ProgressBar;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.ShareActionProvider;
|
||||
import androidx.core.content.FileProvider;
|
||||
import androidx.core.view.MenuItemCompat;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.google.zxing.BarcodeFormat;
|
||||
import com.google.zxing.EncodeHintType;
|
||||
import com.google.zxing.WriterException;
|
||||
@ -82,10 +82,11 @@ public class ReceiveFragment extends Fragment {
|
||||
private ExchangeView evAmount;
|
||||
private TextView tvQrCode;
|
||||
private ImageView ivQrCode;
|
||||
private View cvQrCode;
|
||||
private ImageView ivQrCodeFull;
|
||||
private EditText etDummy;
|
||||
private ImageButton bCopyAddress;
|
||||
private Button bSubaddress;
|
||||
private ImageButton bSubaddress;
|
||||
|
||||
private Wallet wallet = null;
|
||||
private boolean isMyWallet = false;
|
||||
@ -109,6 +110,7 @@ public class ReceiveFragment extends Fragment {
|
||||
tvAddress = view.findViewById(R.id.tvAddress);
|
||||
etNotes = view.findViewById(R.id.etNotes);
|
||||
evAmount = view.findViewById(R.id.evAmount);
|
||||
cvQrCode = view.findViewById(R.id.cvQrCode);
|
||||
ivQrCode = view.findViewById(R.id.qrCode);
|
||||
tvQrCode = view.findViewById(R.id.tvQrCode);
|
||||
ivQrCodeFull = view.findViewById(R.id.qrCodeFull);
|
||||
@ -118,13 +120,9 @@ public class ReceiveFragment extends Fragment {
|
||||
|
||||
etDummy.setRawInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
|
||||
|
||||
bCopyAddress.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
copyAddress();
|
||||
}
|
||||
});
|
||||
bCopyAddress.setOnClickListener(v -> copyAddress());
|
||||
enableCopyAddress(false);
|
||||
enableSubaddressButton(false);
|
||||
|
||||
evAmount.setOnNewAmountListener(new ExchangeView.OnNewAmountListener() {
|
||||
@Override
|
||||
@ -190,7 +188,7 @@ public class ReceiveFragment extends Fragment {
|
||||
}
|
||||
});
|
||||
|
||||
ivQrCode.setOnClickListener(new View.OnClickListener() {
|
||||
cvQrCode.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
Helper.hideKeyboard(getActivity());
|
||||
@ -315,13 +313,8 @@ public class ReceiveFragment extends Fragment {
|
||||
return null;
|
||||
}
|
||||
|
||||
void enableSubaddressButton(boolean enable) {
|
||||
private void enableSubaddressButton(boolean enable) {
|
||||
bSubaddress.setEnabled(enable);
|
||||
if (enable) {
|
||||
bSubaddress.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.ic_settings_orange_24dp, 0, 0);
|
||||
} else {
|
||||
bSubaddress.setCompoundDrawablesWithIntrinsicBounds(0, R.drawable.ic_settings_gray_24dp, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void copyAddress() {
|
||||
@ -371,16 +364,13 @@ public class ReceiveFragment extends Fragment {
|
||||
listenerCallback.setSubtitle(wallet.getAccountLabel());
|
||||
tvAddress.setText(wallet.getAddress());
|
||||
enableCopyAddress(true);
|
||||
enableSubaddressButton(true);
|
||||
hideProgress();
|
||||
generateQr();
|
||||
}
|
||||
|
||||
private void enableCopyAddress(boolean enable) {
|
||||
bCopyAddress.setClickable(enable);
|
||||
if (enable)
|
||||
bCopyAddress.setImageResource(R.drawable.ic_content_copy_black_24dp);
|
||||
else
|
||||
bCopyAddress.setImageResource(R.drawable.ic_content_nocopy_black_24dp);
|
||||
bCopyAddress.setEnabled(enable);
|
||||
}
|
||||
|
||||
private void loadAndShow(String walletPath, String password) {
|
||||
|
@ -19,7 +19,7 @@ package com.m2049r.xmrwallet;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.support.v4.app.Fragment;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
@ -17,13 +17,18 @@
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.Configuration;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
import com.m2049r.xmrwallet.util.LocaleHelper;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import static android.view.WindowManager.LayoutParams;
|
||||
|
||||
public abstract class SecureActivity extends AppCompatActivity {
|
||||
@ -37,7 +42,36 @@ public abstract class SecureActivity extends AppCompatActivity {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void attachBaseContext(Context context) {
|
||||
super.attachBaseContext(LocaleHelper.setLocale(context, LocaleHelper.getLocale(context)));
|
||||
protected void attachBaseContext(Context newBase) {
|
||||
super.attachBaseContext(newBase);
|
||||
applyOverrideConfiguration(new Configuration());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applyOverrideConfiguration(Configuration newConfig) {
|
||||
super.applyOverrideConfiguration(updateConfigurationIfSupported(newConfig));
|
||||
}
|
||||
|
||||
private Configuration updateConfigurationIfSupported(Configuration config) {
|
||||
// Configuration.getLocales is added after 24 and Configuration.locale is deprecated in 24
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||
if (!config.getLocales().isEmpty()) {
|
||||
return config;
|
||||
}
|
||||
} else {
|
||||
if (config.locale != null) {
|
||||
return config;
|
||||
}
|
||||
}
|
||||
|
||||
Locale locale = LocaleHelper.getPreferredLocale(this);
|
||||
if (locale != null) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
|
||||
config.setLocale(locale);
|
||||
} else {
|
||||
config.locale = locale;
|
||||
}
|
||||
}
|
||||
return config;
|
||||
}
|
||||
}
|
||||
|
@ -19,24 +19,24 @@ package com.m2049r.xmrwallet;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import android.text.InputType;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.m2049r.xmrwallet.data.UserNotes;
|
||||
import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
import com.m2049r.xmrwallet.model.Transfer;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
import com.m2049r.xmrwallet.data.UserNotes;
|
||||
import com.m2049r.xmrwallet.widget.Toolbar;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
@ -242,9 +242,9 @@ public class TxFragment extends Fragment {
|
||||
} else if (info.isPending) {
|
||||
setTxColour(ContextCompat.getColor(getContext(), R.color.tx_pending));
|
||||
} else if (info.direction == TransactionInfo.Direction.Direction_In) {
|
||||
setTxColour(ContextCompat.getColor(getContext(), R.color.tx_green));
|
||||
setTxColour(ContextCompat.getColor(getContext(), R.color.tx_plus));
|
||||
} else {
|
||||
setTxColour(ContextCompat.getColor(getContext(), R.color.tx_red));
|
||||
setTxColour(ContextCompat.getColor(getContext(), R.color.tx_minus));
|
||||
}
|
||||
Set<String> destinations = new HashSet<>();
|
||||
StringBuffer sb = new StringBuffer();
|
||||
|
@ -16,7 +16,6 @@
|
||||
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
@ -27,14 +26,6 @@ import android.content.pm.PackageManager;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
import android.os.IBinder;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.design.widget.NavigationView;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.support.v4.view.GravityCompat;
|
||||
import android.support.v4.widget.DrawerLayout;
|
||||
import android.support.v7.app.ActionBarDrawerToggle;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
@ -45,6 +36,17 @@ import android.widget.EditText;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.app.ActionBarDrawerToggle;
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.core.view.GravityCompat;
|
||||
import androidx.drawerlayout.widget.DrawerLayout;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.navigation.NavigationView;
|
||||
import com.m2049r.xmrwallet.data.BarcodeData;
|
||||
import com.m2049r.xmrwallet.data.TxData;
|
||||
import com.m2049r.xmrwallet.data.UserNotes;
|
||||
@ -58,6 +60,7 @@ import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.model.WalletManager;
|
||||
import com.m2049r.xmrwallet.service.WalletService;
|
||||
import com.m2049r.xmrwallet.util.ColorHelper;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
import com.m2049r.xmrwallet.util.MoneroThreadPoolExecutor;
|
||||
import com.m2049r.xmrwallet.widget.Toolbar;
|
||||
@ -312,11 +315,6 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
}
|
||||
|
||||
private void updateStreetMode() {
|
||||
if (isStreetMode()) {
|
||||
toolbar.setBackgroundResource(R.drawable.backgound_toolbar_streetmode);
|
||||
} else {
|
||||
showNet();
|
||||
}
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
|
||||
@ -426,10 +424,10 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
toolbar.setBackgroundResource(R.drawable.backgound_toolbar_mainnet);
|
||||
break;
|
||||
case NetworkType_Testnet:
|
||||
toolbar.setBackgroundResource(R.color.colorPrimaryDark);
|
||||
toolbar.setBackgroundResource(ColorHelper.getThemedResourceId(this, R.attr.colorPrimaryDark));
|
||||
break;
|
||||
case NetworkType_Stagenet:
|
||||
toolbar.setBackgroundResource(R.color.colorPrimaryDark);
|
||||
toolbar.setBackgroundResource(ColorHelper.getThemedResourceId(this, R.attr.colorPrimaryDark));
|
||||
break;
|
||||
default:
|
||||
throw new IllegalStateException("Unsupported Network: " + WalletManager.getInstance().getNetworkType());
|
||||
@ -667,7 +665,7 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
haveWallet = true;
|
||||
invalidateOptionsMenu();
|
||||
|
||||
enableStreetMode(requestStreetMode);
|
||||
if (requestStreetMode) onEnableStreetMode();
|
||||
|
||||
final WalletFragment walletFragment = (WalletFragment)
|
||||
getSupportFragmentManager().findFragmentById(R.id.fragment_container);
|
||||
@ -872,7 +870,7 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
}
|
||||
};
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this);
|
||||
builder.setMessage(getString(R.string.details_alert_message))
|
||||
.setPositiveButton(getString(R.string.details_alert_yes), dialogClickListener)
|
||||
.setNegativeButton(getString(R.string.details_alert_no), dialogClickListener)
|
||||
@ -1093,7 +1091,7 @@ public class WalletActivity extends BaseActivity implements WalletFragment.Liste
|
||||
final LayoutInflater li = LayoutInflater.from(this);
|
||||
final View promptsView = li.inflate(R.layout.prompt_rename, null);
|
||||
|
||||
final AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
|
||||
final AlertDialog.Builder alertDialogBuilder = new MaterialAlertDialogBuilder(this);
|
||||
alertDialogBuilder.setView(promptsView);
|
||||
|
||||
final EditText etRename = promptsView.findViewById(R.id.etRename);
|
||||
|
@ -17,12 +17,10 @@
|
||||
package com.m2049r.xmrwallet;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
@ -38,6 +36,11 @@ import android.widget.ProgressBar;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.github.brnunes.swipeablerecyclerview.SwipeableRecyclerViewTouchListener;
|
||||
import com.m2049r.xmrwallet.layout.TransactionInfoAdapter;
|
||||
import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
@ -70,6 +73,8 @@ public class WalletFragment extends Fragment
|
||||
private ProgressBar pbProgress;
|
||||
private Button bReceive;
|
||||
private Button bSend;
|
||||
private ImageView ivStreetGunther;
|
||||
private Drawable streetGunther = null;
|
||||
|
||||
private Spinner sCurrency;
|
||||
|
||||
@ -97,11 +102,12 @@ public class WalletFragment extends Fragment
|
||||
Bundle savedInstanceState) {
|
||||
View view = inflater.inflate(R.layout.fragment_wallet, container, false);
|
||||
|
||||
ivStreetGunther = view.findViewById(R.id.ivStreetGunther);
|
||||
tvStreetView = view.findViewById(R.id.tvStreetView);
|
||||
llBalance = view.findViewById(R.id.llBalance);
|
||||
flExchange = view.findViewById(R.id.flExchange);
|
||||
((ProgressBar) view.findViewById(R.id.pbExchange)).getIndeterminateDrawable().
|
||||
setColorFilter(getResources().getColor(R.color.trafficGray),
|
||||
setColorFilter(getResources().getColor(R.color.progress_circle),
|
||||
android.graphics.PorterDuff.Mode.MULTIPLY);
|
||||
|
||||
tvProgress = view.findViewById(R.id.tvProgress);
|
||||
@ -199,13 +205,15 @@ public class WalletFragment extends Fragment
|
||||
|
||||
void showBalance(String balance) {
|
||||
tvBalance.setText(balance);
|
||||
if (!activityCallback.isStreetMode()) {
|
||||
final boolean streetMode = activityCallback.isStreetMode();
|
||||
if (!streetMode) {
|
||||
llBalance.setVisibility(View.VISIBLE);
|
||||
tvStreetView.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
llBalance.setVisibility(View.INVISIBLE);
|
||||
tvStreetView.setVisibility(View.VISIBLE);
|
||||
}
|
||||
setStreetModeBackground(streetMode);
|
||||
}
|
||||
|
||||
void showUnconfirmed(double unconfirmedAmount) {
|
||||
@ -537,4 +545,13 @@ public class WalletFragment extends Fragment
|
||||
}
|
||||
}
|
||||
|
||||
public void setStreetModeBackground(boolean enable) {
|
||||
//TODO figure out why gunther disappears on return from send although he is still set
|
||||
if (enable) {
|
||||
if (streetGunther == null)
|
||||
streetGunther = ContextCompat.getDrawable(getContext(), R.drawable.ic_gunther_streetmode);
|
||||
ivStreetGunther.setImageDrawable(streetGunther);
|
||||
} else
|
||||
ivStreetGunther.setImageDrawable(null);
|
||||
}
|
||||
}
|
||||
|
@ -20,9 +20,12 @@ package com.m2049r.xmrwallet;
|
||||
import android.app.Application;
|
||||
import android.content.Context;
|
||||
import android.content.res.Configuration;
|
||||
import android.os.Build;
|
||||
|
||||
import com.m2049r.xmrwallet.model.NetworkType;
|
||||
import com.m2049r.xmrwallet.util.DayNightMode;
|
||||
import com.m2049r.xmrwallet.util.LocaleHelper;
|
||||
import com.m2049r.xmrwallet.util.NightmodeHelper;
|
||||
|
||||
import timber.log.Timber;
|
||||
|
||||
@ -34,18 +37,23 @@ public class XmrWalletApplication extends Application {
|
||||
if (BuildConfig.DEBUG) {
|
||||
Timber.plant(new Timber.DebugTree());
|
||||
}
|
||||
NightmodeHelper.setPreferredNightmode(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void attachBaseContext(Context context) {
|
||||
super.attachBaseContext(LocaleHelper.setLocale(context, LocaleHelper.getLocale(context)));
|
||||
super.attachBaseContext(LocaleHelper.setPreferredLocale(context));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onConfigurationChanged(Configuration configuration) {
|
||||
super.onConfigurationChanged(configuration);
|
||||
LocaleHelper.updateSystemDefaultLocale(configuration.locale);
|
||||
LocaleHelper.setLocale(XmrWalletApplication.this, LocaleHelper.getLocale(XmrWalletApplication.this));
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||
LocaleHelper.updateSystemDefaultLocale(configuration.getLocales().get(0));
|
||||
} else {
|
||||
LocaleHelper.updateSystemDefaultLocale(configuration.locale);
|
||||
}
|
||||
LocaleHelper.setPreferredLocale(this);
|
||||
}
|
||||
|
||||
static public NetworkType getNetworkType() {
|
||||
@ -54,7 +62,7 @@ public class XmrWalletApplication extends Application {
|
||||
return NetworkType.NetworkType_Mainnet;
|
||||
case "stagenet":
|
||||
return NetworkType.NetworkType_Stagenet;
|
||||
case "testnet":
|
||||
case "devnet": // flavors cannot start with "test"
|
||||
return NetworkType.NetworkType_Testnet;
|
||||
default:
|
||||
throw new IllegalStateException("unknown net flavor " + BuildConfig.FLAVOR_net);
|
||||
|
@ -16,26 +16,25 @@
|
||||
|
||||
package com.m2049r.xmrwallet.dialog;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.DialogFragment;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
import android.text.Html;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.m2049r.xmrwallet.BuildConfig;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import timber.log.Timber;
|
||||
@ -63,15 +62,15 @@ public class AboutFragment extends DialogFragment {
|
||||
((TextView) view.findViewById(R.id.tvHelp)).setText(Html.fromHtml(getLicencesHtml()));
|
||||
((TextView) view.findViewById(R.id.tvVersion)).setText(getString(R.string.about_version, BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE));
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setView(view);
|
||||
builder.setNegativeButton(R.string.about_close,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(getActivity())
|
||||
.setView(view)
|
||||
.setNegativeButton(R.string.about_close,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
return builder.create();
|
||||
}
|
||||
|
||||
|
@ -16,19 +16,20 @@
|
||||
|
||||
package com.m2049r.xmrwallet.dialog;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.DialogFragment;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.text.Html;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
public class CreditsFragment extends DialogFragment {
|
||||
@ -54,16 +55,15 @@ public class CreditsFragment extends DialogFragment {
|
||||
|
||||
((TextView) view.findViewById(R.id.tvCredits)).setText(Html.fromHtml(getString(R.string.credits_text)));
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setView(view);
|
||||
builder.setNegativeButton(R.string.about_close,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
|
||||
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(getActivity())
|
||||
.setView(view)
|
||||
.setNegativeButton(R.string.about_close,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
return builder.create();
|
||||
}
|
||||
}
|
@ -16,19 +16,20 @@
|
||||
|
||||
package com.m2049r.xmrwallet.dialog;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.DialogFragment;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.text.Html;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
public class HelpFragment extends DialogFragment {
|
||||
@ -65,15 +66,15 @@ public class HelpFragment extends DialogFragment {
|
||||
if (helpId > 0)
|
||||
((TextView) view.findViewById(R.id.tvHelp)).setText(Html.fromHtml(getString(helpId)));
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setView(view);
|
||||
builder.setNegativeButton(R.string.help_ok,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(getActivity())
|
||||
.setView(view)
|
||||
.setNegativeButton(R.string.help_ok,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
return builder.create();
|
||||
}
|
||||
}
|
@ -16,19 +16,20 @@
|
||||
|
||||
package com.m2049r.xmrwallet.dialog;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.DialogFragment;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.text.Html;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
public class PrivacyFragment extends DialogFragment {
|
||||
@ -54,15 +55,15 @@ public class PrivacyFragment extends DialogFragment {
|
||||
|
||||
((TextView) view.findViewById(R.id.tvCredits)).setText(Html.fromHtml(getString(R.string.privacy_policy)));
|
||||
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
builder.setView(view);
|
||||
builder.setNegativeButton(R.string.about_close,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(getActivity())
|
||||
.setView(view)
|
||||
.setNegativeButton(R.string.about_close,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int id) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
return builder.create();
|
||||
}
|
||||
}
|
@ -17,7 +17,6 @@ package com.m2049r.xmrwallet.dialog;
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
@ -26,6 +25,8 @@ import android.view.WindowManager;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
|
||||
import com.m2049r.xmrwallet.BuildConfig;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
|
@ -19,8 +19,6 @@ package com.m2049r.xmrwallet.fragment.send;
|
||||
import android.content.Context;
|
||||
import android.nfc.NfcManager;
|
||||
import android.os.Bundle;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.support.v7.widget.CardView;
|
||||
import android.text.Editable;
|
||||
import android.text.Html;
|
||||
import android.text.InputType;
|
||||
@ -36,6 +34,7 @@ import android.widget.ImageButton;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.data.BarcodeData;
|
||||
import com.m2049r.xmrwallet.data.TxData;
|
||||
@ -86,7 +85,7 @@ public class SendAddressWizardFragment extends SendWizardFragment {
|
||||
private EditText etDummy;
|
||||
private TextInputLayout etAddress;
|
||||
private TextInputLayout etNotes;
|
||||
private CardView cvScan;
|
||||
private View cvScan;
|
||||
private View tvPaymentIdIntegrated;
|
||||
private TextView tvXmrTo;
|
||||
private View llXmrTo;
|
||||
|
@ -18,6 +18,12 @@ package com.m2049r.xmrwallet.fragment.send;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@ -25,6 +31,8 @@ import android.widget.Button;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.data.TxData;
|
||||
import com.m2049r.xmrwallet.data.TxDataBtc;
|
||||
|
@ -80,12 +80,10 @@ public class SendBtcSuccessWizardFragment extends SendWizardFragment {
|
||||
R.layout.fragment_send_btc_success, container, false);
|
||||
|
||||
bCopyTxId = view.findViewById(R.id.bCopyTxId);
|
||||
bCopyTxId.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
Helper.clipBoardCopy(getActivity(), getString(R.string.label_send_txid), tvTxId.getText().toString());
|
||||
Toast.makeText(getActivity(), getString(R.string.message_copy_txid), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
bCopyTxId.setEnabled(false);
|
||||
bCopyTxId.setOnClickListener(v -> {
|
||||
Helper.clipBoardCopy(getActivity(), getString(R.string.label_send_txid), tvTxId.getText().toString());
|
||||
Toast.makeText(getActivity(), getString(R.string.message_copy_txid), Toast.LENGTH_SHORT).show();
|
||||
});
|
||||
|
||||
tvXmrToAmount = view.findViewById(R.id.tvXmrToAmount);
|
||||
@ -143,7 +141,6 @@ public class SendBtcSuccessWizardFragment extends SendWizardFragment {
|
||||
if (committedTx != null) {
|
||||
tvTxId.setText(committedTx.txId);
|
||||
bCopyTxId.setEnabled(true);
|
||||
bCopyTxId.setImageResource(R.drawable.ic_content_copy_black_24dp);
|
||||
tvTxAmount.setText(getString(R.string.send_amount, Helper.getDisplayAmount(committedTx.amount)));
|
||||
tvTxFee.setText(getString(R.string.send_fee, Helper.getDisplayAmount(committedTx.fee)));
|
||||
if (btcData != null) {
|
||||
|
@ -17,12 +17,18 @@
|
||||
package com.m2049r.xmrwallet.fragment.send;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.AlertDialog;
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.data.TxData;
|
||||
import com.m2049r.xmrwallet.data.UserNotes;
|
||||
@ -147,7 +153,7 @@ public class SendConfirmWizardFragment extends SendWizardFragment implements Sen
|
||||
}
|
||||
|
||||
private void showAlert(String title, String message) {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
|
||||
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(getActivity());
|
||||
builder.setCancelable(true).
|
||||
setTitle(title).
|
||||
setMessage(message).
|
||||
|
@ -18,13 +18,7 @@ package com.m2049r.xmrwallet.fragment.send;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentStatePagerAdapter;
|
||||
import android.support.v4.view.ViewPager;
|
||||
import android.text.InputType;
|
||||
import android.util.SparseArray;
|
||||
import android.view.LayoutInflater;
|
||||
@ -35,6 +29,12 @@ import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentStatePagerAdapter;
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
|
||||
import com.m2049r.xmrwallet.OnBackPressedListener;
|
||||
import com.m2049r.xmrwallet.OnUriScannedListener;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
@ -93,8 +93,6 @@ public class SendFragment extends Fragment
|
||||
}
|
||||
|
||||
private EditText etDummy;
|
||||
private Drawable arrowPrev;
|
||||
private Drawable arrowNext;
|
||||
|
||||
private View llNavBar;
|
||||
private DotBar dotBar;
|
||||
@ -125,8 +123,6 @@ public class SendFragment extends Fragment
|
||||
dotBar = view.findViewById(R.id.dotBar);
|
||||
bPrev = view.findViewById(R.id.bPrev);
|
||||
bNext = view.findViewById(R.id.bNext);
|
||||
arrowPrev = getResources().getDrawable(R.drawable.ic_navigate_prev_white_24dp);
|
||||
arrowNext = getResources().getDrawable(R.drawable.ic_navigate_next_white_24dp);
|
||||
|
||||
ViewGroup llNotice = view.findViewById(R.id.llNotice);
|
||||
Notice.showAll(llNotice, ".*_send");
|
||||
@ -214,16 +210,16 @@ public class SendFragment extends Fragment
|
||||
CharSequence nextLabel = pagerAdapter.getPageTitle(position + 1);
|
||||
bNext.setText(nextLabel);
|
||||
if (nextLabel != null) {
|
||||
bNext.setCompoundDrawablesWithIntrinsicBounds(null, null, arrowNext, null);
|
||||
bNext.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_navigate_next_white_24dp, 0);
|
||||
} else {
|
||||
bNext.setCompoundDrawables(null, null, null, null);
|
||||
bNext.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
|
||||
}
|
||||
CharSequence prevLabel = pagerAdapter.getPageTitle(position - 1);
|
||||
bPrev.setText(prevLabel);
|
||||
if (prevLabel != null) {
|
||||
bPrev.setCompoundDrawablesWithIntrinsicBounds(arrowPrev, null, null, null);
|
||||
bPrev.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_navigate_prev_white_24dp, 0, 0, 0);
|
||||
} else {
|
||||
bPrev.setCompoundDrawables(null, null, null, null);
|
||||
bPrev.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -76,12 +76,10 @@ public class SendSuccessWizardFragment extends SendWizardFragment {
|
||||
R.layout.fragment_send_success, container, false);
|
||||
|
||||
bCopyTxId = view.findViewById(R.id.bCopyTxId);
|
||||
bCopyTxId.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
Helper.clipBoardCopy(getActivity(), getString(R.string.label_send_txid), tvTxId.getText().toString());
|
||||
Toast.makeText(getActivity(), getString(R.string.message_copy_txid), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
bCopyTxId.setEnabled(false);
|
||||
bCopyTxId.setOnClickListener(v -> {
|
||||
Helper.clipBoardCopy(getActivity(), getString(R.string.label_send_txid), tvTxId.getText().toString());
|
||||
Toast.makeText(getActivity(), getString(R.string.message_copy_txid), Toast.LENGTH_SHORT).show();
|
||||
});
|
||||
|
||||
tvTxId = view.findViewById(R.id.tvTxId);
|
||||
@ -116,7 +114,6 @@ public class SendSuccessWizardFragment extends SendWizardFragment {
|
||||
if (committedTx != null) {
|
||||
tvTxId.setText(committedTx.txId);
|
||||
bCopyTxId.setEnabled(true);
|
||||
bCopyTxId.setImageResource(R.drawable.ic_content_copy_black_24dp);
|
||||
|
||||
if (sendListener.getActivityCallback().isStreetMode()
|
||||
&& (sendListener.getTxData().getAmount() == Wallet.SWEEP_ALL)) {
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.fragment.send;
|
||||
|
||||
import android.support.v4.app.Fragment;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.m2049r.xmrwallet.layout.SpendViewPager;
|
||||
|
||||
|
@ -17,8 +17,8 @@
|
||||
package com.m2049r.xmrwallet.layout;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@ -170,16 +170,16 @@ public class NodeInfoAdapter extends RecyclerView.Adapter<NodeInfoAdapter.ViewHo
|
||||
if (nodeInfo.isValid()) {
|
||||
final double ping = nodeInfo.getResponseTime();
|
||||
if (ping < NodeInfo.PING_GOOD) {
|
||||
return R.drawable.ic_signal_wifi_4_bar_black_24dp;
|
||||
return R.drawable.ic_signal_wifi_4_bar_24dp;
|
||||
} else if (ping < NodeInfo.PING_MEDIUM) {
|
||||
return R.drawable.ic_signal_wifi_3_bar_black_24dp;
|
||||
return R.drawable.ic_signal_wifi_3_bar_24dp;
|
||||
} else if (ping < NodeInfo.PING_BAD) {
|
||||
return R.drawable.ic_signal_wifi_2_bar_black_24dp;
|
||||
return R.drawable.ic_signal_wifi_2_bar_24dp;
|
||||
} else {
|
||||
return R.drawable.ic_signal_wifi_1_bar_black_24dp;
|
||||
return R.drawable.ic_signal_wifi_1_bar_24dp;
|
||||
}
|
||||
} else {
|
||||
return R.drawable.ic_signal_wifi_off_black_24dp;
|
||||
return R.drawable.ic_signal_wifi_off_24dp;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
||||
package com.m2049r.xmrwallet.layout;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.v4.view.ViewPager;
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.MotionEvent;
|
||||
|
||||
|
@ -17,8 +17,8 @@
|
||||
package com.m2049r.xmrwallet.layout;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@ -30,7 +30,6 @@ import com.m2049r.xmrwallet.model.TransactionInfo;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
import com.m2049r.xmrwallet.data.UserNotes;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
@ -61,8 +60,8 @@ public class TransactionInfoAdapter extends RecyclerView.Adapter<TransactionInfo
|
||||
|
||||
public TransactionInfoAdapter(Context context, OnInteractionListener listener) {
|
||||
this.context = context;
|
||||
inboundColour = ContextCompat.getColor(context, R.color.tx_green);
|
||||
outboundColour = ContextCompat.getColor(context, R.color.tx_red);
|
||||
inboundColour = ContextCompat.getColor(context, R.color.tx_plus);
|
||||
outboundColour = ContextCompat.getColor(context, R.color.tx_minus);
|
||||
pendingColour = ContextCompat.getColor(context, R.color.tx_pending);
|
||||
failedColour = ContextCompat.getColor(context, R.color.tx_failed);
|
||||
infoItems = new ArrayList<>();
|
||||
|
@ -17,8 +17,8 @@
|
||||
package com.m2049r.xmrwallet.layout;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.v7.widget.PopupMenu;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import androidx.appcompat.widget.PopupMenu;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
|
@ -16,8 +16,8 @@
|
||||
|
||||
package com.m2049r.xmrwallet.model;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.m2049r.xmrwallet.data.TxData;
|
||||
|
||||
|
@ -18,14 +18,15 @@ package com.m2049r.xmrwallet.onboarding;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.design.widget.TabLayout;
|
||||
import android.support.v4.view.ViewPager;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
import android.util.TypedValue;
|
||||
import android.view.View;
|
||||
import android.widget.Button;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
|
||||
import com.google.android.material.tabs.TabLayout;
|
||||
import com.m2049r.xmrwallet.LoginActivity;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.util.KeyStoreHelper;
|
||||
@ -44,7 +45,7 @@ public class OnBoardingActivity extends AppCompatActivity implements OnBoardingA
|
||||
nextButton = findViewById(R.id.buttonNext);
|
||||
|
||||
pager = findViewById(R.id.pager);
|
||||
pagerAdapter = new OnBoardingAdapter(getApplicationContext(), this);
|
||||
pagerAdapter = new OnBoardingAdapter(this, this);
|
||||
pager.setAdapter(pagerAdapter);
|
||||
int pixels = (int) TypedValue.applyDimension(
|
||||
TypedValue.COMPLEX_UNIT_DIP, 16, getResources().getDisplayMetrics());
|
||||
|
@ -18,9 +18,6 @@ package com.m2049r.xmrwallet.onboarding;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import android.support.v4.view.PagerAdapter;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@ -28,6 +25,10 @@ import android.widget.CheckBox;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.viewpager.widget.PagerAdapter;
|
||||
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
import timber.log.Timber;
|
||||
|
@ -18,10 +18,11 @@
|
||||
package com.m2049r.xmrwallet.onboarding;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.v4.view.ViewPager;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.MotionEvent;
|
||||
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
|
||||
public class OnBoardingViewPager extends ViewPager {
|
||||
|
||||
public enum SwipeDirection {
|
||||
|
@ -31,9 +31,10 @@ import android.os.IBinder;
|
||||
import android.os.Looper;
|
||||
import android.os.Message;
|
||||
import android.os.Process;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.annotation.RequiresApi;
|
||||
import android.support.v4.app.NotificationCompat;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.RequiresApi;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.WalletActivity;
|
||||
@ -429,7 +430,7 @@ public class WalletService extends Service {
|
||||
|
||||
@Override
|
||||
protected void attachBaseContext(Context context) {
|
||||
super.attachBaseContext(LocaleHelper.setLocale(context, LocaleHelper.getLocale(context)));
|
||||
super.attachBaseContext(LocaleHelper.setPreferredLocale(context));
|
||||
}
|
||||
|
||||
public class WalletServiceBinder extends Binder {
|
||||
|
@ -18,7 +18,7 @@
|
||||
package com.m2049r.xmrwallet.service.exchange.api;
|
||||
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
|
||||
public interface ExchangeApi {
|
||||
|
@ -18,8 +18,8 @@
|
||||
|
||||
package com.m2049r.xmrwallet.service.exchange.ecb;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.VisibleForTesting;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeApi;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeCallback;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.service.exchange.ecb;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeRate;
|
||||
|
||||
|
@ -16,8 +16,8 @@
|
||||
|
||||
package com.m2049r.xmrwallet.service.exchange.kraken;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.VisibleForTesting;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeApi;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeCallback;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.service.exchange.kraken;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeException;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeRate;
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.service.exchange.krakenEcb;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeApi;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeCallback;
|
||||
|
@ -16,12 +16,10 @@
|
||||
|
||||
package com.m2049r.xmrwallet.service.exchange.krakenEcb;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeRate;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
class ExchangeRateImpl implements ExchangeRate {
|
||||
private final String baseCurrency;
|
||||
private final String quoteCurrency;
|
||||
|
13
app/src/main/java/com/m2049r/xmrwallet/util/ColorHelper.java
Normal file
13
app/src/main/java/com/m2049r/xmrwallet/util/ColorHelper.java
Normal file
@ -0,0 +1,13 @@
|
||||
package com.m2049r.xmrwallet.util;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
public class ColorHelper {
|
||||
static public int getThemedResourceId(Context ctx, int attrId) {
|
||||
TypedArray styledAttributes = ctx.getTheme().obtainStyledAttributes(R.style.MyMaterialTheme, new int[]{attrId});
|
||||
return styledAttributes.getResourceId(0, 0);
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.m2049r.xmrwallet.util;
|
||||
|
||||
import androidx.appcompat.app.AppCompatDelegate;
|
||||
|
||||
public enum DayNightMode {
|
||||
// order must match R.array.daynight_themes
|
||||
AUTO(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM),
|
||||
DAY(AppCompatDelegate.MODE_NIGHT_NO),
|
||||
NIGHT(AppCompatDelegate.MODE_NIGHT_YES),
|
||||
UNKNOWN(AppCompatDelegate.MODE_NIGHT_UNSPECIFIED);
|
||||
|
||||
final private int nightMode;
|
||||
|
||||
DayNightMode(int nightMode) {
|
||||
this.nightMode = nightMode;
|
||||
}
|
||||
|
||||
public int getNightMode() {
|
||||
return nightMode;
|
||||
}
|
||||
|
||||
static public DayNightMode getValue(int nightMode) {
|
||||
for (DayNightMode mode : DayNightMode.values()) {
|
||||
if (mode.nightMode == nightMode)
|
||||
return mode;
|
||||
}
|
||||
return UNKNOWN;
|
||||
}
|
||||
}
|
@ -18,7 +18,6 @@ package com.m2049r.xmrwallet.util;
|
||||
|
||||
import android.Manifest;
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.ClipData;
|
||||
import android.content.ClipDescription;
|
||||
@ -38,8 +37,6 @@ import android.os.Build;
|
||||
import android.os.CancellationSignal;
|
||||
import android.os.Environment;
|
||||
import android.os.StrictMode;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import android.system.ErrnoException;
|
||||
import android.system.Os;
|
||||
import android.text.Editable;
|
||||
@ -55,6 +52,11 @@ import android.view.inputmethod.InputMethodManager;
|
||||
import android.widget.Button;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.core.content.ContextCompat;
|
||||
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.BuildConfig;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.model.NetworkType;
|
||||
@ -424,7 +426,7 @@ public class Helper {
|
||||
LayoutInflater li = LayoutInflater.from(context);
|
||||
final View promptsView = li.inflate(R.layout.prompt_password, null);
|
||||
|
||||
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
|
||||
AlertDialog.Builder alertDialogBuilder = new MaterialAlertDialogBuilder(context);
|
||||
alertDialogBuilder.setView(promptsView);
|
||||
|
||||
final TextInputLayout etPassword = promptsView.findViewById(R.id.etPassword);
|
||||
|
@ -24,7 +24,7 @@ import android.os.Build;
|
||||
import android.security.KeyPairGeneratorSpec;
|
||||
import android.security.keystore.KeyGenParameterSpec;
|
||||
import android.security.keystore.KeyProperties;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.Base64;
|
||||
|
||||
import java.io.IOException;
|
||||
|
@ -8,7 +8,6 @@ import android.preference.PreferenceManager;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.Locale;
|
||||
|
||||
public class LocaleHelper {
|
||||
@ -17,6 +16,7 @@ public class LocaleHelper {
|
||||
|
||||
public static ArrayList<Locale> getAvailableLocales(Context context) {
|
||||
ArrayList<Locale> locales = new ArrayList<>();
|
||||
// R.string.available_locales gets generated in build.gradle by enumerating values-* folders
|
||||
String[] availableLocales = context.getString(R.string.available_locales).split(",");
|
||||
|
||||
for (String localeName : availableLocales) {
|
||||
@ -36,20 +36,22 @@ public class LocaleHelper {
|
||||
return displayName;
|
||||
}
|
||||
|
||||
public static String getLocale(Context context) {
|
||||
return getPreferredLocale(context);
|
||||
public static Context setPreferredLocale(Context context) {
|
||||
return setLocale(context, getPreferredLanguageTag(context));
|
||||
}
|
||||
|
||||
public static Context setLocale(Context context, String locale) {
|
||||
setPreferredLocale(context, locale);
|
||||
public static Context setAndSaveLocale(Context context, String langaugeTag) {
|
||||
savePreferredLangaugeTag(context, langaugeTag);
|
||||
return setLocale(context, langaugeTag);
|
||||
}
|
||||
|
||||
private static Context setLocale(Context context, String languageTag) {
|
||||
Locale locale = (languageTag.isEmpty()) ? SYSTEM_DEFAULT_LOCALE : Locale.forLanguageTag(languageTag);
|
||||
Locale.setDefault(locale);
|
||||
|
||||
Locale newLocale = (locale.isEmpty()) ? SYSTEM_DEFAULT_LOCALE : Locale.forLanguageTag(locale);
|
||||
Configuration configuration = context.getResources().getConfiguration();
|
||||
|
||||
Locale.setDefault(newLocale);
|
||||
|
||||
configuration.setLocale(newLocale);
|
||||
configuration.setLayoutDirection(newLocale);
|
||||
configuration.setLocale(locale);
|
||||
configuration.setLayoutDirection(locale);
|
||||
|
||||
return context.createConfigurationContext(configuration);
|
||||
}
|
||||
@ -68,13 +70,18 @@ public class LocaleHelper {
|
||||
+ str.substring(firstCodePointLen);
|
||||
}
|
||||
|
||||
private static String getPreferredLocale(Context context) {
|
||||
public static Locale getPreferredLocale(Context context) {
|
||||
String languageTag = getPreferredLanguageTag(context);
|
||||
return languageTag.isEmpty() ? SYSTEM_DEFAULT_LOCALE : Locale.forLanguageTag(languageTag);
|
||||
}
|
||||
|
||||
public static String getPreferredLanguageTag(Context context) {
|
||||
return PreferenceManager.getDefaultSharedPreferences(context)
|
||||
.getString(PREFERRED_LOCALE_KEY, "");
|
||||
}
|
||||
|
||||
@SuppressLint("ApplySharedPref")
|
||||
private static void setPreferredLocale(Context context, String locale) {
|
||||
private static void savePreferredLangaugeTag(Context context, String locale) {
|
||||
PreferenceManager.getDefaultSharedPreferences(context).edit()
|
||||
.putString(PREFERRED_LOCALE_KEY, locale).commit();
|
||||
}
|
||||
|
@ -0,0 +1,32 @@
|
||||
package com.m2049r.xmrwallet.util;
|
||||
|
||||
import android.content.Context;
|
||||
import android.preference.PreferenceManager;
|
||||
|
||||
import androidx.appcompat.app.AppCompatDelegate;
|
||||
|
||||
public class NightmodeHelper {
|
||||
private static final String PREFERRED_NIGHTMODE_KEY = "preferred_nightmode";
|
||||
|
||||
public static DayNightMode getPreferredNightmode(Context context) {
|
||||
return DayNightMode.valueOf(PreferenceManager.getDefaultSharedPreferences(context)
|
||||
.getString(PREFERRED_NIGHTMODE_KEY, "UNKNOWN"));
|
||||
}
|
||||
|
||||
public static void setPreferredNightmode(Context context) {
|
||||
final DayNightMode mode = DayNightMode.valueOf(PreferenceManager.getDefaultSharedPreferences(context)
|
||||
.getString(PREFERRED_NIGHTMODE_KEY, "UNKNOWN"));
|
||||
if (mode == DayNightMode.UNKNOWN) setAndSavePreferredNightmode(context, DayNightMode.AUTO);
|
||||
setNightMode(mode);
|
||||
}
|
||||
|
||||
public static void setAndSavePreferredNightmode(Context context, DayNightMode mode) {
|
||||
PreferenceManager.getDefaultSharedPreferences(context).edit()
|
||||
.putString(PREFERRED_NIGHTMODE_KEY, mode.name()).apply();
|
||||
setNightMode(mode);
|
||||
}
|
||||
|
||||
public static void setNightMode(DayNightMode mode) {
|
||||
AppCompatDelegate.setDefaultNightMode(mode.getNightMode());
|
||||
}
|
||||
}
|
@ -18,8 +18,8 @@ package com.m2049r.xmrwallet.util;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.support.v4.app.FragmentActivity;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
@ -19,7 +19,7 @@
|
||||
package com.m2049r.xmrwallet.widget;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import android.util.AttributeSet;
|
||||
import android.widget.EditText;
|
||||
|
||||
|
@ -20,7 +20,7 @@ package com.m2049r.xmrwallet.widget;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Rect;
|
||||
import android.support.v7.widget.AppCompatAutoCompleteTextView;
|
||||
import androidx.appcompat.widget.AppCompatAutoCompleteTextView;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
public class DropDownEditText extends AppCompatAutoCompleteTextView {
|
||||
|
@ -28,13 +28,13 @@ import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.ArrayAdapter;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeApi;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeCallback;
|
||||
@ -51,7 +51,7 @@ import timber.log.Timber;
|
||||
public class ExchangeEditText extends LinearLayout {
|
||||
|
||||
private double getEnteredAmount() {
|
||||
String enteredAmount = etAmountA.getText().toString();
|
||||
String enteredAmount = etAmountA.getEditText().getText().toString();
|
||||
try {
|
||||
return Double.parseDouble(enteredAmount);
|
||||
} catch (NumberFormatException ex) {
|
||||
@ -98,7 +98,7 @@ public class ExchangeEditText extends LinearLayout {
|
||||
|
||||
public void setAmount(String nativeAmount) {
|
||||
if (nativeAmount != null) {
|
||||
etAmountA.setText(nativeAmount);
|
||||
etAmountA.getEditText().setText(nativeAmount);
|
||||
tvAmountB.setText(null);
|
||||
if (sCurrencyA.getSelectedItemPosition() != 0)
|
||||
sCurrencyA.setSelection(0, true); // set native currency & trigger exchange
|
||||
@ -116,12 +116,12 @@ public class ExchangeEditText extends LinearLayout {
|
||||
public String getNativeAmount() {
|
||||
if (isExchangeInProgress()) return null;
|
||||
if (getCurrencyA() == 0)
|
||||
return getCleanAmountString(etAmountA.getText().toString());
|
||||
return getCleanAmountString(etAmountA.getEditText().getText().toString());
|
||||
else
|
||||
return getCleanAmountString(tvAmountB.getText().toString());
|
||||
}
|
||||
|
||||
EditText etAmountA;
|
||||
TextInputLayout etAmountA;
|
||||
TextView tvAmountB;
|
||||
Spinner sCurrencyA;
|
||||
Spinner sCurrencyB;
|
||||
@ -188,7 +188,7 @@ public class ExchangeEditText extends LinearLayout {
|
||||
protected void onFinishInflate() {
|
||||
super.onFinishInflate();
|
||||
etAmountA = findViewById(R.id.etAmountA);
|
||||
etAmountA.addTextChangedListener(new TextWatcher() {
|
||||
etAmountA.getEditText().addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void afterTextChanged(Editable s) {
|
||||
doExchange();
|
||||
@ -223,7 +223,7 @@ public class ExchangeEditText extends LinearLayout {
|
||||
|
||||
// make progress circle gray
|
||||
pbExchange.getIndeterminateDrawable().
|
||||
setColorFilter(getResources().getColor(R.color.trafficGray),
|
||||
setColorFilter(getResources().getColor(R.color.progress_circle),
|
||||
android.graphics.PorterDuff.Mode.MULTIPLY);
|
||||
|
||||
sCurrencyA.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
|
||||
@ -363,7 +363,7 @@ public class ExchangeEditText extends LinearLayout {
|
||||
|
||||
boolean prepareExchange() {
|
||||
Timber.d("prepareExchange()");
|
||||
String enteredAmount = etAmountA.getText().toString();
|
||||
String enteredAmount = etAmountA.getEditText().getText().toString();
|
||||
if (!enteredAmount.isEmpty()) {
|
||||
String cleanAmount = getCleanAmountString(enteredAmount);
|
||||
Timber.d("cleanAmount = %s", cleanAmount);
|
||||
|
@ -21,7 +21,6 @@ package com.m2049r.xmrwallet.widget;
|
||||
import android.content.Context;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.support.design.widget.TextInputLayout;
|
||||
import android.text.Editable;
|
||||
import android.text.TextWatcher;
|
||||
import android.util.AttributeSet;
|
||||
@ -37,11 +36,13 @@ import android.widget.ProgressBar;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
import com.m2049r.xmrwallet.model.Wallet;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeApi;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeCallback;
|
||||
import com.m2049r.xmrwallet.service.exchange.api.ExchangeRate;
|
||||
import com.m2049r.xmrwallet.util.ColorHelper;
|
||||
import com.m2049r.xmrwallet.util.Helper;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@ -178,10 +179,9 @@ public class ExchangeView extends LinearLayout {
|
||||
|
||||
// make progress circle gray
|
||||
pbExchange.getIndeterminateDrawable().
|
||||
setColorFilter(getResources().getColor(R.color.trafficGray),
|
||||
setColorFilter(getResources().getColor(ColorHelper.getThemedResourceId(getContext(), R.attr.colorPrimaryVariant)),
|
||||
android.graphics.PorterDuff.Mode.MULTIPLY);
|
||||
|
||||
|
||||
sCurrencyA.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
|
||||
@Override
|
||||
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
|
||||
@ -203,12 +203,6 @@ public class ExchangeView extends LinearLayout {
|
||||
if (position != 0) { // if not XMR, select XMR on other
|
||||
sCurrencyA.setSelection(0, true);
|
||||
}
|
||||
parentView.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
((TextView) parentView.getChildAt(0)).setTextColor(getResources().getColor(R.color.moneroGray));
|
||||
}
|
||||
});
|
||||
doExchange();
|
||||
}
|
||||
|
||||
|
@ -23,15 +23,16 @@ import android.os.Build;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.Button;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.google.android.material.appbar.MaterialToolbar;
|
||||
import com.m2049r.xmrwallet.R;
|
||||
|
||||
import timber.log.Timber;
|
||||
|
||||
public class Toolbar extends android.support.v7.widget.Toolbar {
|
||||
public class Toolbar extends MaterialToolbar {
|
||||
public interface OnButtonListener {
|
||||
void onButton(int type);
|
||||
}
|
||||
@ -45,7 +46,7 @@ public class Toolbar extends android.support.v7.widget.Toolbar {
|
||||
ImageView toolbarImage;
|
||||
TextView toolbarTitle;
|
||||
TextView toolbarSubtitle;
|
||||
Button bCredits;
|
||||
ImageButton bCredits;
|
||||
|
||||
public Toolbar(Context context) {
|
||||
super(context);
|
||||
@ -125,33 +126,27 @@ public class Toolbar extends android.support.v7.widget.Toolbar {
|
||||
switch (type) {
|
||||
case BUTTON_BACK:
|
||||
Timber.d("BUTTON_BACK");
|
||||
bCredits.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_arrow_back_white_24dp, 0, 0, 0);
|
||||
bCredits.setText(null);
|
||||
bCredits.setImageResource(R.drawable.ic_arrow_back_white_24dp);
|
||||
bCredits.setVisibility(View.VISIBLE);
|
||||
break;
|
||||
case BUTTON_CLOSE:
|
||||
Timber.d("BUTTON_CLOSE");
|
||||
bCredits.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_close_white_24dp, 0, 0, 0);
|
||||
bCredits.setText(R.string.label_close);
|
||||
bCredits.setImageResource(R.drawable.ic_close_white_24dp);
|
||||
bCredits.setVisibility(View.VISIBLE);
|
||||
break;
|
||||
case BUTTON_CREDITS:
|
||||
Timber.d("BUTTON_CREDITS");
|
||||
bCredits.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_favorite_white_24dp, 0, 0, 0);
|
||||
bCredits.setText(R.string.label_credits);
|
||||
bCredits.setImageResource(R.drawable.ic_favorite_white_24dp);
|
||||
bCredits.setVisibility(View.VISIBLE);
|
||||
break;
|
||||
case BUTTON_CANCEL:
|
||||
Timber.d("BUTTON_CANCEL");
|
||||
bCredits.setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_close_white_24dp, 0, 0, 0);
|
||||
bCredits.setText(R.string.label_cancel);
|
||||
bCredits.setImageResource(R.drawable.ic_close_white_24dp);
|
||||
bCredits.setVisibility(View.VISIBLE);
|
||||
break;
|
||||
case BUTTON_NONE:
|
||||
default:
|
||||
Timber.d("BUTTON_NONE");
|
||||
bCredits.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
|
||||
bCredits.setText(null);
|
||||
bCredits.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
buttonType = type;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.xmrto.api;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
public interface XmrToApi {
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.xmrto.network;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.xmrto.api.CreateOrder;
|
||||
import com.m2049r.xmrwallet.xmrto.api.XmrToCallback;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.xmrto.network;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.xmrto.api.XmrToCallback;
|
||||
import com.m2049r.xmrwallet.xmrto.api.QueryOrderParameters;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.xmrto.network;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.xmrto.api.XmrToCallback;
|
||||
import com.m2049r.xmrwallet.xmrto.api.QueryOrderStatus;
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.xmrto.network;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import org.json.JSONObject;
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
package com.m2049r.xmrwallet.xmrto.network;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.m2049r.xmrwallet.util.OkHttpHelper;
|
||||
import com.m2049r.xmrwallet.xmrto.XmrToError;
|
||||
|
5
app/src/main/res/color/btn_color_selector.xml
Normal file
5
app/src/main/res/color/btn_color_selector.xml
Normal file
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="?attr/colorSecondary" android:state_enabled="true"/>
|
||||
<item android:color="?attr/colorOnBackground"/>
|
||||
</selector>
|
1083
app/src/main/res/drawable-night/ic_emptygunther.xml
Normal file
1083
app/src/main/res/drawable-night/ic_emptygunther.xml
Normal file
File diff suppressed because it is too large
Load Diff
180
app/src/main/res/drawable-night/ic_gunther_streetmode.xml
Normal file
180
app/src/main/res/drawable-night/ic_gunther_streetmode.xml
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1,72 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="774dp"
|
||||
android:height="774dp"
|
||||
android:viewportWidth="774"
|
||||
android:viewportHeight="774">
|
||||
<path
|
||||
android:pathData="M595.29,577.34c-9.38,-25.79 -17.49,-52 -27,-77.78 -9.19,-25 -19,-49.82 -27.29,-75.15 -8.62,-26.23 -17.93,-52.24 -27.3,-78.21 -8.09,-22.43 -18.19,-44.59 -33.22,-63.28a223,223 0,0 0,-48.06 -44.33c-34.44,-23.42 -79.24,-35.76 -120.51,-26.7 -20.09,4.41 -39.15,14.47 -53.06,29.76C243.68,258.34 232,279.29 223.34,300c-18.75,45 -21.34,94.88 -13.26,142.5 4.52,26.73 12,52.85 19.94,78.73 7.86,25.65 16.56,50.84 27.47,75.38 10.75,24.17 23.89,46.71 38,69s27.69,44.76 42,66.86Q343.64,742 350,751.4c2.58,-1.38 5.16,-2.81 7.73,-4.24 -11.52,-17.58 -22.59,-35.45 -33.46,-53.44 -13.27,-22 -27.42,-43.5 -39.94,-65.91 -25.39,-45.44 -41.14,-95.93 -54.26,-146.08 -12.66,-48.42 -18.28,-98.42 -5.85,-147.53a211.69,211.69 0,0 1,25.54 -59.8c11.24,-18.07 24.06,-34 43.55,-43.5 36.69,-17.83 82.18,-10 117,8.56 18.45,9.84 34.55,23.17 48.86,38.34 15.7,16.65 27.24,35.37 36,56.51 9.9,24 18.06,48.89 26.46,73.45 8.49,24.82 16.9,49.59 26.12,74.16 18.45,49.18 33.46,99.53 54.69,147.65 0.76,1.73 1.54,3.45 2.32,5.18a12.83,12.83 0,0 0,1.38 -0.11,39.15 39.15,0 0,0 9.41,-5.86c0.12,-0.18 0.22,-0.36 0.33,-0.55Q604.66,603.14 595.29,577.34Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M443,535.05c-9.66,-14.47 -21.79,-27.21 -31.84,-41.43 -10.47,-14.83 -20,-30.6 -26.62,-47.55 -7.14,-18.3 -9.86,-37.42 -11,-56.94 -0.78,-13.7 0,-28.5 -3.77,-41.85 -3,-10.56 -10.65,-19.25 -22.53,-17.91 -12.71,1.44 -20.3,14.87 -24.9,25.38 -6.76,15.46 -8.81,31.15 -7.33,47.95 1.65,18.69 6.22,36.94 12.29,54.66 3.42,10 7.2,19.82 11.25,29.55s8.53,19.33 11.74,29.37c3,9.45 4,18.9 4.94,28.71 0.75,7.39 2.78,17.49 -3,23.42 -0.47,0.49 0.17,1.42 0.76,1 9.13,-7 6.65,-22.64 6,-32.59 -1.15,-17.94 -7.66,-34.25 -14.15,-50.79 -6.71,-17.09 -13.51,-34.11 -18.15,-51.91 -4.73,-18.15 -8.42,-38 -5.61,-56.71 1.91,-12.71 7.55,-28.31 16.85,-37.53 4.52,-4.47 10.76,-6.77 16.94,-4.31 5.31,2.11 8,7.5 9.47,12.7 3.6,13 2.5,27.56 3.26,40.88 1,18.45 3.34,36.79 9.59,54.27 6.4,17.89 15.86,34.49 26.79,50 10.74,15.24 22.42,31.16 36.23,43.76C441.68,538.41 444.16,536.76 443,535.05Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M424.89,538.23c-10.41,-8.27 -19.14,-16.77 -25.73,-28.46 -3.49,-6.19 -6.3,-12.72 -9.62,-19 -3.5,-6.59 -7.23,-13 -10.51,-19.76 -7.34,-15 -10.51,-31.46 -12.52,-48a224.34,224.34 0,0 1,-1.86 -24.84c-0.09,-8.38 0.27,-16.77 -0.2,-25.15s-1.77,-23.83 -13.14,-24.78 -16.51,14.32 -18.67,22.85c-7.16,28.24 -0.62,60 9.17,86.81 5.92,16.24 14.6,31.24 19.91,47.73 5.49,17 9.18,35.23 9.74,53.16a0.63,0.63 0,0 0,0.7 0.55,0.64 0.64,0 0,0 0.55,-0.55 173.37,173.37 0,0 0,-18.64 -82.25c-13.07,-26.27 -21.37,-55.43 -19.77,-85a92.86,92.86 0,0 1,3.55 -22.09c1.66,-5.49 4.37,-13.78 10.31,-16.09 13.33,-5.19 11.89,25.67 11.87,31.86 -0.12,29.29 1.57,60.74 14.6,87.53 3.37,6.94 7.26,13.61 10.9,20.41 3.56,6.65 6.55,13.59 10.38,20.1 6.53,11.11 15.39,21.56 26.81,27.82C424.42,542 426.54,539.55 424.89,538.23Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M390.13,523.12c-3.83,-9.46 -8.8,-18.37 -13.47,-27.43 -5.16,-10 -9.92,-20.29 -14.33,-30.65a282.84,282.84 0,0 1,-11.21 -32.67c-3,-10.33 -6.19,-20.71 -7.34,-31.45 -1,-9.14 -1.76,-22.56 4.35,-30.32 1.48,-1.88 2.09,-1.78 3.15,0.45a19.83,19.83 0,0 1,1.51 8.47c0,6 -1.57,12.18 -2.9,18a0.74,0.74 0,1 0,1.43 0.39c3.34,-8.48 7,-18 4.06,-27.15 -1.35,-4.25 -4.78,-8 -9,-4.39 -5,4.23 -6.44,12.42 -7.15,18.49 -1.19,10.21 0.09,20.46 2.39,30.41A328.17,328.17 0,0 0,363 478.36c4.44,9.7 9.19,19.2 14.12,28.65 5.09,9.75 10.05,19.7 12.62,30.46 1.1,4.61 2,9.3 1.18,14 -0.23,1.39 -1.74,9.19 -3.69,9 -1.42,-0.14 -2.63,-4.83 -3,-5.87a45.5,45.5 0,0 1,-1.63 -9.26c-0.5,-5.42 0.09,-11 -1.19,-16.27a1.51,1.51 0,0 0,-2.9 0c-2,8.35 -1.16,19.22 1.39,27.42 1.27,4.11 4.85,11.69 10.26,7.92 4.29,-3 5.51,-10.34 5.87,-15.12C396.68,540.57 393.35,531.08 390.13,523.12Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M428.88,498.85c-8.56,-13.8 -18.39,-26.51 -25.68,-41.12 -7.37,-14.77 -13.18,-30.43 -14.77,-47 -2.64,-27.47 4.25,-59.19 -14.31,-82.6 -7.55,-9.52 -20.55,-12.09 -32,-9.49 -12.73,2.88 -22.95,12.59 -29.13,23.77 -7.28,13.2 -9.05,28 -10,42.77 -0.51,7.77 -3,15.42 -2.07,23.25a163.68,163.68 0,0 0,5.22 25.09c5.29,19 13.2,37.26 19.69,55.87 3.39,9.73 7.1,19.44 9.3,29.52s2.57,20.63 6.19,30.25c0.57,1.52 3,1.4 3,-0.4 -0.06,-16.17 -4,-32.89 -9.13,-48.13 -5.58,-16.43 -11.58,-32.68 -17.58,-49 -2.75,-7.46 -5.21,-15 -7.21,-22.72s-4.44,-16.4 -4.4,-24.49c0,-7.45 2,-15 2.57,-22.5a116.16,116.16 0,0 1,3.37 -22.48c3.62,-13.31 11.17,-26.14 23.67,-32.82 11.24,-6 27.13,-5.32 35.19,5.52 17,22.88 9.89,53.54 12.79,79.92 1.79,16.28 7.17,32.17 14.71,46.68s17.2,29.69 28.93,41.37a1.12,1.12 0,0 0,1.53 -0.36A1.1,1.1 0,0 0,428.88 498.85Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M304.52,455.92c-4,-13.63 -5.61,-27.79 -7.6,-41.8 -0.8,-5.64 -2.6,-10.21 -6.69,-14.22 -4.57,-4.49 -6.78,-8.4 -6.94,-15 -0.29,-11.85 3.53,-24.52 7.28,-35.66 3.65,-10.86 9.25,-20.56 15,-30.39a68.62,68.62 0,0 1,8.7 -12.47c2,-2.1 7.48,-7.17 10.78,-4.37 3.68,3.13 -5.42,14.12 -7.32,16.65 -6.39,8.54 -12.2,17 -16.23,27a122.57,122.57 0,0 0,-8.5 40.58c0,0.53 0.84,0.66 0.93,0.13 4.07,-13.45 6.37,-27.47 11.95,-40.44 4.16,-9.67 10.22,-17.67 16.45,-26 3.4,-4.56 9.9,-12.46 7.86,-18.7 -2.55,-7.86 -13.38,-4.05 -17.67,-0.35 -7.41,6.4 -11.85,16.09 -16.74,24.39 -6.95,11.78 -11.31,24.56 -14.59,37.78 -2.61,10.52 -6.21,24.92 0,34.85 1.42,2.25 3.41,3.91 5.28,5.76a16.57,16.57 0,0 1,4.83 9c1.45,7.07 1.92,14.48 3.11,21.62 1.51,9.06 3.14,18.21 6.15,26.91 2.62,7.56 6.24,14.71 9.52,22a117.26,117.26 0,0 1,8.12 25.46c1.71,8.58 2.48,17.39 5.43,25.66 0.71,2 4.09,1.85 3.91,-0.53a177.26,177.26 0,0 0,-7.48 -40C315.86,480.75 308.39,469.05 304.52,455.92Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M456,454.71c-2.94,-8.71 -7.81,-16.54 -12.33,-24.48 -4.68,-8.2 -8.39,-16.39 -9.9,-25.77 -1.29,-8 -2.41,-17.12 -7.44,-23.78 -2.87,-3.81 -7.42,-5.36 -10.45,-0.82 -2.83,4.26 -3.36,10.53 -3.49,15.51 -0.47,19.29 6.36,40.89 16.45,57.24 4.21,6.82 13.87,16.75 11,25.59 -1.69,5.15 -6.19,-0.55 -8.11,-2.77a80.81,80.81 0,0 1,-8.95 -13.12,131.51 131.51,0 0,1 -17.28,-57.64c-1.13,-20.62 0.5,-41.91 -7,-61.59 -3.71,-9.76 -9.35,-19.35 -16.93,-26.61A36.51,36.51 0,0 0,368.31 308c-5.38,-1.86 -11.12,-2.31 -16.53,-4 -3.93,-1.26 -7.26,-3 -9.16,-6.76 -1.59,-3.15 -2.35,-6.66 -3.9,-9.83 -3.42,-7 -11.64,-11.75 -18,-5.4a0.73,0.73 0,0 0,0.07 1,0.72 0.72,0 0,0 0.79,0.1c10.93,-5.53 13.8,7.83 16.67,15.06 2.23,5.59 6.68,8.48 12.23,10.4 9.67,3.35 18.87,3.74 26.66,11.24 7,6.74 12.22,15.79 15.69,24.82 7.26,18.92 5.75,39.41 6.78,59.26A135.67,135.67 0,0 0,413.3 456,105.58 105.58,0 0,0 427,478.25c3.28,3.95 9.21,10.49 14.75,6.33 4.75,-3.57 4.2,-11.35 2.41,-16.27 -3,-8.21 -9.23,-14.74 -13.18,-22.44 -8.17,-16 -15.13,-35.81 -13.15,-54a27.17,27.17 0,0 1,1.71 -7.76c1.58,-3.64 2.91,-0.19 4.3,2.58 3.89,7.76 3.87,16.75 5.93,25 4.64,18.6 19.34,32.81 23,51.77 1.55,8 2.7,16.6 0.79,24.59 -2.16,9.07 -8.58,14.89 -17.14,18.09 -3.19,1.2 -1.8,6.37 1.42,5.15 14.65,-5.55 22.1,-17.22 21.93,-32.78A78.83,78.83 0,0 0,456 454.71Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M358.69,290.32c-8.36,-2.65 -12.15,-13.7 -17.89,-19.65 -7.71,-8 -17.73,-8.7 -26.49,-1.91 -8.54,6.63 -13,16.76 -17.82,26.14 -5.72,11.18 -13.16,21.4 -18.62,32.71 -9.22,19.12 -19.23,42.13 -14.72,63.78 2.29,11 10.44,19 13.74,29.51 1.88,6 2,12.42 2.73,18.59a83.79,83.79 0,0 0,4.5 20.56c4.71,12.41 12.69,23.39 15.92,36.38 2.66,10.69 2.73,24.55 10.42,33.1 1.35,1.5 4.29,-0.07 3.51,-2 -3.69,-9.41 -5.75,-18.7 -7.84,-28.57 -2.25,-10.6 -6.94,-19.81 -11.81,-29.41a88.23,88.23 0,0 1,-7.08 -17.33c-1.68,-6.35 -2.22,-12.89 -2.94,-19.4 -0.59,-5.39 -1.1,-10.8 -3.12,-15.88a90.79,90.79 0,0 0,-6.7 -12.53A46.77,46.77 0,0 1,268 373.54c1.38,-11.38 5.44,-22.43 9.94,-32.91a242.7,242.7 0,0 1,15.73 -29.69c5.56,-9.21 9.72,-19.23 15.45,-28.31 3.57,-5.64 8.83,-12 15.73,-13.39 6.22,-1.23 11.42,3 15.15,7.46 4.43,5.32 10.37,15.89 18.49,15.18a0.79,0.79 0,0 0,0.75 -0.84A0.81,0.81 0,0 0,358.69 290.32Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M297.64,518.14c-1.25,-3.28 -3.41,-6 -5.06,-9.1a82.66,82.66 0,0 1,-5.07 -12c-2.64,-7.65 -4.6,-15.51 -6.9,-23.27 -2.54,-8.58 -5.19,-16.95 -6.54,-25.84 -1.56,-10.19 -2.56,-20.63 -3.59,-30.89 -0.1,-1 -1.58,-1 -1.54,0 0.49,10.22 0,20.4 0.94,30.63 0.9,9.7 3.36,18.77 5.82,28.15 2.17,8.29 4.12,16.63 7,24.71 2.43,6.77 5.46,15.89 11.63,20.1C295.9,521.73 298.34,520 297.64,518.14Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M418.65,363.31c-2.4,-17.5 -12.15,-32.56 -22.54,-46.41a94,94 0,0 0,-12.95 -14.73c-3.82,-3.36 -8.54,-7 -13.94,-6.35a1,1 0,0 0,0 2c5,0.1 9.65,6.09 12.69,9.55a168.24,168.24 0,0 1,10.74 14.05c9.07,12.88 18,26.75 20.09,42.7a3,3 0,0 0,6 -0.17A3.4,3.4 0,0 0,418.65 363.31Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M450.43,406.58c-0.43,-2.25 -0.27,-4.52 -0.8,-6.8s-1.16,-4.36 -1.77,-6.52c-1.07,-3.8 -2.19,-7.6 -3.31,-11.39 -2.08,-7.06 -4.25,-14.1 -6.42,-21.14 -4.05,-13.16 -8.5,-26.3 -15.42,-38.28A98.61,98.61 0,0 0,395 291.57c-10.94,-8 -23.55,-15.88 -36.27,-20.61 -0.82,-0.3 -1.32,0.82 -0.8,1.38 8.88,9.65 21.8,15.38 32.32,23a96.75,96.75 0,0 1,28.2 32.11c6.51,11.89 10.57,24.84 14.47,37.76 2.17,7.19 4.37,14.38 6.45,21.6 1,3.53 2,7.06 3.1,10.56 1.22,3.86 3,7 4.67,10.59C448,410 450.8,408.47 450.43,406.58Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M472.66,471a90.48,90.48 0,0 0,-7 -25.72c-4.18,-9.37 -12,-16.84 -15.55,-26.39 -0.65,-1.75 -3.41,-1.07 -2.84,0.78 2.47,8.06 7.46,14.85 11.17,22.33a88.59,88.59 0,0 1,8.42 27.66c1.31,9.52 2,19.71 -1.38,28.9 -2.76,7.56 -8.83,13.82 -10.8,21.66 -0.72,2.88 3.46,4.86 4.93,2.08 3.81,-7.3 8.57,-14.57 11.39,-22.3C474.27,490.77 473.88,480.54 472.66,471Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M485.07,449c-2.52,-9.83 -6.61,-19.17 -10.83,-28.37 -4.51,-9.83 -8.84,-19.39 -11.55,-29.9s-4.46,-21.1 -7.25,-31.51a154.26,154.26 0,0 0,-32.81 -60.72c-0.49,-0.56 -1.26,0.15 -1,0.76 8.67,18.1 19.83,34.7 25.87,54.05 5.75,18.44 7.2,38.1 14.68,56S479.37,444.2 481,463.84s-0.83,42 -9,60.05a56.57,56.57 0,0 1,-18.64 22.38c-8.39,6 -17.37,8.49 -27.52,9.23a2.61,2.61 0,0 0,0 5.22c17,1.95 34.26,-9.83 44.19,-22.72 12.36,-16 16.34,-37.87 17.45,-57.64C488,469.75 487.72,459.37 485.07,449Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M287.29,290.18c-14.1,18.4 -27.62,39.15 -33.45,61.82a99,99 0,0 0,-3.11 30.18,87.8 87.8,0 0,0 1.57,13.13c0.68,3.29 1.62,8.2 5.07,9.69a1.79,1.79 0,0 0,2.65 -1.52c0.06,-3.57 -2,-7.31 -2.67,-10.83A87.1,87.1 0,0 1,256 379.86a94.94,94.94 0,0 1,3.84 -30.11c3.06,-10.77 8.13,-20.53 13.55,-30.27 5.29,-9.48 11.27,-18.59 14.54,-29C288.1,290 287.52,289.88 287.29,290.18Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M329.32,552.91c-4.84,-5.82 -12.83,-9.57 -19.07,-13.77a149.86,149.86 0,0 1,-20.07 -15.49c-12.5,-11.93 -18.12,-27.46 -22.31,-43.84a137,137 0,0 1,-4.5 -25.25c-0.52,-8 -0.67,-16 -2,-23.87 -1.43,-8.27 -4.83,-15.31 -9.1,-22.45 -5,-8.37 -8.78,-16.57 -9.48,-26.43 -0.73,-10.29 1,-20.58 3.7,-30.48 2.49,-9.23 6.24,-18.44 7,-28 0.08,-1.09 -1.45,-1.14 -1.79,-0.24 -6.25,16.78 -12.8,34.94 -13.56,53a56.52,56.52 0,0 0,4.75 26c3.75,8.22 9.25,15.45 11.58,24.3s2.41,17.75 2.92,26.69a138.92,138.92 0,0 0,4 25.48c4,16.28 9,32.54 20.39,45.3 6.12,6.85 13.5,12.54 21,17.73 4.11,2.84 8.31,5.54 12.5,8.27 3.86,2.52 7.48,5.33 11.82,7C329.45,557.63 330.63,554.48 329.32,552.91Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M411.88,559.77c-15.54,11 -36.18,15.5 -54.94,14.09a87.83,87.83 0,0 1,-27.51 -6.39c-5,-2.08 -10.48,-4.15 -14.66,-7.63 -3.32,-2.76 -6.1,-7.44 -10.62,-8.18a3,3 0,0 0,-2.9 5c7.2,8.29 16.48,13.45 26.53,17.56a88.14,88.14 0,0 0,29.83 6.51,83.69 83.69,0 0,0 29.76,-4.08 64.81,64.81 0,0 0,13.78 -6.38c4.47,-2.78 7.74,-6 11.42,-9.59C413,560.22 412.42,559.39 411.88,559.77Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M496.72,499.41a0.8,0.8 0,0 0,-1.59 0c-3.11,24.18 -18.63,45.85 -38.68,59.11a93.78,93.78 0,0 1,-16.17 8.66c-4.31,1.78 -8.74,3.12 -13,5.12s-8.34,4.25 -12.7,5.94c-3.69,1.43 -7.37,1.24 -11,2.35a2.71,2.71 0,0 0,-1.6 3.92c5.15,7.54 19.79,-1.44 25.45,-4.39 11,-5.72 22.51,-9.51 32.71,-16.79C479.64,549.4 498.82,524.68 496.72,499.41Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M401.35,275c-6.83,-4.7 -12.3,-11 -19,-15.85 -6.3,-4.58 -13.68,-7.58 -21.05,-10 -13.5,-4.38 -27,-6.56 -41.14,-4.4 -13.15,2 -26.08,7.63 -35.49,17.19 -5.37,5.45 -10.05,11.92 -14.49,18.13a71.91,71.91 0,0 0,-10.86 21.24c-0.6,2 2.43,3.32 3.37,1.43a120.45,120.45 0,0 1,13.09 -20.31c4.25,-5.42 8.43,-11.19 13.28,-16.1 8.9,-9 21.21,-14 33.64,-15.64 13.2,-1.73 25.94,0.71 38.48,4.79 6.92,2.25 13.76,4.86 19.87,8.88 6.39,4.2 12,9.49 19,12.75a1.25,1.25 0,0 0,1.3 -2.11Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M755.43,276.23c-33.74,10.51 -64.13,30.28 -98.23,39.52 -1.75,-17.53 2.86,-35.32 -1.9,-52.63a3.71,3.71 0,0 0,-3.52 -2.68c-18.33,1.44 -34.28,12.95 -50.1,21.25 -16.49,8.65 -35.43,12.15 -51.36,21.89 0.13,1.31 0.24,2.62 0.34,3.92q0.29,1.67 0.54,3.33h0c1.78,11.59 2.59,23.36 3.4,35.12h0c0.35,5.06 0.71,10.12 1.14,15.16a4.67,4.67 0,0 0,3.85 -0.2c21.28,-10 39.42,-25.08 59,-37.79 1.61,5.35 1.8,11.09 2.22,16.66 0.55,7.19 1.55,14.06 4.43,20.72 1,2.21 4.53,3 6.43,1.69A415.86,415.86 0,0 1,668 340.27q5.64,-4.39 11.4,-8.63 6.54,-4.8 13.23,-9.43l0.59,-0.41q6.67,-4.6 13.46,-9.05l0.76,-0.5q6.67,-4.37 13.46,-8.59l1,-0.65q2.07,-1.29 4.16,-2.56l5.33,-3.26 2.37,-1.44q3.6,-2.17 7.22,-4.33h0l1.69,-1q7.79,-5.87 15.64,-11.59a2.39,2.39 0,0 0,-2.11 -2.64A2.48,2.48 0,0 0,755.43 276.23ZM630.6,345.1q-0.14,-0.89 -0.24,-1.77a5.29,5.29 0,0 0,0.58 0.58C630.83,344.31 630.71,344.71 630.6,345.1ZM555.6,310.4a2.47,2.47 0,0 0,-0.36 -0.11l0.46,-0.27a1.8,1.8 0,0 1,-0.07 0.38ZM564.23,347.26a6.41,6.41 0,0 0,1.31 0.14l0.16,0.22 -2.61,1.51a4,4 0,0 0,1.17 -1.87ZM651.13,317.96v0.23h-0.07ZM636,293.1l0.32,-0.61 0.22,-0.21q-0.27,1.47 -0.57,2.94a4.09,4.09 0,0 0,-0.15 -0.85A4.53,4.53 0,0 0,636 293.1ZM560.67,350.1a4.85,4.85 0,0 0,1 -0.16l-1,0.54a0.74,0.74 0,0 0,0 -0.39ZM631.59,350.23a3.89,3.89 0,0 0,0.53 0.46l-0.37,0.24c-0.06,-0.24 -0.11,-0.48 -0.16,-0.71Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M194,538.15c-0.5,-1.21 -1,-2.44 -1.46,-3.66l-0.36,-0.91c-1.18,-3 -2.31,-6.06 -3.45,-9.07q-0.85,-2.24 -1.72,-4.46c-1.65,-4.19 -3.32,-8.37 -5,-12.52l-4.28,-8.61a4.66,4.66 0,0 0,-0.47 0.3c-29.93,22.34 -64.79,37.16 -93.61,61.1a3.42,3.42 0,0 0,-0.53 4.11c2.13,3.27 4.13,6.67 6.11,10.09A5,5 0,0 0,90 577.6a125.13,125.13 0,0 0,6.75 10.71A162.66,162.66 0,0 0,108 604.15v0.19a14.34,14.34 0,0 1,-3.19 6.31c-3.35,4.32 -7.41,8.07 -10.94,12.25 -6.48,7.7 -13.12,15.3 -19.63,23l-1.86,1.6c-7.6,6.7 -14.83,13.8 -22,20.94L46,674.12c-5.86,7.59 -11.7,15.31 -18,22.6 -2.57,3 -5.2,5.88 -7.95,8.68a3.08,3.08 0,0 0,0.46 2.25c1.8,-1.16 3.59,-2.34 5.38,-3.52h0l0.79,-0.52 3.52,-2.36L33.48,699q1.94,-1.32 3.86,-2.65l2.89,-2 1.17,-0.81h0c0.63,-0.43 1.25,-0.88 1.87,-1.32l1.61,-1.12 2,-1.43L50,687.54l2.59,-1.85L61,679.62l1.18,-0.86 9.62,-7 9,-6.51 14.42,-12.11c20,-16.74 40.14,-33.3 61.06,-48.89l1.51,-1.13a4.35,4.35 0,0 0,0 -2.15c-1.73,-6.42 -6.45,-11.27 -11.14,-15.73 -3.83,-3.64 -8.7,-7.39 -11.16,-12.27 16.89,-8.25 34.85,-15 49.77,-26.64 2.76,-2.15 6,-4.73 8.16,-7.77A1.46,1.46 0,0 0,194 538.15ZM124.15,600.57 L125.15,601.64 124.74,601.98 123.85,600.49ZM148.27,599.31 L147.83,599.46c-0.72,-1.17 -1.38,-2.39 -2,-3.58a23.06,23.06 0,0 1,2.46 3.43Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M228.62,219.16c-7.78,-6.19 -16.62,-10.91 -25.44,-15.45 -3,-1.53 -6.11,-2.74 -9,-4.44 -1.64,-1 -2.41,-2.34 -3.87,-3.46 1.65,-2.75 2.06,-6.62 3.3,-9.5a85.24,85.24 0,0 1,7.34 -13c5.1,-7.79 10.86,-15.13 15.76,-23 2.17,-3.52 3.93,-7.23 5.92,-10.85 1.26,-2.28 2.93,-4.69 3,-7.4a6.85,6.85 0,0 0,-0.8 -3.38l-7.2,-2.26L213.49,125c-24.37,-7.76 -48.58,-16 -72.4,-25.36 -4.14,-1.62 -8.25,-3.35 -12.36,-5.1h0c-9.74,-4.16 -19.44,-8.46 -29.45,-11.83C95.22,81.35 91.07,80 87,78.6v0.21c6.06,4.7 12,9.52 17.94,14.4l1.81,1.48q9.38,7.77 18.59,15.72l4,3.47c7.45,6.53 14.81,13.2 22.56,19.34 3.36,2.68 6.73,5.35 10.16,7.94 1.4,1.06 2.8,2.13 4.25,3.12 0.48,0.33 2.54,1.39 1.88,1.24a2.88,2.88 0,0 1,2.39 2.71c2.19,1.26 4.37,2.53 6.53,3.83q-11.21,14.41 -22.23,29 -5.88,9.8 -12.36,19.2l-1.4,2c-1.24,1.76 -2.49,3.52 -3.76,5.26 -0.7,0.94 -1.37,1.9 -2.08,2.84a2.61,2.61 0,0 1,-0.52 0.53q13.91,14.28 28.3,28c8.76,8.35 21,15.72 27.34,26.44a13.59,13.59 0,0 0,1 2.28c0.39,-0.49 0.77,-1 1.16,-1.49h0c0.1,-0.13 0.2,-0.27 0.31,-0.4l3.92,-5.11h0l3.81,-5A447.69,447.69 0,0 1,228.62 219.16ZM189.93,195.4a8,8 0,0 0,-0.82 -0.93C190.07,194.08 190.12,194.67 189.93,195.4ZM197.2,248.22 L197.72,247.63L196.8,249c0.14,-0.25 0.27,-0.52 0.4,-0.78ZM217.71,224.52a5.67,5.67 0,0 0,0.18 -1,2.7 2.7,0 0,0 0.94,-1.38l0.7,0.48c-0.6,0.65 -1.21,1.27 -1.82,1.9ZM135.59,118.09c1.51,1 3,1.87 4.57,2.78 0.75,0.55 1.48,1.11 2.22,1.66h0C140.1,121.07 137.84,119.6 135.59,118.09ZM192.36,254.74a17.92,17.92 0,0 0,2.82 -3.08c-0.75,1.28 -1.47,2.57 -2.12,3.88Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M486.2,151.26l1.2,-2.51c1.4,-2.9 2.8,-5.78 4.23,-8.66 0.45,-0.91 0.89,-1.82 1.34,-2.72q2.41,-4.83 4.89,-9.63 3.45,-6.7 7,-13.37a10.53,10.53 0,0 0,-1.3 -1.67c-7.51,-7.89 -20,-7.87 -30.48,-9.32 6,-14.72 14.94,-28.63 22.68,-42.36 7,-12.42 16.86,-25.44 17.35,-40.25a3.78,3.78 0,0 0,-3 -3.86c-1.55,1.39 -3.11,2.76 -4.67,4.09l-1.16,1a600.63,600.63 0,0 1,-54 52.55c-6.15,5.93 -12.51,11.64 -19.22,17 -2,2 -4,4 -5.95,6a3.9,3.9 0,0 0,1.1 3.69c5.58,5.72 12.88,8.42 19.29,12.94 2.46,1.73 6.23,4.63 6.41,7.92 0.15,2.67 -2,5.57 -3.13,7.82 -4.23,8.14 -7.69,16.7 -11.68,25 -4.44,9.18 -9.71,18.12 -13.74,27.48a2.69,2.69 0,0 0,-1.87 2c4.39,2.54 8.74,5.18 13.06,7.85h0q5.25,3.25 10.47,6.54l2.5,1.57q5.34,3 10.57,6.23a3.2,3.2 0,0 0,1 -0.34c3.33,-6.95 6.91,-13.81 10.56,-20.63q2.78,-5.18 5.56,-10.31 2.43,-5.55 5,-11.06c0.37,-0.83 0.75,-1.66 1.13,-2.49Q483.7,156.5 486.2,151.26Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
</vector>
|
231
app/src/main/res/drawable-night/ic_onboarding_nodes.xml
Normal file
231
app/src/main/res/drawable-night/ic_onboarding_nodes.xml
Normal file
@ -0,0 +1,231 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="774dp"
|
||||
android:height="774dp"
|
||||
android:viewportWidth="774"
|
||||
android:viewportHeight="774">
|
||||
<path
|
||||
android:pathData="M456.65,484.7c-0.75,-7.69 -4.75,-14.85 -12.11,-16.94a16.79,16.79 0,0 0,-13.36 1.75c-6.83,3 -11.81,10.07 -12.85,17.53a11.39,11.39 0,0 0,-0.56 2.51c-0.38,5 1.21,8.58 3.87,11 6.36,8.2 19.95,10.58 28.21,3.75a16.77,16.77 0,0 0,3.95 -4.87,7.65 7.65,0 0,0 2.28,-5.88 27.1,27.1 0,0 0,0.68 -5A17.11,17.11 0,0 0,456.65 484.7ZM433.83,490.44a7.15,7.15 0,0 1,-0.62 1.61,4.92 4.92,0 0,1 -0.28,0.45l-0.1,0.11a3.27,3.27 0,0 1,-0.24 0.27l-0.12,0.1a1.93,1.93 0,0 1,-0.27 0.3l-0.11,0.08a2.58,2.58 0,0 1,-0.32 0.18l-0.1,0 -0.37,0.14h-0.07a3.34,3.34 0,0 1,-0.43 0.1,3.91 3.91,0 0,1 -0.48,0.05h-0.55a3.77,3.77 0,0 1,-2.6 -1.29,3.39 3.39,0 0,1 -0.34,-0.5c-0.1,-0.18 -0.22,-0.35 -0.33,-0.53a3.72,3.72 0,0 1,-0.92 -2.42,5.27 5.27,0 0,1 0.7,-2.31c0.07,-0.18 0.15,-0.35 0.23,-0.52l0.16,-0.29 0.12,-0.18a1.55,1.55 0,0 1,0.24 -0.33l0.08,-0.09a3.22,3.22 0,0 1,0.32 -0.32,2.39 2.39,0 0,1 0.45,-0.31 4.32,4.32 0,0 1,1.8 -0.49,2.81 2.81,0 0,1 0.58,0 3.38,3.38 0,0 1,1.42 0.6l0.07,0.05a4.88,4.88 0,0 1,0.53 0.49l0.07,0.08a6.61,6.61 0,0 1,0.44 0.6,3.26 3.26,0 0,1 0.72,0.85c0.12,0.29 0.25,0.58 0.37,0.88A6,6 0,0 1,433.83 490.44ZM450.11,487.35v0.32a3.23,3.23 0,0 1,-0.12 1.16,2.67 2.67,0 0,1 0,0.4 2.78,2.78 0,0 1,-0.11 0.5c0,0.13 -0.08,0.25 -0.13,0.37v0.09a3.46,3.46 0,0 1,-0.52 0.82l-0.15,0.18a10.62,10.62 0,0 1,-3.17 1.73h-0.53l0.08,0a3.05,3.05 0,0 1,-0.54 -0.08,3.44 3.44,0 0,1 -2.38,-2.37 1.59,1.59 0,0 1,-0.21 -0.41l-0.06,-0.18a1.42,1.42 0,0 1,0 -0.22,2 2,0 0,1 -0.06,-0.6 1.89,1.89 0,0 1,0.13 -0.66,15.51 15.51,0 0,1 0.76,-2.27 1.81,1.81 0,0 1,0.33 -0.5,3.25 3.25,0 0,1 0.92,-1 3.4,3.4 0,0 1,2 -0.64,3.22 3.22,0 0,1 0.81,0.11 4.56,4.56 0,0 1,1.77 1.05l0.12,0.11a3.5,3.5 0,0 1,0.38 0.39,4 4,0 0,1 0.37,0.54s0.05,0.09 0.07,0.13a3.13,3.13 0,0 1,0.24 0.6c0,0.06 0,0.12 0.05,0.18Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M141.13,722.25c-0.08,-0.13 -0.15,-0.26 -0.22,-0.4v0.1a3.75,3.75 0,0 0,-1.28 -1.4,3.22 3.22,0 0,0 -3,-0.17 3.36,3.36 0,0 0,-1.8 4.4c0.06,0.13 0.12,0.25 0.19,0.37a6.2,6.2 0,0 0,0.87 1.1,3.31 3.31,0 0,0 5.19,-4Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M136.77,733.31a3.43,3.43 0,0 0,-1.69 -0.71,3.36 3.36,0 0,0 -2.28,0.43 4.29,4.29 0,0 0,-1.21 1.19,3.61 3.61,0 0,0 0.48,4.43 3.75,3.75 0,0 0,3.49 0.92,3.69 3.69,0 0,0 2.5,-2.5A3.62,3.62 0,0 0,136.77 733.31Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M362.14,573.91a3.57,3.57 0,0 0,-4.19 0.41c-2.48,2.28 -4.86,4.67 -7.18,7.11h0a23.81,23.81 0,0 0,-9.18 -6.35c0.22,-0.21 0.43,-0.41 0.67,-0.61 1.22,-1 2.37,-1.92 3.51,-2.92 2.3,-2 -0.79,-6.11 -3.26,-4.26s-6,3.65 -7.64,6.43a20.15,20.15 0,0 0,-8.75 1.71c-5.21,2.29 -9.52,6.24 -14.26,9.32 -4.15,2.7 -8.42,5.25 -12.13,8.56 -0.39,0.35 -0.77,0.71 -1.15,1.08 -5.1,3.69 -8.68,8.66 -8.55,15.63a15.45,15.45 0,0 0,5.25 11.92c-2.35,3.26 -4.78,6.47 -7.33,9.59A163.57,163.57 0,0 1,272.46 648c-4.5,4.15 -9.37,8 -15,10.52 -6.72,3 -14,3 -21.18,2.76 -15.1,-0.54 -29.8,-2.11 -44.69,1.45a77.27,77.27 0,0 0,-31 15.15c-9.85,8 -18.56,19.82 -21.74,32.25a4.41,4.41 0,0 0,3 5.31l0.26,0.09a3.67,3.67 0,0 0,3.71 -1c2,-1.85 2.81,-5.1 4,-7.44a72.26,72.26 0,0 1,4.53 -7.68,65.58 65.58,0 0,1 11,-12.58c8.47,-7.42 19,-12 30,-14.38 15.37,-3.29 30.59,-0.5 46.09,-0.49 14.7,0 26.45,-5.5 37.27,-15.22A157.6,157.6 0,0 0,296 638.55a106,106 0,0 0,7.14 -9.34,26.63 26.63,0 0,0 8,-0.72 27.81,27.81 0,0 0,7.53 -2.29c5.91,-1.33 11,-4.23 16.16,-7.56a71.75,71.75 0,0 0,17.85 -16.29,14.23 14.23,0 0,0 2,-14.76c3.22,-1.71 5.93,-5.16 8,-8.05l0.56,-0.52a3.07,3.07 0,0 0,0.05 -4.35A3.12,3.12 0,0 0,362.14 573.91ZM323.24,613.07a11.86,11.86 0,0 1,-2.17 3.37c-2.6,3 -6.37,4.44 -10.13,5.27a23.83,23.83 0,0 1,-4.58 0.36,14.61 14.61,0 0,0 0.38,-2.26 31.06,31.06 0,0 1,2.9 -3.28,2.62 2.62,0 0,0 0.58,-3.1A2.49,2.49 0,0 0,310 612a1.78,1.78 0,0 0,-3.09 -1.5,2.64 2.64,0 0,0 -1.26,0.68 43.64,43.64 0,0 0,-4 4.38c-0.32,0.17 -0.61,0.35 -0.9,0.54a9.81,9.81 0,0 1,-2.05 -4.76,11.88 11.88,0 0,1 2.27,-7.79c3.32,-5 10.14,-8.81 16,-6.2A12,12 0,0 1,323.24 613.07ZM345.77,600.72c-3.35,5.18 -8.94,9.31 -13.95,12.75 -0.78,0.57 -1.58,1.1 -2.39,1.63a17.53,17.53 0,0 0,-0.54 -14.08c-3.83,-7.52 -11.46,-9.91 -18.57,-8.46a67.16,67.16 0,0 0,7.3 -5.73c1.28,-1.19 2.48,-2.37 3.68,-3.52l0.75,-0.51c3.45,-2.38 7.08,-4.87 11.45,-3.95 4.12,0.87 7.89,3.93 10.7,6.94C348.32,590.21 349.17,595.47 345.77,600.72Z"
|
||||
android:fillColor="#ff1a80"/>
|
||||
<path
|
||||
android:pathData="M545.77,296.5c-0.37,-5.69 -0.51,-11.39 -0.56,-17.08l-0.09,-1.2c-0.61,-8.89 -0.17,-17.78 0.16,-26.67v-14c0,-10.07 1.14,-20.37 1.08,-30.55v-0.43c-0.13,-0.45 -0.23,-0.91 -0.34,-1.36l-0.18,-0.82c-0.06,-0.28 -0.11,-0.57 -0.16,-0.85s-0.11,-0.61 -0.15,-0.91l-0.09,-0.62c-0.12,-0.91 -0.21,-1.82 -0.27,-2.74h0c-1.34,0 -2.68,0 -4,0.09h0c-17.55,0.46 -35.09,1.86 -52.64,2.38l-2.5,0.06c-2.42,0.06 -4.85,0.11 -7.28,0.12h0c-2.54,2 -5.11,3.89 -7.76,5.72l-0.74,0.63h0c-8.16,6.88 -16,14.13 -23.75,21.5v3.89l-0.06,1.3c-0.32,6.84 -1.12,13.66 -1.92,20.48 -1.23,10.65 -1.91,21.32 -2.46,32 -0.57,11.16 -0.89,22.25 -0.65,33.43 0,2 0.11,4.06 0.16,6.13 0.1,0.37 0.21,0.74 0.32,1.11l-0.29,0.1c0,1.18 0.06,2.37 0.07,3.55 13.74,-1.47 27.56,-1.74 41.36,-2.18a100.51,100.51 0,0 1,10.27 -0.38c1.63,-0.07 3.25,-0.17 4.88,-0.26h0l2.63,-0.14h0.58l0.33,0.06 0.26,0.05h0.12c0.57,-0.42 1.15,-0.82 1.72,-1.23s1.34,-0.94 2,-1.39 1.53,-1 2.31,-1.56 1.55,-1 2.33,-1.5 1.62,-1 2.43,-1.54c8.41,-5.22 17.13,-9.94 25.73,-14.87h0l1,-0.6c1.14,-0.66 2.29,-1.32 3.42,-2l0.07,-0.07c1,-0.61 2.09,-1.21 3.13,-1.84C546,300.46 545.9,298.49 545.77,296.5ZM484.61,206.88c10.81,-0.46 21.68,-0.73 32.49,-0.93q6.6,-0.12 13.25,-0.17c-2.92,1.91 -5.75,4 -8.46,6.14a136.35,136.35 0,0 0,-13.71 12.15c-0.11,-0.18 -0.2,-0.36 -0.31,-0.53a7.48,7.48 0,0 1,-1.88 0.65,2 2,0 0,1 -0.62,0.47 1.35,1.35 0,0 1,-0.32 0.11h-0.16a1.82,1.82 0,0 1,-0.57 0l-0.49,0.06a4.73,4.73 0,0 1,-0.75 0L503,224.83a1.14,1.14 0,0 1,-0.32 -0.07h-0.09c-6.2,0.29 -12.41,0.21 -18.61,0.24s-12.36,0.07 -18.5,0.65a76.66,76.66 0,0 0,-10.13 1.41c4.34,-3.15 9.14,-5.89 13.09,-9.11C473.65,213.81 478.69,209.88 484.61,206.88ZM477,323.23c-3.4,0.68 -6.77,1.49 -10.16,2.24 -4.15,0.64 -8.33,1.41 -12.51,1.69q-1,0.06 -1.95,0.06c0.74,-7.16 -0.92,-14.52 -0.75,-21.71q0.36,-15.06 0.75,-30.14c0.21,-8.15 0.78,-16.25 1.57,-24.35 0.24,-2.39 1.28,-8.81 -0.61,-11.81 7.24,-1.08 14.88,0.2 22.13,-0.43 5.56,-0.48 11.11,-1.5 16.6,-2.47 3.93,-0.7 8.23,-0.87 12.27,-1.65a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.78 -1.38,50.56 0.19,6.87 0.88,13.71 1,20.57 0.08,3.44 0,6.91 -0.15,10.34 -0.08,1.45 -0.32,3 -0.46,4.55l-2.31,0.27c-7.61,-1.85 -16.6,-0.07 -23.87,1.32ZM529.33,305.69c-4.5,2.83 -9,5.59 -13.5,8.5L513,316c0,-2 -0.09,-4 -0.15,-5.93 -0.29,-11 -0.66,-22.1 -0.45,-33.14 0.18,-9.7 0.62,-19.39 0.07,-29.08A111.89,111.89 0,0 0,511 234c-0.14,-0.76 -0.28,-1.61 -0.45,-2.51l0.8,-0.06a2.5,2.5 0,0 1,-0.26 -1.35,2.36 2.36,0 0,1 0.08,-0.45v-0.08a1.4,1.4 0,0 1,0.16 -0.38l0.06,-0.11a2.43,2.43 0,0 1,0.24 -0.32,0.31 0.31,0 0,1 0.09,-0.11 3.09,3.09 0,0 1,0.43 -0.37c1.2,-0.82 2.38,-1.67 3.56,-2.52l1.36,-1c2.23,-1.64 4.43,-3.31 6.68,-4.93a1.76,1.76 0,0 1,0.8 -0.32l1.07,-0.82a103,103 0,0 1,9.13 -6.19c2,-1.17 4.13,-1.95 5.9,-3.27 0,1.91 0.1,3.8 0.12,5.66 0.08,12.9 -2.53,25.74 -2.9,38.64 -0.39,13.56 -0.82,27.26 0,40.82 0.1,1.73 0.2,3.46 0.29,5.19 -3.07,1.82 -6,4.45 -8.83,6.21Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M487.27,288.76a1.67,1.67 0,0 1,-2 -1.21,2.2 2.2,0 0,1 0,-0.36c0,-5.24 0.63,-10.57 0.32,-15.82 -2.16,4.18 -3.78,8.64 -6.5,12.53a1.5,1.5 0,0 1,-2 0.51,1.44 1.44,0 0,1 -0.5,-0.51c-2.25,-3.86 -3.63,-8.87 -6.78,-12.21 -0.18,5.29 -0.64,10.55 -0.75,15.84a1.29,1.29 0,0 1,-0.94 1.23,23.89 23.89,0 0,1 -8.8,-0.26c5.19,10.39 20.83,14.09 30,6.54a17.77,17.77 0,0 0,4.74 -6.38A55.13,55.13 0,0 0,487.27 288.76Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M483.83,258.48a16.77,16.77 0,0 0,-13.37 1.75c-9.09,4 -14.92,15.25 -12.48,25 0.12,0.48 0.27,0.94 0.42,1.4a43.66,43.66 0,0 0,8 -0.16c0,-5.91 0.48,-11.82 0.52,-17.73a1.43,1.43 0,0 1,1.45 -1.42,1.46 1.46,0 0,1 0.7,0.18c4.58,2.95 6.41,8.1 8.78,12.77 2.68,-4.65 4.33,-9.84 7.33,-14.32 0.67,-1 2.53,-1 2.79,0.37 1.21,6.36 0.69,12.73 0.53,19.14 2.2,-0.12 4.4,0 6.61,-0.12C498,274.88 494.36,261.47 483.83,258.48Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M507.09,416.58v-0.43a35.23,35.23 0,0 1,-1.2 -7.29l-4,0.08a0.11,0.11 0,0 0,0 0.05c-17,0.44 -34,1.77 -51,2.32h0c-1.54,0.06 -3.08,0.1 -4.61,0.14 -2.27,0.05 -4.54,0.1 -6.82,0.11h-0.06q-1.91,1.5 -3.84,2.92t-3.92,2.79l-0.74,0.63h0c-8.16,6.88 -16,14.13 -23.75,21.5 0,0.81 0,1.63 0,2.44 0,0.39 0,0.79 0,1.18l-0.09,2.18c-0.35,6.64 -1.13,13.26 -1.89,19.87 -1.24,10.66 -1.92,21.32 -2.47,32 -0.57,11.17 -0.88,22.25 -0.65,33.43 0,2 0.11,4.06 0.17,6.13 0.09,0.38 0.2,0.76 0.32,1.14l-0.29,0.09c0,1.17 0.05,2.36 0.07,3.54 1.29,-0.14 2.58,-0.25 3.87,-0.37l1.12,-0.1c1.21,-0.11 2.41,-0.2 3.61,-0.29l0.89,-0.07c10.6,-0.76 21.24,-1 31.87,-1.33a100.51,100.51 0,0 1,10.27 -0.38c2.49,-0.1 5,-0.24 7.46,-0.4h0a3.32,3.32 0,0 1,0.63 0l0.27,0a2.7,2.7 0,0 1,0.39 0.08l1.95,-1.39 0.67,-0.46h0q4.26,-2.94 8.67,-5.65v0c8.26,-5.1 16.81,-9.74 25.24,-14.58v0l2.42,-1.43c0.67,-0.39 1.35,-0.77 2,-1.17l0,0c1.05,-0.62 2.12,-1.23 3.17,-1.87 -0.08,-2 -0.19,-3.95 -0.32,-5.93 -0.37,-5.7 -0.51,-11.39 -0.55,-17.09 0,-0.4 -0.07,-0.8 -0.1,-1.2 -0.61,-8.89 -0.16,-17.78 0.17,-26.67 -0.06,-4.66 0,-9.32 0,-14C506,437.06 507.15,426.76 507.09,416.58ZM464.89,445.25C464.4,462 463,479 463.5,495.81c0.19,6.87 0.89,13.71 1,20.57 0.08,3.45 0.05,6.91 -0.15,10.35 -0.08,1.45 -0.32,3 -0.46,4.53l-2.3,0.28c-7.64,-1.86 -16.61,-0.12 -23.87,1.31 -3.4,0.68 -6.77,1.49 -10.15,2.24 -4.16,0.64 -8.34,1.42 -12.53,1.69 -0.65,0.05 -1.29,0.05 -1.94,0.05 0.74,-7.16 -0.92,-14.55 -0.75,-21.69q0.34,-15.08 0.75,-30.15c0.2,-8.14 0.77,-16.25 1.56,-24.35 0.23,-2.41 1.29,-8.91 -0.66,-11.87 7.24,-1.09 14.89,0.19 22.15,-0.44 5.56,-0.48 11.11,-1.5 16.6,-2.47 4,-0.71 8.3,-0.87 12.33,-1.65A3.63,3.63 0,0 0,464.89 445.25ZM468.64,433.16a7.56,7.56 0,0 1,-1.89 0.65,1.82 1.82,0 0,1 -0.59,0.45h0a2.08,2.08 0,0 1,-1.12 0.21l-0.12,0c-0.32,0 -0.64,0.07 -1,0.08h-0.26l-0.33,-0.07h-0.09c-6.19,0.29 -12.4,0.21 -18.6,0.24s-12.36,0.07 -18.51,0.65a75.85,75.85 0,0 0,-10.24 1.44c4.37,-3.18 9.22,-5.93 13.2,-9.18 5.23,-4.27 10.27,-8.19 16.18,-11.15 10.82,-0.47 21.69,-0.73 32.51,-0.94 4.42,-0.08 8.84,-0.12 13.26,-0.16a98,98 0,0 0,-8.47 6.13A120.26,120.26 0,0 0,469 433.7C468.84,433.52 468.75,433.33 468.64,433.16ZM498.69,463.09c-0.38,13.56 -0.82,27.27 0,40.82 0.05,1.75 0.13,3.48 0.21,5.21 -3.09,1.79 -6.06,4.43 -8.86,6.19 -4.5,2.83 -9,5.59 -13.5,8.5 -0.91,0.59 -1.83,1.2 -2.76,1.82 0,-2 -0.09,-3.93 -0.14,-5.9 -0.3,-11 -0.66,-22.1 -0.46,-33.14 0.18,-9.7 0.62,-19.39 0.07,-29.08a115.81,115.81 0,0 0,-1.48 -13.89c-0.14,-0.74 -0.29,-1.58 -0.45,-2.46l0.66,-0.05a2.4,2.4 0,0 1,-0.27 -1.35l0.07,-0.05a2.42,2.42 0,0 1,0.62 -1.43l0.08,-0.08 0.12,-0.1a2.32,2.32 0,0 1,0.3 -0.22c2.59,-1.76 5.09,-3.64 7.6,-5.52h0c1.33,-1 2.66,-2 4,-3a1.8,1.8 0,0 1,0.81 -0.32l1.07,-0.82a100.76,100.76 0,0 1,9.12 -6.19c2,-1.19 4.22,-2 6,-3.34 0,1.92 0.11,3.84 0.12,5.71C501.67,437.35 499.06,450.19 498.69,463.09Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M350.89,448.88c-0.37,-5.69 -0.5,-11.38 -0.55,-17.08l-0.09,-1.2c-0.62,-8.89 -0.17,-17.78 0.16,-26.67 -0.05,-4.66 0,-9.32 0,-14 0,-10.07 1.15,-20.37 1.09,-30.55L351.5,359c-0.13,-0.45 -0.23,-0.91 -0.34,-1.36l-0.18,-0.82c-0.06,-0.28 -0.11,-0.56 -0.16,-0.85s-0.11,-0.61 -0.15,-0.91 -0.06,-0.42 -0.09,-0.62c-0.12,-0.91 -0.21,-1.82 -0.28,-2.74h0l-4,0.09h0c-17.55,0.46 -35.09,1.86 -52.63,2.38l-2.51,0.06c-2.43,0.06 -4.85,0.11 -7.28,0.12h0q-3.81,3 -7.76,5.72l-0.74,0.63h0c-8.16,6.88 -16,14.13 -23.75,21.5v2.16c0,0.72 0,1.15 0,1.73l-0.06,1.3c-0.32,6.84 -1.13,13.66 -1.92,20.48 -1.23,10.65 -1.91,21.32 -2.46,32 -0.57,11.17 -0.89,22.25 -0.65,33.43 0,2 0.1,4.06 0.16,6.13 0.1,0.37 0.21,0.74 0.32,1.11l-0.29,0.11c0,1.17 0.06,2.36 0.07,3.54 13.74,-1.47 27.55,-1.74 41.36,-2.18a100.51,100.51 0,0 1,10.27 -0.38c1.63,-0.07 3.25,-0.17 4.87,-0.26h0l2.64,-0.14h0.58l0.32,0.06 0.27,0.05h0.12c0.57,-0.42 1.15,-0.82 1.72,-1.23s1.33,-0.94 2,-1.39 1.53,-1 2.31,-1.56l2.32,-1.5c0.81,-0.52 1.62,-1 2.44,-1.54 8.41,-5.22 17.13,-9.94 25.72,-14.87h0l1,-0.62c1.14,-0.65 2.29,-1.31 3.42,-2l0.06,-0.07c1.05,-0.61 2.1,-1.21 3.14,-1.84C351.13,452.79 351,450.82 350.89,448.88ZM289.77,359.25c10.81,-0.46 21.68,-0.73 32.49,-0.93q6.62,-0.12 13.25,-0.16a102.32,102.32 0,0 0,-8.46 6.13,135.38 135.38,0 0,0 -13.72,12.15c-0.1,-0.18 -0.19,-0.36 -0.3,-0.53a7.56,7.56 0,0 1,-1.89 0.65,1.85 1.85,0 0,1 -0.61,0.47 1.42,1.42 0,0 1,-0.33 0.11l-0.15,0.05a2.71,2.71 0,0 1,-0.57 0l-0.5,0.06a3.73,3.73 0,0 1,-0.74 0.05h-0.11l-0.32,-0.08h-0.09c-6.2,0.29 -12.41,0.21 -18.61,0.24s-12.36,0.07 -18.5,0.65a76.66,76.66 0,0 0,-10.13 1.41c4.34,-3.15 9.14,-5.89 13.09,-9.11C278.77,366.14 283.82,362.22 289.77,359.25ZM282.16,475.6c-3.4,0.68 -6.77,1.49 -10.16,2.24 -4.15,0.64 -8.34,1.41 -12.52,1.69 -0.64,0 -1.29,0.06 -1.94,0.06 0.74,-7.16 -0.92,-14.52 -0.75,-21.71q0.36,-15.06 0.75,-30.14c0.21,-8.14 0.78,-16.25 1.57,-24.35 0.23,-2.39 1.27,-8.81 -0.62,-11.8 7.24,-1.09 14.88,0.19 22.14,-0.44 5.55,-0.48 11.11,-1.5 16.6,-2.47 3.93,-0.7 8.23,-0.86 12.27,-1.65a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.78 -1.38,50.56 0.19,6.87 0.88,13.71 1,20.57 0.08,3.44 0,6.91 -0.15,10.34 -0.08,1.46 -0.32,3 -0.46,4.55l-2.31,0.27c-7.64,-1.89 -16.63,-0.16 -23.9,1.28ZM334.49,458.06c-4.5,2.83 -9.05,5.59 -13.5,8.5l-2.81,1.85c0,-2 -0.08,-4 -0.14,-5.93 -0.3,-11 -0.66,-22.1 -0.45,-33.14 0.18,-9.7 0.62,-19.39 0.07,-29.08a115.84,115.84 0,0 0,-1.5 -13.89c-0.14,-0.76 -0.28,-1.61 -0.45,-2.51a3.51,3.51 0,0 0,0.79 -0.06,2.5 2.5,0 0,1 -0.26,-1.35 3.58,3.58 0,0 1,0.09 -0.45v-0.08a1.8,1.8 0,0 1,0.16 -0.38l0.06,-0.11a2.43,2.43 0,0 1,0.24 -0.32,0.31 0.31,0 0,1 0.09,-0.11 2.54,2.54 0,0 1,0.43 -0.37c1.2,-0.82 2.38,-1.67 3.55,-2.52l1.37,-1c2.23,-1.64 4.43,-3.31 6.68,-4.93a1.76,1.76 0,0 1,0.8 -0.32l1.07,-0.82a97.55,97.55 0,0 1,9.13 -6.19c2,-1.17 4.13,-2 5.89,-3.27 0.05,1.91 0.11,3.8 0.12,5.66 0.09,12.9 -2.52,25.74 -2.89,38.64 -0.39,13.56 -0.82,27.26 0,40.82 0.1,1.73 0.2,3.46 0.29,5.19 -3.1,1.78 -6.07,4.41 -8.86,6.17Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M292.4,441.09a1.64,1.64 0,0 1,-2 -1.19,1.58 1.58,0 0,1 -0.05,-0.38c0,-5.24 0.63,-10.57 0.31,-15.82 -2.15,4.18 -3.77,8.65 -6.49,12.53a1.5,1.5 0,0 1,-2.05 0.51,1.44 1.44,0 0,1 -0.5,-0.51c-2.25,-3.86 -3.64,-8.87 -6.78,-12.2 -0.18,5.28 -0.64,10.54 -0.75,15.83a1.29,1.29 0,0 1,-0.94 1.23,23.89 23.89,0 0,1 -8.8,-0.26c5.19,10.39 20.83,14.09 30,6.54a17.77,17.77 0,0 0,4.74 -6.38A57.24,57.24 0,0 0,292.4 441.09Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M289,410.81a16.77,16.77 0,0 0,-13.37 1.75c-9.09,4 -14.92,15.25 -12.48,25 0.12,0.48 0.26,0.94 0.42,1.4a43.66,43.66 0,0 0,8 -0.16c0,-5.91 0.48,-11.81 0.51,-17.73a1.43,1.43 0,0 1,1.46 -1.41,1.39 1.39,0 0,1 0.69,0.18c4.59,2.94 6.42,8.09 8.79,12.77 2.68,-4.66 4.32,-9.85 7.33,-14.33 0.67,-1 2.53,-1 2.79,0.37 1.2,6.36 0.69,12.73 0.53,19.14 2.2,-0.12 4.4,0 6.61,-0.12C303.15,427.19 299.49,413.8 289,410.81Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M340.68,263.07c-0.37,-5.69 -0.51,-11.38 -0.55,-17.08 0,-0.4 -0.07,-0.8 -0.09,-1.2 -0.62,-8.89 -0.17,-17.78 0.16,-26.67 -0.05,-4.66 0,-9.32 0,-14 0,-10.07 1.15,-20.37 1.09,-30.55v-0.43c-0.13,-0.45 -0.23,-0.9 -0.34,-1.36 -0.06,-0.27 -0.13,-0.55 -0.18,-0.82s-0.11,-0.56 -0.16,-0.84 -0.11,-0.62 -0.16,-0.92 -0.05,-0.41 -0.08,-0.62c-0.12,-0.91 -0.22,-1.82 -0.28,-2.73h0c-1.34,0 -2.68,0 -4,0.08h0c-17.55,0.46 -35.09,1.86 -52.63,2.38l-2.52,0.06c-2.42,0.06 -4.85,0.11 -7.27,0.12h0q-3.81,3 -7.76,5.72l-0.75,0.63h0c-8.17,6.88 -16,14.13 -23.75,21.5v2.16a15.37,15.37 0,0 1,-0.06 1.73v1.3c-0.32,6.84 -1.13,13.67 -1.92,20.48 -1.23,10.66 -1.92,21.32 -2.46,32 -0.57,11.17 -0.89,22.25 -0.66,33.43 0,2 0.11,4.06 0.17,6.13 0.1,0.37 0.2,0.74 0.32,1.11l-0.29,0.11c0,1.17 0.05,2.36 0.07,3.54 13.74,-1.47 27.55,-1.74 41.36,-2.18a100.51,100.51 0,0 1,10.27 -0.38c1.63,-0.07 3.25,-0.17 4.87,-0.26h0c0.88,0 1.76,-0.08 2.64,-0.14h0.57l0.33,0.05 0.27,0.05L297,295.47l1.73,-1.23 2,-1.39c0.77,-0.53 1.54,-1 2.32,-1.55l2.32,-1.51c0.81,-0.52 1.62,-1 2.44,-1.55 8.41,-5.21 17.13,-9.93 25.72,-14.86h0l1.05,-0.62c1.14,-0.66 2.28,-1.31 3.41,-2l0.06,-0.06c1,-0.62 2.1,-1.22 3.14,-1.85A57.79,57.79 0,0 1,340.68 263.07ZM279.53,173.5c10.81,-0.47 21.68,-0.74 32.49,-0.94q6.62,-0.12 13.25,-0.16a102.32,102.32 0,0 0,-8.46 6.13,135.38 135.38,0 0,0 -13.72,12.15c-0.1,-0.18 -0.19,-0.36 -0.3,-0.53a7.56,7.56 0,0 1,-1.89 0.65,1.85 1.85,0 0,1 -0.61,0.47 1.42,1.42 0,0 1,-0.33 0.11l-0.15,0.05a2.72,2.72 0,0 1,-0.57 0l-0.5,0.06a4.68,4.68 0,0 1,-0.74 0h-0.11l-0.32,-0.08h-0.09c-6.2,0.29 -12.41,0.21 -18.61,0.24s-12.36,0.07 -18.51,0.65a76.51,76.51 0,0 0,-10.12 1.41c4.33,-3.15 9.14,-5.88 13.08,-9.11C268.56,180.38 273.61,176.46 279.53,173.5ZM271.92,289.88c-3.4,0.68 -6.78,1.49 -10.16,2.24 -4.16,0.64 -8.34,1.41 -12.52,1.69 -0.64,0 -1.29,0.06 -1.94,0.06 0.74,-7.16 -0.92,-14.52 -0.75,-21.71q0.36,-15.06 0.75,-30.14c0.2,-8.14 0.77,-16.25 1.57,-24.35 0.23,-2.39 1.27,-8.81 -0.62,-11.8 7.24,-1.09 14.88,0.19 22.13,-0.44 5.56,-0.48 11.12,-1.5 16.6,-2.47 3.94,-0.7 8.24,-0.86 12.28,-1.65a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.78 -1.38,50.56 0.19,6.87 0.88,13.71 1,20.57 0.08,3.45 0,6.91 -0.15,10.34 -0.08,1.46 -0.32,3 -0.46,4.55l-2.31,0.28C288.17,286.67 279.19,288.4 271.92,289.88ZM324.25,272.34c-4.5,2.83 -9.05,5.59 -13.5,8.5 -0.92,0.6 -1.86,1.22 -2.81,1.86q-0.06,-3 -0.14,-5.94c-0.3,-11 -0.66,-22.1 -0.45,-33.14 0.18,-9.7 0.61,-19.39 0.06,-29.08a113.82,113.82 0,0 0,-1.49 -13.89c-0.14,-0.76 -0.28,-1.61 -0.45,-2.51l0.79,0a2.55,2.55 0,0 1,-0.26 -1.36,3.58 3.58,0 0,1 0.09,-0.45v-0.08a2.11,2.11 0,0 1,0.17 -0.38,0.14 0.14,0 0,1 0.06,-0.11 1.72,1.72 0,0 1,0.23 -0.32l0.09,-0.11a2.61,2.61 0,0 1,0.44 -0.37c1.2,-0.82 2.38,-1.67 3.55,-2.52l1.36,-1c2.23,-1.65 4.44,-3.32 6.69,-4.94a1.76,1.76 0,0 1,0.8 -0.32l1.07,-0.82a97.55,97.55 0,0 1,9.13 -6.19c2,-1.16 4.13,-2 5.89,-3.27 0,1.91 0.11,3.8 0.12,5.66 0.08,12.9 -2.52,25.74 -2.89,38.64 -0.39,13.56 -0.83,27.27 0,40.82 0.1,1.73 0.21,3.46 0.3,5.19 -3.1,1.72 -6.06,4.38 -8.85,6.14Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M282.18,255.33a1.64,1.64 0,0 1,-2 -1.2,1.5 1.5,0 0,1 -0.05,-0.37c0,-5.24 0.63,-10.57 0.31,-15.82 -2.15,4.18 -3.77,8.65 -6.49,12.53a1.5,1.5 0,0 1,-2.05 0.51,1.44 1.44,0 0,1 -0.5,-0.51c-2.25,-3.86 -3.64,-8.87 -6.78,-12.2 -0.18,5.28 -0.64,10.54 -0.75,15.83a1.29,1.29 0,0 1,-0.94 1.23,24.11 24.11,0 0,1 -8.8,-0.25c5.19,10.38 20.83,14.08 30,6.53a17.63,17.63 0,0 0,4.73 -6.38A57.24,57.24 0,0 0,282.18 255.33Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M278.77,225.05a16.81,16.81 0,0 0,-13.37 1.75c-9.1,4 -14.93,15.25 -12.49,25a11.58,11.58 0,0 0,0.43 1.4,43.66 43.66,0 0,0 8,-0.16c0,-5.91 0.49,-11.81 0.52,-17.73a1.43,1.43 0,0 1,1.46 -1.41,1.39 1.39,0 0,1 0.69,0.18c4.59,2.94 6.42,8.09 8.79,12.77 2.68,-4.66 4.32,-9.85 7.33,-14.33 0.67,-1 2.52,-1 2.79,0.37 1.2,6.36 0.69,12.73 0.52,19.14 2.21,-0.11 4.41,0 6.62,-0.12C292.94,241.43 289.27,228 278.77,225.05Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M741.44,362.51c-0.37,-5.7 -0.51,-11.39 -0.55,-17.09 0,-0.4 -0.07,-0.8 -0.1,-1.2 -0.61,-8.89 -0.16,-17.78 0.17,-26.67 -0.06,-4.66 0,-9.32 0,-14 0,-10.07 1.15,-20.37 1.09,-30.55v-0.43c-0.12,-0.45 -0.23,-0.91 -0.33,-1.36 -0.07,-0.27 -0.13,-0.55 -0.19,-0.82l-0.15,-0.84c-0.06,-0.31 -0.11,-0.62 -0.16,-0.92s-0.06,-0.41 -0.08,-0.61c-0.12,-0.91 -0.22,-1.83 -0.28,-2.74h0l-4,0.08h0c-17.56,0.46 -35.09,1.87 -52.64,2.38l-2.51,0.07c-2.42,0 -4.85,0.1 -7.28,0.12h0c-2.53,2 -5.11,3.89 -7.75,5.71l-0.75,0.63h0c-8.17,6.88 -16,14.13 -23.76,21.5v3.89a10.14,10.14 0,0 1,0 1.3c-0.32,6.84 -1.13,13.67 -1.92,20.48 -1.24,10.66 -1.92,21.32 -2.47,32 -0.57,11.17 -0.88,22.25 -0.65,33.43 0,2 0.11,4.06 0.17,6.13 0.09,0.37 0.2,0.74 0.31,1.11l-0.28,0.11c0,1.17 0,2.36 0.07,3.54 13.73,-1.47 27.55,-1.74 41.36,-2.18a99.24,99.24 0,0 1,10.06 -0.3c1.62,-0.07 3.25,-0.17 4.87,-0.26h0c0.88,0 1.76,-0.08 2.63,-0.14h0.58l0.33,0.05 0.27,0.06h0.11l1.72,-1.22 2,-1.4 2.31,-1.55c0.77,-0.51 1.55,-1 2.33,-1.51s1.62,-1 2.44,-1.54c8.4,-5.22 17.13,-9.94 25.72,-14.87h0l1,-0.62c1.14,-0.65 2.28,-1.31 3.41,-2l0.07,-0.06c1,-0.62 2.1,-1.22 3.13,-1.85C741.68,366.46 741.57,364.49 741.44,362.51ZM680.28,272.93c10.82,-0.47 21.69,-0.73 32.49,-0.94q6.63,-0.12 13.25,-0.16a102.32,102.32 0,0 0,-8.46 6.13,136.35 136.35,0 0,0 -13.71,12.15c-0.1,-0.18 -0.19,-0.36 -0.3,-0.53a7.56,7.56 0,0 1,-1.89 0.65,1.85 1.85,0 0,1 -0.61,0.47 1.42,1.42 0,0 1,-0.33 0.11l-0.15,0.05a1.88,1.88 0,0 1,-0.58 0l-0.49,0.06a3.78,3.78 0,0 1,-0.75 0.05h-0.1l-0.33,-0.07h-0.09c-6.19,0.29 -12.4,0.21 -18.6,0.24s-12.36,0.07 -18.51,0.65A76.66,76.66 0,0 0,651 293.2c4.34,-3.15 9.15,-5.88 13.09,-9.11C669.32,279.81 674.37,275.88 680.28,272.93ZM672.68,389.27c-3.41,0.68 -6.78,1.49 -10.17,2.24 -4.15,0.64 -8.33,1.41 -12.51,1.69 -0.65,0.05 -1.3,0.06 -1.94,0.06 0.73,-7.16 -0.92,-14.52 -0.75,-21.7q0.35,-15.06 0.75,-30.15c0.2,-8.14 0.77,-16.25 1.57,-24.35 0.23,-2.39 1.27,-8.81 -0.62,-11.8 7.24,-1.09 14.88,0.19 22.13,-0.44 5.56,-0.48 11.11,-1.5 16.6,-2.47 3.94,-0.69 8.24,-0.86 12.28,-1.64a3.44,3.44 0,0 0,-0.17 1c-0.49,16.78 -1.86,33.78 -1.39,50.56 0.19,6.87 0.89,13.71 1,20.57 0.08,3.45 0,6.91 -0.14,10.35 -0.09,1.45 -0.32,3 -0.46,4.54l-2.32,0.28c-7.61,-1.91 -16.59,-0.13 -23.86,1.26ZM725,371.73c-4.5,2.83 -9,5.59 -13.5,8.5 -0.92,0.6 -1.86,1.22 -2.8,1.86 0,-2 -0.09,-4 -0.14,-5.94 -0.3,-11 -0.66,-22.1 -0.46,-33.14 0.18,-9.7 0.62,-19.39 0.07,-29.08A113.82,113.82 0,0 0,706.68 300c-0.14,-0.76 -0.29,-1.61 -0.46,-2.51h0.8a2.55,2.55 0,0 1,-0.26 -1.36,1.8 1.8,0 0,1 0.09,-0.45 0.11,0.11 0,0 1,0 -0.08,2.05 2.05,0 0,1 0.16,-0.38l0.06,-0.11a2.43,2.43 0,0 1,0.24 -0.32l0.09,-0.11a2.61,2.61 0,0 1,0.44 -0.37q1.8,-1.23 3.55,-2.52l1.37,-1c2.23,-1.65 4.43,-3.31 6.67,-4.93a1.8,1.8 0,0 1,0.81 -0.32l1.07,-0.82a97.55,97.55 0,0 1,9.13 -6.19,62.3 62.3,0 0,0 5.89,-3.26c0,1.9 0.11,3.79 0.12,5.65 0.08,12.9 -2.53,25.74 -2.9,38.64 -0.38,13.56 -0.82,27.27 0,40.82l0.3,5.19c-3.08,1.73 -6.08,4.36 -8.85,6.12Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M682.94,354.76a1.67,1.67 0,0 1,-2 -1.21,2.2 2.2,0 0,1 0,-0.36c0,-5.24 0.64,-10.57 0.32,-15.82 -2.15,4.19 -3.78,8.65 -6.49,12.53a1.5,1.5 0,0 1,-2.05 0.51,1.44 1.44,0 0,1 -0.5,-0.51c-2.25,-3.86 -3.64,-8.87 -6.78,-12.2 -0.19,5.28 -0.64,10.54 -0.75,15.83a1.29,1.29 0,0 1,-0.94 1.23,24.16 24.16,0 0,1 -8.81,-0.25c5.2,10.38 20.83,14.08 30,6.53a17.75,17.75 0,0 0,4.73 -6.38A57.07,57.07 0,0 0,682.94 354.76Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M679.5,324.48a16.79,16.79 0,0 0,-13.36 1.75c-9.1,4 -14.93,15.25 -12.49,25 0.12,0.47 0.27,0.94 0.43,1.39a43.66,43.66 0,0 0,8 -0.16c0,-5.91 0.49,-11.81 0.52,-17.73a1.41,1.41 0,0 1,1.43 -1.42,1.52 1.52,0 0,1 0.72,0.19c4.58,2.94 6.41,8.09 8.79,12.77 2.68,-4.65 4.32,-9.85 7.33,-14.32 0.67,-1 2.52,-1 2.78,0.36 1.21,6.36 0.7,12.73 0.53,19.14 2.2,-0.11 4.4,0 6.62,-0.11C693.69,340.88 690,327.47 679.5,324.48Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M182,259.29c-0.37,-5.69 -0.51,-11.39 -0.55,-17.08 0,-0.41 -0.07,-0.81 -0.09,-1.21 -0.62,-8.88 -0.17,-17.78 0.16,-26.67v-14c0,-10.07 1.15,-20.37 1.09,-30.55v-0.44c-0.13,-0.45 -0.23,-0.9 -0.34,-1.35 -0.06,-0.28 -0.13,-0.55 -0.18,-0.83s-0.11,-0.56 -0.16,-0.84 -0.11,-0.61 -0.16,-0.92a2.83,2.83 0,0 0,-0.08 -0.61c-0.12,-0.91 -0.22,-1.82 -0.28,-2.74h0l-4,0.08h0c-17.56,0.45 -35.09,1.86 -52.64,2.37l-2.5,0.07c-2.43,0.06 -4.86,0.11 -7.28,0.12h0c-2.54,2 -5.12,3.89 -7.76,5.72l-0.75,0.63h0c-8.17,6.87 -16,14.12 -23.75,21.5v2.16a15.37,15.37 0,0 1,-0.06 1.73v1.3c-0.32,6.84 -1.13,13.66 -1.92,20.48 -1.23,10.65 -1.92,21.32 -2.46,32 -0.57,11.16 -0.89,22.25 -0.66,33.43 0,2 0.11,4.05 0.17,6.13 0.1,0.37 0.2,0.74 0.32,1.1l-0.29,0.11c0,1.18 0,2.36 0.07,3.55 13.74,-1.47 27.55,-1.75 41.36,-2.18a100.51,100.51 0,0 1,10.27 -0.38l4.87,-0.26h0l2.64,-0.14a2.72,2.72 0,0 1,0.57 0l0.33,0.05 0.27,0.06h0.11l1.73,-1.22 2,-1.4c0.77,-0.52 1.54,-1 2.32,-1.55s1.54,-1 2.32,-1.5 1.62,-1 2.44,-1.55c8.4,-5.22 17.13,-9.94 25.72,-14.87h0l1,-0.61 3.42,-2 0.06,-0.07c1,-0.62 2.1,-1.22 3.14,-1.85Q182.15,262.27 182,259.29ZM120.82,169.71c10.81,-0.46 21.68,-0.73 32.49,-0.93 4.41,-0.09 8.83,-0.13 13.25,-0.17a104,104 0,0 0,-8.46 6.13,136 136,0 0,0 -13.69,12.14c-0.1,-0.17 -0.19,-0.36 -0.3,-0.52a7.56,7.56 0,0 1,-1.89 0.65,1.7 1.7,0 0,1 -0.61,0.46 2.19,2.19 0,0 1,-0.33 0.12h-0.15a2.71,2.71 0,0 1,-0.57 0L140,187.59a3.12,3.12 0,0 1,-0.74 0.06h-0.11a1.65,1.65 0,0 1,-0.32 -0.07h-0.09c-6.2,0.29 -12.41,0.22 -18.61,0.25s-12.36,0.06 -18.51,0.65a74.67,74.67 0,0 0,-10.12 1.41c4.33,-3.15 9.14,-5.89 13.08,-9.11C109.83,176.59 114.88,172.67 120.77,169.71ZM113.21,286.06c-3.4,0.67 -6.78,1.49 -10.16,2.23 -4.16,0.65 -8.34,1.42 -12.52,1.7 -0.65,0 -1.29,0.05 -1.94,0.05 0.74,-7.15 -0.92,-14.52 -0.75,-21.7q0.36,-15.06 0.75,-30.14c0.2,-8.15 0.77,-16.25 1.57,-24.36 0.23,-2.39 1.27,-8.8 -0.62,-11.8 7.24,-1.09 14.88,0.2 22.13,-0.43 5.56,-0.48 11.12,-1.51 16.6,-2.48 3.94,-0.69 8.24,-0.86 12.28,-1.64a3.44,3.44 0,0 0,-0.17 1c-0.48,16.79 -1.85,33.79 -1.38,50.57 0.19,6.86 0.88,13.7 1,20.57 0.08,3.44 0,6.9 -0.15,10.34 -0.08,1.45 -0.32,3 -0.46,4.54l-2.31,0.28c-7.59,-1.91 -16.57,-0.17 -23.84,1.27ZM165.54,268.51c-4.5,2.84 -9.05,5.6 -13.5,8.51l-2.78,1.86c0,-2 -0.09,-4 -0.14,-5.93 -0.3,-11 -0.66,-22.1 -0.45,-33.15 0.18,-9.7 0.61,-19.38 0.06,-29.08a112.8,112.8 0,0 0,-1.49 -13.84c-0.14,-0.76 -0.28,-1.61 -0.45,-2.51l0.79,-0.06a2.5,2.5 0,0 1,-0.26 -1.35,3.73 3.73,0 0,1 0.09,-0.46v-0.08a1,1 0,0 1,0.16 -0.37,0.34 0.34,0 0,1 0.07,-0.11 1.72,1.72 0,0 1,0.23 -0.32l0.1,-0.12a2.54,2.54 0,0 1,0.43 -0.37c1.2,-0.81 2.38,-1.66 3.55,-2.52l1.37,-1c2.22,-1.65 4.43,-3.32 6.68,-4.93a1.76,1.76 0,0 1,0.8 -0.32l1.07,-0.82a97.55,97.55 0,0 1,9.13 -6.19c2,-1.17 4.13,-2 5.89,-3.27 0,1.9 0.11,3.8 0.12,5.66 0.08,12.89 -2.52,25.74 -2.89,38.63 -0.39,13.57 -0.83,27.27 0,40.82 0.1,1.74 0.21,3.47 0.3,5.2 -3.1,1.74 -6.06,4.36 -8.85,6.12Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M123.45,251.54a1.63,1.63 0,0 1,-2 -1.18,1.58 1.58,0 0,1 0,-0.38c0,-5.24 0.63,-10.57 0.31,-15.82 -2.15,4.18 -3.77,8.64 -6.49,12.53a1.51,1.51 0,0 1,-2.07 0.49,1.41 1.41,0 0,1 -0.48,-0.49c-2.25,-3.87 -3.64,-8.88 -6.78,-12.21 -0.18,5.28 -0.64,10.55 -0.75,15.83a1.31,1.31 0,0 1,-0.94 1.24,23.89 23.89,0 0,1 -8.8,-0.26c5.19,10.38 20.83,14.09 30,6.54a17.58,17.58 0,0 0,4.73 -6.39A59.53,59.53 0,0 0,123.45 251.54Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M120,221.27A16.81,16.81 0,0 0,106.65 223c-9.1,4 -14.93,15.26 -12.49,25 0.12,0.48 0.27,0.94 0.43,1.4a43.66,43.66 0,0 0,8 -0.16c0,-5.92 0.49,-11.82 0.52,-17.73a1.43,1.43 0,0 1,1.45 -1.42,1.46 1.46,0 0,1 0.7,0.18c4.59,2.94 6.42,8.1 8.79,12.77 2.68,-4.65 4.32,-9.84 7.33,-14.32 0.67,-1 2.52,-1 2.79,0.36 1.2,6.37 0.69,12.73 0.52,19.15 2.21,-0.12 4.41,0 6.62,-0.12C134.21,237.64 130.54,224.25 120,221.27Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M491.52,140.72c-0.37,-5.69 -0.51,-11.39 -0.56,-17.08l-0.09,-1.2c-0.61,-8.89 -0.17,-17.78 0.16,-26.67 0,-4.66 0,-9.32 0,-14 0,-10.07 1.14,-20.37 1.08,-30.55v-0.43c-0.13,-0.45 -0.23,-0.91 -0.34,-1.36l-0.18,-0.82a5.08,5.08 0,0 0,-0.16 -0.85c-0.05,-0.28 -0.11,-0.61 -0.15,-0.91l-0.09,-0.62c-0.12,-0.91 -0.21,-1.82 -0.27,-2.74h0c-1.34,0 -2.68,0 -4,0.09h0c-17.55,0.46 -35.08,1.86 -52.63,2.38l-2.51,0.06c-2.43,0.06 -4.85,0.11 -7.28,0.12h0c-2.54,2 -5.11,3.89 -7.76,5.72l-0.74,0.63h0c-8.16,6.88 -16,14.13 -23.75,21.5v3.89a10.06,10.06 0,0 1,-0.05 1.3c-0.33,6.84 -1.13,13.66 -1.92,20.48 -1.24,10.65 -1.92,21.32 -2.47,32 -0.57,11.16 -0.88,22.25 -0.65,33.43 0,2 0.11,4.06 0.16,6.13 0.1,0.37 0.21,0.74 0.32,1.11l-0.28,0.1c0,1.18 0.05,2.37 0.06,3.55 13.74,-1.47 27.56,-1.74 41.36,-2.18a100.71,100.71 0,0 1,10.28 -0.38c1.62,-0.07 3.24,-0.17 4.87,-0.26h0l2.63,-0.14a5.61,5.61 0,0 1,0.58 0l0.33,0.06 0.27,0h0.11c0.57,-0.42 1.15,-0.82 1.72,-1.23l2,-1.4 2.31,-1.55 2.33,-1.5c0.81,-0.52 1.62,-1 2.44,-1.55 8.4,-5.22 17.13,-9.93 25.72,-14.86h0l1,-0.61c1.14,-0.66 2.28,-1.31 3.41,-2l0.07,-0.07c1,-0.61 2.1,-1.21 3.13,-1.84C491.77,144.68 491.65,142.71 491.52,140.72ZM430.36,51.14c10.82,-0.46 21.69,-0.73 32.49,-0.93q6.61,-0.12 13.25,-0.17c-2.92,1.91 -5.75,4 -8.46,6.14a136.35,136.35 0,0 0,-13.71 12.15c-0.11,-0.18 -0.2,-0.36 -0.31,-0.53a7.48,7.48 0,0 1,-1.88 0.65,1.85 1.85,0 0,1 -0.61,0.47 2.13,2.13 0,0 1,-0.33 0.11h-0.16a1.82,1.82 0,0 1,-0.57 0l-0.49,0.06a3.78,3.78 0,0 1,-0.75 0h-0.06a1.14,1.14 0,0 1,-0.33 -0.07h-0.09c-6.2,0.29 -12.4,0.21 -18.61,0.24s-12.36,0.07 -18.5,0.65a76.66,76.66 0,0 0,-10.13 1.41c4.34,-3.15 9.14,-5.89 13.09,-9.11C419.4,58 424.44,54.11 430.36,51.14ZM422.77,167.49c-3.4,0.68 -6.77,1.49 -10.16,2.24 -4.15,0.64 -8.33,1.41 -12.51,1.69q-1,0.06 -2,0.06c0.74,-7.16 -0.91,-14.52 -0.75,-21.71q0.36,-15.06 0.75,-30.14c0.21,-8.15 0.78,-16.25 1.57,-24.35 0.24,-2.39 1.28,-8.81 -0.61,-11.81 7.24,-1.08 14.88,0.2 22.13,-0.43 5.56,-0.48 11.11,-1.5 16.6,-2.47 3.93,-0.7 8.24,-0.87 12.27,-1.65a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.78 -1.38,50.56 0.19,6.87 0.88,13.71 1,20.57 0.08,3.44 0,6.91 -0.15,10.34 -0.08,1.45 -0.32,3 -0.46,4.55l-2.31,0.27C439,164.32 430,166.05 422.77,167.49ZM475.1,150c-4.5,2.83 -9.05,5.59 -13.5,8.5l-2.8,1.85c-0.05,-2 -0.09,-4 -0.14,-5.93 -0.3,-11 -0.66,-22.1 -0.46,-33.14 0.18,-9.7 0.62,-19.39 0.07,-29.08a111.89,111.89 0,0 0,-1.5 -13.89c-0.13,-0.76 -0.28,-1.61 -0.45,-2.51l0.8,-0.06a2.5,2.5 0,0 1,-0.26 -1.35,2.36 2.36,0 0,1 0.08,-0.45v-0.08a1.8,1.8 0,0 1,0.16 -0.38l0.06,-0.11a2.43,2.43 0,0 1,0.24 -0.32l0.09,-0.11a2.61,2.61 0,0 1,0.44 -0.37c1.19,-0.82 2.37,-1.67 3.55,-2.52l1.37,-1c2.22,-1.65 4.43,-3.32 6.67,-4.93a1.76,1.76 0,0 1,0.8 -0.32c0.36,-0.27 0.71,-0.55 1.08,-0.82a99.38,99.38 0,0 1,9.12 -6.19c2,-1.17 4.13,-2 5.9,-3.27 0,1.91 0.11,3.8 0.12,5.66 0.08,12.9 -2.53,25.74 -2.9,38.64 -0.38,13.56 -0.82,27.26 0,40.82 0.1,1.73 0.2,3.46 0.29,5.19 -3.09,1.78 -6.06,4.41 -8.85,6.17Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M433,133a1.67,1.67 0,0 1,-2 -1.21,2.2 2.2,0 0,1 0,-0.36c0,-5.24 0.63,-10.57 0.32,-15.82 -2.15,4.18 -3.78,8.64 -6.5,12.53a1.48,1.48 0,0 1,-2 0.51,1.39 1.39,0 0,1 -0.51,-0.51c-2.26,-3.86 -3.64,-8.87 -6.79,-12.21 -0.18,5.29 -0.64,10.55 -0.75,15.84a1.29,1.29 0,0 1,-0.94 1.23,23.89 23.89,0 0,1 -8.8,-0.26c5.19,10.39 20.83,14.09 30,6.54a17.77,17.77 0,0 0,4.74 -6.38A55.13,55.13 0,0 0,433 133Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M429.58,102.7a16.75,16.75 0,0 0,-13.36 1.75c-9.1,4 -14.93,15.25 -12.49,25 0.12,0.48 0.27,0.94 0.43,1.4a43.66,43.66 0,0 0,8 -0.16c0,-5.91 0.49,-11.82 0.52,-17.73a1.43,1.43 0,0 1,1.45 -1.42,1.46 1.46,0 0,1 0.7,0.18c4.58,3 6.41,8.1 8.78,12.77 2.69,-4.65 4.33,-9.84 7.33,-14.32 0.68,-1 2.53,-1 2.79,0.37 1.21,6.36 0.69,12.73 0.53,19.14 2.2,-0.12 4.4,0 6.61,-0.12C443.77,119.08 440.11,105.69 429.58,102.7Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M671.84,227.66c-0.37,-5.69 -0.51,-11.39 -0.55,-17.09 0,-0.4 -0.07,-0.8 -0.09,-1.2 -0.62,-8.88 -0.17,-17.78 0.16,-26.67 -0.05,-4.66 0,-9.32 0,-14 0,-10.08 1.15,-20.37 1.09,-30.55v-0.44c-0.13,-0.45 -0.24,-0.9 -0.34,-1.35 -0.06,-0.28 -0.13,-0.55 -0.18,-0.83s-0.11,-0.56 -0.16,-0.84 -0.11,-0.61 -0.16,-0.92a2.83,2.83 0,0 0,-0.08 -0.61c-0.12,-0.91 -0.22,-1.82 -0.28,-2.74h0l-4,0.08h0c-17.55,0.46 -35.09,1.87 -52.64,2.38l-2.5,0.07q-3.65,0.09 -7.29,0.12h0c-2.54,2 -5.12,3.89 -7.76,5.71l-0.75,0.64h0c-8.17,6.87 -16,14.12 -23.75,21.5v2.15a15.64,15.64 0,0 1,-0.06 1.74,11.13 11.13,0 0,1 0,1.29c-0.32,6.85 -1.13,13.67 -1.92,20.49 -1.23,10.65 -1.92,21.32 -2.46,32 -0.57,11.16 -0.89,22.24 -0.66,33.42 0.05,2 0.11,4.06 0.17,6.13 0.1,0.38 0.2,0.75 0.32,1.11l-0.29,0.11c0,1.18 0,2.36 0.07,3.55 13.74,-1.48 27.55,-1.75 41.36,-2.18 3.41,-0.3 6.84,-0.43 10.27,-0.39 1.62,-0.07 3.25,-0.17 4.87,-0.26h0c0.88,0 1.76,-0.08 2.64,-0.14h0.57l0.33,0.05 0.28,0.06h0.1l1.73,-1.22 2,-1.4 2.31,-1.55 2.33,-1.5c0.78,-0.5 1.62,-1 2.44,-1.55 8.41,-5.22 17.13,-9.94 25.72,-14.87h0l1,-0.61 3.42,-2 0.06,-0.07c1,-0.62 2.1,-1.22 3.14,-1.85Q672,230.64 671.84,227.66ZM610.68,138.08c10.82,-0.47 21.69,-0.73 32.5,-0.94 4.41,-0.08 8.83,-0.12 13.24,-0.16a103.87,103.87 0,0 0,-8.45 6.13,136.47 136.47,0 0,0 -13.72,12.15c-0.1,-0.17 -0.19,-0.36 -0.3,-0.52a7.15,7.15 0,0 1,-1.89 0.64,1.73 1.73,0 0,1 -0.61,0.47 2.19,2.19 0,0 1,-0.33 0.12L631,155.97a2.81,2.81 0,0 1,-0.58 0l-0.49,0.05a3.11,3.11 0,0 1,-0.74 0h-0.11a1.65,1.65 0,0 1,-0.32 -0.07h-0.09c-6.2,0.29 -12.41,0.22 -18.61,0.24s-12.36,0.07 -18.51,0.66a74.67,74.67 0,0 0,-10.12 1.41c4.33,-3.15 9.14,-5.89 13.08,-9.12C599.77,145 604.77,141 610.68,138.08ZM603.08,254.43c-3.4,0.67 -6.78,1.49 -10.16,2.23 -4.16,0.65 -8.34,1.42 -12.52,1.7 -0.65,0 -1.29,0.05 -1.94,0.05 0.74,-7.15 -0.92,-14.52 -0.75,-21.7q0.36,-15.08 0.75,-30.14c0.2,-8.15 0.77,-16.25 1.57,-24.36 0.23,-2.39 1.27,-8.8 -0.62,-11.8 7.24,-1.09 14.88,0.2 22.13,-0.43 5.56,-0.48 11.12,-1.51 16.6,-2.48 3.94,-0.69 8.24,-0.86 12.28,-1.64a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.79 -1.39,50.57 0.2,6.86 0.89,13.7 1,20.57 0.08,3.44 0,6.9 -0.15,10.34 -0.08,1.45 -0.32,3 -0.46,4.54l-2.31,0.28c-7.61,-1.91 -16.59,-0.17 -23.86,1.27ZM655.41,236.88c-4.5,2.84 -9,5.6 -13.51,8.51l-2.8,1.85c0,-2 -0.09,-4 -0.14,-5.93 -0.3,-11.05 -0.66,-22.1 -0.45,-33.15 0.18,-9.7 0.61,-19.38 0.06,-29.08a113.44,113.44 0,0 0,-1.49 -13.88c-0.14,-0.76 -0.28,-1.62 -0.45,-2.51a3.55,3.55 0,0 0,0.79 -0.06,2.5 2.5,0 0,1 -0.26,-1.35 1.87,1.87 0,0 1,0.09 -0.46v-0.08a1.73,1.73 0,0 1,0.16 -0.37,0.34 0.34,0 0,1 0.07,-0.11 1.5,1.5 0,0 1,0.23 -0.33l0.09,-0.11a2.61,2.61 0,0 1,0.44 -0.37c1.2,-0.81 2.38,-1.66 3.55,-2.52l1.38,-1c2.22,-1.64 4.42,-3.31 6.67,-4.93a1.64,1.64 0,0 1,0.8 -0.31l1.13,-0.81a103,103 0,0 1,9.13 -6.19c2,-1.16 4.13,-1.95 5.89,-3.26 0,1.9 0.11,3.8 0.12,5.66 0.08,12.89 -2.52,25.74 -2.89,38.63 -0.39,13.56 -0.83,27.27 0,40.82 0.1,1.74 0.21,3.47 0.3,5.2C661.16,232.5 658.2,235.12 655.41,236.88Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M613.34,219.88a1.63,1.63 0,0 1,-2 -1.18,1.58 1.58,0 0,1 -0.05,-0.38c0,-5.24 0.63,-10.57 0.31,-15.82 -2.15,4.18 -3.77,8.64 -6.49,12.53a1.51,1.51 0,0 1,-2.07 0.49,1.41 1.41,0 0,1 -0.48,-0.49c-2.25,-3.87 -3.64,-8.88 -6.78,-12.21 -0.18,5.28 -0.64,10.55 -0.75,15.83a1.31,1.31 0,0 1,-0.94 1.24,24.33 24.33,0 0,1 -8.8,-0.26c5.19,10.38 20.83,14.09 30,6.54a17.58,17.58 0,0 0,4.73 -6.39A59.53,59.53 0,0 0,613.34 219.88Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M609.91,189.63a16.85,16.85 0,0 0,-13.37 1.75c-9.1,4 -14.93,15.25 -12.49,25 0.12,0.48 0.27,0.94 0.43,1.4a43.66,43.66 0,0 0,8 -0.16c0,-5.92 0.49,-11.82 0.52,-17.74a1.43,1.43 0,0 1,1.46 -1.41,1.39 1.39,0 0,1 0.69,0.18c4.59,2.94 6.42,8.09 8.79,12.77 2.68,-4.65 4.32,-9.84 7.33,-14.32 0.67,-1 2.52,-1 2.79,0.36 1.2,6.37 0.69,12.73 0.52,19.15 2.21,-0.12 4.41,0 6.62,-0.12C624.1,206 620.43,192.62 609.91,189.63Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M684.87,580.4c-0.37,-5.7 -0.51,-11.39 -0.55,-17.09 0,-0.4 -0.07,-0.8 -0.09,-1.2 -0.62,-8.89 -0.17,-17.78 0.16,-26.67v-14c0,-10.07 1.15,-20.36 1.09,-30.54v-0.44c-0.13,-0.45 -0.23,-0.9 -0.34,-1.36 -0.06,-0.27 -0.13,-0.54 -0.18,-0.82s-0.11,-0.56 -0.16,-0.84 -0.11,-0.61 -0.16,-0.92a2.83,2.83 0,0 0,-0.08 -0.61c-0.12,-0.91 -0.22,-1.83 -0.28,-2.74h0l-4,0.08h0c-17.55,0.46 -35.09,1.87 -52.64,2.38l-2.5,0.07q-3.64,0.09 -7.28,0.12h0c-2.54,2 -5.12,3.89 -7.76,5.71l-0.75,0.64h0c-8.17,6.87 -16,14.12 -23.75,21.5v2.15c0,0.72 0,1.16 -0.05,1.73l-0.06,1.3c-0.32,6.85 -1.13,13.67 -1.92,20.49 -1.23,10.65 -1.92,21.32 -2.46,32 -0.57,11.17 -0.89,22.25 -0.65,33.43 0,2 0.1,4.06 0.16,6.13 0.1,0.38 0.21,0.75 0.32,1.11l-0.29,0.11c0,1.18 0.06,2.36 0.07,3.55 13.74,-1.48 27.55,-1.75 41.36,-2.18 3.41,-0.3 6.84,-0.43 10.27,-0.39 1.63,-0.07 3.25,-0.17 4.87,-0.26h0c0.88,0 1.76,-0.08 2.64,-0.14h0.57l0.33,0 0.27,0.06h0.11l1.73,-1.22 2,-1.4c0.77,-0.52 1.54,-1 2.32,-1.55l2.32,-1.51 2.44,-1.54c8.41,-5.22 17.13,-9.94 25.72,-14.87h0l1,-0.61 3.42,-2 0.06,-0.07c1.05,-0.62 2.1,-1.22 3.14,-1.85Q685.07,583.39 684.87,580.4ZM623.77,490.82c10.81,-0.47 21.68,-0.73 32.49,-0.94q6.62,-0.12 13.25,-0.16a102.32,102.32 0,0 0,-8.46 6.13A136.47,136.47 0,0 0,647.33 508c-0.1,-0.17 -0.19,-0.36 -0.3,-0.52a7.15,7.15 0,0 1,-1.89 0.64,1.73 1.73,0 0,1 -0.61,0.47l-0.33,0.12h-0.15a1.82,1.82 0,0 1,-0.57 0l-0.5,0.06a2.66,2.66 0,0 1,-0.74 0.05h-0.11l-0.32,-0.07h-0.09c-6.2,0.29 -12.41,0.22 -18.61,0.24s-12.36,0.07 -18.51,0.65a74.68,74.68 0,0 0,-10.12 1.42c4.34,-3.15 9.14,-5.89 13.09,-9.12C612.77,497.7 617.77,493.78 623.77,490.82ZM616.16,607.17c-3.4,0.67 -6.78,1.48 -10.16,2.23 -4.16,0.64 -8.34,1.42 -12.52,1.69 -0.64,0 -1.29,0.06 -1.94,0.06 0.74,-7.15 -0.92,-14.52 -0.75,-21.7q0.36,-15.08 0.75,-30.14c0.2,-8.15 0.77,-16.26 1.57,-24.36 0.23,-2.39 1.27,-8.8 -0.62,-11.8 7.24,-1.09 14.88,0.19 22.14,-0.43 5.55,-0.49 11.11,-1.51 16.59,-2.48 3.94,-0.69 8.24,-0.86 12.28,-1.64a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.78 -1.38,50.56 0.19,6.87 0.88,13.71 1,20.58 0.08,3.44 0,6.9 -0.15,10.34 -0.08,1.45 -0.32,3 -0.46,4.54l-2.31,0.28c-7.66,-1.91 -16.65,-0.17 -23.92,1.27ZM668.49,589.62c-4.5,2.84 -9,5.6 -13.5,8.5L652.18,600c0,-2 -0.08,-4 -0.14,-5.94 -0.3,-11 -0.66,-22.09 -0.45,-33.14 0.18,-9.7 0.61,-19.38 0.06,-29.08a113.82,113.82 0,0 0,-1.49 -13.89c-0.14,-0.75 -0.28,-1.61 -0.45,-2.51l0.79,0a2.5,2.5 0,0 1,-0.26 -1.35,3.73 3.73,0 0,1 0.09,-0.46v-0.08a1.76,1.76 0,0 1,0.17 -0.37,0.34 0.34,0 0,1 0.06,-0.12 2.35,2.35 0,0 1,0.23 -0.32l0.1,-0.11a2.21,2.21 0,0 1,0.43 -0.37q1.8,-1.23 3.55,-2.52l1.37,-1c2.23,-1.65 4.43,-3.32 6.68,-4.94a1.64,1.64 0,0 1,0.8 -0.31l1.07,-0.83a99.53,99.53 0,0 1,9.13 -6.19c2,-1.16 4.13,-1.95 5.89,-3.26 0,1.9 0.11,3.8 0.12,5.66 0.09,12.89 -2.52,25.73 -2.89,38.63 -0.39,13.56 -0.82,27.27 0,40.82 0.11,1.73 0.21,3.47 0.3,5.2 -3.15,1.79 -6.11,4.43 -8.9,6.17Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M626.38,572.65a1.64,1.64 0,0 1,-2 -1.19,1.5 1.5,0 0,1 0,-0.37c0,-5.24 0.63,-10.57 0.31,-15.83 -2.15,4.19 -3.77,8.65 -6.49,12.54a1.51,1.51 0,0 1,-2.07 0.49,1.41 1.41,0 0,1 -0.48,-0.49c-2.25,-3.87 -3.64,-8.88 -6.78,-12.21 -0.18,5.28 -0.64,10.55 -0.75,15.83a1.29,1.29 0,0 1,-0.94 1.24,24.33 24.33,0 0,1 -8.8,-0.26c5.19,10.38 20.83,14.08 30,6.53a17.55,17.55 0,0 0,4.73 -6.38A59.35,59.35 0,0 0,626.38 572.65Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M622.94,542.37a16.85,16.85 0,0 0,-13.37 1.75c-9.09,4 -14.93,15.25 -12.48,25 0.12,0.47 0.26,0.94 0.42,1.39a44.56,44.56 0,0 0,8 -0.15c0,-5.92 0.48,-11.82 0.51,-17.74a1.43,1.43 0,0 1,1.46 -1.41,1.39 1.39,0 0,1 0.69,0.18c4.59,2.94 6.42,8.09 8.79,12.77 2.68,-4.65 4.32,-9.84 7.33,-14.32 0.67,-1 2.52,-1 2.79,0.36 1.2,6.37 0.69,12.73 0.52,19.14 2.21,-0.11 4.41,0 6.62,-0.11C637.13,558.75 633.47,545.36 622.94,542.37Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M176.77,428.77c-0.37,-5.69 -0.51,-11.38 -0.55,-17.08 0,-0.4 -0.07,-0.8 -0.09,-1.2 -0.62,-8.89 -0.17,-17.78 0.16,-26.67 0,-4.66 0,-9.32 0,-14 0,-10.07 1.15,-20.37 1.09,-30.55v-0.43c-0.13,-0.45 -0.24,-0.91 -0.34,-1.36 -0.06,-0.27 -0.13,-0.55 -0.18,-0.82s-0.11,-0.56 -0.16,-0.84 -0.11,-0.62 -0.16,-0.92a3.13,3.13 0,0 0,-0.08 -0.62c-0.12,-0.91 -0.22,-1.82 -0.28,-2.73h0c-1.34,0 -2.68,0 -4,0.08h0c-17.56,0.46 -35.09,1.87 -52.64,2.38l-2.5,0.06c-2.43,0.06 -4.86,0.11 -7.29,0.12h0q-3.81,3 -7.76,5.72l-0.75,0.63h0c-8.17,6.88 -16,14.13 -23.75,21.5v2.16a15.37,15.37 0,0 1,-0.06 1.73v1.3c-0.32,6.84 -1.13,13.66 -1.92,20.48 -1.23,10.66 -1.92,21.32 -2.46,32 -0.57,11.17 -0.89,22.25 -0.66,33.43 0,2 0.11,4.06 0.17,6.13 0.1,0.37 0.2,0.74 0.32,1.11l-0.29,0.11c0,1.17 0,2.36 0.07,3.54 13.74,-1.47 27.55,-1.74 41.36,-2.18a100.51,100.51 0,0 1,10.27 -0.38c1.62,-0.07 3.25,-0.17 4.87,-0.26h0c0.88,0 1.76,-0.08 2.64,-0.14h0.9l0.26,0.05h0.12l1.73,-1.23c0.66,-0.47 1.33,-0.93 2,-1.39s1.54,-1 2.32,-1.55l2.32,-1.51c0.81,-0.52 1.62,-1 2.44,-1.54 8.4,-5.22 17.13,-9.94 25.72,-14.87h0l1,-0.61 3.42,-2 0.06,-0.06c1,-0.62 2.1,-1.22 3.14,-1.85A53.62,53.62 0,0 1,176.77 428.77ZM115.61,339.2c10.82,-0.47 21.69,-0.74 32.5,-0.94q6.6,-0.12 13.24,-0.16a103.87,103.87 0,0 0,-8.45 6.13,135.38 135.38,0 0,0 -13.72,12.15c-0.1,-0.18 -0.19,-0.36 -0.3,-0.53a7.56,7.56 0,0 1,-1.89 0.65,1.85 1.85,0 0,1 -0.61,0.47 1.42,1.42 0,0 1,-0.33 0.11l-0.15,0.05a2.81,2.81 0,0 1,-0.58 0l-0.49,0.06a4.68,4.68 0,0 1,-0.74 0.05H134l-0.32,-0.08h-0.09c-6.2,0.29 -12.41,0.21 -18.61,0.24s-12.36,0.07 -18.51,0.65a76.51,76.51 0,0 0,-10.12 1.41c4.33,-3.15 9.14,-5.88 13.08,-9.11 5.19,-4.27 10.24,-8.19 16.15,-11.15ZM108,455.54c-3.4,0.68 -6.78,1.49 -10.16,2.24 -4.16,0.64 -8.34,1.41 -12.52,1.69 -0.65,0 -1.29,0.06 -1.94,0.06 0.74,-7.16 -0.92,-14.52 -0.75,-21.71q0.36,-15.06 0.75,-30.14c0.2,-8.14 0.77,-16.25 1.57,-24.35 0.23,-2.39 1.27,-8.81 -0.62,-11.8 7.24,-1.09 14.88,0.19 22.13,-0.44 5.56,-0.48 11.12,-1.5 16.6,-2.47 3.94,-0.7 8.24,-0.86 12.28,-1.65a3.44,3.44 0,0 0,-0.17 1c-0.48,16.78 -1.85,33.78 -1.39,50.56 0.2,6.87 0.89,13.71 1.05,20.57 0.08,3.45 0,6.91 -0.15,10.35 -0.08,1.45 -0.32,3 -0.46,4.54l-2.31,0.28c-7.71,-1.9 -16.69,-0.17 -24,1.27ZM160.34,438c-4.5,2.83 -9.05,5.59 -13.51,8.5l-2.8,1.86q-0.06,-3 -0.14,-5.94c-0.3,-11 -0.66,-22.1 -0.45,-33.14 0.18,-9.7 0.61,-19.39 0.06,-29.08A113.82,113.82 0,0 0,142 366.31c-0.14,-0.76 -0.28,-1.61 -0.45,-2.51l0.79,-0.05a2.55,2.55 0,0 1,-0.26 -1.36,1.8 1.8,0 0,1 0.09,-0.45v-0.08a2.05,2.05 0,0 1,0.16 -0.38l0.07,-0.11a1.72,1.72 0,0 1,0.23 -0.32l0.09,-0.11a2.61,2.61 0,0 1,0.44 -0.37c1.2,-0.82 2.38,-1.67 3.55,-2.52l1.37,-1c2.22,-1.64 4.43,-3.31 6.68,-4.93a1.76,1.76 0,0 1,0.8 -0.32l1.07,-0.82a99.62,99.62 0,0 1,9.13 -6.2c2,-1.16 4.13,-1.95 5.89,-3.27 0,1.91 0.11,3.8 0.12,5.66 0.08,12.9 -2.52,25.74 -2.89,38.64 -0.39,13.56 -0.83,27.27 0,40.82 0.1,1.73 0.21,3.46 0.3,5.19 -3.15,1.79 -6.11,4.42 -8.9,6.18Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M118.22,421a1.65,1.65 0,0 1,-2 -1.26,1.55 1.55,0 0,1 0,-0.31c0,-5.24 0.63,-10.57 0.31,-15.82 -2.15,4.18 -3.77,8.65 -6.49,12.53a1.5,1.5 0,0 1,-2.05 0.51,1.44 1.44,0 0,1 -0.5,-0.51c-2.25,-3.86 -3.64,-8.87 -6.78,-12.2 -0.18,5.28 -0.64,10.54 -0.75,15.83A1.29,1.29 0,0 1,99 421a24.11,24.11 0,0 1,-8.8 -0.25c5.19,10.38 20.83,14.08 30,6.53a17.63,17.63 0,0 0,4.73 -6.38A58.1,58.1 0,0 0,118.22 421Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M114.77,390.75a16.81,16.81 0,0 0,-13.37 1.75c-9.1,4 -14.93,15.25 -12.49,25 0.12,0.48 0.27,0.95 0.43,1.4a43.66,43.66 0,0 0,8 -0.16c0,-5.91 0.49,-11.81 0.52,-17.73a1.43,1.43 0,0 1,1.46 -1.41,1.39 1.39,0 0,1 0.69,0.18c4.59,2.94 6.42,8.09 8.79,12.77 2.68,-4.66 4.32,-9.85 7.33,-14.33 0.67,-1 2.52,-1 2.79,0.37 1.2,6.36 0.69,12.73 0.52,19.14 2.21,-0.11 4.41,0 6.62,-0.12C129,407.13 125.31,393.74 114.77,390.75Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M413.11,429.38c-5.08,-2.92 -11.2,-4.36 -16.81,-5.94 -6,-1.69 -12.11,-3.18 -18,-5.35 -5.66,-2.08 -11.2,-4.51 -17,-6.22 -4.28,-1.27 -11.8,-4.07 -15.57,-0.56a3,3 0,0 0,0 4.25h0c1.68,1.62 4.08,1.81 6.26,2.38a76.7,76.7 0,0 1,8.06 2.65c5.44,2.11 10.79,4.43 16.23,6.56 10.85,4.25 22.36,6.42 33.14,10.9C414.49,440.14 417.66,432 413.11,429.38Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M483.77,329.62c0.54,-4.13 -5.38,-4.89 -7.27,-2 -3.27,5.07 -3.54,12.28 -3.84,18.12 -0.33,6.73 -0.13,13.47 -0.48,20.2 -0.37,7 -1.42,13.93 -1.78,20.94 -0.41,7.75 -1.5,15.33 -2.2,23 -1.83,5.2 6.9,7.68 8.81,2.2 2.4,-6.93 2.26,-15.18 2.62,-22.45s1.34,-14.69 1.8,-22.05c0.41,-6.48 0.1,-13 0.22,-19.48S483,335.88 483.77,329.62Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M636.14,362.7c-6.31,2.88 -11.72,7.34 -17.12,11.64a166.31,166.31 0,0 1,-16.53 11.78c-12.06,7.43 -24.17,14.34 -35.47,22.94 -10.74,8.17 -21,16.91 -31.75,25.11a311.38,311.38 0,0 1,-33.73 22.2c-2.71,1.57 -0.92,6.28 2.19,5.19 12.75,-4.44 24.18,-12.26 35,-20.21s21.26,-16.47 32.1,-24.47c11.2,-8.25 23.15,-15 35,-22.21 12.13,-7.34 22.33,-17.47 34.76,-24.26C645.77,367.58 641.24,360.38 636.14,362.7Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M682.7,391.88a2.3,2.3 0,0 0,-2.56 -1c-3.39,0.77 -4.65,5.39 -5.85,8.23 -1.46,3.45 -2.81,6.94 -4,10.5 -2.72,8.26 -4.83,16.67 -6.76,25.15s-3.7,16.72 -5.52,25.09c-0.87,3.95 -1.76,7.91 -2.72,11.84 -0.85,3.45 -3.17,8.25 -1.89,11.7 1.13,3 4.23,3.69 6.7,1.77 2.77,-2.16 3.18,-7.21 4,-10.47 1,-3.92 1.86,-7.86 2.72,-11.8 1.84,-8.36 3.45,-16.77 5.24,-25.14 1.74,-8.12 3.57,-16.24 5.71,-24.27 1,-3.85 2.09,-7.7 3.31,-11.5C682.07,398.88 684.37,394.88 682.7,391.88Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M660.69,260.78c-3.68,-5.21 -7.88,-12.15 -13.45,-15.55a3.47,3.47 0,0 0,-5 3.89c1.39,5.6 6.45,10.52 9.59,15.21a68.73,68.73 0,0 1,4.85 8.07c1.09,2.26 1.12,4.91 2.85,6.8a4.46,4.46 0,0 0,6.29 0C670.3,274 663.84,265.24 660.69,260.78Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M471.32,211.46c-0.61,-9 -3.48,-17.42 -5.25,-26.19 -1.52,-7.53 -1.76,-16.68 -6.62,-23 -2.1,-2.72 -6.13,-1.18 -5.54,2.34 1.24,7.44 2.44,14.87 3.65,22.32 1.32,8.2 4,16.21 4.45,24.53C462.36,217.42 471.77,217.44 471.32,211.46Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M446.62,273.14c-2.5,-2.36 -6.89,-2.54 -10.1,-3.75 -3.68,-1.39 -7.22,-3.1 -10.86,-4.59 -9.45,-3.86 -19.48,-6.14 -29.15,-9.36 -10,-3.34 -19.94,-6.95 -30,-10.13 -9.69,-3.05 -20.44,-7.33 -30.7,-7.54a3.22,3.22 0,0 0,-1.61 6c4.54,2.52 9.84,3.93 14.73,5.6s10.08,3.3 15.09,5c10.23,3.52 20.29,7.5 30.51,11 9.29,3.21 19,5.55 28,9.43 3.73,1.6 7.41,3.32 11.21,4.75 3.43,1.29 8.61,3.47 11.94,1.09C448.06,278.93 449,275.42 446.62,273.14Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M239.77,243.47c-4.9,-3.25 -10.93,-5 -16.35,-7.22 -4.87,-2 -9.73,-3.86 -14.74,-5.44 -4.53,-1.44 -9.09,-2.8 -13.54,-4.47 -3.46,-1.29 -7.47,-2.77 -10.14,-5.42 -5,-5 -12.74,2.74 -7.76,7.76 6.81,6.86 17.81,9.25 26.76,11.92 5,1.48 9.83,3.23 14.72,5 6.07,2.16 12.6,5.13 19.15,4.92a3.8,3.8 0,0 0,1.9 -7.05Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M237.45,270c-4.22,0.3 -7.41,5.45 -9.8,8.52 -3.13,4 -6,8.19 -8.78,12.45 -6,9.09 -11.77,18.24 -18.56,26.74 -6.35,8 -12.91,15.76 -19,23.91 -2.28,3 -4.56,6.08 -6.66,9.25s-4.43,6.39 -2.77,10.31c1,2.31 4.08,2.46 6,1.57 2.62,-1.22 4.1,-5.46 5.66,-7.76 2,-3 4.21,-5.92 6.4,-8.82 6.08,-8.08 12.46,-15.93 18.61,-24a255.72,255.72 0,0 0,16.55 -25.26c2.65,-4.46 5.33,-8.92 8.09,-13.31 2,-3.16 6.51,-7.69 6.27,-11.58a2,2 0,0 0,-2 -2Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M529.77,76.1c-9.36,3.91 -15.86,12.16 -24.58,17.15 -3.42,1.92 -6.82,3.63 -10.16,5.63 -2.87,1.66 -6.76,3.65 -8.46,6.62 -2.15,3.74 2.05,7.43 5.64,5.64 2.81,-1.4 5.45,-3.41 8.24,-4.91 3.22,-1.74 6.53,-3.33 9.74,-5.09 8.35,-4.58 14.85,-11.75 23.12,-16.5C537.77,82.07 534.71,74 529.77,76.1Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M543.61,69.08a4.71,4.71 0,0 0,-3.19 -1.32,4.51 4.51,0 1,0 3.18,7.71h0a4.62,4.62 0,0 0,1.32 -3.19A4.55,4.55 0,0 0,543.61 69.08Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M550.56,61.34c-4.94,0 -4.95,7.68 0,7.68S555.51,61.34 550.56,61.34Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M341.45,59.68c-2.19,4.34 -3.2,9.44 -4.77,14.05C334.88,79 333,84.17 331,89.35c-3.73,9.9 -7.69,19.7 -11.54,29.56A275.72,275.72 0,0 0,309.4 149c-0.54,2.07 -5.28,24.91 0.27,22.87 3.37,-1.24 3.42,-6.83 4.18,-9.83 1.25,-4.93 2.6,-9.87 4.09,-14.74 3,-9.68 6.69,-19.1 10.41,-28.52s7.56,-19 11.17,-28.52c1.87,-5 3.69,-9.94 5.4,-15 1.51,-4.39 3.48,-9 3.91,-13.66C349.2,57.77 343.17,56.27 341.45,59.68Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M350.49,48.72a3,3 0,0 0,-0.37 -1.23,2.7 2.7,0 0,0 -1.59,-1.24 8,8 0,0 0,-0.75 -0.32,3.81 3.81,0 1,0 0.91,7 4,4 0,0 0,1.8 -4.2Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M352.22,35.88a6.46,6.46 0,0 0,-1 -0.74,3.54 3.54,0 0,0 -3.61,0A3.58,3.58 0,0 0,346.3 40a3.63,3.63 0,0 0,1.31 1.3,3.54 3.54,0 0,0 3.61,0 6.46,6.46 0,0 0,1 -0.74,3.32 3.32,0 0,0 0,-4.68Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M684.77,189c-1.09,0.93 -3.25,1.41 -4.56,2 -2,0.9 -3.92,1.85 -5.82,2.89 -3,1.67 -6.35,3.57 -8.23,6.59 -1.51,2.43 1.37,4.53 3.56,3.57 2.79,-1.22 5.36,-3 8.09,-4.31s6.7,-4 9.71,-4.11C694.52,195.55 690.55,184.16 684.77,189Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M165.05,116.47c-1.75,8.64 -2.18,17.52 -4.15,26.12 -1.83,8 -4.54,15.43 -3.37,23.7 0.6,4.2 7,3 7.17,-1 0.26,-7.74 3.49,-14.83 5,-22.32 1.67,-8 2.33,-16.15 4,-24.15C174.84,113.21 166.19,110.8 165.05,116.47Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M169.37,103.46c-4.63,0 -4.64,7.21 0,7.21S174,103.46 169.37,103.46Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M174.16,98.71a2.19,2.19 0,0 0,0.27 -1.1,2.8 2.8,0 0,0 -0.58,-1.62 2.64,2.64 0,0 0,-1.39 -1,3.12 3.12,0 0,0 -2.06,0.27 3.91,3.91 0,0 0,-1 0.7,3.08 3.08,0 0,0 -1.06,3.38 3.74,3.74 0,0 0,0.33 0.8,2.76 2.76,0 0,0 1.1,1.12h0l0.57,0.45A2.57,2.57 0,0 0,174.13 99Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M698.14,184.55c-4.45,0 -4.46,6.92 0,6.92S702.6,184.55 698.14,184.55Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M736,504.18a4.13,4.13 0,0 0,-2.35 -1.81,3.93 3.93,0 0,0 -3.82,1c-5.36,5.42 -13.92,7.93 -20.74,11 -4.58,2.06 -9,4.53 -13.43,6.8 -5.3,2.69 -10.89,4.69 -16.22,7.28 -2.32,1.14 -1.16,4.87 1.31,4.81 11.36,-0.31 21.84,-8.22 32,-12.51 4.31,-1.81 8.67,-3.51 12.9,-5.51 3.36,-1.59 7.3,-3.4 9.74,-6.31A4.07,4.07 0,0 0,736 504.18Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M745.63,499.09a4,4 0,0 0,-5.66 0l-0.05,0a4.14,4.14 0,0 0,-1.18 2.85,4.08 4.08,0 0,0 1.18,2.86 4.19,4.19 0,0 0,2.85 1.18,4 4,0 0,0 4,-4A4.15,4.15 0,0 0,745.63 499.09Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M751.1,493.88c-3.57,0 -3.57,5.54 0,5.54S754.66,493.88 751.1,493.88Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M448.4,304a2.47,2.47 0,0 0,-2.16 -1.24c-3.69,-0.09 -6.78,5 -9.41,7.13 -3.55,2.95 -7.52,5.4 -11.22,8.14 -9.28,6.88 -18.9,13.32 -28,20.38s-18,13.83 -26.81,21c-8.62,7 -17.45,14.13 -24.49,22.73 -1.63,2 0.52,5.65 3,3.9 19,-13.33 37.36,-27.52 56,-41.26 9.2,-6.77 19,-12.87 27.76,-20.21a108.92,108.92 0,0 0,10.57 -10.26C446.2,311.46 450.13,308.08 448.4,304Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M270.09,368.49c-2.3,-4.67 -6.49,-7.89 -10.34,-11.21 -4.33,-3.73 -8.73,-7.33 -13,-11.16 -9.65,-8.67 -19.31,-17.37 -29.19,-25.77 -9,-7.66 -18.27,-15 -27.22,-22.73 -9.34,-8.06 -17.65,-16.87 -26,-25.94 -2.78,-3 -7.88,0.9 -5.69,4.4 12.64,20.22 33.52,34.67 51.32,50 9.78,8.42 19.29,17.19 28.92,25.8 4.33,3.86 8.54,8.1 13.45,11.24a55.82,55.82 0,0 1,12 9.77C267.26,376.12 271.82,372 270.09,368.49Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M421.06,172.11c-0.59,-2.7 -5.15,-2.86 -5.62,0 -0.59,3.66 -2.93,7.26 -4.81,10.36 -2.62,4.29 -5.44,8.45 -8.16,12.67 -7.2,11.19 -12.58,23.64 -19,35.32 -7.25,13.29 -14.5,26.43 -21.14,40.06 -6.79,13.94 -14.73,27.28 -21.52,41.23 -3.45,7.08 -6.39,14.37 -10,21.35 -3.21,6.14 -6.61,12.16 -9,18.67 -1.68,4.54 5.9,7.81 7.89,3.33 2.47,-5.58 5.49,-10.94 8.32,-16.34 3.3,-6.28 6,-12.76 9,-19.17 6.69,-14.3 14.87,-27.82 21.81,-42 6.77,-13.79 14,-27.24 21.21,-40.78 6.57,-12.28 12.1,-25.27 19.18,-37.25 2.86,-4.84 5.91,-9.56 8.45,-14.58C419.69,181 422.05,176.65 421.06,172.11Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M248.15,401.2c2,-0.36 -1,-0.51 -1.62,-0.63a27.92,27.92 0,0 0,-3 -0.37c-3.35,-0.23 -6.74,-0.23 -10.1,-0.43 -6.8,-0.4 -13.58,-1 -20.36,-1.71 -7,-0.7 -14,-1.57 -21,-2.31 -3.5,-0.37 -7,-0.74 -10.51,-1.09 -3.28,-0.33 -6.78,-1.08 -9.94,0.06a3.55,3.55 0,0 0,-0.84 6.41c3.21,2 7.42,2 11.1,2.46 3.48,0.48 7,1 10.45,1.48q10.72,1.53 21.52,2.68c7,0.74 14,1.42 21,1.87 3,0.2 6.12,0.07 9.09,0.43 2.29,0.28 4.48,1.36 6.81,0.49a4.85,4.85 0,0 0,-2.6 -9.34Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M569.51,225.23c-5.21,1.77 -10.25,4.37 -15.22,6.71S544.11,237 540,240.88c-3.56,3.33 1.28,9.94 5.32,6.9a103.61,103.61 0,0 1,13.9 -8.73c4.64,-2.45 9.7,-4.85 13.23,-8.84C574.24,228.14 572.52,224.2 569.51,225.23Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M626.09,484.88c-4.41,-11.33 -12.25,-20.74 -19.3,-30.49 -7.77,-10.76 -15.14,-21.81 -22.2,-33 -14.2,-22.6 -27.12,-45.91 -39.2,-69.7q-4.93,-9.75 -10,-19.4c-3.58,-6.8 -7,-14 -11.53,-20.21 -1.88,-2.61 -7,-1.16 -5.67,2.39 4.64,12.19 11.2,24 16.91,35.68 5.86,12 11.85,24 18.22,35.82a690.66,690.66 0,0 0,41.79 67.84c7.93,11.32 16.84,22 22.79,34.58C620,492.88 628,489.64 626.09,484.88Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M391.77,113.29c-5.44,-6.89 -15.41,-10 -23.29,-13a241.12,241.12 0,0 1,-28.07 -13c-9.78,-5.22 -19.38,-10.78 -29.27,-15.81 -3.57,-1.82 -7.22,-3.35 -10.93,-4.85 -3.1,-1.26 -8,-2.53 -10.09,-5.32 -1.46,-1.94 -4.84,-0.92 -4.14,1.75 2,7.51 9.53,10 15.77,13.24 10,5.16 19.69,11.09 29.43,16.75a246.55,246.55 0,0 0,29.21 14.63c8.18,3.4 16.12,6 23.13,11.43a3,3 0,0 0,4.19 2.91,4.09 4.09,0 0,0 2.36,-0.6l0.71,-0.46C393.62,119.09 393.77,115.81 391.77,113.29Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M279.82,53.42c-4.79,0 -4.8,7.44 0,7.44S284.61,53.42 279.82,53.42Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M270,48.2h-0.47c-3.73,-0.12 -3.74,5.91 0,5.8H270a2.9,2.9 0,0 0,0 -5.8Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M228,73.36c-0.25,-0.13 -0.5,-0.26 -0.74,-0.4 -5.07,-2.71 -5.07,7.38 0,4.67l0.74,-0.4a2.25,2.25 0,0 0,0.76 -3.1A2.33,2.33 0,0 0,228 73.36Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M230.37,85.14a4.23,4.23 0,0 0,-0.41 -0.33c-0.12,-0.11 -0.26,-0.22 -0.39,-0.32a2.44,2.44 0,0 0,-1.29 -0.33,3.1 3.1,0 0,0 -1.55,0.41 3.83,3.83 0,0 0,-1.64 2.13,2.58 2.58,0 0,0 1.78,3.2 1.77,1.77 0,0 0,0.4 0.08,2.67 2.67,0 0,0 2.84,-1.77 1.87,1.87 0,0 0,0.78 -1.08A2,2 0,0 0,230.37 85.14Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M257.34,183.55c-2.8,-7.2 -4.83,-14.66 -7,-22.07s-4.8,-14.94 -6.79,-22.5c-1.93,-7.36 -3.23,-14.87 -4.86,-22.3a101.75,101.75 0,0 0,-2.75 -10.7c-0.9,-2.63 -1.67,-6.36 -4.69,-7.15a2.33,2.33 0,0 0,-2.56 1c-1.61,2.43 0.07,5.91 0.61,8.51 0.72,3.44 1.41,6.88 2,10.34 1.3,7.72 2.34,15.48 4.21,23.09 1.82,7.4 4.18,14.7 6.16,22.06a221.63,221.63 0,0 0,6.89 22.1,4.84 4.84,0 0,0 4.4,3.35 3.6,3.6 0,0 0,3.22 -1.33C257.15,186.81 258,185.12 257.34,183.55Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M577.71,193.77c-5.27,-8 -13.37,-13.17 -20.38,-19.46 -8.24,-7.39 -16,-15.3 -24.06,-22.86 -7.43,-7 -16,-12.54 -24.39,-18.21a91.08,91.08 0,0 0,-10.41 -6.1,50.38 50.38,0 0,1 -5.37,-3c-1.43,-0.93 -2.57,-2.14 -4.23,-2.62a2.37,2.37 0,0 0,-2.92 1.63,2.55 2.55,0 0,0 -0.08,0.61c-0.76,6.44 10.93,11.27 15.06,14.39 8.05,6.09 16.62,11.76 23.93,18.75 7.79,7.45 15.21,15.27 23.09,22.62 6.82,6.27 15.82,11.63 21,19.36C572.55,204.3 581.34,199.25 577.71,193.77Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M84,246.39c-2.36,-3.9 -9.25,-4.88 -13.32,-5.93 -4.69,-1.21 -9.93,-2.77 -14.81,-2.22 -6.1,0.69 -6.36,10.18 0,9.75 4.76,-0.32 9.32,0.95 13.91,2 4.06,1 10.28,2.88 13.79,-0.31A2.78,2.78 0,0 0,84 246.39Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M43.77,238a3,3 0,1 0,3 3A3,3 0,0 0,43.77 238Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M36.2,239.43h0C36.2,239.64 36.3,239.76 36.2,239.43Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M36.18,239.38h0v-0.14a3,3 0,0 0,0.08 -0.6,2.67 2.67,0 0,0 0,-0.4 2.54,2.54 0,0 0,-0.07 -0.47l-0.06,-0.2a1.5,1.5 0,0 0,-1.36 -1.07c-1.7,-0.09 -2.76,1.59 -3,3.08a2.33,2.33 0,0 0,1.56 2.9,2.26 2.26,0 0,0 0.69,0.1 2.38,2.38 0,0 0,2.34 -2.42,2.32 2.32,0 0,0 -0.08,-0.58A0.75,0.75 0,0 1,36.18 239.38Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M27.27,304l-0.36,-0.85 -0.52,-0.68a2.6,2.6 0,0 0,-1 -0.67,3.32 3.32,0 0,0 -4.6,1 3.18,3.18 0,0 0,-0.4 0.88,3.84 3.84,0 0,0 0.35,3 3.72,3.72 0,0 0,2.2 1.72,3.56 3.56,0 0,0 3.94,-1.61 4.41,4.41 0,0 0,0.42 -1A3.5,3.5 0,0 0,27.27 304Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M34.5,310.07a3.57,3.57 0,0 0,-0.39 -1.39,2.53 2.53,0 0,0 -1.3,-1.11 2.76,2.76 0,0 0,-1.77 -0.14,2.88 2.88,0 0,0 -1.88,1.69 4.5,4.5 0,0 0,-0.33 1.44,2.81 2.81,0 0,0 2.82,2.84l0.43,0a2.84,2.84 0,0 0,2.43 -3.21S34.5,310.1 34.5,310.07Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
<path
|
||||
android:pathData="M90.77,349.53c-1.81,-1.19 -3.89,-1.35 -5.82,-2.33a41.93,41.93 0,0 1,-6.9 -4.69c-4.08,-3.23 -7.88,-6.9 -12.33,-9.63S56.46,327.5 52,324.5a57.26,57.26 0,0 1,-6.81 -5.2c-1.41,-1.28 -3.09,-3.36 -5.14,-3.28a2.11,2.11 0,0 0,-1.82 1c-2.23,4.52 5.37,9.4 8.28,11.61 5,3.79 10.34,7 15.57,10.41 4.81,3.16 8.89,7.4 13.47,10.88 3.6,2.74 10.62,8.24 15.21,4.84C91.78,353.59 91.12,351.28 90.77,349.53Z"
|
||||
android:fillColor="#fffdfb"/>
|
||||
</vector>
|
393
app/src/main/res/drawable-night/ic_onboarding_seed.xml
Normal file
393
app/src/main/res/drawable-night/ic_onboarding_seed.xml
Normal file
File diff suppressed because one or more lines are too long
75
app/src/main/res/drawable-night/ic_onboarding_welcome.xml
Normal file
75
app/src/main/res/drawable-night/ic_onboarding_welcome.xml
Normal file
File diff suppressed because one or more lines are too long
138
app/src/main/res/drawable-night/ic_onboarding_xmrto.xml
Normal file
138
app/src/main/res/drawable-night/ic_onboarding_xmrto.xml
Normal file
File diff suppressed because one or more lines are too long
@ -13,10 +13,10 @@
|
||||
android:startY="74.0"
|
||||
android:type="linear">
|
||||
<item
|
||||
android:color="#FFF0006B"
|
||||
android:color="@color/monerujoPink"
|
||||
android:offset="0.0" />
|
||||
<item
|
||||
android:color="#FFFF6600"
|
||||
android:color="@color/monerujoOrange"
|
||||
android:offset="1.0" />
|
||||
</gradient>
|
||||
</aapt:attr>
|
||||
|
@ -17,10 +17,10 @@
|
||||
android:startY="58.0"
|
||||
android:type="linear">
|
||||
<item
|
||||
android:color="#FFF0006B"
|
||||
android:color="@color/monerujoPink"
|
||||
android:offset="0.0" />
|
||||
<item
|
||||
android:color="#FFFF6600"
|
||||
android:color="@color/monerujoOrange"
|
||||
android:offset="1.0" />
|
||||
</gradient>
|
||||
</aapt:attr>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<solid android:color="@color/white" />
|
||||
<solid android:color="@color/monerujoBackground" />
|
||||
<padding
|
||||
android:bottom="8dp"
|
||||
android:left="8dp"
|
||||
|
@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<padding
|
||||
android:bottom="8dp"
|
||||
android:left="8dp"
|
||||
android:right="8dp"
|
||||
android:top="8dp" />
|
||||
<stroke
|
||||
android:width="2dp"
|
||||
android:color="@color/gradientOrange" />
|
||||
</shape>
|
@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<padding
|
||||
android:bottom="8dp"
|
||||
android:left="8dp"
|
||||
android:right="8dp"
|
||||
android:top="8dp" />
|
||||
<stroke
|
||||
android:width="2dp"
|
||||
android:color="@color/moneroGray" />
|
||||
</shape>
|
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="@color/gradientOrange" />
|
||||
</shape>
|
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="@color/moneroGray" />
|
||||
</shape>
|
@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="@color/tx_green" />
|
||||
<solid android:color="@color/monerujoReceive" />
|
||||
</shape>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/button_disabled" android:state_enabled="false" />
|
||||
<item android:drawable="@drawable/button_default" android:state_enabled="true" />
|
||||
<item android:drawable="@drawable/button_default" android:state_pressed="false" />
|
||||
</selector>
|
@ -1,6 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/button_disabled" android:state_enabled="false" />
|
||||
<item android:drawable="@drawable/button_green" android:state_enabled="true" />
|
||||
<item android:drawable="@drawable/button_green" android:state_pressed="false" />
|
||||
</selector>
|
@ -6,7 +6,7 @@
|
||||
android:shape="ring"
|
||||
android:thickness="8dp"
|
||||
android:useLevel="false">
|
||||
<solid android:color="@color/gradientOrange" />
|
||||
<solid android:color="?attr/colorSecondary" />
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
||||
|
@ -6,7 +6,7 @@
|
||||
android:shape="ring"
|
||||
android:thickness="8dp"
|
||||
android:useLevel="false">
|
||||
<solid android:color="#CDD1D9" />
|
||||
<solid android:color="?attr/colorSecondaryVariant" />
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
||||
|
@ -2,8 +2,8 @@
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<gradient
|
||||
android:angle="45"
|
||||
android:endColor="@color/gradientOrange"
|
||||
android:startColor="@color/gradientPink"
|
||||
android:angle="-90"
|
||||
android:endColor="@color/gradientBottom"
|
||||
android:startColor="@color/gradientTop"
|
||||
android:type="linear" />
|
||||
</shape>
|
||||
|
@ -2,8 +2,8 @@
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="oval">
|
||||
<gradient
|
||||
android:angle="45"
|
||||
android:endColor="@color/gradientOrange"
|
||||
android:startColor="@color/gradientPink"
|
||||
android:angle="135"
|
||||
android:endColor="@color/gradientBottom"
|
||||
android:startColor="@color/gradientTop"
|
||||
android:type="linear" />
|
||||
</shape>
|
@ -1,9 +1,9 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportHeight="20.0"
|
||||
android:viewportWidth="20.0">
|
||||
android:viewportWidth="20.0"
|
||||
android:viewportHeight="20.0">
|
||||
<path
|
||||
android:fillColor="@color/moneroFab"
|
||||
android:fillColor="?colorPrimaryVariant"
|
||||
android:pathData="M11,5L9,5L9,9L5,9L5,11L9,11L9,15L11,15L11,11L15,11L15,9L11,9L11,5L11,5ZM10,0C4.5,0 0,4.5 0,10C0,15.5 4.5,20 10,20C15.5,20 20,15.5 20,10C20,4.5 15.5,0 10,0L10,0ZM10,18C5.6,18 2,14.4 2,10C2,5.6 5.6,2 10,2C14.4,2 18,5.6 18,10C18,14.4 14.4,18 10,18L10,18Z" />
|
||||
</vector>
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportHeight="20.0"
|
||||
android:viewportWidth="20.0">
|
||||
<path
|
||||
android:fillColor="@color/moneroWhite"
|
||||
android:fillColor="@color/monerujoPrimary"
|
||||
android:pathData="M11,5L9,5L9,9L5,9L5,11L9,11L9,15L11,15L11,11L15,11L15,9L11,9L11,5L11,5ZM10,0C4.5,0 0,4.5 0,10C0,15.5 4.5,20 10,20C15.5,20 20,15.5 20,10C20,4.5 15.5,0 10,0L10,0ZM10,18C5.6,18 2,14.4 2,10C2,5.6 5.6,2 10,2C14.4,2 18,5.6 18,10C18,14.4 14.4,18 10,18L10,18Z" />
|
||||
</vector>
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0">
|
||||
<path
|
||||
android:fillColor="@color/gradientOrange"
|
||||
android:fillColor="@color/gradientLeft"
|
||||
android:pathData="M18.6,6.62c-1.44,0 -2.8,0.56 -3.77,1.53L12,10.66 10.48,12h0.01L7.8,14.39c-0.64,0.64 -1.49,0.99 -2.4,0.99 -1.87,0 -3.39,-1.51 -3.39,-3.38S3.53,8.62 5.4,8.62c0.91,0 1.76,0.35 2.44,1.03l1.13,1 1.51,-1.34L9.22,8.2C8.2,7.18 6.84,6.62 5.4,6.62 2.42,6.62 0,9.04 0,12s2.42,5.38 5.4,5.38c1.44,0 2.8,-0.56 3.77,-1.53l2.83,-2.5 0.01,0.01L13.52,12h-0.01l2.69,-2.39c0.64,-0.64 1.49,-0.99 2.4,-0.99 1.87,0 3.39,1.51 3.39,3.38s-1.52,3.38 -3.39,3.38c-0.9,0 -1.76,-0.35 -2.44,-1.03l-1.14,-1.01 -1.51,1.34 1.27,1.12c1.02,1.01 2.37,1.57 3.82,1.57 2.98,0 5.4,-2.41 5.4,-5.38s-2.42,-5.37 -5.4,-5.37z" />
|
||||
</vector>
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0">
|
||||
<path
|
||||
android:fillColor="#FFffffff"
|
||||
android:fillColor="@color/monerujoToolbarText"
|
||||
android:pathData="M20,11H7.83l5.59,-5.59L12,4l-8,8 8,8 1.41,-1.41L7.83,13H20v-2z" />
|
||||
</vector>
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportHeight="74.0"
|
||||
android:viewportWidth="74.0">
|
||||
<path
|
||||
android:fillColor="@color/gradientPink"
|
||||
android:fillColor="@color/monerujoPink"
|
||||
android:pathData="M21.83,29.97L16.65,35.15L33.3,51.8L70.3,14.8L65.12,9.62L33.3,41.44L21.83,29.97L21.83,29.97ZM66.6,37C66.6,53.28 53.28,66.6 37,66.6C20.72,66.6 7.4,53.28 7.4,37C7.4,20.72 20.72,7.4 37,7.4C39.96,7.4 42.55,7.77 45.14,8.51L51.06,2.59C46.62,1.11 41.81,0 37,0C16.65,0 0,16.65 0,37C0,57.35 16.65,74 37,74C57.35,74 74,57.35 74,37L66.6,37L66.6,37Z" />
|
||||
</vector>
|
||||
|
@ -4,7 +4,7 @@
|
||||
android:viewportHeight="58.0"
|
||||
android:viewportWidth="58.0">
|
||||
<path
|
||||
android:fillColor="@color/gradientPink"
|
||||
android:fillColor="@color/monerujoPink"
|
||||
android:pathData="M17.11,23.49L13.05,27.55L26.1,40.6L55.1,11.6L51.04,7.54L26.1,32.48L17.11,23.49L17.11,23.49ZM52.2,29C52.2,41.76 41.76,52.2 29,52.2C16.24,52.2 5.8,41.76 5.8,29C5.8,16.24 16.24,5.8 29,5.8C31.32,5.8 33.35,6.09 35.38,6.67L40.02,2.03C36.54,0.87 32.77,0 29,0C13.05,0 0,13.05 0,29C0,44.95 13.05,58 29,58C44.95,58 58,44.95 58,29L52.2,29L52.2,29Z"
|
||||
android:strokeColor="#00000000"
|
||||
android:strokeWidth="1" />
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0">
|
||||
<path
|
||||
android:fillColor="@color/moneroFab"
|
||||
android:fillColor="@color/monerujoPrimary"
|
||||
android:pathData="M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z" />
|
||||
</vector>
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FFffffff"
|
||||
android:fillColor="@color/monerujoToolbarText"
|
||||
android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z"/>
|
||||
</vector>
|
||||
|
@ -4,6 +4,6 @@
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FFffffff"
|
||||
android:fillColor="@color/btn_color_selector"
|
||||
android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM19,5L8,5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h11c1.1,0 2,-0.9 2,-2L21,7c0,-1.1 -0.9,-2 -2,-2zM19,21L8,21L8,7h11v14z"/>
|
||||
</vector>
|
@ -1,9 +0,0 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportHeight="24.0"
|
||||
android:viewportWidth="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM19,5L8,5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h11c1.1,0 2,-0.9 2,-2L21,7c0,-1.1 -0.9,-2 -2,-2zM19,21L8,21L8,7h11v14z" />
|
||||
</vector>
|
@ -1,9 +0,0 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="@color/moneroGray"
|
||||
android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM19,5L8,5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h11c1.1,0 2,-0.9 2,-2L21,7c0,-1.1 -0.9,-2 -2,-2zM19,21L8,21L8,7h11v14z"/>
|
||||
</vector>
|
@ -4,6 +4,6 @@
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="@color/gradientOrange"
|
||||
android:fillColor="@color/btn_color_selector"
|
||||
android:pathData="M19,2h-4.18C14.4,0.84 13.3,0 12,0c-1.3,0 -2.4,0.84 -2.82,2L5,2c-1.1,0 -2,0.9 -2,2v16c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2L21,4c0,-1.1 -0.9,-2 -2,-2zM12,2c0.55,0 1,0.45 1,1s-0.45,1 -1,1 -1,-0.45 -1,-1 0.45,-1 1,-1zM19,20L5,20L5,4h2v3h10L17,4h2v16z" />
|
||||
</vector>
|
@ -7,7 +7,7 @@
|
||||
android:translateX="0.000000"
|
||||
android:translateY="+7.000000">
|
||||
<path
|
||||
android:fillColor="#417505"
|
||||
android:fillColor="@color/monerujoGreen"
|
||||
android:pathData="M17.6,1.4L16.2,0L9.9,6.3L11.3,7.7L17.6,1.4L17.6,1.4ZM21.8,0L11.3,10.6L7.1,6.4L5.7,7.8L11.3,13.4L23.3,1.4L21.8,0L21.8,0ZM0,7.8L5.6,13.4L7,12L1.4,6.4L0,7.8L0,7.8Z" />
|
||||
</group>
|
||||
</vector>
|
||||
|
1113
app/src/main/res/drawable/ic_emptygunther.xml
Normal file
1113
app/src/main/res/drawable/ic_emptygunther.xml
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,27 +1,12 @@
|
||||
<!--
|
||||
~ Copyright (C) 2015 The Android Open Source Project
|
||||
~
|
||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
~ you may not use this file except in compliance with the License.
|
||||
~ You may obtain a copy of the License at
|
||||
~
|
||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
||||
~
|
||||
~ Unless required by applicable law or agreed to in writing, software
|
||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
~ See the License for the specific language governing permissions and
|
||||
~ limitations under the License
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="36dp"
|
||||
android:height="36dp"
|
||||
android:viewportWidth="36"
|
||||
android:viewportHeight="36" >
|
||||
android:viewportHeight="36">
|
||||
<path
|
||||
android:fillColor="#f4511e"
|
||||
android:fillColor="?colorError"
|
||||
android:pathData="M18,18m -18, 0a 18, 18 0 1, 0 36, 0a 18, 18 0 1, 0 -36, 0" />
|
||||
<path
|
||||
android:fillColor="#ffffffff"
|
||||
android:fillColor="?colorOnError"
|
||||
android:pathData="m16.665,24.915001l2.67,0l0,2.67l-2.67,0l0,-2.67zm0,-16.5l2.67,0l0,12.67l-2.67,0l0,-12.67z" />
|
||||
</vector>
|
@ -4,6 +4,6 @@
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="@color/gradientPink"
|
||||
android:fillColor="@color/gradientRight"
|
||||
android:pathData="M12,21.35l-1.45,-1.32C5.4,15.36 2,12.28 2,8.5 2,5.42 4.42,3 7.5,3c1.74,0 3.41,0.81 4.5,2.09C13.09,3.81 14.76,3 16.5,3 19.58,3 22,5.42 22,8.5c0,3.78 -3.4,6.86 -8.55,11.54L12,21.35z"/>
|
||||
</vector>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user