package Ġjp . co . sor am its u . common . utils Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . annotation . Color Int Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġkotlinx . coroutines . Coroutine Scope Ċ import Ġkotlinx . coroutines . Job Ċ import Ġkotlinx . coroutines . Supervisor Job Ċ import Ġjava . net . URL Encoder Ċ Ċ fun ĠActivity . show Toast ( msg : ĠString , Ġduration : ĠInt Ġ= ĠToast . LENGTH _ LONG ) Ġ{ ĊĠĠĠ ĠToast . makeText ( this , Ġmsg , Ġduration ). show () Ċ } Ċ Ċ fun Ġ< T > ĠMutable LiveData < T >. setValue If New ( newValue : ĠT ) Ġ{ ĊĠĠĠ Ġif Ġ( this . value Ġ!= ĠnewValue ) Ġvalue Ġ= ĠnewValue Ċ } Ċ Ċ fun ĠView . make Visible () Ġ{ ĊĠĠĠ Ġthis . visibility Ġ= ĠView . VISIBLE Ċ } Ċ Ċ fun ĠView . make In visible () Ġ{ ĊĠĠĠ Ġthis . visibility Ġ= ĠView . IN VISIBLE Ċ } Ċ Ċ fun ĠView . make G one () Ġ{ ĊĠĠĠ Ġthis . visibility Ġ= ĠView . GONE Ċ } Ċ Ċ fun ĠFragment . hide Keyboard () Ġ{ ĊĠĠĠ Ġrequire Activity (). current Focus ?. hide Soft Keyboard () Ċ } Ċ Ċ fun ĠFragment . show Browser ( link : ĠString ) Ġ= Ġrequire Context (). show Browser ( link ) Ċ Ċ fun ĠContext . show Browser ( link : ĠString ) Ġ{ ĊĠĠĠ Ġval Ġintent Ġ= ĠIntent ( Intent . ACTION _ VIEW ). apply Ġ{ Ġdata Ġ= ĠUri . parse ( link ) Ġ} ĊĠĠĠ ĠstartActivity ( intent ) Ċ } Ċ Ċ fun ĠContext . create Send Email Intent ( target Email : ĠString , Ġtitle : ĠString ) Ġ{ ĊĠĠĠ Ġval Ġemail Intent Ġ= ĠIntent ( Intent . ACTION _ SEND TO ). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġput Extra ( Intent . EXTRA _ EMAIL , Ġtarget Email ) ĊĠĠĠĠĠĠĠ Ġtype Ġ= Ġ" message / rfc 8 2 2 " ĊĠĠĠĠĠĠĠ Ġdata Ġ= ĠUri . parse (" mailto :$ target Email ") ĊĠĠĠ Ġ} ĊĠĠĠ ĠstartActivity ( Intent . create Chooser ( email Intent , Ġtitle )) Ċ } Ċ Ċ fun Ġ@ receiver : Color Int ĠInt . to Hex Color (): ĠString Ġ{ ĊĠĠĠ Ġval Ġwithout Alpha Ġ= Ġ 0 x FFFFFF Ġand Ġthis ĊĊĠĠĠ Ġreturn Ġ"# % 0 6 X ". format ( without Alpha ) Ċ } Ċ Ċ fun ĠString . url Encoded () Ġ= ĠURL Encoder . encode ( this , ĠChar sets . UTF _ 8 . displayName ()) Ċ Ċ fun ĠCor outine Scope . child Scope ( supervised : ĠBoolean Ġ= Ġtrue ): ĠCor outine Scope Ġ{ ĊĠĠĠ Ġval Ġparent Job Ġ= Ġcoroutine Context [ Job ] ĊĊĠĠĠ Ġval Ġjob Ġ= Ġif Ġ( supervised ) ĠSuper visor Job ( parent Ġ= Ġparent Job ) Ġelse ĠJob ( parent Ġ= Ġparent Job ) ĊĊĠĠĠ Ġreturn ĠCor outine Scope ( coroutine Context Ġ+ Ġjob ) Ċ } Ċ Ċ fun ĠInt . as Boolean () Ġ= Ġthis Ġ!= Ġ 0 Ċ