package Ġeu . kan ade . t 4 chi y omi . ui . recent ly _ read Ċ Ċ import Ġandroid . support . v 7 . widget . Linear LayoutManager Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġeu . dav idea . flex ible adapter . Flex ible Adapter Ċ import Ġeu . kan ade . t 4 chi y omi . R Ċ import Ġeu . kan ade . t 4 chi y omi . data . database . models . History Ċ import Ġeu . kan ade . t 4 chi y omi . data . database . models . M anga Ċ import Ġeu . kan ade . t 4 chi y omi . ui . base . controller . N ucleus Controller Ċ import Ġeu . kan ade . t 4 chi y omi . ui . base . controller . with Fade Transaction Ċ import Ġeu . kan ade . t 4 chi y omi . ui . manga . M anga Controller Ċ import Ġeu . kan ade . t 4 chi y omi . ui . reader . Reader Activity Ċ import Ġeu . kan ade . t 4 chi y omi . util . toast Ċ import Ġkotlinx . android . synt hetic . main . recent ly _ read _ controller .* Ċ Ċ /** Ċ Ġ* ĠFragment Ġthat Ġshows Ġrecently Ġread Ġm anga . Ċ Ġ* ĠUses ĠR . layout . fragment _ recent ly _ read . Ċ Ġ* ĠUI Ġrelated Ġactions Ġshould Ġbe Ġcalled Ġfrom Ġhere . Ċ Ġ*/ Ċ class ĠRecent ly Read Controller Ġ: ĠN ucleus Controller < Recent ly Read Presenter >(), ĊĠĠĠĠĠĠĠ ĠFlex ible Adapter . On Update Listener , ĊĠĠĠĠĠĠĠ ĠRecent ly Read Adapter . On Remove ClickListener , ĊĠĠĠĠĠĠĠ ĠRecent ly Read Adapter . On Resume ClickListener , ĊĠĠĠĠĠĠĠ ĠRecent ly Read Adapter . On Cover ClickListener , ĊĠĠĠĠĠĠĠ ĠRemove History Dialog . Listener Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdapter Ġcontaining Ġthe Ġrecent Ġm anga . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġadapter : ĠRecent ly Read Adapter ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġoverride Ġfun Ġget Title (): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġresources ?. getString ( R . string . label _ recent _ manga ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Presenter (): ĠRecent ly Read Presenter Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRecent ly Read Presenter () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinf late View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . recent ly _ read _ controller , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCalled Ġwhen Ġview Ġis Ġcreated ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġview Ġcreated Ġview ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġadapter ĊĠĠĠĠĠĠĠ Ġre cycler . layout Manager Ġ= ĠLinearLayoutManager ( view . context ) ĊĠĠĠĠĠĠĠ Ġadapter Ġ= ĠRecent ly Read Adapter ( this @ Recent ly Read Controller ) ĊĠĠĠĠĠĠĠ Ġre cycler . set Has Fixed Size ( true ) ĊĠĠĠĠĠĠĠ Ġre cycler . adapter Ġ= Ġadapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy View ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġadapter Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠPopulate Ġadapter Ġwith Ġchapter s ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġm anga History Ġlist Ġof Ġm anga Ġhistory ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġon Next M anga ( manga History : ĠList < Recent ly Read Item >) Ġ{ ĊĠĠĠĠĠĠĠ Ġadapter ?. update DataSet ( manga History ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonUpdate Empty View ( size : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( size Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġempty _ view . hide () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġempty _ view . show ( R . drawable . ic _ gl asses _ black _ 1 2 8 dp , ĠR . string . information _ no _ recent _ manga ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume Click ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= Ġactivity Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġ( manga , Ġchapter , Ġ_) Ġ= Ġadapter ?. getItem ( position )?. m ch Ġ?: Ġreturn ĊĊĠĠĠĠĠĠĠ Ġval Ġnext Chapter Ġ= Ġpresenter . getNext Chapter ( chapter , Ġm anga ) ĊĠĠĠĠĠĠĠ Ġif Ġ( next Chapter Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠReader Activity . new Intent ( activity , Ġm anga , Ġnext Chapter ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . toast ( R . string . no _ next _ chapter ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Remove Click ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġ( manga , Ġ_, Ġhistory ) Ġ= Ġadapter ?. getItem ( position )?. m ch Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ ĠRemove History Dialog ( this , Ġm anga , Ġhistory ). show Dialog ( router ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Cover Click ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġm anga Ġ= Ġadapter ?. getItem ( position )?. m ch ?. manga Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġrouter . push Controller ( M anga Controller ( manga ). with Fade Transaction ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġremove History ( manga : ĠM anga , Ġhistory : ĠHistory , Ġall : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( all ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠReset Ġlast Ġread Ġof Ġchapter Ġto Ġ 0 L ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter . removeAll From History ( manga . id !! ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠRemove Ġall Ġchapter s Ġbelong ing Ġto Ġm anga Ġfrom Ġlibrary ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter . remove From History ( history ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }