package Ġcom . waves platform . wallet . v 2 . ui . home . quick _ action . receive . address _ view Ċ Ċ import Ġandroid . graphics . Bitmap Ċ import Ġcom . are l lo mobile . mvp . Inject ViewState Ċ import Ġcom . google . zx ing . Barcode Format Ċ import Ġcom . google . zx ing . Writer Exception Ċ import Ġcom . waves platform . wallet . v 1 . ui . zx ing . Contents Ċ import Ġcom . waves platform . wallet . v 1 . ui . zx ing . encode . QR Code Encoder Ċ import Ġcom . waves platform . wallet . v 2 . ui . base . presenter . Base Presenter Ċ import Ġcom . waves platform . wallet . v 2 . util . Rx Util Ċ import Ġio . reactivex . Observable Ċ import Ġjavax . inject . Inject Ċ Ċ @ Inject ViewState Ċ class ĠReceive Address View Presenter Ġ@ Inject Ġconstructor () Ġ: ĠBase Presenter < Receive Address View >() Ġ{ ĊĠĠĠ Ġfun Ġgenerate QR Code ( text : ĠString , Ġsize : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġadd Subscription ( generate Qr Code Observable ( text , Ġsize ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. compose ( Rx Util . apply Observable Default Schedulers ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview State . show QR Code ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġgenerate Qr Code Observable ( uri : ĠString , Ġdimensions : ĠInt ): ĠObservable < Bitmap > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . defer Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġbitmap : ĠBitmap ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġqr Code Encoder Ġ= ĠQR Code Encoder ( uri , Ġnull , ĠContents . Type . TEXT , ĠBar code Format . QR _ CODE . toString (), Ġdimensions ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbitmap Ġ= Ġqr Code Encoder . encode As Bitmap () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠWriter Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ defer ĠObservable . error < Bitmap >( e ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( bitmap Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ defer ĠObservable . error < Bitmap >( Throwable (" Bitmap Ġwas Ġnull ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ defer ĠObservable . just < Bitmap >( bitmap ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ