package Ġme . nya _ n . notification notifier . views . dialogs Ċ Ċ import Ġandroid . app . Dialog Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AlertDialog Ċ import Ġandroidx . core . os . bundle Of Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġandroidx . fragment . app . set Fragment Result Ċ import Ġme . nya _ n . notification notifier . R Ċ Ċ class ĠPackage Visibility Dialog Ġ: ĠDialog Fragment () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġactivity ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAlertDialog . Builder ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setMessage ( R . string . require _ package _ visibility ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( R . string . ok ) Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Fragment Result ( TAG , Ġbundle Of ( KEY _ IS _ GRAN TED Ġto Ġtrue )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button ( R . string . ng ) Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Fragment Result ( TAG , Ġbundle Of ( KEY _ IS _ GRAN TED Ġto Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create () ĊĠĠĠĠĠĠĠ Ġ} Ġ?: Ġthrow ĠIllegalStateException (" Activity Ġcannot Ġbe Ġnull ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠTAG Ġ= Ġ" package _ visibility " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ IS _ GRAN TED Ġ= Ġ" is Granted " ĊĊĠĠĠĠĠĠĠ Ġfun Ġshow Only Once ( fm : ĠFragment Manager ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġf Ġ= Ġfm . find Fragment By Tag ( TAG ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( f Ġ!= Ġnull ) Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPackage Visibility Dialog () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show ( fm , ĠTAG ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }