package Ġmy . d ze ko . foot app . presenter Ċ Ċ import Ġandroidx . navigation . Nav Controller Ċ import Ġmy . d ze ko . foot app . R Ċ import Ġmy . d ze ko . foot app . presenter . interfaces . Presenter Ċ import Ġmy . d ze ko . foot app . view . interfaces . Main View Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠMain Presenter Ġ@ Inject Ġconstructor () Ġ: ĠPres enter < Main View >() Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġm Is Back Pressed Ġ= Ġfalse ĊĊĠĠĠ Ġval Ġback Pressed Destination Changed Listener ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠNav Controller . On Destination Changed Listener Ġ{ Ġ_, Ġdestination , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠ Ġif Ġ( m Is Back Pressed ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Is Back Pressed Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen ( destination . id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . news List Fragment Ġ-> Ġview ?. set Bottom Na View Item ( R . id . news List Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . user News List Fragment Ġ-> Ġview ?. set Bottom Na View Item ( R . id . user News List Fragment ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġaction Bar Destination Changed Listener ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠNav Controller . On Destination Changed Listener Ġ{ Ġ_, Ġdestination , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠ Ġwhen ( destination . id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . splash Screen Fragment Ġ-> Ġview ?. hide ActionBar () ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . t aged News List Fragment Ġ-> Ġview ?. hide ActionBar () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġview ?. show ActionBar () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Bottom Nav View Visibility ( isVisible : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( isVisible ) Ġview ?. show Bottom Nav View () ĊĠĠĠĠĠĠĠ Ġelse Ġview ?. hide Bottom Nav View () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Back Pressed () Ġ{ ĊĠĠĠĠĠĠĠ Ġm Is Back Pressed Ġ= Ġtrue ĊĠĠĠ Ġ} Ċ Ċ }