package Ġme . v icky ch ij w ani . kot link o ans . util Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . support . design . widget . Bottom Sheet Behavior Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . view . View Ċ import Ġandroid . view . View Tree Observer Ċ Ċ fun Ġbrowse ( activity : ĠActivity , Ġurl : ĠString ) Ġ{ ĊĠĠĠ Ġactivity . startActivity ( Intent ( Intent . ACTION _ VIEW , ĠUri . parse ( url ))) Ċ } Ċ Ċ fun Ġbrowse ( fragment : ĠFragment , Ġurl : ĠString ) Ġ{ ĊĠĠĠ Ġfragment . startActivity ( Intent ( Intent . ACTION _ VIEW , ĠUri . parse ( url ))) Ċ } Ċ Ċ fun ĠBottom Sheet Behavior <* >. is Expanded () Ġ= Ġ( state Ġ== ĠBottom Sheet Behavior . STATE _ EXP AN DED ) Ċ fun ĠBottom Sheet Behavior <* >. is Collapsed () Ġ= Ġ( state Ġ== ĠBottom Sheet Behavior . STATE _ COLL AP SED ) Ċ fun ĠBottom Sheet Behavior <* >. expand () Ġ{ Ġstate Ġ= ĠBottom Sheet Behavior . STATE _ EXP AN DED Ġ} Ċ fun ĠBottom Sheet Behavior <* >. collapse () Ġ{ Ġstate Ġ= ĠBottom Sheet Behavior . STATE _ COLL AP SED Ġ} Ċ Ċ fun ĠBottom Sheet Behavior <* >. toggle State () Ġ{ ĊĠĠĠ Ġif Ġ( this . state Ġ== ĠBottom Sheet Behavior . STATE _ COLL AP SED ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . state Ġ= ĠBottom Sheet Behavior . STATE _ EXP AN DED ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . state Ġ= ĠBottom Sheet Behavior . STATE _ COLL AP SED ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠView . show () Ġ{ Ġvisibility Ġ= ĠView . VISIBLE Ġ} Ċ fun ĠView . hide () Ġ{ Ġvisibility Ġ= ĠView . GONE Ġ} Ċ fun ĠView . invisible () Ġ{ Ġvisibility Ġ= ĠView . IN VISIBLE Ġ} Ċ val ĠView . isVisible : ĠBoolean ĊĠĠĠ Ġget () Ġ= Ġvisibility Ġ== ĠView . VISIBLE Ċ Ċ // Ġcour tes y Ġhttps :// ant onio le iva . com / kotlin - ong lob all ayout listener / Ċ inline Ġfun Ġ< T : ĠView > ĠT . waitFor Measurement ( cross inline Ġcallback : ĠT . () Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġview Tree Observer . add On Global Layout Listener ( object Ġ: ĠView Tree Observer . On Global Layout Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Global Layout () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( meas ured Width Ġ> Ġ 0 Ġ&& Ġmeasured Height Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview Tree Observer . remove On Global Layout Listener ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ}) Ċ } Ċ Ċ fun Ġget Screen Width ( context : ĠContext ): ĠInt Ġ{ ĊĠĠĠ Ġreturn Ġcontext . resources . display Metrics . width Pixels Ċ } Ċ Ċ fun Ġget Screen Height ( context : ĠContext ): ĠInt Ġ{ ĊĠĠĠ Ġreturn Ġcontext . resources . display Metrics . height Pixels Ċ } Ċ