package Ġcom . zu ha ib ah mad . flix view . adapters Ċ Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . drawable . Color Drawable Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . zu ha ib ah mad . flix view . R Ċ import Ġcom . zu ha ib ah mad . flix view . data . Content Ċ import Ġcom . zu ha ib ah mad . flix view . adapters . Content Adapter . Content ViewHolder Ċ import Ġcom . zu ha ib ah mad . flix view . views . Custom Horizontal GridView Ċ import Ġkotlinx . android . synt hetic . main . list _ item _ content . view .* Ċ Ċ class ĠContent Adapter ( ĊĠĠĠ Ġprivate Ġval Ġitems : ĠMutable List < Content > Ġ= Ġmutable ListOf (), ĊĠĠĠ Ġprivate Ġval Ġitem Width : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġprivate Ġval Ġitem Height : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġprivate Ġval Ġtitle BackgroundColor : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġprivate Ġval Ġtitle TextColor : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġprivate Ġval Ġtitle Text Size : ĠFloat Ġ= Ġ 0 f Ċ ) Ġ: ĠRecyclerView . Adapter < Content ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġre cyclerView : ĠCustom Horizontal GridView ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . e (" Content Adapter ", Ġ" Title ( bg : Ġ$ title BackgroundColor , ĠtextColor : Ġ$ title TextColor , Ġtext Size : Ġ$ title Text Size )") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Attached To RecyclerView ( re cyclerView : ĠRecyclerView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attached To RecyclerView ( re cyclerView ) ĊĠĠĠĠĠĠĠ Ġthis . re cyclerView Ġ= Ġre cyclerView Ġas ĠCustom Horizontal GridView ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Detached From RecyclerView ( re cyclerView : ĠRecyclerView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Detached From RecyclerView ( re cyclerView ) ĊĠĠĠĠĠĠĠ Ġthis . re cyclerView Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠContent ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . list _ item _ content , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġif Ġ( item Width Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . layout Params . width Ġ= Ġitem Width ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( item Height Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . layout Params . height Ġ= Ġitem Height ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠContent ViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠContent ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . bind ( getItem ( position )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġ 1 0 0 ĊĊĠĠĠ Ġfun ĠgetItem ( index : ĠInt ) Ġ= Ġitems [ index Ġ% Ġitems . size ] ĊĊĠĠĠ Ġinner Ġclass ĠContent ViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind ( item : ĠContent ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tv Title . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġitem . label ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( title BackgroundColor Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Ġ= ĠColor Drawable ( title BackgroundColor ); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( title TextColor Ġ!= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset TextColor ( title TextColor ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( title Text Size Ġ!= Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġtitle Text Size ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( item View . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. as Bitmap () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( item . imageUrl ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( item View . iv Thumbnail ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }