package Ġjp . j ug g ler . sub way to oter . action čĊč Ċ import Ġandroidx . appcompat . app . AlertDialog č Ċ import Ġjp . j ug g ler . sub way to oter . Act Main č Ċ import Ġjp . j ug g ler . sub way to oter . App 1 č Ċ import Ġjp . j ug g ler . sub way to oter . Column č Ċ import Ġjp . j ug g ler . sub way to oter . R č Ċ import Ġjp . j ug g ler . sub way to oter . api . To ot ApiClient č Ċ import Ġjp . j ug g ler . sub way to oter . api . To ot Api Result č Ċ import Ġjp . j ug g ler . sub way to oter . api . To ot Task č Ċ import Ġjp . j ug g ler . sub way to oter . api . To ot Task Runner č Ċ import Ġjp . j ug g ler . sub way to oter . api . entity . To ot Notification č Ċ import Ġjp . j ug g ler . sub way to oter . table . Saved Account č Ċ import Ġjp . j ug g ler . util . show Toast č Ċ import Ġjp . j ug g ler . util . to Post č Ċ import Ġjp . j ug g ler . util . to RequestBody čĊč Ċ object ĠAction _ Notification Ġ{ čĊĉčĊ ĉ fun Ġdelete All ( čĊĉ ĉ activity Ġ: ĠAct Main , Ġtarget _ account Ġ: ĠSaved Account , Ġb Confirmed Ġ: ĠBoolean čĊ ĉ ) Ġ{ čĊĉ ĉ if (! Ġb Confirmed ) Ġ{ čĊĉĉ ĉ AlertDialog . Builder ( activity ) čĊĉĉĉ ĉ . setMessage ( R . string . confirm _ delete _ notification ) čĊĉĉĉ ĉ . set Negative Button ( R . string . cancel , Ġnull ) čĊĉĉĉ ĉ . set Positive Button ( R . string . ok ) Ġ{ Ġ_, Ġ_ Ġ-> čĊĉĉĉĉ ĉ delete All ( activity , Ġtarget _ account , Ġtrue ) čĊĉĉĉ ĉ } čĊĉĉĉ ĉ . show () čĊĉĉ ĉ return čĊĉ ĉ } čĊĉ ĉ To ot Task Runner ( activity ). run ( target _ account , Ġobject Ġ: ĠT oot Task Ġ{ čĊĉĉ ĉ override Ġfun Ġbackground ( client Ġ: ĠT oot ApiClient ) Ġ: ĠT oot Api Result ? Ġ{ čĊĉĉĉ ĉ // Ġ ç©º ãĥĩãĥ¼ãĤ¿ ãĤĴ éĢģ ãĤĭ čĊĉĉĉ ĉ return Ġclient . request ( čĊĉĉĉĉ ĉ "/ api / v 1 / notifications / clear ", čĊĉĉĉĉ ĉ "" . to RequestBody (). to Post () čĊĉĉĉ ĉ ) čĊĉĉ ĉ } čĊĉĉĉčĊĉĉ ĉ override Ġfun Ġhandle Result ( result Ġ: ĠT oot Api Result ?) Ġ{ čĊĉĉĉ ĉ if ( result Ġ== Ġnull ) Ġreturn Ġ Ġ// Ġcancelled . čĊĉĉĉĉčĊĉĉĉ ĉ if ( result . jsonObject Ġ!= Ġnull ) Ġ{ čĊĉĉĉĉ ĉ // Ġok . Ġapi Ġhave Ġreturn Ġempty Ġobject . čĊĉĉĉĉ ĉ for ( column Ġin ĠApp 1 . get AppState ( activity ). column _ list ) Ġ{ čĊĉĉĉĉĉ ĉ if ( column . is Notification Column Ġ&& Ġcolumn . access _ info . acct Ġ== Ġtarget _ account . acct ) Ġ{ čĊĉĉĉĉĉĉ ĉ column . remove Notifications () čĊĉĉĉĉĉ ĉ } čĊĉĉĉĉ ĉ } čĊĉĉĉĉ ĉ show Toast ( activity , Ġfalse , ĠR . string . delete _ succeeded ) čĊĉĉĉ ĉ } Ġelse Ġ{ čĊĉĉĉĉ ĉ show Toast ( activity , Ġfalse , Ġresult . error ) čĊĉĉĉ ĉ } čĊĉĉĉĉ čĊĉĉ ĉ } čĊĉ ĉ }) čĊ ĉ } čĊĉčĊ ĉ fun Ġdelete One ( čĊĉ ĉ activity Ġ: ĠAct Main , Ġaccess _ info Ġ: ĠSaved Account , Ġnotification Ġ: ĠT oot Notification čĊ ĉ ) Ġ{ čĊĉ ĉ To ot Task Runner ( activity ). run ( access _ info , Ġobject Ġ: ĠT oot Task Ġ{ čĊĉĉ ĉ override Ġfun Ġbackground ( client Ġ: ĠT oot ApiClient ) Ġ: ĠT oot Api Result ? Ġ{ čĊĉĉĉ ĉ return Ġclient . request ( čĊĉĉĉĉ ĉ "/ api / v 1 / notifications / dismiss ", čĊĉĉĉĉ ĉ " id =${ notification . id }". to RequestBody (). to Post () čĊĉĉĉ ĉ ) čĊĉĉ ĉ } čĊĉĉĉčĊĉĉ ĉ override Ġfun Ġhandle Result ( result Ġ: ĠT oot Api Result ?) Ġ{ čĊĉĉĉ ĉ if ( result Ġ== Ġnull ) Ġreturn Ġ// Ġcancelled . čĊĉĉĉĉčĊĉĉĉ ĉ if ( result . jsonObject Ġ!= Ġnull ) Ġ{ čĊĉĉĉĉ ĉ // Ġ æĪĲåĬŁ ãģĹãģŁ ãĤī ç©º ãĤª ãĥĸãĤ¸ãĤ§ãĤ¯ãĥĪ ãģĮ è¿Ķ ãģķãĤĮãĤĭ čĊĉĉĉĉ ĉ for ( column Ġin ĠApp 1 . get AppState ( activity ). column _ list ) Ġ{ čĊĉĉĉĉĉ ĉ column . remove Notification One ( access _ info , Ġnotification ) čĊĉĉĉĉ ĉ } čĊĉĉĉĉ ĉ show Toast ( activity , Ġtrue , ĠR . string . delete _ succeeded ) čĊĉĉĉ ĉ } Ġelse Ġ{ čĊĉĉĉĉ ĉ show Toast ( activity , Ġtrue , Ġresult . error ) čĊĉĉĉ ĉ } čĊĉĉĉĉ čĊĉĉ ĉ } čĊĉ ĉ }) čĊ ĉ } čĊĉč Ċ } čĊ