package Ġorg . trust note . wallet . biz . wallet Ċ Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . EditText Ċ import Ġandroid . widget . TextView Ċ import Ġorg . trust note . db . Db Helper Ċ import Ġorg . trust note . db . entity . Auth ent ifiers Ċ import Ġorg . trust note . wallet . R Ċ import Ġorg . trust note . wallet . biz . TTT Ċ import Ġorg . trust note . wallet . biz . Activity Main Ċ import Ġorg . trust note . wallet . biz . me . Fragment Dialog Ask Author To Signer Ċ import Ġorg . trust note . wallet . biz . me . Fragment Dialog Scan Sign Result Ċ import Ġorg . trust note . wallet . biz . me . Fragment Me Addresses Book Ċ import Ġorg . trust note . wallet . biz . units . Unit Composer Ċ import Ġandroid . text . Input Filter Ċ import Ġandroid . view .* Ċ import Ġorg . trust note . wallet . T App Ċ import Ġorg . trust note . wallet . biz . init . Create Wallet Model Ċ import Ġorg . trust note . wallet . util .* Ċ import Ġorg . trust note . wallet . widget .* Ċ Ċ class ĠFragment Wallet Upload Text Ġ: ĠFragment Wallet Base () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . f _ wallet _ upload _ text ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġlateinit Ġvar Ġtitle : ĠTextView ĊĠĠĠ Ġlateinit Ġvar Ġnotes Text : ĠClear able EditText ĊĠĠĠ Ġlateinit Ġvar Ġbtn Confirm : ĠButton ĊĊĠĠĠ Ġoverride Ġfun Ġinit Fragment ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . init Fragment ( view ) ĊĊĠĠĠĠĠĠĠ Ġtitle Ġ= ĠfindViewById ( R . id . transfer _ title ) ĊĊĠĠĠĠĠĠĠ Ġnotes Text Ġ= ĠfindViewById ( R . id . transfer _ notes ) ĊĊĠĠĠĠĠĠĠ Ġbtn Confirm Ġ= ĠfindViewById ( R . id . transfer _ confirm ) ĊĠĠĠĠĠĠĠ Ġbtn Confirm . setOnClickListener Ġ{ Ġtransfer () Ġ} ĊĊĠĠĠĠĠĠĠ Ġnotes Text . add TextChanged Listener ( My Text Watcher ( this )) ĊĊĠĠĠĠĠĠĠ Ġnotes Text . setText ( arguments . getString ( Android Utils . KEY _ SHARE _ TEXT , Ġ"")) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( arguments Ġ!= Ġnull Ġ&& Ġarguments . containsKey ( TTT . KEY _ UPLOAD _ TEXT )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnotes Text . setText ( arguments . getString ( TTT . KEY _ UPLOAD _ TEXT , Ġ"")) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠWallet Manager . model . prepare For Transfer () ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinf late Menu ( menu : ĠMenu , Ġinflater : ĠMenu Inflater ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// in flater . inflate ( R . menu . only _ scan , Ġmenu ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ scan _ receive _ address Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġtransfer () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġvar Ġpayment Info Ġ= ĠPayment Info () ĊĊĠĠĠĠĠĠĠ Ġ// set Transfer Address (" GI 6 TX YXR SB 4 JJ Z J LE CF 3 F 5 DOT UZ 5 V 7 MX ") ĊĠĠĠĠĠĠĠ Ġ// set Transfer Amount ( 1 0 5 0 0 0 ) ĊĊĠĠĠĠĠĠĠ Ġ// payment Info . receiver Address Ġ= ĠWallet Manager . model . receive Address ( credential ) ĊĠĠĠĠĠĠĠ Ġ// payment Info . amount Ġ= Ġcredential . balance ĊĠĠĠĠĠĠĠ Ġpayment Info . receiver Address Ġ= Ġ" GI 6 TX YXR SB 4 JJ Z J LE CF 3 F 5 DOT UZ 5 V 7 MX " ĊĠĠĠĠĠĠĠ Ġpayment Info . amount Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġpayment Info . wallet Id Ġ= Ġcredential . wallet Id ĊĠĠĠĠĠĠĠ Ġpayment Info . text Message Ġ= Ġnotes Text . text . toString () ĊĊĠĠĠĠĠĠĠ Ġval Ġunit Composer Ġ= ĠUnit Composer ( payment Info ) ĊĠĠĠĠĠĠĠ Ġif Ġ( unit Composer . is Ok ToSend Tx ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġask User Input Pwd For Transfer ( unit Composer ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunit Composer . show Fail () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġask User Input Pwd For Transfer ( unit Composer : ĠUnit Composer ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġinput Pwd Dialog Ġ= ĠFragment Dialog Input Pwd () ĊĠĠĠĠĠĠĠ Ġinput Pwd Dialog . confirm Logic Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsend Tx Or Show H ah sTo Sign ( unit Composer , Ġit ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġadd L 2 Fragment ( input Pwd Dialog ) ĊĊĊĠĠĠĠĠĠĠ ĠMy Thread Manager . instance . run In Back Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunit Composer . compose Units () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsend Tx Or Show H ah sTo Sign ( unit Composer : ĠUnit Composer , Ġpassword : ĠString Ġ= Ġ"") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġun Signed Author Ġ= Ġunit Composer . getOne Un Signed Auth entifier () ĊĠĠĠĠĠĠĠ Ġif Ġ( un Signed Author Ġ!= Ġnull Ġ&& Ġcredential . is Ob serve Only ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry To Get One Author Sign ( un Signed Author , Ġunit Composer ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunit Composer . start Send Tx ( activity Ġas ĠActivity Main , Ġpassword ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . on Back Pressed () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġtry To Get One Author Sign ( un Signed Author : ĠAuth ent ifiers , Ġunit Composer : ĠUnit Composer ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġmy Addresses Ġ= ĠDb Helper . query Address By Add res d Id ( un Signed Author . address ) ĊĠĠĠĠĠĠĠ Ġval Ġcheck Code Ġ= ĠT TT Utils . random Check Code () ĊĊĠĠĠĠĠĠĠ Ġval Ġqr Str Ġ= ĠT TT Utils . get Qr Code For Col d To Sign ( unit Composer . hash To Sign , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUtils . gen B ip 4 4 Path ( my Addresses ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunit Composer . send Payment Info . receiver Address , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunit Composer . send Payment Info . amount , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck Code ) ĊĊĠĠĠĠĠĠĠ Ġval Ġf Ġ= ĠFragment Dialog Ask Author To Signer Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscan Res Ġ= ĠFragment Dialog Scan Sign Result ( check Code ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġun Signed Author . auth ent ifiers . remove (" r ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġun Signed Author . auth ent ifiers . addProperty (" r ", Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsend Tx Or Show H ah sTo Sign ( unit Composer ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠAndroid Utils . open Dialog ( activity , Ġscan Res , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠAndroid Utils . add Fragment Arguments ( f , ĠT TT . KEY _ QR _ CODE , Ġqr Str ) ĊĠĠĠĠĠĠĠ ĠAndroid Utils . open Dialog ( activity , Ġf , Ġfalse ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġactivity . window . set Soft Input Mode ( WindowManager . LayoutParams . SOFT _ INPUT _ ADJ UST _ NOTH ING ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġactivity . window . set Soft Input Mode ( WindowManager . LayoutParams . SOFT _ INPUT _ ADJ UST _ RE SIZE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate UI () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġbtn Enabled Ġ= Ġ( notes Text . text . isNotEmpty ()) ĊĠĠĠĠĠĠĠ ĠAndroid Utils . enable Btn ( btn Confirm , Ġbtn Enabled ) ĊĊĠĠĠ Ġ} Ċ Ċ } ĊĊ