package Ġme . yk rank . s 1 next . view . page . app Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . TextUtils Ċ import Ġcom . github . yk rank . android aut od is pose . Android Rx Dispose Ċ import Ġcom . github . yk rank . android lifecycle . event . Activity Event Ċ import Ġcom . github . yk rank . android tools . widget . net . Wifi Broadcast Receiver Ċ import Ġme . yk rank . s 1 next . R Ċ import Ġme . yk rank . s 1 next . data . api . app . model . App Thread Ċ import Ġme . yk rank . s 1 next . view . activity . Base Activity Ċ import Ġme . yk rank . s 1 next . view . dialog . Login Prompt Dialog Fragment Ċ import Ġme . yk rank . s 1 next . view . event . App Not Login Event Ċ Ċ /** Ċ Ġ* ĠAn ĠActivity Ġwhich Ġincludes Ġ[ android . support . v 4 . view . ViewPager ] Ċ Ġ* Ġto Ġrepresent Ġeach Ġpage Ġof Ġpost Ġlists . Ċ Ġ*/ Ċ class ĠApp Post List Activity Ġ: ĠBase Activity (), ĠApp Post List Pager Fragment . Pager Callback , ĠW ifi Broadcast Receiver . Need Monitor Wifi Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġthread Id : ĠString ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ base _ long _ title ) ĊĊĠĠĠĠĠĠĠ Ġdisable Drawer Indicator () ĊĊĠĠĠĠĠĠĠ Ġthread Id Ġ= Ġintent . getString Extra ( ARG _ THREAD _ ID ) !! ĊĊĠĠĠĠĠĠĠ Ġif Ġ( savedInstanceState Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment : Ġandroidx . fragment . app . Fragment ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpage Num Ġ= Ġintent . getInt Extra ( ARG _ PAGE _ NUM , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpost Id Ġ= Ġintent . getString Extra ( ARG _ QUOTE _ POST _ ID ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( post Id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Ġ= ĠApp Post List Pager Fragment . newInstance ( thread Id , Ġpage Num , Ġpost Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction (). add ( R . id . frame _ layout , Ġfragment , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApp Post List Pager Fragment . TAG ). commit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Ġ= ĠApp Post List Fragment . newInstance ( thread Id , Ġpage Num , Ġpost Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction (). add ( R . id . frame _ layout , Ġfragment , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApp Post List Fragment . TAG ). commit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġm Rx Bus . get () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. of Type ( App Not Login Event :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. to ( Android Rx Dispose . with Observable ( this , ĠActivity Event . PAUSE )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! Login Prompt Dialog Fragment . is Showing ( support FragmentManager )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLogin Prompt Dialog Fragment . show App Login Prompt Dialog IfNeeded ( support FragmentManager , Ġm User ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Total Pages ( page : ĠInt ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ"${ thread Info ?. subject } Ġ$ page " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġvar Ġthread Info : ĠApp Thread ? Ġ= Ġnull ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠRESULT _ BLACK LIST Ġ= Ġ 1 1 ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠARG _ THREAD _ ID Ġ= Ġ" thread _ id " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠARG _ PAGE _ NUM Ġ= Ġ" page _ num " ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠARG _ QUOTE _ POST _ ID Ġ= Ġ" quote _ post _ id " ĊĊĠĠĠĠĠĠĠ Ġfun Ġstart ( context : ĠContext , Ġthread Id : ĠString , Ġpage Num : ĠInt , Ġpost Id : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( context , ĠApp Post List Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( ARG _ THREAD _ ID , Ġthread Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! TextUtils . isEmpty ( post Id )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( ARG _ QUOTE _ POST _ ID , Ġpost Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( ARG _ PAGE _ NUM , Ġpage Num ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( context Ġis ĠActivity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . startActivity For Result ( intent , ĠRESULT _ BLACK LIST ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . startActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ