package Ġcom . h erry . test . app . checker . main Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroidx . recyclerview . widget . Simple Item Animator Ċ import Ġcom . h erry . libs . app . nav . Nav Bundle Util Ċ import Ġcom . h erry . libs . node view . Node Form Ċ import Ġcom . h erry . libs . node view . Node Holder Ċ import Ġcom . h erry . libs . node view . model . Node Root Ċ import Ġcom . h erry . libs . node view . recycler . Node Recycler Adapter Ċ import Ġcom . h erry . libs . node view . recycler . Node Recycler Form Ċ import Ġcom . h erry . libs . util . App Util Ċ import Ġcom . h erry . libs . util . Bundle Util Ċ import Ġcom . h erry . libs . widget . extension . navigate To Ċ import Ġcom . h erry . libs . widget . extension . navigate To Ċ import Ġcom . h erry . libs . widget . extension . setOn Protect ClickListener Ċ import Ġcom . h erry . test . R Ċ import Ġcom . h erry . test . app . base . nav . Base Nav View Ċ import Ġcom . h erry . test . widget . Title Bar Form Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġh erry . park Ġon Ġ 2 0 2 0 / 7 / 7 Ċ Ġ**/ Ċ class ĠData Checker Main Fragment Ġ: ĠBase Nav View < Data Checker Main Contract . View , ĠData Checker Main Contract . Presenter >(), ĠData Checker Main Contract . View Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Presenter (): ĠData Checker Main Contract . Presenter Ġ= ĊĠĠĠĠĠĠĠ ĠData Checker Main Presenter () ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Presenter View (): ĠData Checker Main Contract . View Ġ= Ġthis ĊĊĠĠĠ Ġoverride Ġval Ġroot : ĠNode Root ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġadapter . root ĊĊĠĠĠ Ġprivate Ġval Ġadapter : ĠAdapter Ġ= ĠAdapter () ĊĊĠĠĠ Ġprivate Ġvar Ġcontainer : ĠView ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( null Ġ== Ġthis . container ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . container Ġ= Ġinflater . inflate ( R . layout . data _ checker _ main _ fragment , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinit ( this . container ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . container ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit ( view : ĠView ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġview Ġ?: Ġreturn ĊĊĠĠĠĠĠĠĠ ĠTitle Bar Form ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Ġ= Ġrequire Activity (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Back Ġ= Ġ{ ĠApp Util . press Back Key ( require Activity (), Ġview ) Ġ} ĊĠĠĠĠĠĠĠ Ġ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind Form Holder ( view . context , Ġview . findViewById ( R . id . data _ checker _ main _ fragment _ title )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbind Form Model ( view . context , ĠTitle Bar Form . Model ( title Ġ= Ġ" Data ĠCheck er ĠMain ", Ġback Enable Ġ= Ġtrue )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġview . findViewById < RecyclerView >( R . id . data _ checker _ main _ fragment _ container )?. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Manager Ġ= ĠLinearLayoutManager ( context , ĠRecyclerView . VERTICAL , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Has Fixed Size ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item Animator Ġis ĠSimple Item Animator ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( item Animator Ġas ĠSimple Item Animator ). supports Change Animations Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġthis @ Data Checker Main Fragment . adapter ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠAdapter : ĠNode Recycler Adapter (:: require Context ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind Forms ( list : ĠMutable List < Node Form < out ĠNode Holder , Ġ* >>) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Data Checker Password Item Form ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinner Ġclass ĠData Checker Password Item Form Ġ: ĠNode Form < Data Checker Password Item Form . Holder , ĠData Checker Main Contract . Password Model >( ĊĠĠĠĠĠĠĠ ĠH older :: class , ĠData Checker Main Contract . Password Model :: class ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinner Ġclass ĠH older ( context : ĠContext , Ġview : ĠView ) Ġ: ĠNode Holder ( context , Ġview ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmain Password Status : ĠTextView ? Ġ= Ġview . findViewById ( R . id . data _ checker _ main _ password _ status ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . setOn Protect ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNode Recycler Form . get Bind Model ( this @ Data Checker Password Item Form , Ġthis @ Holder )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnavigate To ( R . id . password _ setting _ fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate Holder ( context : ĠContext , Ġview : ĠView ): ĠH older Ġ= ĠH older ( context , Ġview ) ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Layout (): ĠInt Ġ= ĠR . layout . data _ checker _ main _ password ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind Model ( context : ĠContext , Ġholder : ĠH older , Ġmodel : ĠData Checker Main Contract . Password Model ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . main Password Status ?. text Ġ= Ġif Ġ( model . password . isBlank ()) Ġ" Not Ġexit Ġpassword " Ġelse Ġ" Exist Ġpassword " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Navigate Up Result ( from : ĠInt , Ġresult : ĠBundle ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen ( from ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . password _ setting _ fragment Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Nav Bundle Util . is Navigation Result Ok ( result )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter ?. refresh () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }