package Ġcom . m umu . file browser . presenter . impl ĊĊ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Build Ċ import Ġandroid . support . v 4 . content . File Provider Ċ import Ġcom . google . common . event bus . Subscribe Ċ import Ġcom . google . common . io . Files Ċ import Ġcom . m umu . file browser . event bus . EventBus Ċ import Ġcom . m umu . file browser . event bus . events . Open Event Ċ import Ġcom . m umu . file browser . utils . Utils Ċ import Ġcom . m umu . file browser . views . IM ain View Ċ import Ġcom . m umu . file browser . presenter . IM ain Presenter Ċ import Ġcom . m umu . file browser . presenter . IP res enter Ċ import Ġjava . io . File Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġle on ardo Ġon Ġ 1 7 - 1 1 - 2 4 . Ċ Ġ*/ Ċ class ĠMain Presenter Impl Ġ: ĠI Main Presenter , ĠIP res enter Ġ{ ĊĠĠĠ Ġvar Ġm Main View : ĠI Main View ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠEvent Bus . getInstance (). register ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġ< IM ain View > Ġbind View ( view : ĠI Main View ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Main View Ġ= Ġif Ġ( view Ġ== Ġnull ) Ġnull Ġelse Ġview Ġas Ġcom . m umu . file browser . views . IM ain View ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Subscribe ĊĠĠĠ Ġfun Ġon Open Event ( event : ĠOpen Event ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( m Main View Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġpath Ġ= Ġevent . path ĊĠĠĠĠĠĠĠ Ġval Ġtype Ġ= ĠUtils . get MIME Type ( Files . getFile Extension ( path )) Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠ Ġintent . action Ġ= Ġandroid . content . Intent . ACTION _ VIEW ĊĠĠĠĠĠĠĠ Ġintent . flags Ġ= ĠIntent . FLAG _ ACTIVITY _ NEW _ TASK ĊĠĠĠĠĠĠĠ Ġval Ġuri : ĠUri ĊĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . N ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuri Ġ= ĠFile Provider . get Uri For File ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Main View !!. context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Main View !!. context . getBase PackageName () Ġ+ Ġ". file Provider ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFile ( path )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ GRANT _ READ _ URI _ PERMISSION ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuri Ġ= ĠUri . from File ( File ( path )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġintent . setData And Type ( uri , Ġtype ) ĊĠĠĠĠĠĠĠ Ġm Main View !!. context . startActivity ( intent ) ĊĠĠĠ Ġ} Ċ }