package Ġcom . github . ap og nu . ot ter . activities Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . github . ap og nu . ot ter . R Ċ import Ġkotlinx . android . synt hetic . main . activity _ lic ences .* Ċ import Ġkotlinx . android . synt hetic . main . row _ licence . view .* Ċ Ċ class ĠLic ences Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĠ Ġdata Ġclass ĠLicence ( val Ġname : ĠString , Ġval Ġlicence : ĠString , Ġval Ġurl : ĠString ) ĊĊĠ Ġinterface ĠOn Lic ence ClickListener Ġ{ ĊĠĠĠ Ġfun ĠonClick ( url : ĠString ) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠ ĠsetContentView ( R . layout . activity _ lic ences ) ĊĊĠĠĠ ĠLic ences Adapter ( On Lic ence Click ()). also Ġ{ ĊĠĠĠĠĠ Ġlic ences . layout Manager Ġ= ĠLinearLayoutManager ( this ) ĊĠĠĠĠĠ Ġlic ences . adapter Ġ= Ġit ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġprivate Ġinner Ġclass ĠLic ences Adapter ( val Ġlistener : ĠOn Lic ence ClickListener ) Ġ: ĠRecyclerView . Adapter < Lic ences Adapter . ViewHolder >() Ġ{ ĊĠĠĠ Ġval Ġlic ences Ġ= ĠlistOf ( ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Exo Player ", ĊĠĠĠĠĠĠĠ Ġ" Apache ĠLicense Ġ 2 . 0 ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / google / Exo Player / blob / release - v 2 / LICENSE " ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Exo Player - Extensions ", ĊĠĠĠĠĠĠĠ Ġ" Apache ĠLicense Ġ 2 . 0 ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / Pa ul Wo itas che k / Exo Player - Extensions / blob / master / LICENSE " ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Fuel ", ĊĠĠĠĠĠĠĠ Ġ" MIT ĠLicense ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / kit tin un f / fuel / blob / master / LICENSE . md " ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Gson ", ĊĠĠĠĠĠĠĠ Ġ" Apache ĠLicense Ġ 2 . 0 ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / google / gson / blob / master / LICENSE " ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Pic asso ", ĊĠĠĠĠĠĠĠ Ġ" Apache ĠLicense Ġ 2 . 0 ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / square / pic asso / blob / master / LICENSE . txt " ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Pic asso ĠTransform ations ", ĊĠĠĠĠĠĠĠ Ġ" Apache ĠLicense Ġ 2 . 0 ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / was ab eef / pic asso - transform ations / blob / master / LICENSE " ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ ĠLicence ( ĊĠĠĠĠĠĠĠ Ġ" Power Preference ", ĊĠĠĠĠĠĠĠ Ġ" Apache ĠLicense Ġ 2 . 0 ", ĊĠĠĠĠĠĠĠ Ġ" https :// github . com / Ali As adi / Power Preference / blob / master / LICENSE " ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġlic ences . size ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( this @ Lic ences Activity ). inflate ( R . layout . row _ licence , Ġparent , Ġfalse ) ĊĊĠĠĠĠĠ Ġreturn ĠViewHolder ( view ). also Ġ{ ĊĠĠĠĠĠĠĠ Ġview . setOnClickListener ( it ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠ Ġval Ġitem Ġ= Ġlic ences [ position ] ĊĊĠĠĠĠĠ Ġholder . name . text Ġ= Ġitem . name ĊĠĠĠĠĠ Ġholder . licence . text Ġ= Ġitem . licence ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ), ĠView . OnClickListener Ġ{ ĊĠĠĠĠĠ Ġval Ġname Ġ= Ġview . name ĊĠĠĠĠĠ Ġval Ġlicence Ġ= Ġview . licence ĊĊĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( view : ĠView ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġlistener . onClick ( lic ences [ layout Position ]. url ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġinner Ġclass ĠOn Lic ence Click Ġ: ĠOn Lic ence ClickListener Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠonClick ( url : ĠString ) Ġ{ ĊĠĠĠĠĠ ĠIntent ( Intent . ACTION _ VIEW , ĠUri . parse ( url )). apply Ġ{ ĊĠĠĠĠĠĠĠ ĠstartActivity ( this ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ }