package Ġcom . e gor iku . lad y happy . ui . dialog Ċ Ċ import Ġandroid . app . Dialog Ċ import Ġandroid . content . DialogInterface Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . KeyEvent Ċ import Ġandroidx . appcompat . app . AppCompat Dialog Fragment Ċ import Ġcom . e gor iku . lad y happy . ui . R Ċ import Ġcom . google . android . material . dialog . Material AlertDialog Builder Ċ Ċ abstract Ġclass ĠBase Dialog Fragment Ġ: ĠAppCompat Dialog Fragment (), ĊĠĠĠĠĠĠĠ ĠDialog Interface . OnClickListener Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠMaterial AlertDialog Builder ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle ( dialog Title Res Id ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġon Build Dialog ( builder , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setOn Key Listener Ġ{ Ġ_, ĠkeyCode , Ġevent Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ setOn Key Listener ĠkeyCode Ġ== ĠKeyEvent . KEYCODE _ BACK Ġ&& Ġevent . action Ġ== ĠKeyEvent . ACTION _ UP ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( R . string . ok , Ġthis ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button ( R . string . cancel , Ġthis ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonClick ( dialog : ĠDialog Interface ?, Ġwhich : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( which ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDialog Interface . BUTTON _ POSITIVE Ġ-> Ġon Positive Button Click () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDialog Interface . BUTTON _ NEGATIVE Ġ-> Ġon Negative Button Click () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġval Ġdialog Title Res Id : ĠInt ĊĊĠĠĠ Ġabstract Ġfun Ġon Build Dialog ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder : ĠMaterial AlertDialog Builder , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠMaterial AlertDialog Builder ĊĊĠĠĠ Ġopen Ġfun Ġon Positive Button Click () Ġ= ĠUnit ĊĊĠĠĠ Ġopen Ġfun Ġon Negative Button Click () Ġ= ĠUnit Ċ } Ċ