package Ġcom . ary a . covid app . ui . activity Ċ Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Menu Ċ import Ġandroid . widget . Search View Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġcom . ary a . covid app . adapter . Prov insi Adapter Ċ import Ġcom . ary a . covid app . view model . Prov insi ViewModel Ċ import Ġcom . ary a . covid app . R Ċ import Ġkotlinx . android . synt hetic . main . activity _ prov insi .* Ċ Ċ class ĠPro v insi Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġadapter : ĠPro v insi Adapter ĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠviewModel : ĠPro v insi ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ prov insi ) ĊĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( findViewById ( R . id . toolbar )) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . set Display Home As Up Enabled ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . title Ġ= Ġ" Data ĠPro v insi " ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠviewModel Ġ= ĠViewModel Provider ( this , ĠViewModel Provider . New Instance Factory ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. get ( Prov insi ViewModel :: class . java ) ĊĊĠĠĠĠĠĠĠ ĠviewModel . set List Prov insi () ĊĠĠĠĠĠĠĠ ĠviewModel . getList Prov insi (). observe ( this , Ġ{ Ġdata Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= ĠPro v insi Adapter ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrv _ prov . adapter Ġ= Ġadapter ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Support Navigate Up (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġon Back Pressed () ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Support Navigate Up () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= Ġmenu Inflater ĊĠĠĠĠĠĠĠ Ġinflater . inflate ( R . menu . search _ menu , Ġmenu ) ĊĠĠĠĠĠĠĠ Ġval Ġmenu Item Ġ= Ġmenu ?. find Item ( R . id . search _ menu ) ĊĠĠĠĠĠĠĠ Ġval Ġsearch View Ġ= Ġmenu Item ?. action View Ġas ĠSearch View ĊĠĠĠĠĠĠĠ Ġsearch View . query Hint Ġ= Ġ" C ari ĠPro v insi " ĊĠĠĠĠĠĠĠ Ġsearch View . setOn Query Text Listener ( object Ġ: ĠSearch View . On Query Text Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Query Text Submit ( query : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Query Text Change ( new Text : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . get Filter (). filter ( new Text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . onCreate Options Menu ( menu ) ĊĠĠĠ Ġ} Ċ }