package Ġuk . co . app sb yst udio . ge osh are . authentication Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . preference . Preference Manager Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġcom . google . firebase . auth . Firebase Auth Ċ import Ġuk . co . app sb yst udio . ge osh are . base . MainActivity Ċ import Ġuk . co . app sb yst udio . ge osh are . R Ċ import Ġuk . co . app sb yst udio . ge osh are . authentication . login . Login Fragment Ċ import Ġuk . co . app sb yst udio . ge osh are . setup . Initial Setup Activity Ċ Ċ class ĠAuth Activity Ġ: ĠAppCompatActivity (), ĠAuth View Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġfirebase Auth : ĠFirebase Auth ? Ġ= Ġnull ĊĊĠĠĠ Ġprivate Ġvar Ġpresenter : ĠAuth Presenter ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ auth ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( savedInstanceState Ġ== Ġnull ) Ġsupport FragmentManager . beginTransaction (). replace ( R . id . frame _ auth _ fragments _ auth , ĠLogin Fragment ()). commit () ĊĊĠĠĠĠĠĠĠ Ġpresenter Ġ= ĠAuth Presenter Impl ( this ) ĊĊĠĠĠĠĠĠĠ Ġfirebase Auth Ġ= ĠFirebase Auth . getInstance () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĠĠĠĠĠĠĠ Ġif Ġ( firebase Auth ?. currentUser Ġ!= Ġnull ) Ġpresenter ?. update UI () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Fragment ( fragment : ĠFragment ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsupport FragmentManager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Custom Animations ( R . anim . enter _ from _ right , ĠR . anim . exit _ to _ left , ĠR . anim . enter _ from _ left , ĠR . anim . exit _ to _ right ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . frame _ auth _ fragments _ auth , Ġfragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. addTo Back Stack ( null ). commit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonSuccess () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( Preference Manager . getDefault SharedPreferences ( application Context ). getBoolean (" first _ run ", Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠInitial Setup Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠMainActivity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Back () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Back Pressed () ĊĠĠĠ Ġ} Ċ Ċ } Ċ