package Ġcom . alt am ir ano . fabric io . notifications Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . MenuItem Ċ import Ġandroid . view . View Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . recyclerview . widget . Item Touch Helper Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . alt am ir ano . fabric io . core . Ast About Activity Ċ import Ġcom . alt am ir ano . fabric io . notifications . adapters . Swipe Item Ċ import Ġcom . alt am ir ano . fabric io . notifications . database . Callback Sql Ċ import Ġcom . alt am ir ano . fabric io . notifications . database . Data Base Ċ import Ġcom . alt am ir ano . fabric io . notifications . database . Tr aces Adapter Ċ import Ġcom . alt am ir ano . fabric io . notifications . models . Track Notification Ċ import Ġkotlinx . android . synt hetic . main . activity _ notifications _ log .* Ċ Ċ class ĠNotifications Log Activity Ġ: ĠAppCompatActivity (), Callback Sql < List < Track Notification >> Ġ{ ĊĠĠĠ Ġvar Ġorigin : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġdata Base : ĠData Base ? Ġ= Ġnull ĊĠĠĠ Ġval Ġsource Ġ= ĠArrayList < Track Notification >() ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ notifications _ log ) ĊĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( this . toolbar ) ĊĊĠĠĠĠĠĠĠ Ġintent . extras ?. getString (" key _ origin ") ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . origin Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . toolbar . subtitle Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . support ActionBar ?. set Display Home As Up Enabled ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . support ActionBar ?. set Display Show Home Enabled ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . toolbar . set Navigation Icon ( R . drawable . ic _ go _ back ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . toolbar . set Navigation OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . on Back Pressed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġthis . data Base Ġ= ĠData Base . instance ( this ) ĊĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= ĠTr aces Adapter ( source , Ġorigin ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . register Adapter Data Observer ( object Ġ: ĠRecyclerView . Adapter Data Observer () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonChanged () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapply Empty View () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġval Ġswipe Item Ġ= Ġobject Ġ: ĠSw ipe Item ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Sw ip ed ( view Holder : ĠRecyclerView . ViewHolder , Ġdirection : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( direction Ġ== ĠItem Touch Helper . LEFT ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= Ġre cyclerView . adapter Ġas ĠTr aces Adapter ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsource . remove At ( view Holder . adapter Position ). let Ġ{ Ġtrace Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( origin . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Base ?. delete From Origin ( trace . origin ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Base ?. delete ( trace ._ id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapply Empty View () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . notify Item Removed ( view Holder . adapter Position ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠItem Touch Helper ( swipe Item ). attach To RecyclerView ( re cyclerView ) ĊĊĠĠĠĠĠĠĠ Ġdata Base ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this . origin . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . register Observer ( this ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġload Data ( it . get Tr aces By Group ( this . origin !! )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġapply Empty View () Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( source . isEmpty ()){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġempty Layout ?. visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġempty Layout ?. visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Result ( result : ĠList < Track Notification >) Ġ{ ĊĠĠĠĠĠĠĠ Ġload Data ( result ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġload Data ( list : ĠList < Track Notification >) Ġ{ ĊĠĠĠĠĠĠĠ Ġsource . clear () ĊĠĠĠĠĠĠĠ Ġsource . addAll ( list ) ĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter ?. notify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠĠĠĠĠ Ġdata Base ?. remove Observer ( this ) ĊĠĠĠ Ġ} Ċ Ċ }