Browse Source

fix utxo coins UI display, fix scan qrcode crash

V1.1.0-btc-release
ZhangJun 5 years ago
parent
commit
e17b2ef670
  1. 2
      app/src/main/java/com/cobo/cold/ui/fragment/main/QRCodeScanFragment.java
  2. 10
      app/src/main/java/com/cobo/cold/ui/fragment/main/TransactionItem.java
  3. 6
      app/src/main/java/com/cobo/cold/ui/fragment/main/TxConfirmFragment.java
  4. 6
      app/src/main/java/com/cobo/cold/ui/fragment/main/TxFragment.java
  5. 7
      app/src/main/java/com/cobo/cold/ui/fragment/main/electrum/ElectrumTxConfirmFragment.java
  6. 7
      app/src/main/java/com/cobo/cold/ui/fragment/main/electrum/ElectrumTxFragment.java

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"); throw new XpubNotMatchException("xpub not match");
} }
return tx; return tx;
} catch (ElectrumTx.SerializationException e) { } catch (ElectrumTx.SerializationException | IllegalArgumentException e) {
e.printStackTrace(); e.printStackTrace();
} }
return null; 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; package com.cobo.cold.ui.fragment.main;
import com.cobo.coinlib.utils.Coins;
import java.text.NumberFormat; import java.text.NumberFormat;
public class TransactionItem { public class TransactionItem {
final int id; final int id;
final String amount; final String amount;
final String address; 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.id = id;
this.coinCode = coinCode;
this.amount = formatSatoshi(amount); this.amount = formatSatoshi(amount);
this.address = address; this.address = address;
} }
static String formatSatoshi(long satoshi) { private String formatSatoshi(long satoshi) {
double value = satoshi / Math.pow(10, 8); double value = satoshi / Math.pow(10, 8);
NumberFormat nf = NumberFormat.getInstance(); NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(20); nf.setMaximumFractionDigits(20);
return nf.format(value) + " " + Coins.BTC.coinCode(); return nf.format(value) + " " + coinCode;
} }
public int getId() { public int getId() {

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

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

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

@ -121,7 +121,8 @@ public class TxFragment extends BaseFragment<TxBinding> {
} }
items.add(new TransactionItem(i, items.add(new TransactionItem(i,
value, value,
output.getString("address") output.getString("address"),
txEntity.getCoinCode()
)); ));
} }
} catch (JSONException e) { } catch (JSONException e) {
@ -145,7 +146,8 @@ public class TxFragment extends BaseFragment<TxBinding> {
for (int i = 0; i < inputs.length(); i++) { for (int i = 0; i < inputs.length(); i++) {
items.add(new TransactionItem(i, items.add(new TransactionItem(i,
inputs.getJSONObject(i).getLong("value"), inputs.getJSONObject(i).getLong("value"),
inputs.getJSONObject(i).getString("address") inputs.getJSONObject(i).getString("address"),
txEntity.getCoinCode()
)); ));
} }
String fromAddress = inputs.getJSONObject(0).getString("address"); 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.coins.BTC.Electrum.ElectrumTx;
import com.cobo.coinlib.utils.Base43; import com.cobo.coinlib.utils.Base43;
import com.cobo.coinlib.utils.Coins;
import com.cobo.cold.R; import com.cobo.cold.R;
import com.cobo.cold.Utilities; import com.cobo.cold.Utilities;
import com.cobo.cold.config.FeatureFlags; import com.cobo.cold.config.FeatureFlags;
@ -251,7 +252,8 @@ public class ElectrumTxConfirmFragment extends BaseFragment<ElectrumTxConfirmFra
for (int i = 0; i < outputs.length(); i++) { for (int i = 0; i < outputs.length(); i++) {
items.add(new TransactionItem(i, items.add(new TransactionItem(i,
outputs.getJSONObject(i).getLong("value"), outputs.getJSONObject(i).getLong("value"),
outputs.getJSONObject(i).getString("address") outputs.getJSONObject(i).getString("address"),
Coins.BTC.coinCode()
)); ));
} }
} catch (JSONException e) { } catch (JSONException e) {
@ -275,7 +277,8 @@ public class ElectrumTxConfirmFragment extends BaseFragment<ElectrumTxConfirmFra
JSONObject out = inputs.getJSONObject(i); JSONObject out = inputs.getJSONObject(i);
items.add(new TransactionItem(i, items.add(new TransactionItem(i,
out.getLong("value"), out.getLong("value"),
out.getString("address"))); out.getString("address"),
Coins.BTC.coinCode()));
} }
} catch (JSONException e) { } catch (JSONException e) {
return; 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 androidx.lifecycle.ViewModelProviders;
import com.cobo.coinlib.utils.Base43; import com.cobo.coinlib.utils.Base43;
import com.cobo.coinlib.utils.Coins;
import com.cobo.cold.R; import com.cobo.cold.R;
import com.cobo.cold.databinding.ElectrumTxBinding; import com.cobo.cold.databinding.ElectrumTxBinding;
import com.cobo.cold.db.entity.TxEntity; 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++) { for (int i = 0; i < outputs.length(); i++) {
JSONObject out = outputs.getJSONObject(i); JSONObject out = outputs.getJSONObject(i);
items.add(new TransactionItem(i, items.add(new TransactionItem(i,
out.getLong("value"), out.getString("address"))); out.getLong("value"), out.getString("address"),
Coins.BTC.coinCode()));
} }
} catch (JSONException e) { } catch (JSONException e) {
return; return;
@ -128,7 +130,8 @@ public class ElectrumTxFragment extends BaseFragment<ElectrumTxBinding> {
for (int i = 0; i < outputs.length(); i++) { for (int i = 0; i < outputs.length(); i++) {
items.add(new TransactionItem(i, items.add(new TransactionItem(i,
outputs.getJSONObject(i).getLong("value"), outputs.getJSONObject(i).getLong("value"),
outputs.getJSONObject(i).getString("address") outputs.getJSONObject(i).getString("address"),
Coins.BTC.coinCode()
)); ));
} }
} catch (JSONException e) { } catch (JSONException e) {

Loading…
Cancel
Save