package Ġcom . chr yn an . video . ui . adapter . channel Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . chr yn an . aaaa h . Adapter Ċ import Ġcom . chr yn an . aaaa h . Adapter ViewType Ċ import Ġcom . chr yn an . aaaa h . ViewType Ċ import Ġcom . chr yn an . aaaa h . from Ċ import Ġcom . chr yn an . video . common . coroutine . Coroutine Dispatch ers Ċ import Ġcom . chr yn an . video . R Ċ import Ġcom . chr yn an . video . di . qual ifier . Activity Context Qualifier Ċ import Ġcom . chr yn an . video . ui . adapter . core .* Ċ import Ġcom . chr yn an . video . ui . adapter . factory . Adapter Factory Ċ import Ġcom . chr yn an . video . ui . adapter . factory . Channel Video ListAdapter Factory Ċ import Ġcom . chr yn an . video . utils . Activity Context Ċ import Ġcom . chr yn an . video . presentation . view model . Channel Video List ViewModel Ċ import Ġkotlinx . android . synt hetic . main . adapter _ channel _ video _ list . view .* Ċ import Ġjavax . inject . Inject Ċ Ċ @ Adapter Ċ class ĠChannel Video ListAdapter Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġdispatch ers : ĠCor outine Dispatch ers , ĊĠĠĠ Ġprivate Ġval Ġlist Item Adapter : ĠChannel Video ListItem Adapter , ĊĠĠĠ Ġ@ Activity Context Qualifier Ġprivate Ġval Ġcontext : ĠActivity Context Ċ ) Ġ: ĠBase Nested ListAdapter < Channel Video List ViewModel >( dispatch ers ) Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġview Type Ġ= ĠAdapter ViewType . from ( Channel Video ListAdapter :: class . java ) ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New Adapter Factory (): ĠAdapter Factory Ġ= ĊĠĠĠĠĠĠĠ ĠChannel Video ListAdapter Factory ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcoroutine Dispatch ers Ġ= Ġdispatch ers , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist Item Adapter Ġ= Ġlist Item Adapter , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun Ġon Handles Item ( item : ĠAny ) Ġ= Ġitem Ġis ĠChannel Video List ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġparent : ĠViewGroup , ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġview Type : ĠView Type ĊĠĠĠ Ġ): ĠView Ġ= Ġinflater . inflate ( R . layout . adapter _ channel _ video _ list , Ġparent , Ġfalse ) ĊĊĠĠĠ Ġoverride Ġfun ĠView . on Bind Item ( item : ĠChannel Video List ViewModel , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġadapter Channel Video List Header TextView ?. text Ġ= Ġitem . list Name ĊĊĠĠĠĠĠĠĠ Ġbind Nested Items ( adapter Channel Video List RecyclerView , Ġitem . items ) ĊĠĠĠ Ġ} Ċ }