package Ġcom . rif q im fa h mi . all dog bre eds . ui . bre eds Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . widget . Grid LayoutManager Ċ import Ġandroid . view . MenuItem Ċ import Ġandroid . view . View Ċ import Ġcom . rif q im fa h mi . all dog bre eds . R Ċ import Ġcom . rif q im fa h mi . all dog bre eds . ui . base . Base Activity Ċ import Ġcom . rif q im fa h mi . all dog bre eds . ui . base . helper . RecyclerView ActionListener Ċ import Ġcom . rif q im fa h mi . all dog bre eds . ui . bre eds . adapter . Adapter Dog B reed s Ċ import Ġcom . rif q im fa h mi . all dog bre eds . ui . details _ bre ed . Detail B reed Activity Ċ import Ġkotlinx . android . synt hetic . main . activity _ bre ed .* Ċ import Ġkotlinx . android . synt hetic . main . empty _ dog .* Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠB reed Activity Ġ: ĠBase Activity (), ĠB reed M vp View , ĠRecyclerView ActionListener < String > Ġ{ ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm B reed Presenter : ĠB reed M vp Presenter < B reed M vp View > ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠgetActivity Intent ( context : ĠContext ): ĠIntent Ġ= ĠIntent ( context , ĠB reed Activity :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ bre ed ) ĊĊĠĠĠĠĠĠĠ Ġm Activity Component . inject ( this ) ĊĠĠĠĠĠĠĠ Ġm B reed Presenter . on Attach ( this ) ĊĊĠĠĠĠĠĠĠ Ġm B reed Presenter . load B reed Data () ĊĠĠĠĠĠĠĠ Ġsetup () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġrv _ dog _ bre eds . set Has Fixed Size ( true ) ĊĠĠĠĠĠĠĠ Ġrv _ dog _ bre eds . layout Manager Ġ= ĠGrid LayoutManager ( this , Ġ 2 ) ĊĠĠĠĠĠĠĠ Ġrv _ dog _ bre eds . adapter Ġ= ĠAdapter Dog B reed s ( this ) ĊĊĠĠĠĠĠĠĠ Ġaction Bar ?. set Display Home As Up Enabled ( true ) ĊĊĠĠĠĠĠĠĠ Ġswipe _ dog _ bre ed . setOn Refresh Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm B reed Presenter . load B reed Data () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġm B reed Presenter . on Detach () ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Data ( data : ĠList < String >) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( rv _ dog _ bre eds . adapter Ġis ĠAdapter Dog B reed s ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhide Empty View () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( rv _ dog _ bre eds . adapter Ġas ĠAdapter Dog B reed s ). removeAll Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( rv _ dog _ bre eds . adapter Ġas ĠAdapter Dog B reed s ). addData ( data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( item ?. itemId Ġ== Ġandroid . R . id . home ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Back Pressed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Empty View () Ġ{ ĊĠĠĠĠĠĠĠ Ġlinear _ layout _ empty . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġrv _ dog _ bre eds . visibility Ġ= ĠView . GONE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġhide Empty View () Ġ{ ĊĠĠĠĠĠĠĠ Ġlinear _ layout _ empty . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġrv _ dog _ bre eds . visibility Ġ= ĠView . VISIBLE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġfinish Swipe Loading () Ġ{ ĊĠĠĠĠĠĠĠ Ġswipe _ dog _ bre ed . is Refresh ing Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Item Click ( type : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠDetail B reed Activity . getActivity Intent ( this , Ġtype ) ĊĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Back Pressed () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Back Pressed () ĊĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠ Ġ} Ċ } Ċ