/* Ċ Ġ* ĠCopyright Ġ 2 0 2 2 ĠW ANG ĠY an ke Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġdev . y ank ew . sample . ui . about Ċ Ċ import Ġandroidx . compose . foundation . layout . Column Ċ import Ġandroidx . compose . foundation . layout . padding Ċ import Ġandroidx . compose . foundation . remember Scroll State Ċ import Ġandroidx . compose . foundation . vertical Scroll Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġandroidx . h ilt . navigation . compose . h ilt ViewModel Ċ import Ġdev . y ank ew . sample . compose . collect As State When Started Ċ import Ġdev . y ank ew . sample . strings . R Ċ import Ġdev . y ank ew . sample . ui . Sub Screen Sca ffold Ċ import Ġdev . y ank ew . sample . ui . settings . Settings Switch Ċ Ċ /** Ċ Ġ* ĠStateful Ġcomp osable Ġof ĠDeveloper ĠScreen Ċ Ġ*/ Ċ @ Composable Ċ fun ĠDeveloper Screen ( ĊĠĠĠ Ġnavigate Up : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Developer ViewModel >() ĊĠĠĠ Ġval Ġnew Feature Enabled Ġ= ĠviewModel . new Feature Local Enabled . collect As State When Started ( false ). value ĊĠĠĠ ĠDeveloper Screen ( ĊĠĠĠĠĠĠĠ Ġnavigate Up Ġ= Ġnavigate Up , ĊĠĠĠĠĠĠĠ Ġnew Feature Enabled Ġ= Ġnew Feature Enabled , ĊĠĠĠĠĠĠĠ Ġset New Feature Enabled Ġ= ĠviewModel :: set New Feature Local Enabled ĊĠĠĠ Ġ) Ċ } Ċ Ċ /** Ċ Ġ* ĠStateless Ġcomp osable Ġof ĠDeveloper ĠScreen Ċ Ġ*/ Ċ @ Composable Ċ fun ĠDeveloper Screen ( ĊĠĠĠ Ġnavigate Up : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġnew Feature Enabled : ĠBoolean , ĊĠĠĠ Ġset New Feature Enabled : Ġ( Boolean ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠĠĠ ĠSub Screen Sca ffold ( ĊĠĠĠĠĠĠĠ Ġtitle Res Id Ġ= ĠR . string . developer _ title , ĊĠĠĠĠĠĠĠ Ġnavigate Up Ġ= Ġnavigate Up , ĊĠĠĠ Ġ) Ġ{ Ġinner P add ings Ġ-> ĊĠĠĠĠĠĠĠ ĠColumn ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( inner P add ings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. vertical Scroll ( state Ġ= Ġremember Scroll State ()) ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSettings Switch ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġstring Resource ( R . string . enable _ new _ feature ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchecked Ġ= Ġnew Feature Enabled , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Checked Change Ġ= Ġset New Feature Enabled ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ