package Ġcom . inion gun group . mobile . android . references . fragments Ċ Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . core . widget . add TextChanged Listener Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġcom . inion gun . t iv bible . common . base . Base Fragment Ċ import Ġcom . inion gun . t iv bible . common . utils . live Data Event . LiveData Event Observer Ċ import Ġcom . inion gun group . mobile . android . references . BR Ċ import Ġcom . inion gun group . mobile . android . references . R Ċ import Ġcom . inion gun group . mobile . android . references . References Activity Ċ import Ġcom . inion gun group . mobile . android . references . References ViewModel Ċ import Ġcom . inion gun group . mobile . android . references . adapters . Books Adapter Ċ import Ġcom . inion gun group . mobile . android . references . databinding . Fragment Books Binding Ċ import Ġkotlinx . android . synt hetic . main . fragment _ books .* Ċ Ċ class ĠBooks Fragment Ġ: ĠBase Fragment < Fragment Books Binding , ĠReferences ViewModel >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġreferences ViewModel Ġby Ġlazy Ġ{ Ġ( require Activity () Ġas ĠReferences Activity ). references ViewModel Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbooks Adapter : ĠBooks Adapter ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġfragment Books Binding : ĠFragment Books Binding ĊĊĠĠĠ Ġoverride Ġfun Ġget ViewModel () Ġ= Ġreferences ViewModel ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Id () Ġ= ĠR . layout . fragment _ books ĊĊĠĠĠ Ġoverride Ġfun Ġget Binding Variable () Ġ= ĠBR . viewModel ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Binding ( binding : ĠFragment Books Binding ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfragment Books Binding Ġ= Ġbinding ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbooks Adapter Ġ= ĠBooks Adapter ( references ViewModel ) ĊĠĠĠĠĠĠĠ Ġsetup Books RecyclerView () ĊĠĠĠĠĠĠĠ Ġset OnClick Listeners () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset ViewModel Observer s () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . set ViewModel Observer s () ĊĠĠĠĠĠĠĠ Ġobserve Books () ĊĠĠĠĠĠĠĠ Ġobserve Show Chapter s Fragment () ĊĠĠĠĠĠĠĠ Ġobserve Settings () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġobserve Show Chapter s Fragment () Ġ{ ĊĠĠĠĠĠĠĠ Ġreferences ViewModel . show Chapter s Fragment . observe ( this , ĠLive Data Event Observer Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it ) Ġ( require Activity () Ġas ĠReferences Activity ). set ViewPager Item ( 1 ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset OnClick Listeners () Ġ{ ĊĠĠĠĠĠĠĠ Ġfragment Books Binding . done Button . setOnClickListener Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsearch EditText . add TextChanged Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit ?. toString ()?. let Ġ{ Ġnew Text Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreferences ViewModel . filter Books ( new Text ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Books RecyclerView () Ġ{ ĊĠĠĠĠĠĠĠ Ġfragment Books Binding . books RecyclerView . adapter Ġ= Ġbooks Adapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġobserve Books () Ġ{ ĊĠĠĠĠĠĠĠ Ġreferences ViewModel . books . observe ( this , ĠObserver Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbooks Adapter . submit List ( it ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġobserve Settings () Ġ{ ĊĠĠĠĠĠĠĠ Ġreferences ViewModel . settings . observe ( this , ĠObserver Ġ{ Ġsetting Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtype face Ġ= ĠType face . createFrom Asset ( activity !!. assets , Ġ" font /${ setting . font Style . name }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsearch EditText . type face Ġ= Ġtype face ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ Ċ } Ċ