package Ġar . com . wo lox . android technical inter view . adapters Ċ Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġar . com . wo lox . android technical inter view . holders . Gif Row ViewHolder Ċ import Ġar . com . wo lox . android technical inter view . R Ċ import Ġar . com . wo lox . android technical inter view . models . Gif Ċ import Ġar . com . wo lox . android technical inter view . present ers . Gif Row Presenter Ċ Ċ class ĠG if Recycler Adapter ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġpresenter : ĠG if Row Presenter , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlistener : ĠOn ItemClickListener Ċ ) Ġ: ĠRecyclerView . Adapter < Gif Row ViewHolder >() Ġ{ ĊĊĠĠĠ Ġinterface ĠOn ItemClickListener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġon Item Click ( url : ĠString ) ĊĠĠĠĠĠĠĠ Ġfun Ġon Item Long Click ( gif : ĠG if ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠG if Row ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠG if Row ViewHolder ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayoutInflater . from ( parent . context ). inflate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . layout . row _ gif , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparent , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġpresenter . get G ifs Count () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠG if Row ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġpresenter . on Bind Gif Row View At Position ( position , Ġholder ) ĊĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener ({ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Item Click ( presenter . getCurrent Gif ( position ). url ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġholder . item View . setOn Long ClickListener ({ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Item Long Click ( presenter . getCurrent Gif ( position )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ Ċ }