Browse Source

Add tAddress support

connman
Aditya Kulkarni 6 years ago
parent
commit
af9a4a0a3b
  1. 2
      app/src/main/java/com/adityapk/zcash/zqwandroid/DataModel.kt
  2. 2
      app/src/main/java/com/adityapk/zcash/zqwandroid/MainActivity.kt
  3. 6
      app/src/main/java/com/adityapk/zcash/zqwandroid/QrReaderActivity.kt
  4. 43
      app/src/main/java/com/adityapk/zcash/zqwandroid/ReceiveActivity.kt
  5. 38
      app/src/main/res/layout/activity_qr_reader.xml
  6. 26
      app/src/main/res/layout/content_qr_code_reader.xml
  7. 6
      app/src/main/res/layout/content_receive.xml

2
app/src/main/java/com/adityapk/zcash/zqwandroid/DataModel.kt

@ -10,7 +10,7 @@ import okhttp3.WebSocket
object DataModel {
class MainResponse(val balance: Double, val saplingAddress: String, val zecprice: Double, val tokenName: String)
class MainResponse(val balance: Double, val saplingAddress: String, val tAddress: String, val zecprice: Double, val tokenName: String)
class TransactionItem(val type: String, val datetime: Long, val amount: String, val memo: String?,
val addr: String, val txid: String?, val confirmations: Long)

2
app/src/main/java/com/adityapk/zcash/zqwandroid/MainActivity.kt

@ -185,7 +185,7 @@ class MainActivity : AppCompatActivity(), TransactionItemFragment.OnFragmentInte
// If there are no transactions, make sure to commit the Tx, so existing items are removed, and just return
if (txns.isNullOrEmpty()) {
fragTx.commit()
fragTx.commitAllowingStateLoss()
swiperefresh.isRefreshing = false
return@runOnUiThread

6
app/src/main/java/com/adityapk/zcash/zqwandroid/QrReaderActivity.kt

@ -16,6 +16,7 @@ import com.google.android.gms.vision.CameraSource
import com.google.android.gms.vision.Detector
import com.google.android.gms.vision.barcode.Barcode
import com.google.android.gms.vision.barcode.BarcodeDetector
import kotlinx.android.synthetic.main.activity_qr_reader.*
import java.io.IOException
import java.lang.StringBuilder
@ -78,6 +79,11 @@ class QrReaderActivity : AppCompatActivity() {
}
})
btnQrCodeCancel.setOnClickListener {
setResult(Activity.RESULT_CANCELED)
finish()
}
barcodeDetector.setProcessor(object : Detector.Processor<Barcode> {
override fun release() {}

43
app/src/main/java/com/adityapk/zcash/zqwandroid/ReceiveActivity.kt

@ -5,6 +5,7 @@ import android.content.ClipboardManager
import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.support.design.widget.TabLayout
import android.support.v7.app.AppCompatActivity
import android.util.Log
import android.view.Menu
@ -16,6 +17,7 @@ import androidmads.library.qrgenearator.QRGContents
import androidmads.library.qrgenearator.QRGEncoder
import com.google.zxing.WriterException
import kotlinx.android.synthetic.main.activity_receive.*
import kotlinx.android.synthetic.main.content_receive.*
class ReceiveActivity : AppCompatActivity() {
@ -32,8 +34,25 @@ class ReceiveActivity : AppCompatActivity() {
supportActionBar?.setDisplayHomeAsUpEnabled(true)
addr = DataModel.mainResponseData?.saplingAddress ?: ""
tabAddressType.setOnTabSelectedListener(object : TabLayout.OnTabSelectedListener {
override fun onTabReselected(p0: TabLayout.Tab?) {}
override fun onTabUnselected(p0: TabLayout.Tab?) {}
override fun onTabSelected(p0: TabLayout.Tab?) {
if (p0?.text == "zAddr") {
setZAddr()
} else {
setTAddr()
}
}
})
setZAddr()
}
fun setAddr() {
val qrgEncoder = QRGEncoder(addr, null, QRGContents.Type.TEXT, 300)
try {
// Getting QR-Code as Bitmap
@ -45,10 +64,16 @@ class ReceiveActivity : AppCompatActivity() {
Log.w("receive", e.toString())
}
if (addr.isNullOrBlank())
addr = "(no address)"
val addrTxt = findViewById<TextView>(R.id.addressTxt)
val numsplits = if (addr!!.length > 48) 8 else 4
val size = addr!!.length / numsplits
var splitText = ""
val size = addr!!.length / 8
for (i in 0..7) {
for (i in 0..(numsplits-1)) {
splitText += addr?.substring(i * size, i * size + size)
splitText += if (i % 2 == 0) " " else "\n"
}
@ -62,6 +87,18 @@ class ReceiveActivity : AppCompatActivity() {
}
}
fun setTAddr() {
addr = DataModel.mainResponseData?.tAddress ?: ""
txtRcvAddrTitle.text = "Your zcash transparent address"
setAddr()
}
fun setZAddr() {
addr = DataModel.mainResponseData?.saplingAddress ?: ""
txtRcvAddrTitle.text = "Your zcash sapling address"
setAddr()
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.menu_recieve, menu)
return true

38
app/src/main/res/layout/activity_qr_reader.xml

@ -5,13 +5,16 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".QrReaderActivity">
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:showIn="@layout/activity_qr_code_reader"
tools:context=".QrCodeReaderActivity" android:id="@+id/camPreview">
<SurfaceView
android:layout_width="324dp"
android:layout_height="267dp"
android:id="@+id/camera_view" android:layout_marginTop="8dp"
android:layout_width="0dp"
android:layout_height="442dp"
android:id="@+id/camera_view"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"/>
app:layout_constraintEnd_toEndOf="parent"/>
<TextView
android:text="TextView"
android:layout_width="0dp"
@ -20,4 +23,29 @@
app:layout_constraintStart_toStartOf="parent" android:layout_marginStart="8dp"
android:layout_marginTop="8dp" app:layout_constraintTop_toBottomOf="@+id/camera_view"
android:textAlignment="center"/>
<TextView
android:text="Go to Apps -> Connect mobile app on your desktop and scan the QR Code to connect"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/textView3" android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/code_info" app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp" android:textAlignment="center"/>
<Button
android:text="Cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnQrCodeCancel" android:layout_marginTop="16dp"
app:layout_constraintTop_toBottomOf="@+id/textView3" app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp" android:background="@color/colorPrimary"/>
<ImageView
android:src="@android:drawable/ic_menu_camera"
android:layout_width="349dp"
android:layout_height="306dp"
android:id="@+id/imageView4"
app:layout_constraintTop_toTopOf="@+id/camera_view"
app:layout_constraintBottom_toBottomOf="@+id/camera_view" app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp" app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="8dp"/>
</android.support.constraint.ConstraintLayout>

26
app/src/main/res/layout/content_qr_code_reader.xml

@ -1,26 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:showIn="@layout/activity_qr_code_reader"
tools:context=".QrCodeReaderActivity" android:id="@+id/camPreview">
<SurfaceView
android:layout_width="324dp"
android:layout_height="267dp"
android:id="@+id/camera_view" android:layout_marginTop="8dp"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"/>
<TextView
android:text="TextView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/code_info" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"
app:layout_constraintStart_toStartOf="parent" android:layout_marginStart="8dp"
android:layout_marginTop="8dp" app:layout_constraintTop_toBottomOf="@+id/camera_view"
android:textAlignment="center"/>
</android.support.constraint.ConstraintLayout>

6
app/src/main/res/layout/content_receive.xml

@ -15,7 +15,7 @@
android:id="@+id/imageView"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" android:layout_marginBottom="8dp"
app:layout_constraintBottom_toTopOf="@+id/textView4"
app:layout_constraintBottom_toTopOf="@+id/txtRcvAddrTitle"
app:layout_constraintTop_toBottomOf="@+id/tabAddressType"/>
<TextView
android:layout_width="0dp"
@ -26,13 +26,13 @@
android:layout_marginBottom="8dp"
app:layout_constraintBottom_toBottomOf="parent" android:text="abcde fghij" android:textAlignment="center"
android:textSize="24sp" android:fontFamily="monospace" android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/textView4" app:layout_constraintVertical_bias="0.0"/>
app:layout_constraintTop_toBottomOf="@+id/txtRcvAddrTitle" app:layout_constraintVertical_bias="0.0"/>
<TextView
android:text="Your Zcash Sapling Address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"
android:id="@+id/textView4" android:layout_marginTop="16dp"
android:id="@+id/txtRcvAddrTitle" android:layout_marginTop="16dp"
app:layout_constraintTop_toBottomOf="@+id/imageView" android:textColor="@color/colorPrimary"/>
<android.support.design.widget.TabLayout
android:layout_width="395dp"

Loading…
Cancel
Save