package Ġorg . z lob ste . spot ter . features . d run k _ drivers Ċ Ċ import Ġandroid . app . AlertDialog Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . drawable . Color Drawable Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Button Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġkotlinx . android . synt hetic . main . fragment _ my _ drivers .* Ċ import Ġkotlinx . android . synt hetic . main . layout _ driver _ details _ dialog . view .* Ċ import Ġkotlinx . android . synt hetic . main . toolbar _ with _ image .* Ċ import Ġkotlinx . android . synt hetic . main . toolbar _ with _ image . view .* Ċ import Ġorg . z lob ste . spot ter . R Ċ import Ġorg . z lob ste . spot ter . databinding . Fragment My Drivers Binding Ċ import Ġorg . z lob ste . spot ter . features . my _ drivers . model . Driver Ċ import Ġorg . z lob ste . spot ter . features . my _ drivers . model . My Drivers Ċ import Ġorg . z lob ste . spot ter . features . my _ drivers . view . Drivers Adapter Ċ import Ġorg . z lob ste . spot ter . util . Scoped Fragment Ċ import Ġorg . kode in . di . K ode in Aware Ċ import Ġorg . kode in . di . android . x . closest K ode in Ċ Ċ class ĠD run k Drivers Fragment Ġ: ĠScoped Fragment (), ĠK ode in Aware Ġ{ ĊĠĠĠ Ġoverride Ġval Ġk ode in Ġby Ġclosest K ode in () ĊĠĠĠ Ġprivate Ġval Ġdrivers Adapter : ĠDriver s Adapter Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠDriver s Adapter ( require Context ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFragment My Drivers Binding . inflate ( in flater , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġbinding . lifecycle Owner Ġ= Ġthis ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġinit Toolbar () ĊĠĠĠĠĠĠĠ Ġinit RecyclerView () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Toolbar () Ġ{ ĊĠĠĠĠĠĠĠ Ġrequire Activity (). toolbar _ with _ image . title _ text _ view . text Ġ= ĠgetString ( R . string . d run k _ drivers ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit RecyclerView () Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( my _ drivers _ recycler ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Manager Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayoutManager ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Context (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayoutManager . VERTICAL , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġdrivers Adapter ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġdrivers Adapter . on Info Icon Clicked Ġ= Ġ{ Ġdriver Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Dialog ( driver ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġdrivers Adapter . replace ( My Drivers . drivers List . values . filter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . is D run k ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Dialog ( driver : ĠDriver ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠAlertDialog . Builder ( require Context ()) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġlayout Inflater . inflate ( R . layout . layout _ driver _ details _ dialog , Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġview . full _ name . text Ġ= ĠgetString ( R . string . full _ name , Ġdriver . lastName , Ġdriver . firstName ) ĊĠĠĠĠĠĠĠ Ġview . email . text Ġ= Ġdriver . email ĊĠĠĠĠĠĠĠ Ġview . b _ day . text Ġ= Ġdriver . b Day ĊĠĠĠĠĠĠĠ Ġview . d run k _ status . text Ġ= Ġif Ġ( driver . is D run k ) Ġ" D run k " Ġelse Ġ" Not Ġd run k " ĊĊĠĠĠĠĠĠĠ Ġbuilder . setView ( view ) ĊĠĠĠĠĠĠĠ Ġbuilder . set Custom Title ( null ) ĊĊĠĠĠĠĠĠĠ Ġval Ġdialog : ĠAlertDialog Ġ= Ġbuilder . create () ĊĠĠĠĠĠĠĠ Ġval Ġclose Ġ= Ġview . findViewById ( R . id . close _ info _ button ) Ġas ĠButton ? ĊĊĠĠĠĠĠĠĠ Ġclose !!. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . dismiss () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdialog . window !!. setBackground Drawable ( Color Drawable ( Color . TRANSP ARENT )) ĊĠĠĠĠĠĠĠ Ġdialog . show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠgetInstance () Ġ= ĠD run k Drivers Fragment () ĊĠĠĠ Ġ} Ċ }