package Ġeu . cor vus . ess entials . core . mvc Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . support . v 7 . widget . Toolbar Ċ import Ġeu . cor vus . ess entials . core . Activity Result Ċ import Ġeu . cor vus . ess entials . core . Dispatcher Ċ import Ġeu . cor vus . ess entials . core . Request Permission Result Ċ import Ġeu . cor vus . ess entials . core . debug Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠV lad ĠC az ac u Ġon Ġ 1 0 / 4 / 2 0 1 6 . Ċ Ġ*/ Ċ abstract Ġclass ĠBase Activity Ġ: ĠAppCompatActivity (), ĠModel View Ġ{ ĊĊĠĠĠ Ġopen Ġval Ġcontroller : ĠBaseController < out ĠBase Activity >? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġinitialize ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġcontroller ?. attach ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġinitialize ( savedInstanceState : ĠBundle ?) ĊĊĠĠĠ Ġoverride Ġfun ĠstartActivity For Result ( intent : ĠIntent , Ġrequest Code : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" request Code ", Ġrequest Code ) ĊĊĠĠĠĠĠĠĠ Ġsuper . startActivity For Result ( intent , Ġrequest Code ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Result ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= Ġdata ?. apply Ġ{ Ġaction Ġ= ĠActivity Result Ġ} Ġ?: ĠIntent ( Activity Result ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" request Code ", Ġrequest Code ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" result Code ", ĠresultCode ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( data Ġ!= Ġnull ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra (" intent - data ", Ġdata . data ) Ġ// Ġits Ġlike Ġthis Ġsince Ġthe Ġuri Ġstops Ġthe Ġlocal Ġbroadcast ing , Ġfor Ġsome Ġreason ĠTODO Ġinvestigate Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra (" intent - type ", Ġdata . type ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . data Ġ= Ġdata . data ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . type Ġ= Ġdata . type ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( data . extras Ġ!= Ġnull Ġ&& Ġ! data . extras . isEmpty ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . put Extras ( data . extras ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠDispatcher . send Broadcast ( intent ) ĊĠĠĠĠĠĠĠ Ġdebug (" Activity ĠResult Ġ$ intent ") ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Result ( request Code , ĠresultCode , Ġdata ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Request Permissions Result ( request Code : ĠInt , Ġpermissions : ĠArray < String >, Ġgrant Results : ĠInt Array ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( Request Permission Result ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" request Code ", Ġrequest Code ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" permissions ", Ġpermissions ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" grant Results ", Ġgrant Results ) ĊĊĠĠĠĠĠĠĠ ĠDispatcher . send Broadcast ( intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Support ActionBar ( toolbar : ĠToolbar ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . set Support ActionBar ( toolbar ) ĊĊĠĠĠĠĠĠĠ Ġtoolbar ?. set Navigation OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Back Pressed () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĊĠĠĠĠĠĠĠ Ġcontroller ?. on Restore () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ ĠonStart () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĊĠĠĠĠĠĠĠ Ġcontroller ?. det t ach () ĊĠĠĠ Ġ} Ċ Ċ } Ċ