package Ġde . r ki . cor on aw arn app . ui . presence tracing . at tendee . on boarding Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroidx . core . net . to Uri Ċ import Ġandroidx . core . view . update Padding Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . navigation . Nav Options Ċ import Ġandroidx . navigation . fragment . find Nav Controller Ċ import Ġandroidx . navigation . fragment . nav Args Ċ import Ġcom . google . android . material . transition . Material Shared Axis Ċ import Ġde . r ki . cor on aw arn app . R Ċ import Ġde . r ki . cor on aw arn app . databinding . Fragment Trace Location On boarding Binding Ċ import Ġde . r ki . cor on aw arn app . ui . presence tracing . at tendee . confirm . Confirm Check In Fragment Ċ import Ġde . r ki . cor on aw arn app . util . Context Extensions . get Drawable Compat Ċ import Ġde . r ki . cor on aw arn app . util . di . Auto Inject Ċ import Ġde . r ki . cor on aw arn app . util . ui . do Navigate Ċ import Ġde . r ki . cor on aw arn app . util . ui . observe 2 Ċ import Ġde . r ki . cor on aw arn app . util . ui . pop Back Stack Ċ import Ġde . r ki . cor on aw arn app . util . ui . view Binding Ċ import Ġde . r ki . cor on aw arn app . util . view model . C WA ViewModel Factory Provider Ċ import Ġde . r ki . cor on aw arn app . util . view model . c wa ViewModels Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠCheck In On boarding Fragment Ġ: ĠFragment ( R . layout . fragment _ trace _ location _ on boarding ), ĠAuto Inject Ġ{ ĊĊĠĠĠ Ġ@ Inject Ġlateinit Ġvar ĠviewModel Factory : ĠC WA ViewModel Factory Provider . Factory ĊĊĠĠĠ Ġprivate Ġval ĠviewModel : ĠCheck In On boarding ViewModel Ġby Ġc wa ViewModels Ġ{ ĠviewModel Factory Ġ} ĊĠĠĠ Ġprivate Ġval Ġbinding : ĠFragment Trace Location On boarding Binding Ġby Ġview Binding () ĊĠĠĠ Ġprivate Ġval Ġargs Ġby Ġnav Args < Check In On boarding Fragment Args >() ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġenter Transition Ġ= ĠMaterial Shared Axis ( Material Shared Axis . Z , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġreturn Transition Ġ= ĠMaterial Shared Axis ( Material Shared Axis . Z , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( viewModel . is On boarding Complete Ġ&& Ġargs . uri Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdo Navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCheck In On boarding Fragment Directions . action Check In On boarding Fragment ToCheck Ins Fragment ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . uri , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . clean History ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġwith ( binding ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcheck In On boarding Ack nowledge . setOnClickListener Ġ{ ĠviewModel . on Ack nowled ged () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( viewModel . is On boarding Complete ) Ġcheck In On boarding Ack nowledge . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcheck In On boarding Privacy . setOnClickListener Ġ{ ĠviewModel . on Privacy () Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! args . show Bottom Nav ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck In On boarding Toolbar . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnavigation Icon Ġ= Ġcontext . get Drawable Compat ( R . drawable . ic _ close ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnavigation Content Description Ġ= ĠgetString ( R . string . accessibility _ close ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Navigation OnClickListener Ġ{ Ġpop Back Stack () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . root . update Padding ( bottom Ġ= Ġresources . get Dimension Pixel Size ( R . dim en . spacing _ fab _ padding )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠviewModel . events . observe 2 ( this ) Ġ{ Ġnav Event Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( nav Event ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCheck In On boarding Navigation . Ack nowled ged Navigation Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlocation Id Ġ= Ġargs . location Id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( location Id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnav Option Ġ= ĠNav Options . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Pop Up To ( R . id . check In On boarding Fragment , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfind Nav Controller (). navigate ( Confirm Check In Fragment . uri ( location Id ), Ġnav Option ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdo Navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCheck In On boarding Fragment Directions . action Check In On boarding Fragment ToCheck Ins Fragment ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . uri ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCheck In On boarding Navigation . Data Protection Navigation Ġ-> Ġdo Navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCheck In On boarding Fragment Directions . action Check In On boarding Fragment To Privacy Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġuri ( location Id : ĠString ) Ġ= Ġ" c wa :// check - in - on boarding /? show Bottom Nav = false & location Id =$ location Id ". to Uri () ĊĠĠĠ Ġ} Ċ } Ċ