package Ġfr . gro g gy . race control . tv . ui . home Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . fragment . app . Fragment Activity Ċ import Ġandroidx . fragment . app . commit Ċ import Ġandroidx . lifecycle . lifecycle Scope Ċ import Ġdagger . h ilt . android . Android EntryPoint Ċ import Ġfr . gro g gy . race control . tv . R Ċ import Ġfr . gro g gy . race control . tv . core . season . Season Service Ċ import Ġfr . gro g gy . race control . tv . f 1 tv . Archive Ċ import Ġfr . gro g gy . race control . tv . ui . season . browse . Season Browse Activity Ċ import Ġfr . gro g gy . race control . tv . ui . settings . Settings Activity Ċ import Ġfr . gro g gy . race control . tv . utils . coroutines . schedule Ċ import Ġorg . th reet en . bp . Duration Ċ import Ġorg . th reet en . bp . Year Ċ import Ġjavax . inject . Inject Ċ Ċ @ Android EntryPoint Ċ class ĠHome Activity Ġ: ĠFragment Activity ( R . layout . activity _ home ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTAG Ġ= ĠHome Activity :: class . simple Name ĊĊĠĠĠĠĠĠĠ Ġfun Ġintent ( context : ĠContext ) Ġ= ĠIntent ( context , ĠHome Activity :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Inject Ġinternal Ġlateinit Ġvar Ġseason Service : ĠSe ason Service ĊĠĠĠ Ġprivate Ġvar Ġte aser Image : ĠImageView ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġval Ġcurrent Year Ġ= ĠYear . now (). value ĊĠĠĠĠĠĠĠ Ġte aser Image Ġ= ĠfindViewById ( R . id . te aser Image ) ĊĠĠĠĠĠĠĠ Ġte aser Image ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= ĠSe ason Browse Activity . intent ( this , ĠArchive ( current Year )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( activity ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġte aser Image Text Ġ= ĠfindViewById < TextView >( R . id . te aser Image Text ) ĊĠĠĠĠĠĠĠ Ġte aser Image Text . text Ġ= Ġresources . getString ( R . string . te aser _ image _ text , Ġcurrent Year ) ĊĊĠĠĠĠĠĠĠ ĠfindViewById < View >( R . id . settings ). setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Settings Activity . intent ( this )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" onStart ") ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĊĠĠĠĠĠĠĠ Ġte aser Image ?. request Focus () ĊĊĠĠĠĠĠĠĠ Ġlifecycle Scope . launch When Started Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġschedule ( Duration . of Minutes ( 1 )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . d (" Fetching Ġnew Ġdata ", Ġ" Lifecycle Ġstate Ġis Ġ${ lifecycle . currentState }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġseason Service . load Season ( Archive ( Year . now (). value )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ(_ : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/* ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠIf Ġfor Ġwhatever Ġreason Ġthis Ġdoesn 't Ġload , Ġjust Ġgive Ġup ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġuser Ġcan Ġretry Ġat Ġnext Ġscreen ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( support FragmentManager . find Fragment By Tag ( TAG ) Ġ! is ĠHome Fragment ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager . commit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreplace ( R . id . fragment _ container , ĠHome Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }