package Ġcom . k ier on qu inn . mon et compat . extensions . views Ċ Ċ import Ġandroid . content . res . Color State List Ċ import Ġandroidx . annotation . Color Int Ċ import Ġandroidx . appcompat . widget . Switch Compat Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . k ier on qu inn . mon et compat . R Ċ import Ġcom . k ier on qu inn . mon et compat . core . Mon et Compat Ċ import Ġcom . k ier on qu inn . mon et compat . extensions . is Dark Mode Ċ import Ġcom . k ier on qu inn . mon et compat . extensions . to Argb Ċ Ċ /** Ċ Ġ* Ġ ĠApplies ĠMon et Ġcolors Ġto Ġthe ĠSwitch Compat , Ġthis Ġwill Ġ* not * Ġwork Ġbefore ĠMon et Compat Ġis Ċ Ġ* Ġ Ġinitialized Ċ Ġ*/ Ċ fun ĠSwitch Compat . apply Mon et (): ĠSwitch Compat Ġ= Ġapply Ġ{ ĊĠĠĠ Ġval Ġmon et Ġ= ĠMon et Compat . getInstance () ĊĠĠĠ Ġval Ġchecked Track Color Ġ= Ġif ( context . is Dark Mode ){ ĊĠĠĠĠĠĠĠ Ġmon et . get Mon et Colors (). accent 1 [ 4 0 0 ]?. to Argb () ĊĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠ Ġmon et . get Mon et Colors (). accent 1 [ 3 0 0 ]?. to Argb () ĊĠĠĠ Ġ} ĊĠĠĠ Ġset Tint ( checked Track Color , Ġmon et . get Secondary Color ( context ), Ġmon et . get Accent Color ( context )) Ċ } Ċ Ċ fun ĠSwitch Compat . set Tint (@ Color Int Ġchecked Track Color : ĠInt ?, Ġ@ Color Int Ġun Checked Track Color : ĠInt ?, Ġ@ Color Int Ġthumb Color : ĠInt ){ ĊĠĠĠ Ġval Ġdefault Color Ġ= ĠContext Compat . getColor ( context , ĠR . color . switch _ thumb _ normal _ material ) ĊĠĠĠ Ġtrack Tint List Ġ= ĠColor State List ( ĊĠĠĠĠĠĠĠ ĠarrayOf ( int ArrayOf ( android . R . attr . state _ checked ), Ġint ArrayOf ()), ĊĠĠĠĠĠĠĠ Ġint ArrayOf ( checked Track Color Ġ?: Ġdefault Color , Ġun Checked Track Color Ġ?: Ġdefault Color ) ĊĠĠĠ Ġ) ĊĠĠĠ Ġthumb Tint List Ġ= ĠColor State List . valueOf ( thumb Color ) ĊĠĠĠ Ġoverride R ipple Color ( thumb Color ) Ċ }