Merge branch 'develop' of https://github.com/Agorise/crystal-wallet-android into develop
This commit is contained in:
commit
9a1dc0548d
7 changed files with 84 additions and 70 deletions
|
@ -25,7 +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.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;
|
||||||
|
@ -43,7 +43,7 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
/*
|
/*
|
||||||
* External listener for success or fail
|
* External listener for success or fail
|
||||||
* */
|
* */
|
||||||
private static OnResponse onResponse;
|
//private static OnResponse onResponse;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Contains the bad tries
|
* Contains the bad tries
|
||||||
|
@ -109,23 +109,23 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
//CrystalSecurityMonitor.getInstance(null).call2ndFactor(thisActivity);
|
//CrystalSecurityMonitor.getInstance(null).call2ndFactor(thisActivity);
|
||||||
thisActivity.finish();
|
thisActivity.finish();
|
||||||
|
|
||||||
if(onResponse != null){
|
/*if(onResponse != null){
|
||||||
onResponse.onSuccess();
|
onResponse.onSuccess();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
thisActivity.finish();
|
thisActivity.finish();
|
||||||
|
|
||||||
if(onResponse != null){
|
/*if(onResponse != null){
|
||||||
onResponse.onSuccess();
|
onResponse.onSuccess();
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
incorrect();
|
incorrect();
|
||||||
|
|
||||||
if(onResponse != null){
|
/*if(onResponse != null){
|
||||||
onResponse.onFailed();
|
onResponse.onFailed();
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -143,9 +143,9 @@ public class PatternRequestActivity extends AppCompatActivity {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setOnResponse(OnResponse onResponse) {
|
/*public static void setOnResponse(OnResponse onResponse) {
|
||||||
PatternRequestActivity.onResponse = onResponse;
|
PatternRequestActivity.onResponse = onResponse;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
private void incorrect(){
|
private void incorrect(){
|
||||||
|
|
||||||
|
|
|
@ -31,7 +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.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;
|
||||||
|
@ -59,7 +59,7 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
/*
|
/*
|
||||||
* External listener for success or fail
|
* External listener for success or fail
|
||||||
* */
|
* */
|
||||||
private static OnResponse onResponse;
|
//private static OnResponse onResponse;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -113,16 +113,16 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
if (CrystalSecurityMonitor.getInstance(null).is2ndFactorSet()) {
|
if (CrystalSecurityMonitor.getInstance(null).is2ndFactorSet()) {
|
||||||
CrystalSecurityMonitor.getInstance(null).call2ndFactor(this);
|
CrystalSecurityMonitor.getInstance(null).call2ndFactor(this);
|
||||||
|
|
||||||
if(onResponse != null){
|
/*if(onResponse != null){
|
||||||
onResponse.onSuccess();
|
onResponse.onSuccess();
|
||||||
}
|
}*/
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.finish();
|
this.finish();
|
||||||
|
|
||||||
if(onResponse != null){
|
/*if(onResponse != null){
|
||||||
onResponse.onFailed();
|
onResponse.onFailed();
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -221,9 +221,9 @@ public class PinRequestActivity extends AppCompatActivity {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static void setOnResponse(OnResponse onResponse) {
|
/*public static void setOnResponse(OnResponse onResponse) {
|
||||||
PinRequestActivity.onResponse = onResponse;
|
PinRequestActivity.onResponse = onResponse;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
|
|
||||||
@OnTextChanged(value = R.id.etPassword,
|
@OnTextChanged(value = R.id.etPassword,
|
||||||
|
|
|
@ -124,13 +124,25 @@ public abstract class GrapheneApiGenerator {
|
||||||
new WitnessResponseListener() {
|
new WitnessResponseListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(WitnessResponse response) {
|
public void onSuccess(WitnessResponse response) {
|
||||||
final List<List<UserAccount>> resp = (List<List<UserAccount>>) response.result;
|
try {
|
||||||
if(resp.size() > 0){
|
final List<List<UserAccount>> resp = (List<List<UserAccount>>) response.result;
|
||||||
List<UserAccount> accounts = resp.get(0);
|
if (resp.size() > 0) {
|
||||||
if(accounts.size() > 0){
|
List<UserAccount> accounts = resp.get(0);
|
||||||
for(UserAccount account : accounts) {
|
if (accounts.size() > 0) {
|
||||||
request.getListener().success(account,request.getId());}}}
|
for (UserAccount account : accounts) {
|
||||||
request.getListener().fail(request.getId());
|
request.getListener().success(account, request.getId());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
request.getListener().fail(request.getId());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
request.getListener().fail(request.getId());
|
||||||
|
}
|
||||||
|
}catch(Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
request.getListener().fail(request.getId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -17,7 +17,7 @@ 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.fragments.PatternSecurityFragment;
|
||||||
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
//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;
|
||||||
|
@ -131,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,null);
|
callPasswordRequest(activity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
numStarted++;
|
numStarted++;
|
||||||
|
@ -142,39 +142,39 @@ public class CrystalSecurityMonitor implements Application.ActivityLifecycleCall
|
||||||
numStarted--;
|
numStarted--;
|
||||||
if (numStarted == 0) {
|
if (numStarted == 0) {
|
||||||
if (!actualSecurity().equals("")){
|
if (!actualSecurity().equals("")){
|
||||||
callPasswordRequest(activity,null);
|
callPasswordRequest(activity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void callPasswordRequest(Activity activity, final OnResponse onResponsePattern){
|
public void callPasswordRequest(Activity activity){
|
||||||
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);
|
//PinRequestActivity.setOnResponse(null);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Connect error and success listeners
|
* Connect error and success listeners
|
||||||
* */
|
* */
|
||||||
if(onResponsePattern != null){
|
/*if(onResponsePattern != null){
|
||||||
PinRequestActivity.setOnResponse(onResponsePattern);
|
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);
|
//PatternRequestActivity.setOnResponse(null);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Connect error and success listeners
|
* Connect error and success listeners
|
||||||
* */
|
* */
|
||||||
if(onResponsePattern != null){
|
/*if(onResponsePattern != null){
|
||||||
PatternRequestActivity.setOnResponse(onResponsePattern);
|
PatternRequestActivity.setOnResponse(onResponsePattern);
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
if (intent != null) {
|
if (intent != null) {
|
||||||
intent.putExtra("ACTIVITY_TYPE", "PASSWORD_REQUEST");
|
intent.putExtra("ACTIVITY_TYPE", "PASSWORD_REQUEST");
|
||||||
|
|
|
@ -30,7 +30,7 @@ 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.dialogs.material.CrystalDialog;
|
||||||
import cy.agorise.crystalwallet.interfaces.OnResponse;
|
//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.requestmanagers.CryptoNetInfoRequests;
|
||||||
import cy.agorise.crystalwallet.util.ChildViewPager;
|
import cy.agorise.crystalwallet.util.ChildViewPager;
|
||||||
|
|
|
@ -61,7 +61,7 @@ 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.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.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;
|
||||||
|
@ -623,14 +623,14 @@ public class SendTransactionFragment extends DialogFragment implements UIValidat
|
||||||
/*
|
/*
|
||||||
* If exists mode scurity show it and valide events in case of success or fail
|
* If exists mode scurity show it and valide events in case of success or fail
|
||||||
* */
|
* */
|
||||||
CrystalSecurityMonitor.getInstance(null).callPasswordRequest(this.getActivity(), new OnResponse() {
|
/*CrystalSecurityMonitor.getInstance(null).callPasswordRequest(this.getActivity(), new OnResponse() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Show loading dialog
|
* Show loading dialog
|
||||||
* */
|
* */
|
||||||
crystalDialog = new CrystalDialog((Activity) getContext());
|
/* crystalDialog = new CrystalDialog((Activity) getContext());
|
||||||
crystalDialog.setText("Sending");
|
crystalDialog.setText("Sending");
|
||||||
crystalDialog.progress();
|
crystalDialog.progress();
|
||||||
crystalDialog.show();
|
crystalDialog.show();
|
||||||
|
@ -642,7 +642,7 @@ public class SendTransactionFragment extends DialogFragment implements UIValidat
|
||||||
public void onFailed() {
|
public void onFailed() {
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -276,44 +276,46 @@ public class BitsharesAccountManager implements CryptoAccountManager, CryptoNetI
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void fail(int idPetition) {
|
public void fail(int idPetition) {
|
||||||
//importRequest.setStatus(ImportBitsharesAccountRequest.StatusCode.PETITION_FAILED);
|
BIP39 bip39 = new BIP39(-1, importRequest.getMnemonic());
|
||||||
}
|
ApiRequest getAccountNamesBP39 = new ApiRequest(0, new ApiRequestListener() {
|
||||||
});
|
@Override
|
||||||
|
public void success(Object answer, int idPetition) {
|
||||||
|
if(answer != null && importRequest.getStatus().equals(ImportBitsharesAccountRequest.StatusCode.NOT_STARTED)) {
|
||||||
|
UserAccount userAccount = (UserAccount) answer;
|
||||||
|
importRequest.setSeedType(SeedType.BIP39);
|
||||||
|
importRequest.setStatus(ImportBitsharesAccountRequest.StatusCode.SUCCEEDED);
|
||||||
|
|
||||||
ApiRequest getAccountNamesBP39 = new ApiRequest(0, new ApiRequestListener() {
|
AccountSeed seed = new AccountSeed();
|
||||||
@Override
|
seed.setName(userAccount.getName());
|
||||||
public void success(Object answer, int idPetition) {
|
seed.setType(importRequest.getSeedType());
|
||||||
if(answer != null && importRequest.getStatus().equals(ImportBitsharesAccountRequest.StatusCode.NOT_STARTED)) {
|
seed.setMasterSeed(importRequest.getMnemonic());
|
||||||
UserAccount userAccount = (UserAccount) answer;
|
long idSeed = accountSeedDao.insertAccountSeed(seed);
|
||||||
importRequest.setSeedType(SeedType.BIP39);
|
if (idSeed >= 0) {
|
||||||
importRequest.setStatus(ImportBitsharesAccountRequest.StatusCode.SUCCEEDED);
|
GrapheneAccount account = new GrapheneAccount();
|
||||||
|
account.setCryptoNet(CryptoNet.BITSHARES);
|
||||||
AccountSeed seed = new AccountSeed();
|
account.setAccountIndex(0);
|
||||||
seed.setName(userAccount.getName());
|
account.setSeedId(idSeed);
|
||||||
seed.setType(importRequest.getSeedType());
|
account.setAccountId(userAccount.getObjectId());
|
||||||
seed.setMasterSeed(importRequest.getMnemonic());
|
importAccountFromSeed(account, importRequest.getContext());
|
||||||
long idSeed = accountSeedDao.insertAccountSeed(seed);
|
}
|
||||||
if (idSeed >= 0) {
|
}
|
||||||
GrapheneAccount account = new GrapheneAccount();
|
|
||||||
account.setCryptoNet(CryptoNet.BITSHARES);
|
|
||||||
account.setAccountIndex(0);
|
|
||||||
account.setSeedId(idSeed);
|
|
||||||
account.setAccountId(userAccount.getObjectId());
|
|
||||||
importAccountFromSeed(account, importRequest.getContext());
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void fail(int idPetition) {
|
public void fail(int idPetition) {
|
||||||
//importRequest.setStatus(ImportBitsharesAccountRequest.StatusCode.PETITION_FAILED);
|
importRequest.setStatus(ImportBitsharesAccountRequest.StatusCode.BAD_SEED);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
GrapheneApiGenerator.getAccountByOwnerOrActiveAddress(new Address(ECKey.fromPublicOnly(bip39.getBitsharesActiveKey(0).getPubKey())),getAccountNamesBP39);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
BrainKey bk = new BrainKey(importRequest.getMnemonic(), 0);
|
BrainKey bk = new BrainKey(importRequest.getMnemonic(), 0);
|
||||||
BIP39 bip39 = new BIP39(-1, importRequest.getMnemonic());
|
|
||||||
GrapheneApiGenerator.getAccountByOwnerOrActiveAddress(bk.getPublicAddress("BTS"),getAccountNamesBK);
|
GrapheneApiGenerator.getAccountByOwnerOrActiveAddress(bk.getPublicAddress("BTS"),getAccountNamesBK);
|
||||||
GrapheneApiGenerator.getAccountByOwnerOrActiveAddress(new Address(ECKey.fromPublicOnly(bip39.getBitsharesActiveKey(0).getPubKey())),getAccountNamesBP39);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue