package Ġcom . example . movie compose . ui Ċ Ċ import Ġandroidx . compose . foundation . layout . padding Ċ import Ġandroidx . compose . material .* Ċ import Ġandroidx . compose . runtime .* Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . text . TextStyle Ċ import Ġandroidx . compose . ui . text . font . Font Weight Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġandroidx . compose . ui . unit . sp Ċ import Ġandroidx . navigation . Nav Controller Ċ import Ġandroidx . navigation . Nav Graph . Companion . find Start Destination Ċ import Ġandroidx . navigation . compose . Nav Host Ċ import Ġandroidx . navigation . compose . comp osable Ċ import Ġandroidx . navigation . compose . remember Nav Controller Ċ import Ġcom . example . movie compose . ui . movie . Movie Screen Ċ import Ġcom . example . movie compose . ui . my List . My List Screen Ċ import Ġcom . example . movie compose . ui . series . Series Screen Ċ Ċ @ Composable Ċ fun ĠHome Screen ( main Nav Controller : ĠNav Controller ) Ġ{ ĊĊĠĠĠ Ġvar Ġselected Tab Ġby Ġremember Ġ{ ĊĠĠĠĠĠĠĠ Ġmutable State Of ( 0 ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġnav Controller Ġ= Ġremember Nav Controller () ĊĊĠĠĠ ĠScaffold ( ĊĠĠĠĠĠĠĠ Ġtop Bar Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTab Row ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Color Ġ= ĠMaterial Theme . colors . primary , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected TabIndex Ġ= Ġselected Tab ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitles . forEach Indexed Ġ{ Ġindex , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTab ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Content Color Ġ= ĠMaterial Theme . colors . primary , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġun selected Content Color Ġ= ĠColor . White , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Ġ= Ġselected Tab Ġ== Ġindex , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnav Controller . navigate ( titles [ index ]. route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpop Up To ( nav Controller . graph . find Start Destination (). id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave State Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlaunch Single Top Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrestore State Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . align ( Alignment . Center H orizontally ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( top Ġ= Ġ 1 2 . dp , Ġbottom Ġ= Ġ 1 2 . dp ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġtitles [ index ]. label , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠTextStyle ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġif Ġ( selected Tab Ġ== Ġindex ) ĠMaterial Theme . colors . primary Ġelse ĠColor . White , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 8 . sp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontWeight Ġ= ĠFontWeight . Bold ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ġ{ Ġinner Padding Ġ-> ĊĠĠĠĠĠĠĠ ĠNav Host ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnav Controller Ġ= Ġnav Controller , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Destination Ġ= Ġtitles [ 0 ]. route , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . padding ( inner Padding ) ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Home Screen Dest inations . Movies . route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMovie Screen ( nav Controller Ġ= Ġmain Nav Controller ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Tab Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Home Screen Dest inations . Series . route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSeries Screen ( nav Controller Ġ= Ġmain Nav Controller ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Tab Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Home Screen Dest inations . My List . route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMy List Screen ( nav Controller Ġ= Ġmain Nav Controller ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Tab Ġ= Ġ 2 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġval Ġtitles Ġ= ĠlistOf ( ĊĠĠĠ ĠHome Screen Dest inations . Movies , ĊĠĠĠ ĠHome Screen Dest inations . Series , ĊĠĠĠ ĠHome Screen Dest inations . My List Ċ ) Ċ Ċ sealed Ġclass ĠHome Screen Dest inations ( ĊĠĠĠ Ġval Ġroute : ĠString , ĊĠĠĠ Ġval Ġlabel : ĠString Ċ ) Ġ{ ĊĠĠĠ Ġobject ĠMov ies Ġ: ĠHome Screen Dest inations (" movies ", Ġ" Movies ") ĊĠĠĠ Ġobject ĠSeries Ġ: ĠHome Screen Dest inations (" series ", Ġ" Series ") ĊĠĠĠ Ġobject ĠMy List Ġ: ĠHome Screen Dest inations (" my List ", Ġ" My List ") Ċ }