package Ġcom . ku _ stacks . ku _ ring . ui . edit _ subscription . adapter Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġandroidx . recyclerview . widget . ListAdapter Ċ import Ġcom . ku _ stacks . ku _ ring . R Ċ import Ġcom . ku _ stacks . ku _ ring . databinding . Item Subscription Binding Ċ import Ġcom . ku _ stacks . ku _ ring . ui . edit _ subscription . view holder . Subscribe ViewHolder Ċ Ċ class ĠSubscribe Adapter ( ĊĠĠĠ Ġprivate Ġval Ġitem Click : Ġ( String ) Ġ-> ĠUnit , Ċ ) Ġ: ĠList Adapter < String , ĠSubscribe ViewHolder >( ĊĠĠĠ ĠSubscription Diff Callback Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠSubscribe ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . item _ subscription , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĠItem Subscription Binding . bind ( view ) ĊĠĠĠĠĠĠĠ Ġreturn ĠSubscribe ViewHolder ( binding , Ġitem Click ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠSubscribe ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ ĠgetItem ( position )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . bind ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠSubscription Diff Callback Ġ: ĠDiff Util . Item Callback < String >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠString , Ġnew Item : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item Ġ== Ġnew Item ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠString , Ġnew Item : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item Ġ== Ġnew Item ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }