package Ġcom . air bnb . lott ie . samples . views Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Canvas Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . Paint Ċ import Ġandroid . graphics . drawable . Color Drawable Ċ import Ġandroidx . annotation . Color Int Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . View Ċ import Ġcom . air bnb . lott ie . samples . R Ċ Ċ class ĠBackground Color View Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġcontext : ĠContext , ĊĠĠĠĠĠĠĠ Ġattrs : ĠAttributeSet ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġdef Style Int : ĠInt Ġ= Ġ 0 Ċ ) Ġ: ĠView ( context , Ġattrs , Ġdef Style Int ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġpaint Ġ= ĠPaint (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġis Anti Alias Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Suppress Lint (" Missing Super Call ") ĊĠĠĠ Ġoverride Ġfun Ġdraw ( canvas : ĠCanvas ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( background Ġ! is ĠColor Drawable ) Ġreturn ĊĊĠĠĠĠĠĠĠ Ġval Ġcx Ġ= Ġcanvas . width Ġ/ Ġ 2 f ĊĠĠĠĠĠĠĠ Ġval Ġcy Ġ= Ġcanvas . height Ġ/ Ġ 2 f ĊĠĠĠĠĠĠĠ Ġval Ġr Ġ= ĠMath . min ( cx , Ġcy ) ĊĠĠĠĠĠĠĠ Ġif Ġ( getColor () Ġ== ĠColor . WHITE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpaint . stroke Width Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresources . get Dimension Pixel Size ( R . dim en . background _ color _ view _ stroke _ width ). toFloat () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpaint . style Ġ= ĠPaint . Style . ST RO KE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpaint . color Ġ= ĠContext Compat . getColor ( context , ĠR . color . background _ color 1 _ stroke ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpaint . color Ġ= Ġget Color () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpaint . style Ġ= ĠPaint . Style . FILL ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcanvas . draw Circle ( cx , Ġcy , Ġr Ġ- Ġpaint . stroke Width , Ġpaint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Color Int Ġfun Ġget Color () Ġ= Ġ( background Ġas ĠColor Drawable ). color Ċ }