package Ġat . r tr . r mb t . android . ui . fragment . results Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġat . r tr . r mb t . android . R Ċ import Ġat . r tr . r mb t . android . databinding . Fragment Results Binding Ċ import Ġat . r tr . r mb t . android . di . viewModel Lazy Ċ import Ġat . r tr . r mb t . android . ui . activity . Home Activity Ċ import Ġat . r tr . r mb t . android . ui . activity . Preference Activity Ċ import Ġat . r tr . r mb t . android . ui . activity . Result Filters Activity Ċ import Ġat . r tr . r mb t . android . ui . activity . Sync Activity Ċ import Ġat . r tr . r mb t . android . ui . fragment . Base Fragment Ċ import Ġat . r tr . r mb t . android . util . Toolbar Theme Ċ import Ġat . r tr . r mb t . android . util . change StatusBar Color Ċ import Ġat . r tr . r mb t . android . view model . History ViewModel Ċ import Ġcom . google . android . material . tabs . Tab Layout Ċ Ċ class ĠResults Fragment Ġ: ĠBase Fragment () Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġlayout Res Id : ĠInt Ġ= ĠR . layout . fragment _ results ĊĊĠĠĠ Ġprivate Ġval Ġbinding : ĠFragment Results Binding Ġby Ġbinding Lazy () ĊĊĠĠĠ Ġprivate Ġval Ġfragments Ġ= ĠlistOf < Fragment >( History Fragment (), ĠResults Map Fragment ()) ĊĠĠĠ Ġprivate Ġval Ġhistory ViewModel : ĠHistory ViewModel Ġby ĠviewModel Lazy () ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġif Ġ( savedInstanceState Ġ== Ġnull Ġ&& Ġ! is Added ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchild FragmentManager . beginTransaction (). add ( binding . pager . id , Ġfragments [ 0 ]). commit Allow ing State Loss () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġactivity ?. window ?. change StatusBar Color ( Toolbar Theme . WHITE ) ĊĊĠĠĠĠĠĠĠ Ġval Ġtab Names Ġ= Ġresources . getString Array ( R . array . title _ results _ tabs ) ĊĠĠĠĠĠĠĠ Ġtab Names . on Each Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . tab Layout . add Tab ( binding . tab Layout . new Tab (). setText ( it )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġchild FragmentManager . beginTransaction (). add ( binding . pager . id , ĠHistory Fragment ()). commit Allow ing State Loss () ĊĊĠĠĠĠĠĠĠ Ġbinding . tab Layout . add On Tab Selected Listener ( object Ġ: ĠTab Layout . On Tab Selected Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Selected ( tab : ĠTab Layout . Tab ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchild FragmentManager . beginTransaction (). replace ( binding . pager . id , Ġfragments [ tab ?. position Ġ?: Ġ 0 ]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit Allow ing State Loss () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Un selected ( tab : ĠTab Layout . Tab ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Re selected ( tab : ĠTab Layout . Tab ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġbinding . icon Filter . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġopen Mode Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( binding . tab Layout . selected Tab Position Ġ== Ġ 0 ) ĠResult Filters Activity . Filter Mode . LIST Ġelse ĠResult Filters Activity . Filter Mode . MAP ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResult Filters Activity . start ( this , Ġopen Mode ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbinding . icon Sync . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSync Activity . start ( this ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbinding . empty Link . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHome Activity . start With Fragment ( require Context (), ĠHome Activity . Companion . Home Navigation Target . HOME _ FRAGMENT _ TO _ SHOW ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbinding . no Client Uuid Link . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( Preference Activity . get Intent ( require Context (), Ġtrue ), ĠSET T INGS _ ACTIVITY _ REQUEST _ CODE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbinding . is Persistent Client UUID Ġ= Ġhistory ViewModel . state . is Persistent Client UUID ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Data Loaded ( empty : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding . empty Ġ= Ġempty ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Result ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Result ( request Code , ĠresultCode , Ġdata ) ĊĠĠĠĠĠĠĠ Ġif Ġ( request Code Ġ== ĠSET T INGS _ ACTIVITY _ REQUEST _ CODE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . is Persistent Client UUID Ġ= Ġhistory ViewModel . state . is Persistent Client UUID ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfragments . on Each Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . on Activity Result ( request Code , ĠresultCode , Ġdata ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSET T INGS _ ACTIVITY _ REQUEST _ CODE Ġ= Ġ 1 ĊĠĠĠ Ġ} Ċ }