package Ġcom . hh . compose player Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . activity . On Back Pressed Callback Ċ import Ġandroidx . activity . compose . setContent Ċ import Ġandroidx . compose . animation .* Ċ import Ġandroidx . compose . animation . core . t ween Ċ import Ġandroidx . compose . foundation . click able Ċ import Ġandroidx . compose . foundation . layout .* Ċ import Ġandroidx . compose . material .* Ċ import Ġandroidx . compose . runtime .* Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . graphics .* Ċ import Ġandroidx . compose . ui . res . p ainter Resource Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġandroidx . compose . ui . unit . sp Ċ import Ġandroidx . core . view . Window Compat Ċ import Ġandroidx . navigation . Nav Controller Ċ import Ġandroidx . navigation . Nav Type Ċ import Ġandroidx . navigation . compose . nav Argument Ċ import Ġandroidx . work .* Ċ import Ġcom . google . ac comp an ist . in sets .* Ċ import Ġcom . google . ac comp an ist . navigation . animation . Animated Nav Host Ċ import Ġcom . google . ac comp an ist . navigation . animation . comp osable Ċ import Ġcom . google . ac comp an ist . navigation . animation . remember Animated Nav Controller Ċ import Ġcom . google . ac comp an ist . pager . Experimental Pager Api Ċ import Ġcom . google . ac comp an ist . pager . Horizontal Pager Ċ import Ġcom . hh . compose player . Hh Cp App . Companion . context Ċ import Ġcom . hh . compose player . base . Base Activity Ċ import Ġcom . hh . compose player . bean . Model Ċ import Ġcom . hh . compose player . manager . Tab List Work Manager Ċ import Ġcom . hh . compose player . ui .* Ċ import Ġcom . hh . compose player . util .* Ċ import Ġkotlinx . coroutines . launch Ċ import Ġcom . hh . compose player . util . Cp Navigation . nav Host Controller Ċ import Ġcom . h jq . permissions . On Permission Callback Ċ import Ġcom . h jq . permissions . Permission Ċ import Ġcom . h jq . permissions . XX Permissions Ċ import Ġjava . util . concurrent . TimeUnit Ċ Ċ const Ġval ĠUPDATE _ TAB _ LIST Ġ= Ġ" Update Tab List " Ċ class ĠMainActivity Ġ: ĠBase Activity < Main ViewModel >() Ġ{ ĊĠĠĠ Ġvar Ġexit Time Ġ= Ġ 0 L ĊĊĠĠĠ Ġ@ Opt In ( Experimental Animation Api :: class ) ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠWindow Compat . set Decor Fits System Windows ( window , Ġfalse ) ĊĠĠĠĠĠĠĠ ĠXX Permissions . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. permission ( Permission . MANAGE _ EXTERNAL _ STORAGE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. request ( object Ġ: ĠOn Permission Callback Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Granted ( gr anted : ĠList < String >, Ġall : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Content Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMaterial Theme Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠProvide Window Insets Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnav Host Controller Ġ= Ġremember Animated Nav Controller () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠScaffold ( viewModel !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDialog Progress () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Denied ( den ied : ĠList < String >, Ġnever : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( never ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Toast ( context . string Resource ( R . string . get _ storage _ permission _ man ually )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġå¦Ĥæŀľ æĺ¯ è¢« æ°¸ ä¹ħ æĭ Ĵ ç»Ŀ å°± è·³è½¬ åĪ° åºĶçĶ¨ æĿĥéĻĲ ç³»ç»Ł è®¾ç½® é¡µéĿ¢ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠXX Permissions . start Permission Activity ( this @ MainActivity , Ġdenied ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Toast ( context . string Resource ( R . string . get _ storage _ permission _ error )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Content Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMaterial Theme Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠProvide Window Insets Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnav Host Controller Ġ= Ġremember Animated Nav Controller () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠScaffold ( viewModel !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDialog Progress () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġon Back Pressed Dispatcher . add Callback ( this , Ġobject Ġ: ĠOn Back Pressed Callback ( true ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġhandle On Back Pressed () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnav Ġ= ĠNav Controller ( this @ MainActivity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( nav . current Destination Ġ!= Ġnull Ġ&& Ġnav . current Destination !!. id Ġ!= Ġandroidx . appcompat . R . id . content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// å¦Ĥæŀľ å½ĵåīį çķĮéĿ¢ ä¸įæĺ¯ ä¸» é¡µ ï¼Į éĤ£ä¹Ī çĽ´æİ¥ è°ĥçĶ¨ è¿ĶåĽŀ åį³åı¯ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnav . navigate Up () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// æĺ¯ ä¸» é¡µ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( System . currentTimeMillis () Ġ- Ġexit Time Ġ> Ġ 2 0 0 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Toast ( context . string Resource ( R . string . press _ again _ to _ exit )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexit Time Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġinit Work Manager () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Work Manager () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġconstraints Ġ= ĠConstraints . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Required Network Type ( Network Type . CONNECTED ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠPeriod ic Work Request ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. Builder ( Tab List Work Manager :: class . java , Ġ 1 6 , ĠTimeUnit . MIN UTES ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Constraints ( constraints ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ ĠWork Manager . getInstance ( this ). enqueue Unique Periodic Work ( UPDATE _ TAB _ LIST , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠExisting Periodic Work Policy . KEEP , request ) ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ @ Opt In ( Experimental Pager Api :: class , ĠExperimental Animation Api :: class ) Ċ @ Composable Ċ private Ġfun ĠScaffold ( viewModel : ĠMain ViewModel ) Ġ{ ĊĠĠĠ ĠSurface ( ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . surface , ĊĠĠĠĠĠĠĠ Ġcontent Color Ġ= Ġcontent Color For ( Material Theme . colors . surface ) ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠAnimated Nav Host ( nav Controller Ġ= Ġnav Host Controller , Ġstart Destination Ġ= ĠModel . Main . name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Model . Main . toString ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMain Content ( viewModel Ġ= ĠviewModel ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// å½ĵåīį éľĢè¦ģ å±ķç¤º é¦ĸé¡µ / åĪĹè¡¨ é¡µ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Model . Setting . toString ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠC p Setting () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Model . Search . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġenter Transition Ġ= Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfadeIn ( animation Spec Ġ= Ġt ween ( 7 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġexit Transition Ġ= Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfade Out ( animation Spec Ġ= Ġt ween ( 7 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSearch View () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Model . About . toString ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAbout () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Model . Collect . toString ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCollect () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( Model . Start . toString ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠProject Address () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ("${ Model . Movie Detail }/{ ids }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġenter Transition Ġ= Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfadeIn ( animation Spec Ġ= Ġt ween ( 1 5 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġexit Transition Ġ= Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfade Out ( animation Spec Ġ= Ġt ween ( 1 5 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġids Ġ= Ġit . arguments ?. getString (" ids ", Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMovie Detail ( movie Id Ġ= Ġids !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcomp osable ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ Model . SearchResult }/{ search Name }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarguments Ġ= ĠlistOf ( nav Argument (" search Name ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠMake Ġargument Ġtype Ġsafe ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠNav Type . StringType ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsearch Name Ġ= Ġit . arguments ?. getString (" search Name ", Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSearch Result ( search Name Ġ= Ġsearch Name !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Opt In ( Experimental Pager Api :: class ) Ċ @ Composable Ċ private Ġfun ĠMain Content ( modifier : ĠModifier Ġ= ĠModifier , ĠviewModel : ĠMain ViewModel ) Ġ{ ĊĠĠĠ Ġval Ġcoroutine Scope Ġ= Ġremember Coroutine Scope () ĊĠĠĠ ĠLa unched Effect ( viewModel ) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel . app Color Ġ= ĠSetting Util . getColor () ĊĠĠĠ Ġ} ĊĠĠĠ ĠBox Ġ{ ĊĠĠĠĠĠĠĠ ĠColumn ( modifier . fill MaxSize ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHorizontal Pager ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ= ĠviewModel . pager State , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier . weight ( 1 f ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrag Enabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ Ġpage Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( page ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠHome () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠM ine () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMain Bottom Bar ( viewModel ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcoroutine Scope . launch Ġ{ ĠviewModel . pager State . animate Scroll To Page ( it ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ @ Opt In ( Experimental Pager Api :: class ) Ċ @ Composable Ċ private Ġfun ĠMain Bottom Bar ( viewModel : ĠMain ViewModel , Ġcurrent Changed : Ġ( Int ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ ĠC p Bottom Bar Ġ{ ĊĠĠĠĠĠĠĠ ĠColumn ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. weight ( 1 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. click able Ġ{ Ġcurrent Changed ( 0 ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( 8 . dp ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhorizontal Alignment Ġ= ĠAlignment . Center H orizontally , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Arrange ment Ġ= ĠArrange ment . Bottom ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIcon ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpainter Resource ( id Ġ= ĠR . drawable . ic _ home _ black _ 2 4 dp ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġstring Resource ( id Ġ= ĠR . string . main _ title _ home ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt int Ġ= Ġif Ġ( viewModel . pager State . currentPage Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor ( viewModel . app Color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocal Content Color . current . copy ( alpha Ġ= ĠLocal Content Alpha . current ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġmodifier Ġ= ĠModifier . size ( 2 4 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġstring Resource ( id Ġ= ĠR . string . main _ title _ home ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġif Ġ( viewModel . pager State . currentPage Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor ( viewModel . app Color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocal Content Color . current . copy ( alpha Ġ= ĠLocal Content Alpha . current ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 2 . sp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠColumn ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. weight ( 1 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. click able Ġ{ Ġcurrent Changed ( 1 ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( 8 . dp ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhorizontal Alignment Ġ= ĠAlignment . Center H orizontally , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Arrange ment Ġ= ĠArrange ment . Center ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIcon ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpainter Resource ( id Ġ= ĠR . drawable . ic _ baseline _ person _ 2 4 ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġstring Resource ( id Ġ= ĠR . string . main _ title _ mine ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt int Ġ= Ġif Ġ( viewModel . pager State . currentPage Ġ== Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor ( viewModel . app Color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocal Content Color . current . copy ( alpha Ġ= ĠLocal Content Alpha . current ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġmodifier Ġ= ĠModifier . size ( 2 4 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġstring Resource ( id Ġ= ĠR . string . main _ title _ mine ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġif Ġ( viewModel . pager State . currentPage Ġ== Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor ( viewModel . app Color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocal Content Color . current . copy ( alpha Ġ= ĠLocal Content Alpha . current ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 2 . sp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊĊĊĊ