/** Ċ * ĠCopyright ĠS or am its u ĠCo ., ĠLtd . ĠAll ĠRights ĠReserved . Ċ * ĠSPDX - License - Identifier : ĠGPL - 3 . 0 Ċ */ Ċ Ċ package Ġjp . co . sor am its u . common . presentation . view . pin code Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . View . OnClickListener Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroidx . appcompat . widget . AppCompat Button Ċ import Ġjp . co . sor am its u . common . databinding . U ikit View Pin Code Binding Ċ import Ġjp . co . sor am its u . common . util . ext . set Shape Type Touch Listener Ċ Ċ class ĠPin Code View Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġattrs : ĠAttributeSet ? Ġ= Ġnull , ĊĠĠĠ Ġdef Style : ĠInt Ġ= Ġ 0 Ċ ) Ġ: ĠLinearLayout ( context , Ġattrs , Ġdef Style ) Ġ{ ĊĊĠĠĠ Ġvar Ġpin Code Listener : Ġ( String ) Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠ Ġvar Ġdelete ClickListener : Ġ() Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠ Ġvar Ġfingerprint ClickListener : Ġ() Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠ Ġprivate Ġval Ġpin Code Number ClickListener Ġ= ĠOn ClickListener Ġ{ ĊĠĠĠĠĠĠĠ Ġpin Code Listener (( it Ġas ĠAppCompat Button ). text . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġpin Code Delete ClickListener Ġ= ĠOn ClickListener Ġ{ ĊĠĠĠĠĠĠĠ Ġdelete ClickListener () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġpin Code Fingerprint ClickListener Ġ= ĠOn ClickListener Ġ{ ĊĠĠĠĠĠĠĠ Ġfingerprint ClickListener () ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġbinding Ġ= ĠU ikit View Pin Code Binding . inflate ( LayoutInflater . from ( context ), Ġthis ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġorientation Ġ= ĠV ERT ICAL ĊĠĠĠĠĠĠĠ Ġbinding . btn 1 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 1 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 2 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 2 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 3 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 3 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 4 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 4 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 5 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 5 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 6 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 6 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 7 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 7 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 8 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 8 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 9 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 9 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn 0 . setOnClickListener ( pin Code Number ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn 0 . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . btn Delete . setOnClickListener ( pin Code Delete ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . btn Delete . set Shape Type Touch Listener () ĊĠĠĠĠĠĠĠ Ġbinding . fingerprint Btn . setOnClickListener ( pin Code Fingerprint ClickListener ) ĊĠĠĠĠĠĠĠ Ġbinding . fingerprint Btn . set Shape Type Touch Listener () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġchange Delete Button Visibility ( isVisible : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( isVisible ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . btn Delete . animate () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Start Action Ġ{ Ġbinding . btn Delete . visibility Ġ= ĠView . VISIBLE Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. alpha ( 1 . 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. start () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . btn Delete . animate () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with End Action Ġ{ Ġbinding . btn Delete . visibility Ġ= ĠView . IN VISIBLE Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. alpha ( 0 . 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. start () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġchange F inger Print Button Visibility ( isVisible : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( isVisible ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . fingerprint Btn . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . fingerprint Btn . visibility Ġ= ĠView . IN VISIBLE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ