Merge upstream monerujo

This commit is contained in:
m2049r 2021-04-25 18:27:17 +02:00
commit 3befa54dd7
No known key found for this signature in database
GPG Key ID: 4386E69AF260078D
31 changed files with 168 additions and 119 deletions

View File

@ -8,8 +8,8 @@ android {
applicationId "com.m2049r.wowwallet" applicationId "com.m2049r.wowwallet"
minSdkVersion 21 minSdkVersion 21
targetSdkVersion 30 targetSdkVersion 30
versionCode 100103 versionCode 100400
versionName "2.0.1.3 'Puginarug'" versionName "2.0.4.0 'Puginarug'"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
externalNativeBuild { externalNativeBuild {
cmake { cmake {
@ -131,7 +131,7 @@ dependencies {
implementation 'me.dm7.barcodescanner:zxing:1.9.8' implementation 'me.dm7.barcodescanner:zxing:1.9.8'
implementation "com.squareup.okhttp3:okhttp:4.9.0" implementation "com.squareup.okhttp3:okhttp:4.9.0"
implementation "com.burgstaller:okhttp-digest:2.1" implementation "io.github.rburgst:okhttp-digest:2.5"
implementation "com.jakewharton.timber:timber:4.7.1" implementation "com.jakewharton.timber:timber:4.7.1"
implementation 'com.nulab-inc:zxcvbn:1.3.0' implementation 'com.nulab-inc:zxcvbn:1.3.0'

View File

@ -44,6 +44,7 @@ import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction; import androidx.fragment.app.FragmentTransaction;
import com.google.android.material.checkbox.MaterialCheckBox;
import com.google.android.material.dialog.MaterialAlertDialogBuilder; import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.m2049r.xmrwallet.data.DefaultNodes; import com.m2049r.xmrwallet.data.DefaultNodes;
import com.m2049r.xmrwallet.data.Node; import com.m2049r.xmrwallet.data.Node;
@ -554,12 +555,18 @@ public class LoginActivity extends BaseActivity
} }
}; };
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this); final AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this);
builder.setMessage(getString(R.string.delete_alert_message)) final AlertDialog confirm = builder.setMessage(getString(R.string.delete_alert_message))
.setTitle(walletName) .setTitle(walletName)
.setPositiveButton(getString(R.string.delete_alert_yes), dialogClickListener) .setPositiveButton(getString(R.string.delete_alert_yes), dialogClickListener)
.setNegativeButton(getString(R.string.delete_alert_no), dialogClickListener) .setNegativeButton(getString(R.string.delete_alert_no), dialogClickListener)
.setView(View.inflate(builder.getContext(), R.layout.checkbox_confirm, null))
.show(); .show();
confirm.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false);
final MaterialCheckBox checkBox = confirm.findViewById(R.id.checkbox);
checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
confirm.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(isChecked);
});
} }
@Override @Override
@ -579,12 +586,18 @@ public class LoginActivity extends BaseActivity
} }
}; };
AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this); final AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this);
builder.setMessage(getString(R.string.deletecache_alert_message, walletName)) final AlertDialog confirm = builder.setMessage(getString(R.string.deletecache_alert_message))
.setTitle(walletName) .setTitle(walletName)
.setPositiveButton(getString(R.string.delete_alert_yes), dialogClickListener) .setPositiveButton(getString(R.string.delete_alert_yes), dialogClickListener)
.setNegativeButton(getString(R.string.delete_alert_no), dialogClickListener) .setNegativeButton(getString(R.string.delete_alert_no), dialogClickListener)
.setView(View.inflate(builder.getContext(), R.layout.checkbox_confirm, null))
.show(); .show();
confirm.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(false);
final MaterialCheckBox checkBox = confirm.findViewById(R.id.checkbox);
checkBox.setOnCheckedChangeListener((buttonView, isChecked) -> {
confirm.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(isChecked);
});
} }
void reloadWalletList() { void reloadWalletList() {

View File

@ -0,0 +1,13 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.checkbox.MaterialCheckBox
android:id="@+id/checkbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:paddingEnd="16dp"
android:text="@string/onboarding_agree" />
</FrameLayout>

View File

@ -417,7 +417,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -266,7 +266,7 @@
<string name="details_alert_no">Nein, doch nicht!</string> <string name="details_alert_no">Nein, doch nicht!</string>
<string name="details_title">Details</string> <string name="details_title">Details</string>
<string name="delete_alert_message">Das Wallet wird gelöscht!</string> <string name="delete_alert_message">Das Wallet wird gelöscht. Dein Geld wird für immer verloren sein, außer wenn Du den Seed oder ein funktionierendes Backup hast um es wiederherzustellen.</string>
<string name="delete_alert_yes">Ja, mach das!</string> <string name="delete_alert_yes">Ja, mach das!</string>
<string name="delete_alert_no">Nein, danke!</string> <string name="delete_alert_no">Nein, danke!</string>

View File

@ -419,7 +419,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -419,7 +419,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -207,7 +207,7 @@
<string name="details_alert_no">¡Llévame de vuelta!</string> <string name="details_alert_no">¡Llévame de vuelta!</string>
<string name="details_title">Detalles</string> <string name="details_title">Detalles</string>
<string name="delete_alert_message">¡El monedero será borrado!</string> <string name="delete_alert_message">Este monedero será borrado. Tus fondos se irán para siempre a menos que tengas tu semilla o una copia de seguridad funcional para recuperarlo.</string>
<string name="delete_alert_yes">¡Sí, hazlo!</string> <string name="delete_alert_yes">¡Sí, hazlo!</string>
<string name="delete_alert_no">¡No, gracias!</string> <string name="delete_alert_no">¡No, gracias!</string>

View File

@ -417,7 +417,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -267,7 +267,7 @@
<string name="details_alert_no">Non merci !</string> <string name="details_alert_no">Non merci !</string>
<string name="details_title">Détails</string> <string name="details_title">Détails</string>
<string name="delete_alert_message">Le portefeuille sera supprimé !</string> <string name="delete_alert_message">Ce portefeuille sera supprimé. Vos fonds seront perdus à jamais, sauf si vous disposez de votre semence ou d\'une sauvegarde fonctionnelle pour les récupérer.</string>
<string name="delete_alert_yes">Oui, procéder !</string> <string name="delete_alert_yes">Oui, procéder !</string>
<string name="delete_alert_no">Non merci !</string> <string name="delete_alert_no">Non merci !</string>

View File

@ -421,7 +421,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -266,7 +266,7 @@
<string name="details_alert_no">Torna indietro!</string> <string name="details_alert_no">Torna indietro!</string>
<string name="details_title">Dettagli</string> <string name="details_title">Dettagli</string>
<string name="delete_alert_message">Il portafoglio verrà eliminato!</string> <string name="delete_alert_message">Questo portafoglio sarà cancellato. I tuoi fondi saranno andati per sempre a meno che tu non abbia il tuo seme o un backup funzionante per recuperarli.</string>
<string name="delete_alert_yes">Sì, procedi!</string> <string name="delete_alert_yes">Sì, procedi!</string>
<string name="delete_alert_no">No grazie!</string> <string name="delete_alert_no">No grazie!</string>
@ -366,7 +366,7 @@
<string name="menu_rescan">Rescan!</string> <string name="menu_rescan">Rescan!</string>
<string name="onboarding_agree">I get it!</string> <string name="onboarding_agree">Ho capito!</string>
<string name="onboarding_button_next">Next</string> <string name="onboarding_button_next">Next</string>
<string name="onboarding_button_ready">I\'m ready!</string> <string name="onboarding_button_ready">I\'m ready!</string>

View File

@ -422,7 +422,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -419,7 +419,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -261,7 +261,7 @@
<string name="details_alert_no">Ga terug!</string> <string name="details_alert_no">Ga terug!</string>
<string name="details_title">Details</string> <string name="details_title">Details</string>
<string name="delete_alert_message">Er wordt de portemonnee verwijderd!</string> <string name="delete_alert_message">Deze portemonnee zal worden verwijderd. Uw geld zal voor altijd weg zijn, tenzij u uw zaad of een werkende back-up hebt om het te herstellen.</string>
<string name="delete_alert_yes">Ja, doe dat!</string> <string name="delete_alert_yes">Ja, doe dat!</string>
<string name="delete_alert_no">Nee, niet doen!</string> <string name="delete_alert_no">Nee, niet doen!</string>

View File

@ -416,7 +416,7 @@
<string name="subaddress_select_label">Selecione um subendereço</string> <string name="subaddress_select_label">Selecione um subendereço</string>
<string name="subaddress_details_hint">Toque e segure para mais detalhes</string> <string name="subaddress_details_hint">Toque e segure para mais detalhes</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -423,7 +423,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -419,7 +419,7 @@
<string name="subaddress_select_label">Selectează o subadresă</string> <string name="subaddress_select_label">Selectează o subadresă</string>
<string name="subaddress_details_hint">Atinge lung pentru detalii</string> <string name="subaddress_details_hint">Atinge lung pentru detalii</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -265,7 +265,7 @@
<string name="details_alert_no">Верните меня обратно!</string> <string name="details_alert_no">Верните меня обратно!</string>
<string name="details_title">Подробная информация</string> <string name="details_title">Подробная информация</string>
<string name="delete_alert_message">Этот кошелек будет удален!</string> <string name="delete_alert_message">Этот кошелек будет удален. Твои деньги исчезнут навсегда, если у тебя нет сид-фразы или рабочей резервной копии для их восстановления.</string>
<string name="delete_alert_yes">Да, сделай это!</string> <string name="delete_alert_yes">Да, сделай это!</string>
<string name="delete_alert_no">Нет, спасибо!</string> <string name="delete_alert_no">Нет, спасибо!</string>

View File

@ -262,7 +262,7 @@
<string name="details_alert_no">Naspäť!</string> <string name="details_alert_no">Naspäť!</string>
<string name="details_title">Detaily</string> <string name="details_title">Detaily</string>
<string name="delete_alert_message">Peňaženka bude zmazaná!</string> <string name="delete_alert_message">Táto peňaženka bude zmazaná. Vaše finančné prostriedky budú navždy preč, pokiaľ nemáte svoj seed alebo funkčnú zálohu na ich obnovenie.</string>
<string name="delete_alert_yes">Áno, poďme na to!</string> <string name="delete_alert_yes">Áno, poďme na to!</string>
<string name="delete_alert_no">Nie, díky!</string> <string name="delete_alert_no">Nie, díky!</string>

View File

@ -272,7 +272,7 @@
<string name="details_alert_no">Vrati me nazad!</string> <string name="details_alert_no">Vrati me nazad!</string>
<string name="details_title">Detalji</string> <string name="details_title">Detalji</string>
<string name="delete_alert_message">Novčanik će biti obrisan!</string> <string name="delete_alert_message">Ovaj novčanik će biti obrisan. Vaša sredstva će zauvek nestati ako nemate svoje seme ili ispravnu rezervnu kopiju da biste ih vratili.</string>
<string name="delete_alert_yes">Da, uradi to!</string> <string name="delete_alert_yes">Da, uradi to!</string>
<string name="delete_alert_no">Ne, hvala!</string> <string name="delete_alert_no">Ne, hvala!</string>

View File

@ -411,7 +411,7 @@
<string name="subaddress_select_label">Välj en subadress</string> <string name="subaddress_select_label">Välj en subadress</string>
<string name="subaddress_details_hint">Tryck länge för mer detaljerad info</string> <string name="subaddress_details_hint">Tryck länge för mer detaljerad info</string>
<string name="delete_alert_message">Denna plånbok kommer förstöras!</string> <string name="delete_alert_message">Denna plånbok kommer att raderas. Dina pengar kommer att vara borta för alltid om du inte har din seed eller en fungerande säkerhetskopia för att återställa dem.</string>
<string name="menu_delete">Förstöra</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Förstöra</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Förstöringen misslyckades!</string> <string name="delete_failed">Förstöringen misslyckades!</string>

View File

@ -265,7 +265,7 @@
<string name="details_alert_no">Поверніть мене назад!</string> <string name="details_alert_no">Поверніть мене назад!</string>
<string name="details_title">Детальна інформація</string> <string name="details_title">Детальна інформація</string>
<string name="delete_alert_message">Цей гаманець буде знищено!</string> <string name="delete_alert_message">Цей гаманець буде знищено. Ваші кошти назавжди зникнуть, якщо у вас немає насіння або діючої резервної копії для його відновлення. </string>
<string name="delete_alert_yes">Так, зроби це!</string> <string name="delete_alert_yes">Так, зроби це!</string>
<string name="delete_alert_no">Ні, дякую!</string> <string name="delete_alert_no">Ні, дякую!</string>

View File

@ -343,7 +343,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -418,7 +418,7 @@
<string name="subaddress_select_label">Select a subaddress</string> <string name="subaddress_select_label">Select a subaddress</string>
<string name="subaddress_details_hint">Long-press for details</string> <string name="subaddress_details_hint">Long-press for details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="menu_delete">Delete</string><!-- like: "Delete wallet!" --> <string name="menu_delete">Delete</string><!-- like: "Delete wallet!" -->
<string name="delete_failed">Delete failed!</string> <string name="delete_failed">Delete failed!</string>

View File

@ -278,7 +278,7 @@
<string name="details_alert_no">Take me back!</string> <string name="details_alert_no">Take me back!</string>
<string name="details_title">Details</string> <string name="details_title">Details</string>
<string name="delete_alert_message">This wallet will be deleted!</string> <string name="delete_alert_message">This wallet will be deleted. Your funds will be gone forever unless you have your seed or a working backup to recover it.</string>
<string name="delete_alert_yes">Yes, do that!</string> <string name="delete_alert_yes">Yes, do that!</string>
<string name="delete_alert_no">No thanks!</string> <string name="delete_alert_no">No thanks!</string>

View File

@ -2,7 +2,7 @@
buildscript { buildscript {
repositories { repositories {
jcenter() mavenCentral()
google() google()
} }
dependencies { dependencies {
@ -12,7 +12,7 @@ buildscript {
allprojects { allprojects {
repositories { repositories {
jcenter() mavenCentral()
maven { maven {
url "https://maven.google.com" url "https://maven.google.com"
} }

Binary file not shown.

View File

@ -1,6 +1,5 @@
#Wed Oct 14 22:17:06 CEST 2020
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-all.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip

139
gradlew vendored
View File

@ -1,4 +1,20 @@
#!/usr/bin/env bash #!/usr/bin/env sh
#
# Copyright 2015 the original author or authors.
#
# 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
#
# https://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.
#
############################################################################## ##############################################################################
## ##
@ -6,42 +22,6 @@
## ##
############################################################################## ##############################################################################
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
echo "$*"
}
die ( ) {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
esac
# Attempt to set APP_HOME # Attempt to set APP_HOME
# Resolve links: $0 may be a link # Resolve links: $0 may be a link
PRG="$0" PRG="$0"
@ -60,8 +40,49 @@ cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`" APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
echo "$*"
}
die () {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM. # Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
@ -85,7 +106,7 @@ location of your Java installation."
fi fi
# Increase the maximum file descriptors if we can. # Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n` MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
@ -105,10 +126,11 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi fi
# For Cygwin, switch paths to Windows format before running java # For Cygwin or MSYS, switch paths to Windows format before running java
if $cygwin ; then if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"` APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"` JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath # We build the pattern for arguments to be converted via cygpath
@ -134,27 +156,30 @@ if $cygwin ; then
else else
eval `echo args$i`="\"$arg\"" eval `echo args$i`="\"$arg\""
fi fi
i=$((i+1)) i=`expr $i + 1`
done done
case $i in case $i in
(0) set -- ;; 0) set -- ;;
(1) set -- "$args0" ;; 1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;; 2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;; 3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;; 4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac esac
fi fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules # Escape application args
function splitJvmOpts() { save () {
JVM_OPTS=("$@") for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
} }
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS APP_ARGS=`save "$@"`
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" # Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
exec "$JAVACMD" "$@"

53
gradlew.bat vendored
View File

@ -1,3 +1,19 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off @if "%DEBUG%" == "" @echo off
@rem ########################################################################## @rem ##########################################################################
@rem @rem
@ -8,20 +24,23 @@
@rem Set local scope for the variables with windows NT shell @rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal if "%OS%"=="Windows_NT" setlocal
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DIRNAME=%~dp0 set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=. if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0 set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME% set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe @rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1 %JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init if "%ERRORLEVEL%" == "0" goto execute
echo. echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
@ -35,7 +54,7 @@ goto fail
set JAVA_HOME=%JAVA_HOME:"=% set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init if exist "%JAVA_EXE%" goto execute
echo. echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
@ -45,34 +64,14 @@ echo location of your Java installation.
goto fail goto fail
:init
@rem Get command-line arguments, handling Windowz variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute :execute
@rem Setup the command line @rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle @rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end :end
@rem End local scope for the variables with windows NT shell @rem End local scope for the variables with windows NT shell