package Ġque ved o . so ares . le andro . lib . view Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Intent Ċ import Ġandroid . support . v 4 . app . Fragment Ċ Ċ /** Ċ Ġ* Ġ@ author ĠLe andro ĠSo ares ĠQue ved o Ċ Ġ* Ġ@ author Ġle andro so ares que ved o @ gmail . com Ċ Ġ* Ġ@ since Ġ 2 0 1 9 - 0 7 - 1 2 Ċ Ġ*/ Ċ @ Suppress Lint (" Valid Fragment ") Ċ class ĠEvent Ste aler Fragment Ġ: ĠFragment Ġ{ ĊĊ ĉ private Ġvar Ġon Permissions Result Listener : Ġ(( Int , ĠArray < out ĠString >, ĠInt Array ) Ġ-> ĠUnit )? Ġ= Ġnull Ċ ĉ private Ġvar Ġon Activity Result Listener : Ġ(( Int , ĠInt , ĠIntent ?) Ġ-> ĠUnit )? Ġ= Ġnull ĊĊ ĉ constructor () ĊĊ ĉ constructor ( on Permissions Result Listener : Ġ( Int , ĠArray < out ĠString >, ĠInt Array ) Ġ-> ĠUnit , Ġon Activity Result Listener : Ġ( Int , ĠInt , ĠIntent ?) Ġ-> ĠUnit ) Ġ{ Ċĉ ĉ setup ( on Permissions Result Listener , Ġon Activity Result Listener ) Ċ ĉ } ĊĊ ĉ fun Ġsetup ( on Permissions Result Listener : Ġ( Int , ĠArray < out ĠString >, ĠInt Array ) Ġ-> ĠUnit , Ġon Activity Result Listener : Ġ( Int , ĠInt , ĠIntent ?) Ġ-> ĠUnit ) Ġ{ Ċĉ ĉ this . on Permissions Result Listener Ġ= Ġon Permissions Result Listener Ċĉ ĉ this . on Activity Result Listener Ġ= Ġon Activity Result Listener Ċ ĉ } ĊĊ ĉ override Ġfun Ġon Request Permissions Result ( request Code : ĠInt , Ġpermissions : ĠArray < out ĠString >, Ġgrant Results : ĠInt Array ) Ġ{ Ċĉ ĉ super . on Request Permissions Result ( request Code , Ġpermissions , Ġgrant Results ) Ċĉ ĉ on Permissions Result Listener ?. invoke ( request Code , Ġpermissions , Ġgrant Results ) Ċ ĉ } ĊĊ ĉ override Ġfun Ġon Activity Result ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ{ Ċĉ ĉ super . on Activity Result ( request Code , ĠresultCode , Ġdata ) Ċĉ ĉ on Activity Result Listener ?. invoke ( request Code , ĠresultCode , Ġdata ) Ċ ĉ } Ċ Ċ }