package Ġcom . mur ano 5 0 0 k . dog bre eds Ċ Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . core . os . bundle Of Ċ import Ġandroidx . databinding . Data Binding Util Ċ import Ġandroidx . navigation . Navigation Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġandroidx . recyclerview . widget . ListAdapter Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . mur ano 5 0 0 k . dog bre eds . databinding . B reed Item With Label Binding Ċ import Ġcom . mur ano 5 0 0 k . dog bre eds . fragment . B reed Images Fragment Ċ import Ġcom . mur ano 5 0 0 k . dog bre eds . model . Dog B reed Ċ import Ġcom . mur ano 5 0 0 k . dog bre eds . utils . Dog Diff Callback Ċ Ċ class ĠBre edList Adapter Ġ: ĠList Adapter < Dog B reed , Bre edList Adapter . Diff Util Dog B reed ViewHolder > Ġ( ĊĠĠĠ ĠDog Diff Callback () Ċ ){ ĊĊĊĊĠĠĠ Ġclass ĠDiff Util Dog B reed ViewHolder ( val Ġbinding : ĠB reed Item With Label Binding ) Ġ: ĊĠĠĠĠĠĠĠ ĠRecyclerView . ViewHolder ( binding . root ) ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠDiff Util Dog B reed ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . binding . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdog B reed Ġ= ĠgetItem ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexecute Pending Bindings () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠDiff Util Dog B reed ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠData Binding Util . inflate < B reed Item With Label Binding >( in flater , ĠR . layout . bre ed _ item _ with _ label , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠDiff Util Dog B reed ViewHolder ( binding ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . root . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġposition Ġ= Ġadapter Position . take If Ġ{ Ġit Ġ!= ĠRecyclerView . NO _ POSITION Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġreturn @ setOnClickListener ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdog B reed Ġ= ĠgetItem ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNavigation . find Nav Controller ( item View ). navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . action _ list Fragment _ to _ bre ed Images Fragment , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbundle Of ( B reed Images Fragment . ARG _ DOG _ BRE ED Ġto Ġdog B reed ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }