/* Ċ Ġ* ĠThe ĠMIT ĠLicense Ġ( MIT ) Ċ Ġ* ĠNote Stream , Ġandroid Ġmusic Ġplayer Ġand Ġstream er Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 8 ĠT in ĠÅ ł v age lj Ġ< tin . sv age lj . email @ gmail . com > Ġa . k . a . ĠCa elli an Ċ Ġ* Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ċ Ġ* Ġcopy Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ċ Ġ* Ġto Ġdeal Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ċ Ġ* Ġthe Ġrights Ġto Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ċ Ġ* Ġand / or Ġsell Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe Ċ Ġ* ĠSoftware Ġis Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ċ Ġ* Ġall Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ Ġ* ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ Ġ* ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL Ċ Ġ* ĠTHE ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER Ċ Ġ* ĠLIABILITY , ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING Ċ Ġ* ĠFROM , ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER Ċ Ġ* ĠDEALINGS ĠIN ĠTHE ĠSOFTWARE . Ċ Ġ*/ Ċ Ċ package Ġhr . ca elli an . not est ream . gui . fragments Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġhr . ca elli an . not est ream . R Ċ import Ġhr . ca elli an . not est ream . data . play able . Play able Source Ċ import Ġhr . ca elli an . not est ream . data . play able . Play able YouTube Ċ import Ġhr . ca elli an . not est ream . data . playlist . Playlist Ċ import Ġhr . ca elli an . not est ream . data . playlist . Playlist YouTube Ċ import Ġhr . ca elli an . not est ream . data . youtube . Thumbnail Decoder Ċ import Ġhr . ca elli an . not est ream . gui . Activity Playlist Ċ import Ġhr . ca elli an . not est ream . lib . Constants Ċ import Ġjava . util . ArrayList Ċ Ċ class ĠFragment Tile YouTube Ġ: ĠFragment Playlist Tile () Ġ{ ĊĊĠĠĠ Ġlateinit Ġvar Ġid : ĠString ĊĠĠĠ Ġlateinit Ġvar Ġlabel : ĠString ĊĠĠĠ Ġlateinit Ġvar Ġauthor : ĠString ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview : ĠView Ġ= Ġinflater . inflate ( R . layout . fragment _ tile , Ġcontainer , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġid Ġ= Ġarguments . getString ( Constants . EXTRA _ PLAY LIST ) !! ĊĠĠĠĠĠĠĠ Ġlabel Ġ= Ġarguments . getString ( Constants . EXTRA _ LABEL , Ġ"") ĊĠĠĠĠĠĠĠ Ġauthor Ġ= Ġarguments . getString ( Constants . EXTRA _ LABEL _ DESCRIPTION , Ġ"") ĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġarguments . getString ArrayList ( Constants . EXTRA _ DATA ) !! ĊĊĠĠĠĠĠĠĠ Ġval Ġbackground Ġ= Ġarguments . getString ( Constants . EXTRA _ BACKGROUND ) !! ĊĊĠĠĠĠĠĠĠ Ġval Ġdecoder Ġ= ĠThumb nail Decoder ({ result Ġ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . findViewById < ImageView >( R . id . image Tile Background )?. setImage Bitmap ( result ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġdecoder . execute ( background ) ĊĊĠĠĠĠĠĠĠ Ġview . findViewById < ImageView >( R . id . image Tile Icon )?. visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġview . findViewById < TextView >( R . id . label Tile Title )?. text Ġ= Ġlabel ĊĠĠĠĠĠĠĠ Ġview . findViewById < TextView >( R . id . label Song Author )?. text Ġ= Ġauthor ĊĊĠĠĠĠĠĠĠ Ġview . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Listener ( data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠonClick Listener ( data : ĠArrayList < String >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( view . context , ĠActivity Playlist :: class . java ) ĊĊĠĠĠĠĠĠĠ Ġval Ġplay ables Ġ= Ġdata . map Ġ{ ĠPlay able YouTube . get ( it ) Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġpl Ġ= ĠPlaylist . get ("${ Play able Source . Y OUT UBE . id }- $ id ", Ġauthor , Ġlabel , Ġ 5 1 2 , Ġplay ables ) ĊĊĠĠĠĠĠĠĠ Ġintent . putExtra ( Constants . EXTRA _ PLAY LIST , Ġpl . id ) ĊĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( playlist : ĠPlaylist YouTube ): ĠFragment Tile YouTube Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĠFragment Tile YouTube () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . put Boolean ( Constants . EXTRA _ TI LES , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ( Constants . EXTRA _ BACKGROUND , Ġplaylist . cover ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ( Constants . EXTRA _ LABEL , Ġplaylist . label ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ( Constants . EXTRA _ LABEL _ DESCRIPTION , Ġplaylist . author ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ( Constants . EXTRA _ PLAY LIST , Ġplaylist . path ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ArrayList ( Constants . EXTRA _ DATA , Ġplaylist . play able IDs Ġas ĠArrayList < String >) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . arguments Ġ= Ġargs ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }