package Ġlv . rig ade v day . android . ui . tabs Ċ Ċ import Ġandroid . content . res . Configuration Ċ import Ġandroid . support . design . widget . Bottom Navigation View Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . MenuItem Ċ import Ġkotlinx . android . synt hetic . main . activity _ tab .* Ċ import Ġlv . rig ade v day . android . R Ċ import Ġlv . rig ade v day . android . ui . base . Base Activity Ċ import Ġlv . rig ade v day . android . ui . open Lic ences Activity Ċ import Ġlv . rig ade v day . android . ui . open Twitter Ċ import Ġlv . rig ade v day . android . ui . partners . Part ners Fragment Ċ import Ġlv . rig ade v day . android . ui . schedule . My Schedule Fragment Ċ import Ġlv . rig ade v day . android . ui . speak ers . Speaker List Fragment Ċ import Ġlv . rig ade v day . android . ui . ven ues . Ven ues Fragment Ċ import Ġlv . rig ade v day . android . utils . Base App Ċ import Ġlv . rig ade v day . android . utils . auth . Auth Storage Ċ import Ġjavax . inject . Inject ĊĊ Ċ class ĠTab Activity Ġ: ĠBase Activity () Ġ{ ĊĊĠĠĠ Ġ@ Inject Ġlateinit Ġvar Ġauth Storage : ĠAuth Storage ĊĊĠĠĠ Ġoverride Ġval Ġlayout Id Ġ= ĠR . layout . activity _ tab ĊĠĠĠ Ġoverride Ġval Ġcontent Frame Id Ġ= ĠR . id . tabs _ content _ container ĊĠĠĠ Ġoverride Ġval Ġignore Ui Updates Ġ= Ġtrue ĊĊĠĠĠ Ġprivate Ġval Ġschedule Fragment : ĠFragment Ġby Ġlazy Ġ{ ĠMy Schedule Fragment () Ġ} ĊĠĠĠ Ġprivate Ġval Ġspeak ers Fragment : ĠFragment Ġby Ġlazy Ġ{ ĠS peaker List Fragment () Ġ} ĊĠĠĠ Ġprivate Ġval Ġven ues Fragment : ĠFragment Ġby Ġlazy Ġ{ ĠV en ues Fragment () Ġ} ĊĠĠĠ Ġprivate Ġval Ġpart ners Fragment : ĠFragment Ġby Ġlazy Ġ{ ĠPart ners Fragment () Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinject () Ġ{ ĊĠĠĠĠĠĠĠ ĠBase App . graph . inject ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġview Ready () Ġ{ ĊĠĠĠĠĠĠĠ Ġtabs _ buttons . setOn Navigation ItemSelected Listener ( tab ClickListener ) ĊĠĠĠĠĠĠĠ Ġtabs _ buttons . menu . find Item ( R . id . action _ tab _ schedule ). isChecked Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġschedule Fragment . set As Main () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġtab ClickListener Ġ= ĠBottom Navigation View . On Navigation ItemSelected Listener Ġ{ Ġitem Ġ-> ĊĠĠĠĠĠĠĠ Ġitem . itemId . to Fragment (). set As Main () ĊĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Configuration Changed ( new Config : ĠConfiguration ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Configuration Changed ( new Config ) ĊĠĠĠĠĠĠĠ Ġtabs _ buttons . selected ItemId . to Fragment (). set As Main () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠInt . to Fragment (): ĠFragment Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠ ĠR . id . action _ tab _ schedule Ġ-> Ġschedule Fragment ĊĠĠĠĠĠĠĠ ĠR . id . action _ tab _ speak ers Ġ-> Ġspeak ers Fragment ĊĠĠĠĠĠĠĠ ĠR . id . action _ tab _ ven ues Ġ-> Ġven ues Fragment ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġpart ners Fragment ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmenu File Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( auth Storage . has Login ) ĠR . menu . menu _ main _ logout ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĠR . menu . menu _ main _ login ĊĊĠĠĠĠĠĠĠ Ġmenu Inflater . inflate ( menu File , Ġmenu ) ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . onCreate Options Menu ( menu ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ twitter Ġ-> Ġopen Twitter () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ login Ġ-> Ġlogin Wrapper . log In ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ logout Ġ-> Ġlogin Wrapper . log Out () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ lic ences Ġ-> Ġopen Lic ences Activity () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġreturn Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrefresh Login State () Ġ{ ĊĠĠĠĠĠĠĠ Ġinvalidate Options Menu () ĊĠĠĠ Ġ} Ċ } Ċ