Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
commit
d456ee49a8
9 changed files with 145 additions and 62 deletions
|
@ -358,7 +358,7 @@ public class ImportSeedActivity extends AppCompatActivity implements UIValidator
|
||||||
/*
|
/*
|
||||||
* Validate mnemonic with the server
|
* Validate mnemonic with the server
|
||||||
* */
|
* */
|
||||||
final ImportBitsharesAccountRequest request = new ImportBitsharesAccountRequest(etSeedWords.getText().toString().trim(),activity);
|
/*final ImportBitsharesAccountRequest request = new ImportBitsharesAccountRequest(etSeedWords.getText().toString().trim(),activity);
|
||||||
request.setListener(new CryptoNetInfoRequestListener() {
|
request.setListener(new CryptoNetInfoRequestListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onCarryOut() {
|
public void onCarryOut() {
|
||||||
|
@ -378,7 +378,7 @@ public class ImportSeedActivity extends AppCompatActivity implements UIValidator
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
CryptoNetInfoRequests.getInstance().addRequest(request);
|
CryptoNetInfoRequests.getInstance().addRequest(request);*/
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -25,6 +25,7 @@ import butterknife.ButterKnife;
|
||||||
import butterknife.OnTextChanged;
|
import butterknife.OnTextChanged;
|
||||||
import cy.agorise.crystalwallet.R;
|
import cy.agorise.crystalwallet.R;
|
||||||
import cy.agorise.crystalwallet.application.CrystalSecurityMonitor;
|
import cy.agorise.crystalwallet.application.CrystalSecurityMonitor;
|
||||||
|
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
||||||
import cy.agorise.crystalwallet.models.GeneralSetting;
|
import cy.agorise.crystalwallet.models.GeneralSetting;
|
||||||
import cy.agorise.crystalwallet.util.PasswordManager;
|
import cy.agorise.crystalwallet.util.PasswordManager;
|
||||||
import cy.agorise.crystalwallet.viewmodels.GeneralSettingListViewModel;
|
import cy.agorise.crystalwallet.viewmodels.GeneralSettingListViewModel;
|
||||||
|
@ -39,6 +40,11 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
@BindView(R.id.txtBadtry)
|
@BindView(R.id.txtBadtry)
|
||||||
TextView txtBadtry;
|
TextView txtBadtry;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* External listener for success or fail
|
||||||
|
* */
|
||||||
|
private static OnResponse onResponse;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Contains the bad tries
|
* Contains the bad tries
|
||||||
* */
|
* */
|
||||||
|
@ -67,6 +73,8 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
setContentView(R.layout.activity_pattern_request);
|
setContentView(R.layout.activity_pattern_request);
|
||||||
ButterKnife.bind(this);
|
ButterKnife.bind(this);
|
||||||
|
|
||||||
|
//onResponse = null;
|
||||||
|
|
||||||
GeneralSettingListViewModel generalSettingListViewModel = ViewModelProviders.of(this).get(GeneralSettingListViewModel.class);
|
GeneralSettingListViewModel generalSettingListViewModel = ViewModelProviders.of(this).get(GeneralSettingListViewModel.class);
|
||||||
LiveData<List<GeneralSetting>> generalSettingsLiveData = generalSettingListViewModel.getGeneralSettingList();
|
LiveData<List<GeneralSetting>> generalSettingsLiveData = generalSettingListViewModel.getGeneralSettingList();
|
||||||
|
|
||||||
|
@ -100,11 +108,24 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
if (CrystalSecurityMonitor.getInstance(null).is2ndFactorSet()) {
|
if (CrystalSecurityMonitor.getInstance(null).is2ndFactorSet()) {
|
||||||
//CrystalSecurityMonitor.getInstance(null).call2ndFactor(thisActivity);
|
//CrystalSecurityMonitor.getInstance(null).call2ndFactor(thisActivity);
|
||||||
thisActivity.finish();
|
thisActivity.finish();
|
||||||
|
|
||||||
|
if(onResponse != null){
|
||||||
|
onResponse.onSuccess();
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
thisActivity.finish();
|
thisActivity.finish();
|
||||||
|
|
||||||
|
if(onResponse != null){
|
||||||
|
onResponse.onSuccess();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
incorrect();
|
incorrect();
|
||||||
|
|
||||||
|
if(onResponse != null){
|
||||||
|
onResponse.onFailed();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,6 +143,10 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void setOnResponse(OnResponse onResponse) {
|
||||||
|
PatternRequestActivity.onResponse = onResponse;
|
||||||
|
}
|
||||||
|
|
||||||
private void incorrect(){
|
private void incorrect(){
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -31,6 +31,7 @@ import cy.agorise.crystalwallet.dialogs.material.DialogMaterial;
|
||||||
import cy.agorise.crystalwallet.dialogs.material.NegativeResponse;
|
import cy.agorise.crystalwallet.dialogs.material.NegativeResponse;
|
||||||
import cy.agorise.crystalwallet.dialogs.material.PositiveResponse;
|
import cy.agorise.crystalwallet.dialogs.material.PositiveResponse;
|
||||||
import cy.agorise.crystalwallet.dialogs.material.QuestionDialog;
|
import cy.agorise.crystalwallet.dialogs.material.QuestionDialog;
|
||||||
|
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
||||||
import cy.agorise.crystalwallet.models.AccountSeed;
|
import cy.agorise.crystalwallet.models.AccountSeed;
|
||||||
import cy.agorise.crystalwallet.models.GeneralSetting;
|
import cy.agorise.crystalwallet.models.GeneralSetting;
|
||||||
import cy.agorise.crystalwallet.util.PasswordManager;
|
import cy.agorise.crystalwallet.util.PasswordManager;
|
||||||
|
@ -55,6 +56,10 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
* */
|
* */
|
||||||
private int seconds = 15;
|
private int seconds = 15;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* External listener for success or fail
|
||||||
|
* */
|
||||||
|
private static OnResponse onResponse;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -72,6 +77,8 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
setContentView(R.layout.activity_pin_request);
|
setContentView(R.layout.activity_pin_request);
|
||||||
ButterKnife.bind(this);
|
ButterKnife.bind(this);
|
||||||
|
|
||||||
|
//onResponse = null;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Initially the button is disabled till the user type a valid PIN
|
* Initially the button is disabled till the user type a valid PIN
|
||||||
* */
|
* */
|
||||||
|
@ -105,8 +112,17 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
if (PasswordManager.checkPassword(passwordEncrypted, etPassword.getText().toString())) {
|
if (PasswordManager.checkPassword(passwordEncrypted, etPassword.getText().toString())) {
|
||||||
if (CrystalSecurityMonitor.getInstance(null).is2ndFactorSet()) {
|
if (CrystalSecurityMonitor.getInstance(null).is2ndFactorSet()) {
|
||||||
CrystalSecurityMonitor.getInstance(null).call2ndFactor(this);
|
CrystalSecurityMonitor.getInstance(null).call2ndFactor(this);
|
||||||
|
|
||||||
|
if(onResponse != null){
|
||||||
|
onResponse.onSuccess();
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.finish();
|
this.finish();
|
||||||
|
|
||||||
|
if(onResponse != null){
|
||||||
|
onResponse.onFailed();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -205,6 +221,11 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void setOnResponse(OnResponse onResponse) {
|
||||||
|
PinRequestActivity.onResponse = onResponse;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@OnTextChanged(value = R.id.etPassword,
|
@OnTextChanged(value = R.id.etPassword,
|
||||||
callback = OnTextChanged.Callback.AFTER_TEXT_CHANGED)
|
callback = OnTextChanged.Callback.AFTER_TEXT_CHANGED)
|
||||||
void afterPasswordChanged(Editable editable) {
|
void afterPasswordChanged(Editable editable) {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package cy.agorise.crystalwallet.activities;
|
package cy.agorise.crystalwallet.activities;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.arch.lifecycle.LiveData;
|
import android.arch.lifecycle.LiveData;
|
||||||
import android.arch.lifecycle.Observer;
|
import android.arch.lifecycle.Observer;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
@ -11,6 +12,7 @@ import android.widget.Button;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
import android.widget.Spinner;
|
import android.widget.Spinner;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
import com.jaredrummler.materialspinner.MaterialSpinner;
|
import com.jaredrummler.materialspinner.MaterialSpinner;
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,8 @@ import java.util.List;
|
||||||
import cy.agorise.crystalwallet.activities.PatternRequestActivity;
|
import cy.agorise.crystalwallet.activities.PatternRequestActivity;
|
||||||
import cy.agorise.crystalwallet.activities.PinRequestActivity;
|
import cy.agorise.crystalwallet.activities.PinRequestActivity;
|
||||||
import cy.agorise.crystalwallet.activities.PocketRequestActivity;
|
import cy.agorise.crystalwallet.activities.PocketRequestActivity;
|
||||||
|
import cy.agorise.crystalwallet.fragments.PatternSecurityFragment;
|
||||||
|
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
||||||
import cy.agorise.crystalwallet.models.GeneralSetting;
|
import cy.agorise.crystalwallet.models.GeneralSetting;
|
||||||
import cy.agorise.crystalwallet.notifiers.CrystalWalletNotifier;
|
import cy.agorise.crystalwallet.notifiers.CrystalWalletNotifier;
|
||||||
import cy.agorise.crystalwallet.viewmodels.GeneralSettingListViewModel;
|
import cy.agorise.crystalwallet.viewmodels.GeneralSettingListViewModel;
|
||||||
|
@ -129,7 +131,7 @@ public class CrystalSecurityMonitor implements Application.ActivityLifecycleCall
|
||||||
public void onActivityStarted(Activity activity) {
|
public void onActivityStarted(Activity activity) {
|
||||||
if (numStarted == 0) {
|
if (numStarted == 0) {
|
||||||
if (!actualSecurity().equals("")){
|
if (!actualSecurity().equals("")){
|
||||||
callPasswordRequest(activity);
|
callPasswordRequest(activity,null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
numStarted++;
|
numStarted++;
|
||||||
|
@ -140,18 +142,39 @@ public class CrystalSecurityMonitor implements Application.ActivityLifecycleCall
|
||||||
numStarted--;
|
numStarted--;
|
||||||
if (numStarted == 0) {
|
if (numStarted == 0) {
|
||||||
if (!actualSecurity().equals("")){
|
if (!actualSecurity().equals("")){
|
||||||
callPasswordRequest(activity);
|
callPasswordRequest(activity,null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void callPasswordRequest(Activity activity){
|
public void callPasswordRequest(Activity activity, final OnResponse onResponsePattern){
|
||||||
if ((!activity.getIntent().hasExtra("ACTIVITY_TYPE")) || (!activity.getIntent().getStringExtra("ACTIVITY_TYPE").equals("PASSWORD_REQUEST"))) {
|
if ((!activity.getIntent().hasExtra("ACTIVITY_TYPE")) || (!activity.getIntent().getStringExtra("ACTIVITY_TYPE").equals("PASSWORD_REQUEST"))) {
|
||||||
Intent intent = null;
|
Intent intent = null;
|
||||||
if ((this.passwordEncrypted != null) && (!this.passwordEncrypted.equals(""))) {
|
if ((this.passwordEncrypted != null) && (!this.passwordEncrypted.equals(""))) {
|
||||||
|
|
||||||
intent = new Intent(activity, PinRequestActivity.class);
|
intent = new Intent(activity, PinRequestActivity.class);
|
||||||
|
|
||||||
|
PinRequestActivity.setOnResponse(null);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Connect error and success listeners
|
||||||
|
* */
|
||||||
|
if(onResponsePattern != null){
|
||||||
|
PinRequestActivity.setOnResponse(onResponsePattern);
|
||||||
|
}
|
||||||
|
|
||||||
} else if ((this.patternEncrypted != null) && (!this.patternEncrypted.equals(""))) {
|
} else if ((this.patternEncrypted != null) && (!this.patternEncrypted.equals(""))) {
|
||||||
|
|
||||||
intent = new Intent(activity, PatternRequestActivity.class);
|
intent = new Intent(activity, PatternRequestActivity.class);
|
||||||
|
|
||||||
|
PatternRequestActivity.setOnResponse(null);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Connect error and success listeners
|
||||||
|
* */
|
||||||
|
if(onResponsePattern != null){
|
||||||
|
PatternRequestActivity.setOnResponse(onResponsePattern);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (intent != null) {
|
if (intent != null) {
|
||||||
intent.putExtra("ACTIVITY_TYPE", "PASSWORD_REQUEST");
|
intent.putExtra("ACTIVITY_TYPE", "PASSWORD_REQUEST");
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package cy.agorise.crystalwallet.fragments;
|
package cy.agorise.crystalwallet.fragments;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.arch.lifecycle.LiveData;
|
import android.arch.lifecycle.LiveData;
|
||||||
import android.arch.lifecycle.Observer;
|
import android.arch.lifecycle.Observer;
|
||||||
import android.arch.lifecycle.ViewModelProviders;
|
import android.arch.lifecycle.ViewModelProviders;
|
||||||
|
@ -8,6 +9,7 @@ import android.os.Bundle;
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import android.support.v4.app.Fragment;
|
import android.support.v4.app.Fragment;
|
||||||
import android.text.Editable;
|
import android.text.Editable;
|
||||||
|
import android.util.Log;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
@ -27,7 +29,10 @@ import butterknife.ButterKnife;
|
||||||
import butterknife.OnTextChanged;
|
import butterknife.OnTextChanged;
|
||||||
import cy.agorise.crystalwallet.R;
|
import cy.agorise.crystalwallet.R;
|
||||||
import cy.agorise.crystalwallet.application.CrystalSecurityMonitor;
|
import cy.agorise.crystalwallet.application.CrystalSecurityMonitor;
|
||||||
|
import cy.agorise.crystalwallet.dialogs.material.CrystalDialog;
|
||||||
|
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
||||||
import cy.agorise.crystalwallet.models.GeneralSetting;
|
import cy.agorise.crystalwallet.models.GeneralSetting;
|
||||||
|
import cy.agorise.crystalwallet.requestmanagers.CryptoNetInfoRequests;
|
||||||
import cy.agorise.crystalwallet.util.ChildViewPager;
|
import cy.agorise.crystalwallet.util.ChildViewPager;
|
||||||
import cy.agorise.crystalwallet.util.PasswordManager;
|
import cy.agorise.crystalwallet.util.PasswordManager;
|
||||||
import cy.agorise.crystalwallet.viewmodels.GeneralSettingListViewModel;
|
import cy.agorise.crystalwallet.viewmodels.GeneralSettingListViewModel;
|
||||||
|
@ -199,7 +204,20 @@ public class PatternSecurityFragment extends Fragment {
|
||||||
public void savePattern(String pattern){
|
public void savePattern(String pattern){
|
||||||
String patternEncripted = PasswordManager.encriptPassword(pattern);
|
String patternEncripted = PasswordManager.encriptPassword(pattern);
|
||||||
CrystalSecurityMonitor.getInstance(null).setPatternEncrypted(patternEncripted);
|
CrystalSecurityMonitor.getInstance(null).setPatternEncrypted(patternEncripted);
|
||||||
//CrystalSecurityMonitor.getInstance(null).callPasswordRequest(this.getActivity());
|
/*CrystalSecurityMonitor.getInstance(null).callPasswordRequest(this.getActivity(), new OnResponse() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess() {
|
||||||
|
|
||||||
|
Log.i("onSuccess","onSuccess");
|
||||||
|
Toast.makeText(getActivity(), "onSuccess", Toast.LENGTH_LONG).show();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailed() {
|
||||||
|
Log.i("onFailed","onFailed");
|
||||||
|
Toast.makeText(getActivity(), "onFailed", Toast.LENGTH_LONG).show();
|
||||||
|
}
|
||||||
|
});*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Show success
|
* Show success
|
||||||
|
|
|
@ -58,8 +58,10 @@ import butterknife.OnClick;
|
||||||
import butterknife.OnItemSelected;
|
import butterknife.OnItemSelected;
|
||||||
import butterknife.OnTextChanged;
|
import butterknife.OnTextChanged;
|
||||||
import cy.agorise.crystalwallet.R;
|
import cy.agorise.crystalwallet.R;
|
||||||
|
import cy.agorise.crystalwallet.application.CrystalSecurityMonitor;
|
||||||
import cy.agorise.crystalwallet.dialogs.material.CrystalDialog;
|
import cy.agorise.crystalwallet.dialogs.material.CrystalDialog;
|
||||||
import cy.agorise.crystalwallet.dialogs.material.ToastIt;
|
import cy.agorise.crystalwallet.dialogs.material.ToastIt;
|
||||||
|
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
||||||
import cy.agorise.crystalwallet.requestmanagers.CryptoNetInfoRequestListener;
|
import cy.agorise.crystalwallet.requestmanagers.CryptoNetInfoRequestListener;
|
||||||
import cy.agorise.crystalwallet.requestmanagers.CryptoNetInfoRequests;
|
import cy.agorise.crystalwallet.requestmanagers.CryptoNetInfoRequests;
|
||||||
import cy.agorise.crystalwallet.requestmanagers.ValidateBitsharesSendRequest;
|
import cy.agorise.crystalwallet.requestmanagers.ValidateBitsharesSendRequest;
|
||||||
|
@ -180,53 +182,10 @@ public class SendTransactionFragment extends DialogFragment implements UIValidat
|
||||||
View view = inflater.inflate(R.layout.send_transaction, null);
|
View view = inflater.inflate(R.layout.send_transaction, null);
|
||||||
ButterKnife.bind(this, view);
|
ButterKnife.bind(this, view);
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Detet scroll changes
|
|
||||||
* */
|
|
||||||
/*scrollMain.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {
|
|
||||||
@Override
|
|
||||||
public void onScrollChanged() {
|
|
||||||
|
|
||||||
View view = scrollMain.getChildAt(scrollMain.getChildCount() - 1);
|
|
||||||
|
|
||||||
int diff = (view.getBottom() - (scrollMain.getHeight() + scrollMain.getScrollY()));
|
|
||||||
|
|
||||||
float traslationY = btnSend.getTranslationY();
|
|
||||||
|
|
||||||
if(diff<=266 && diff>128){
|
|
||||||
//btnSend.setTranslationY(0);
|
|
||||||
//viewSend.setTranslationY(0);
|
|
||||||
|
|
||||||
btnSend.animate().y(880);
|
|
||||||
viewSend.animate().y(800);
|
|
||||||
}
|
|
||||||
else if(diff<=128 && diff>10){
|
|
||||||
//btnSend.setTranslationY(-130);
|
|
||||||
//viewSend.setTranslationY(-130);
|
|
||||||
|
|
||||||
btnSend.animate().y(880);
|
|
||||||
viewSend.animate().y(800);
|
|
||||||
}
|
|
||||||
else if(diff<=10 && diff>0){
|
|
||||||
//btnSend.setTranslationY(-170);
|
|
||||||
//viewSend.setTranslationY(-170);
|
|
||||||
|
|
||||||
btnSend.animate().y(680);
|
|
||||||
viewSend.animate().y(600);
|
|
||||||
}
|
|
||||||
else if(diff==0){
|
|
||||||
//btnSend.setTranslationY(-190);
|
|
||||||
//viewSend.setTranslationY(-190);
|
|
||||||
|
|
||||||
btnSend.animate().y(680);
|
|
||||||
viewSend.animate().y(600);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});*/
|
|
||||||
|
|
||||||
this.cryptoNetAccountId = getArguments().getLong("CRYPTO_NET_ACCOUNT_ID",-1);
|
this.cryptoNetAccountId = getArguments().getLong("CRYPTO_NET_ACCOUNT_ID",-1);
|
||||||
|
|
||||||
|
final Activity activity = getActivity();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Add style to the spinner android
|
* Add style to the spinner android
|
||||||
* */
|
* */
|
||||||
|
@ -253,6 +212,15 @@ public class SendTransactionFragment extends DialogFragment implements UIValidat
|
||||||
}
|
}
|
||||||
List<CryptoCurrency> cryptoCurrencyList = db.cryptoCurrencyDao().getByIds(assetIds);
|
List<CryptoCurrency> cryptoCurrencyList = db.cryptoCurrencyDao().getByIds(assetIds);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Test
|
||||||
|
* */
|
||||||
|
/*CryptoCurrency crypto1 = new CryptoCurrency();
|
||||||
|
crypto1.setId(1);
|
||||||
|
crypto1.setName("BITCOIN");
|
||||||
|
crypto1.setPrecision(1);
|
||||||
|
cryptoCurrencyList.add(crypto1);*/
|
||||||
|
|
||||||
assetAdapter = new CryptoCurrencyAdapter(getContext(), android.R.layout.simple_spinner_item, cryptoCurrencyList);
|
assetAdapter = new CryptoCurrencyAdapter(getContext(), android.R.layout.simple_spinner_item, cryptoCurrencyList);
|
||||||
spAsset.setAdapter(assetAdapter);
|
spAsset.setAdapter(assetAdapter);
|
||||||
}
|
}
|
||||||
|
@ -653,14 +621,28 @@ public class SendTransactionFragment extends DialogFragment implements UIValidat
|
||||||
});
|
});
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Show loading dialog
|
* If exists mode scurity show it and valide events in case of success or fail
|
||||||
* */
|
* */
|
||||||
crystalDialog = new CrystalDialog((Activity) getContext());
|
CrystalSecurityMonitor.getInstance(null).callPasswordRequest(this.getActivity(), new OnResponse() {
|
||||||
crystalDialog.setText("Sending");
|
@Override
|
||||||
crystalDialog.progress();
|
public void onSuccess() {
|
||||||
crystalDialog.show();
|
|
||||||
|
|
||||||
CryptoNetInfoRequests.getInstance().addRequest(sendRequest);
|
/*
|
||||||
|
* Show loading dialog
|
||||||
|
* */
|
||||||
|
crystalDialog = new CrystalDialog((Activity) getContext());
|
||||||
|
crystalDialog.setText("Sending");
|
||||||
|
crystalDialog.progress();
|
||||||
|
crystalDialog.show();
|
||||||
|
|
||||||
|
CryptoNetInfoRequests.getInstance().addRequest(sendRequest);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailed() {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,9 +31,16 @@ public class GrapheneAccount extends CryptoNetAccount {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void loadInfo(GrapheneAccountInfo info){
|
public void loadInfo(GrapheneAccountInfo info){
|
||||||
this.name = info.getName();
|
if(info != null){
|
||||||
this.accountId = info.getAccountId();
|
this.name = info.getName();
|
||||||
this.upgradedToLtm = info.getUpgradedToLtm();
|
this.accountId = info.getAccountId();
|
||||||
|
this.upgradedToLtm = info.getUpgradedToLtm();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
this.name = "";
|
||||||
|
this.accountId = "-1";
|
||||||
|
this.upgradedToLtm = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getName() {
|
public String getName() {
|
||||||
|
|
|
@ -48,7 +48,12 @@ public class AmountValidationField extends ValidationField {
|
||||||
|
|
||||||
CryptoCoinBalance balance = CrystalDatabase.getAppDatabase(amountField.getContext()).cryptoCoinBalanceDao().getBalanceFromAccount(this.account.getId(),cryptoCurrency.getId());
|
CryptoCoinBalance balance = CrystalDatabase.getAppDatabase(amountField.getContext()).cryptoCoinBalanceDao().getBalanceFromAccount(this.account.getId(),cryptoCurrency.getId());
|
||||||
|
|
||||||
if (newAmountValue > balance.getBalance()){
|
double balanceDouble = 0;
|
||||||
|
if(balance != null){
|
||||||
|
balanceDouble = balance.getBalance();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (newAmountValue > balanceDouble){
|
||||||
setMessageForValue(mixedValues, validator.getContext().getResources().getString(R.string.insufficient_amount));
|
setMessageForValue(mixedValues, validator.getContext().getResources().getString(R.string.insufficient_amount));
|
||||||
setValidForValue(mixedValues, false);
|
setValidForValue(mixedValues, false);
|
||||||
} else if (newAmountValue == 0){
|
} else if (newAmountValue == 0){
|
||||||
|
|
Loading…
Reference in a new issue