package Ġio . ag ora . open live . ui Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroidx . recyclerview . widget . RecyclerView . ViewHolder Ċ import Ġio . ag ora . open live . Constants Ċ import Ġio . ag ora . open live . R Ċ import Ġio . ag ora . rtc . video . Video Encoder Configuration . Video Dimensions Ċ import Ġjava . util .* Ċ Ċ class ĠResolution Adapter ( private Ġval ĠmContext : ĠContext , Ġvar Ġselected : ĠInt ) Ġ: ĠRecyclerView . Adapter < ViewHolder >() Ġ{ ĊĠĠĠ Ġprivate Ġval Ġm Items Ġ= ĠArrayList < Resolution Item >() ĊĠĠĠ Ġprivate Ġfun Ġinit Data ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= ĠConstants . VIDEO _ DIMENSION S . size ĊĠĠĠĠĠĠĠ Ġval Ġlabels Ġ= Ġcontext . resources . getString Array ( R . array . string _ array _ resolution s ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= ĠResolution Item ( labels [ i ], ĠConstants . VIDEO _ DIMENSION S [ i ]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Items . add ( item ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( mContext ). inflate ( R . layout . dimension _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠResolution Holder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġm Items [ position ] ĊĠĠĠĠĠĠĠ Ġval Ġcontent Ġ= Ġ( holder Ġas ĠResolution Holder ). resolution ĊĠĠĠĠĠĠĠ Ġcontent . text Ġ= Ġitem . label ĊĠĠĠĠĠĠĠ Ġcontent . setOnClickListener ( object Ġ: ĠView . OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Ġ= Ġposition ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġif Ġ( position Ġ== Ġselected ) Ġcontent . isSelected Ġ= Ġtrue Ġelse Ġcontent . isSelected Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm Items . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠResolution Holder Ġinternal Ġconstructor ( item View : ĠView ) Ġ: ĠViewHolder ( item View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresolution : ĠTextView ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresolution Ġ= ĠitemView . findViewById ( R . id . resolution ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġclass ĠResolution Item Ġinternal Ġconstructor ( var Ġlabel : ĠString , Ġvar Ġdimension : ĠVideo Dimensions ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinit Data ( mContext ) ĊĠĠĠ Ġ} Ċ }