package Ġcom . code path . apps . simp let weet Ċ Ċ import Ġandroid . app . AlertDialog Ċ import Ġandroid . app . Dialog Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . DialogInterface Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . preference . Preference Manager Ċ import Ġandroid . util . Log Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ Ċ class ĠTweet Compose Dialog Fragment Ġ: ĠDialog Fragment () Ġ{ ĊĠĠĠ Ġ// Ġthis Ġis Ġcalled Ġwhen Ġeither Ġthe Ġsave Ġor Ġdiscard Ġhappens ĊĠĠ Ġvar Ġcallback Ġ: ĠOn Dialog Action ? Ġ= Ġnull ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠTAG Ġ= Ġ" Tweet Compose Fragment " ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( title : ĠString , Ġon Action Callback Ġ: ĠOn Dialog Action ?) Ġ: ĠTweet Compose Dialog Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĠTweet Compose Dialog Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString (" title ", Ġtitle ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . callback Ġ= Ġon Action Callback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . arguments Ġ= Ġbundle ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠOn Dialog Action Ġ{ ĊĠĠĠĠĠĠĠ Ġabstract Ġfun ĠonSubmit Callback () ĊĠĠĠĠĠĠĠ Ġabstract Ġfun Ġon Cancel Callback () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtitle Ġ= Ġarguments ?. getString (" title ") ĊĠĠĠĠĠĠĠ Ġval Ġalert Dialog Builder Ġ= ĠAlertDialog . Builder ( activity ) ĊĠĠĠĠĠĠĠ Ġalert Dialog Builder . setTitle (" Save ĠDraft ?") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setMessage ( title ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button (" Save ", Ġobject Ġ: ĠDialog Interface . OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( dialog : ĠDialog Interface ?, Ġwhich : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback ?. on Submit Callback () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button (" Discard ", Ġobject Ġ: ĠDialog Interface . OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( dialog : ĠDialog Interface ?, Ġwhich : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback ?. on Cancel Callback () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġalert Dialog Builder . create () ĊĠĠĠ Ġ} Ċ }