Browse Source

Merge pull request #11 from CoboVault/electrum

Electrum
dice V1.0.4
Aaron Chen 4 years ago
committed by GitHub
parent
commit
21f50c190d
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      app/src/main/java/com/cobo/cold/ui/fragment/PassphraseFragment.java
  2. 2
      app/src/main/java/com/cobo/cold/ui/fragment/main/QRCodeScanFragment.java
  3. 10
      app/src/main/java/com/cobo/cold/ui/fragment/main/TransactionItem.java
  4. 6
      app/src/main/java/com/cobo/cold/ui/fragment/main/TxConfirmFragment.java
  5. 6
      app/src/main/java/com/cobo/cold/ui/fragment/main/TxFragment.java
  6. 7
      app/src/main/java/com/cobo/cold/ui/fragment/main/electrum/ElectrumTxConfirmFragment.java
  7. 7
      app/src/main/java/com/cobo/cold/ui/fragment/main/electrum/ElectrumTxFragment.java
  8. 3
      app/src/main/java/com/cobo/cold/update/utils/FileUtils.java
  9. 9
      app/src/main/res/layout/passphrase.xml

2
app/src/main/java/com/cobo/cold/ui/fragment/PassphraseFragment.java

@ -93,7 +93,7 @@ public class PassphraseFragment extends SetupVaultBaseFragment<PassphraseBinding
mBinding.inputHint.setTextColor(Color.RED);
} else {
mBinding.inputHint.setText(R.string.passphrase_hint3);
mBinding.inputHint.setTextColor(Color.WHITE);
mBinding.inputHint.setTextColor(mActivity.getResources().getColor(R.color.white40));
}
}
};

2
app/src/main/java/com/cobo/cold/ui/fragment/main/QRCodeScanFragment.java

@ -210,7 +210,7 @@ public class QRCodeScanFragment extends BaseFragment<QrcodeScanFragmentBinding>
throw new XpubNotMatchException("xpub not match");
}
return tx;
} catch (ElectrumTx.SerializationException e) {
} catch (ElectrumTx.SerializationException | IllegalArgumentException e) {
e.printStackTrace();
}
return null;

10
app/src/main/java/com/cobo/cold/ui/fragment/main/TransactionItem.java

@ -17,26 +17,26 @@
package com.cobo.cold.ui.fragment.main;
import com.cobo.coinlib.utils.Coins;
import java.text.NumberFormat;
public class TransactionItem {
final int id;
final String amount;
final String address;
private final String coinCode;
public TransactionItem(int id, long amount, String address) {
public TransactionItem(int id, long amount, String address, String coinCode) {
this.id = id;
this.coinCode = coinCode;
this.amount = formatSatoshi(amount);
this.address = address;
}
static String formatSatoshi(long satoshi) {
private String formatSatoshi(long satoshi) {
double value = satoshi / Math.pow(10, 8);
NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(20);
return nf.format(value) + " " + Coins.BTC.coinCode();
return nf.format(value) + " " + coinCode;
}
public int getId() {

6
app/src/main/java/com/cobo/cold/ui/fragment/main/TxConfirmFragment.java

@ -225,7 +225,8 @@ public class TxConfirmFragment extends BaseFragment<TxConfirmFragmentBinding> {
}
items.add(new TransactionItem(i,
output.getLong("value"),
output.getString("address")
output.getString("address"),
txEntity.getCoinCode()
));
}
} catch (JSONException e) {
@ -248,7 +249,8 @@ public class TxConfirmFragment extends BaseFragment<TxConfirmFragmentBinding> {
for (int i = 0; i < inputs.length(); i++) {
items.add(new TransactionItem(i,
inputs.getJSONObject(i).getLong("value"),
inputs.getJSONObject(i).getString("address")
inputs.getJSONObject(i).getString("address"),
txEntity.getCoinCode()
));
}
String fromAddress = inputs.getJSONObject(0).getString("address");

6
app/src/main/java/com/cobo/cold/ui/fragment/main/TxFragment.java

@ -137,7 +137,8 @@ public class TxFragment extends BaseFragment<TxBinding> {
}
items.add(new TransactionItem(i,
value,
output.getString("address")
output.getString("address"),
txEntity.getCoinCode()
));
}
} catch (JSONException e) {
@ -161,7 +162,8 @@ public class TxFragment extends BaseFragment<TxBinding> {
for (int i = 0; i < inputs.length(); i++) {
items.add(new TransactionItem(i,
inputs.getJSONObject(i).getLong("value"),
inputs.getJSONObject(i).getString("address")
inputs.getJSONObject(i).getString("address"),
txEntity.getCoinCode()
));
}
String fromAddress = inputs.getJSONObject(0).getString("address");

7
app/src/main/java/com/cobo/cold/ui/fragment/main/electrum/ElectrumTxConfirmFragment.java

@ -32,6 +32,7 @@ import androidx.navigation.Navigation;
import com.cobo.coinlib.coins.BTC.Electrum.ElectrumTx;
import com.cobo.coinlib.utils.Base43;
import com.cobo.coinlib.utils.Coins;
import com.cobo.cold.R;
import com.cobo.cold.Utilities;
import com.cobo.cold.config.FeatureFlags;
@ -251,7 +252,8 @@ public class ElectrumTxConfirmFragment extends BaseFragment<ElectrumTxConfirmFra
for (int i = 0; i < outputs.length(); i++) {
items.add(new TransactionItem(i,
outputs.getJSONObject(i).getLong("value"),
outputs.getJSONObject(i).getString("address")
outputs.getJSONObject(i).getString("address"),
Coins.BTC.coinCode()
));
}
} catch (JSONException e) {
@ -275,7 +277,8 @@ public class ElectrumTxConfirmFragment extends BaseFragment<ElectrumTxConfirmFra
JSONObject out = inputs.getJSONObject(i);
items.add(new TransactionItem(i,
out.getLong("value"),
out.getString("address")));
out.getString("address"),
Coins.BTC.coinCode()));
}
} catch (JSONException e) {
return;

7
app/src/main/java/com/cobo/cold/ui/fragment/main/electrum/ElectrumTxFragment.java

@ -27,6 +27,7 @@ import android.view.View;
import androidx.lifecycle.ViewModelProviders;
import com.cobo.coinlib.utils.Base43;
import com.cobo.coinlib.utils.Coins;
import com.cobo.cold.R;
import com.cobo.cold.databinding.ElectrumTxBinding;
import com.cobo.cold.db.entity.TxEntity;
@ -101,7 +102,8 @@ public class ElectrumTxFragment extends BaseFragment<ElectrumTxBinding> {
for (int i = 0; i < outputs.length(); i++) {
JSONObject out = outputs.getJSONObject(i);
items.add(new TransactionItem(i,
out.getLong("value"), out.getString("address")));
out.getLong("value"), out.getString("address"),
Coins.BTC.coinCode()));
}
} catch (JSONException e) {
return;
@ -128,7 +130,8 @@ public class ElectrumTxFragment extends BaseFragment<ElectrumTxBinding> {
for (int i = 0; i < outputs.length(); i++) {
items.add(new TransactionItem(i,
outputs.getJSONObject(i).getLong("value"),
outputs.getJSONObject(i).getString("address")
outputs.getJSONObject(i).getString("address"),
Coins.BTC.coinCode()
));
}
} catch (JSONException e) {

3
app/src/main/java/com/cobo/cold/update/utils/FileUtils.java

@ -52,6 +52,9 @@ public class FileUtils {
public static boolean writeString(@NonNull File file, String content) {
try(FileOutputStream fos = new FileOutputStream(file)) {
fos.write(content.getBytes());
fos.getFD().sync();
fos.flush();
fos.close();
return true;
} catch (Exception e) {
e.printStackTrace();

9
app/src/main/res/layout/passphrase.xml

@ -92,7 +92,7 @@
android:layout_height="wrap_content"
android:background="@null"
android:focusable="true"
android:paddingVertical="5dp"
android:paddingVertical="10dp"
android:focusableInTouchMode="true"
android:hint="@string/passphrase_hint2"
android:imeOptions="actionNext"
@ -113,10 +113,11 @@
<TextView
android:id="@+id/input_hint"
android:layout_marginTop="10dp"
android:layout_marginHorizontal="10dp"
android:layout_marginHorizontal="16dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:textColor="@color/white40"
android:textSize="12sp"
android:text="@string/passphrase_hint3" />
<LinearLayout
@ -132,7 +133,7 @@
android:layout_height="wrap_content"
android:background="@null"
android:focusable="true"
android:paddingVertical="5dp"
android:paddingVertical="10dp"
android:focusableInTouchMode="true"
android:hint="@string/passphrase_hint_agian"
android:imeOptions="actionDone"

Loading…
Cancel
Save