/* Ċ Ġ* ĠĠ ĠCopyright Ġ 2 0 2 1 ĠB eno it ĠLET OND OR Ċ Ġ* Ċ Ġ* ĠĠ Ġ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 Ġcom . b eno it let ond or . pixel minimal watch face comp anion . view . main . sub views Ċ Ċ import Ġandroidx . compose . foundation . Image Ċ import Ġandroidx . compose . foundation . background Ċ import Ġandroidx . compose . foundation . layout .* Ċ import Ġandroidx . compose . foundation . remember Scroll State Ċ import Ġandroidx . compose . foundation . shape . Rounded Corner Shape Ċ import Ġandroidx . compose . foundation . vertical Scroll Ċ import Ġandroidx . compose . material .* Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . res . p ainter Resource Ċ import Ġandroidx . compose . ui . text . font . Font Weight Ċ import Ġandroidx . compose . ui . text . style . Text Align Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġandroidx . compose . ui . unit . sp Ċ import Ġcom . b eno it let ond or . pixel minimal watch face comp anion . R Ċ import Ġcom . b eno it let ond or . pixel minimal watch face comp anion . sync . Sync Ċ import Ġcom . b eno it let ond or . pixel minimal watch face comp anion . ui . App Material Theme Ċ import Ġcom . b eno it let ond or . pixel minimal watch face comp anion . ui . blue Button Colors Ċ import Ġcom . b eno it let ond or . pixel minimal watch face comp anion . ui . white Text Button Colors Ċ import Ġcom . b eno it let ond or . pixel minimal watch face comp anion . view . main . Main ViewModel Ċ Ċ @ Composable Ċ fun ĠInstall Watch Face ( ĊĠĠĠ Ġstep : ĠMain ViewModel . Step . Install Watch Face , ĊĠĠĠ ĠviewModel : ĠMain ViewModel , Ċ ) Ġ{ ĊĠĠĠ ĠInstall Watch Face Layout ( ĊĠĠĠĠĠĠĠ Ġapp Installed Status Ġ= Ġstep . app Installed Status , ĊĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= ĠviewModel :: on Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠ Ġon Open Play Store Button Pressed Ġ= ĠviewModel :: on Install Watch Face Button Pressed , ĊĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= ĠviewModel :: on Support Button Pressed , ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠInstall Watch Face Layout ( ĊĠĠĠ Ġapp Installed Status : ĠMain ViewModel . App Installed Status , ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Open Play Store Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Support Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠColumn ( ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill Max Height () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. vertical Scroll ( remember Scroll State ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( horizontal Ġ= Ġ 2 0 . dp ), ĊĠĠĠĠĠĠĠ Ġhorizontal Alignment Ġ= ĠAlignment . Center H orizontally , ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Install Ġthe Ġwatch Ġface Ġon Ġyour Ġwatch ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 8 . sp , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfontWeight Ġ= ĠFontWeight . Bold , ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 2 0 . dp )) ĊĊĠĠĠĠĠĠĠ Ġwhen ( app Installed Status ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠMain ViewModel . App Installed Status . Result Ġ-> Ġwhen ( app Installed Status . we arable Status ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSync . W ear able Status . Available App Installed Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠInstalled ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSync . W ear able Status . Available App Not Installed Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAuto Install ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Open Play Store Button Pressed Ġ= Ġon Open Play Store Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠSync . W ear able Status . Error , ĠSync . W ear able Status . Not Available Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠManual Install ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMain ViewModel . App Installed Status . Unknown Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠManual Install ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMain ViewModel . App Installed Status . Verify ing Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠVerify ing Install Status () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠInstalled ( ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Support Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Watch Ġface Ġdetected Ġon Ġyour Ġwatch ", ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠImage ( ĊĠĠĠĠĠĠĠ Ġpainter Ġ= Ġpainter Resource ( R . drawable . ic _ baseline _ check _ 2 4 ), ĊĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . size ( 5 0 . dp ), ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Make Ġsure Ġyou Ġactivate Ġit Ġas Ġyour Ġwatch Ġface ", ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠ Ġcolors Ġ= Ġblue Button Colors (), ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠText (" Continue ". uppercase ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 3 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Watch Ġface Ġnot Ġinstalled ?", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 8 . sp , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠInstall Man ually Layout ( ĊĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠ Ġ) ĊĠĠĠ ĠSupport Layout ( ĊĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠAuto Install ( ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Open Play Store Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Support Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠInstall Auto Layout ( ĊĠĠĠĠĠĠĠ Ġon Open Play Store Button Pressed Ġ= Ġon Open Play Store Button Pressed , ĊĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠ Ġ) ĊĠĠĠ ĠSkip Install Layout ( ĊĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠ Ġ) ĊĠĠĠ ĠSupport Layout ( ĊĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠManual Install ( ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Support Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠInstall Man ually Layout ( ĊĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠ Ġ) ĊĠĠĠ ĠSkip Install Layout ( ĊĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠ Ġ) ĊĠĠĠ ĠSupport Layout ( ĊĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġon Support Button Pressed , ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠVerify ing Install Status () Ġ{ ĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĠĠĠ ĠCircular Progress Indicator () ĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Verify ing Ġinstall Ġstatus ...", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠInstall Auto Layout ( ĊĠĠĠ Ġon Open Play Store Button Pressed : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Follow Ġthose Ġ 4 Ġsteps Ġto Ġinstall Ġit Ġon Ġyour Ġwatch ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 1 . ĠT ap Ġthe Ġbutton Ġbelow Ġto Ġopen Ġthe ĠPlay Store Ġon Ġyour Ġwatch , Ġdirectly Ġon Ġthe Ġwatch Ġface Ġpage Ġ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠText Button ( ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġon Open Play Store Button Pressed , ĊĠĠĠĠĠĠĠ Ġcolors Ġ= Ġwhite Text Button Colors (), ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Open ĠPlay Store Ġon Ġwatch ". uppercase (), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" If Ġthat Ġdoesn 't Ġwork , Ġopen Ġthe ĠPlay Store Ġon Ġyour Ġwatch Ġmanually Ġand Ġsearch Ġfor Ġ\" Pixel ĠMin imal ĠWatch ĠFace \" Ġto Ġinstall Ġit .", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Start , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( color Ġ= ĠColor ( 0 x 2 2 FFFFFF ), Ġshape Ġ= ĠRo unded Corner Shape ( 1 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( horizontal Ġ= Ġ 1 0 . dp , Ġvertical Ġ= Ġ 6 . dp ), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 3 . sp , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 2 . ĠT ap Ġthe Ġinstall Ġbutton ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 3 . ĠOnce Ġinstalled , Ġactivate Ġit Ġas Ġyour Ġwatch Ġface ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠ Ġcolors Ġ= Ġblue Button Colors (), ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠText (" Continue ". uppercase ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠInstall Man ually Layout ( ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Follow Ġthose Ġ 4 Ġsteps Ġto Ġinstall Ġit Ġon Ġyour Ġwatch ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" You Ġneed Ġto Ġdo Ġthat Ġon Ġyour Ġwatch Ġdirectly , Ġnot Ġfrom Ġyour Ġphone ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( color Ġ= ĠColor ( 0 x 2 2 FFFFFF ), Ġshape Ġ= ĠRo unded Corner Shape ( 1 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( horizontal Ġ= Ġ 1 0 . dp , Ġvertical Ġ= Ġ 6 . dp ), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 3 . sp , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 1 . ĠOpen Ġthe ĠPlay Store Ġon Ġyour Ġwatch ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 2 . ĠSearch Ġfor Ġ\" Pixel ĠMin imal ĠWatch ĠFace \"", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 3 . ĠT ap Ġthe Ġinstall Ġbutton ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" 4 . ĠOnce Ġinstalled , Ġactivate Ġit Ġas Ġyour Ġwatch Ġface ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Left , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠ Ġcolors Ġ= Ġblue Button Colors (), ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠText (" Continue ". uppercase ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠSkip Install Layout ( ĊĠĠĠ Ġon Watch Face Installed Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 3 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Watch Ġface Ġalready Ġinstalled ?", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 8 . sp , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" If Ġthe Ġwatch Ġface Ġis Ġalready Ġinstalled Ġon Ġyour Ġwatch , Ġmake Ġsure Ġyou Ġactivate Ġit Ġand Ġyou Ġcan Ġcontinue ", ĊĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Start , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 1 0 . dp )) ĊĊĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġon Watch Face Installed Button Pressed , ĊĠĠĠĠĠĠĠ Ġcolors Ġ= Ġblue Button Colors (), ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠText (" Continue ". uppercase ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠSupport Layout ( ĊĠĠĠ Ġon Support Button Pressed : Ġ() Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 3 0 . dp )) ĊĊĠĠĠ ĠColumn ( ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( color Ġ= ĠColor . Dark Gray , Ġshape Ġ= ĠRo unded Corner Shape ( 1 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( horizontal Ġ= Ġ 1 0 . dp , Ġvertical Ġ= Ġ 6 . dp ), ĊĠĠĠĠĠĠĠ Ġhorizontal Alignment Ġ= ĠAlignment . Center H orizontally , ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Install Ġdoesn 't Ġwork ? ĠHave Ġanother Ġissue ? ĠI 'm Ġhere Ġto Ġhelp ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= ĠMaterial Theme . colors . on Background , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextAlign Ġ= ĠText Align . Center , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( 5 . dp )) ĊĊĠĠĠĠĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ= Ġon Support Button Pressed , ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠText ( text Ġ= Ġ" Contact Ġme Ġfor Ġsupport ". uppercase ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ @ Preview ( show System Ui Ġ= Ġtrue , Ġname Ġ= Ġ" Verify ing ") Ċ private Ġfun ĠVerify ing Preview () Ġ{ ĊĠĠĠ ĠPreview ( app Installed Status Ġ= ĠMain ViewModel . App Installed Status . Verify ing ) Ċ } Ċ Ċ @ Composable Ċ @ Preview ( show System Ui Ġ= Ġtrue , Ġname Ġ= Ġ" Installed ") Ċ private Ġfun ĠInstalled Preview () Ġ{ ĊĠĠĠ ĠPreview ( app Installed Status Ġ= ĠMain ViewModel . App Installed Status . Result ( Sync . W ear able Status . Available App Installed )) Ċ } Ċ Ċ @ Composable Ċ @ Preview ( show System Ui Ġ= Ġtrue , Ġname Ġ= Ġ" Not Ġinstalled Ġ- Ġmanual ") Ċ private Ġfun ĠNot Installed Manual Preview () Ġ{ ĊĠĠĠ ĠPreview ( app Installed Status Ġ= ĠMain ViewModel . App Installed Status . Result ( Sync . W ear able Status . Not Available )) Ċ } Ċ Ċ @ Composable Ċ @ Preview ( show System Ui Ġ= Ġtrue , Ġname Ġ= Ġ" Not Ġinstalled Ġ- Ġauto ") Ċ private Ġfun ĠNot Installed Auto Preview () Ġ{ ĊĠĠĠ ĠPreview ( app Installed Status Ġ= ĠMain ViewModel . App Installed Status . Result ( Sync . W ear able Status . Available App Not Installed )) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠPreview ( ĊĠĠĠ Ġapp Installed Status : ĠMain ViewModel . App Installed Status , Ċ ) Ġ{ ĊĠĠĠ ĠApp Material Theme Ġ{ ĊĠĠĠĠĠĠĠ ĠInstall Watch Face Layout ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapp Installed Status Ġ= Ġapp Installed Status , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Open Play Store Button Pressed Ġ= Ġ{}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Watch Face Installed Button Pressed Ġ= Ġ{}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Support Button Pressed Ġ= Ġ{}, ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }