package Ġh ien ng uy en . me . weather app . common . binding Ċ Ċ import Ġandroidx . databinding . Binding Adapter Ċ import Ġandroid . graphics . drawable . Gradient Drawable Ċ import Ġandroidx . annotation . Color Res Ċ import Ġandroidx . annotation . Dim en Res Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . TextView Ċ import Ġh ien ng uy en . me . weather app . R ĊĊ Ċ @ Binding Adapter (" backgroundColor Res ") Ċ fun Ġset BackgroundColor Res ( view : ĠView ?, Ġcolor : ĠInt ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġ== Ġnull Ġ|| Ġcolor Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġview . set BackgroundColor ( Context Compat . getColor ( view . context , Ġcolor )) Ċ } Ċ Ċ @ Binding Adapter (" textColor Res ") Ċ fun Ġset TextColor Res ( view : ĠTextView ?, ĠtextColor : ĠInt ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġ== Ġnull Ġ|| ĠtextColor Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġif Ġ( textColor Ġ== ĠR . color . color Primary ) Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġview . setTextColor ( Context Compat . getColor ( view . context , ĠtextColor )) Ċ } Ċ Ċ @ Binding Adapter (" hint Color Res ") Ċ fun Ġset Text Hint Color Res ( view : ĠTextView ?, Ġhint Color : ĠInt ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġ== Ġnull Ġ|| Ġhint Color Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġview . set Hint TextColor ( Context Compat . getColor ( view . context , Ġhint Color )) Ċ } Ċ Ċ @ Binding Adapter (" link Color Res ") Ċ fun Ġset Text Link Color Res ( view : ĠTextView ?, Ġlink Color : ĠInt ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġ== Ġnull Ġ|| Ġlink Color Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġview . set Link TextColor ( Context Compat . getColor ( view . context , Ġlink Color )) Ċ } Ċ Ċ @ Binding Adapter (" background Shape Color ") Ċ fun Ġchange Background Shape Color ( p View : ĠView , Ġcolor Int : ĠInt ) Ġ{ ĊĠĠĠ Ġif Ġ( color Int Ġ== ĠR . color . color Primary ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// todo Ġsomething ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġresolved Color Ġ= ĠContext Compat . getColor ( p View . context , Ġcolor Int ) ĊĠĠĠ Ġval Ġbackground Ġ= Ġp View . background ĊĠĠĠ Ġif Ġ( background Ġis ĠGradient Drawable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbackground . setColor ( resolved Color ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġp View . set BackgroundColor ( resolved Color ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Binding Adapter (" background Stroke Color ", Ġ" stroke Size ") Ċ fun Ġchange Background Stroke Color ( p View : ĠView , Ġ@ Color Res Ġcolor Res Int : ĠInt , Ġ@ Dim en Res Ġstroke Size : ĠInt ) Ġ{ ĊĠĠĠ Ġval Ġcolor Int Ġ= ĠContext Compat . getColor ( p View . context , Ġcolor Res Int ) ĊĠĠĠ Ġval Ġstroke Size In Pixels Ġ= Ġp View . context . resources . get Dimension ( stroke Size ) ĊĠĠĠ Ġval Ġbackground Ġ= Ġp View . background ĊĠĠĠ Ġif Ġ( background Ġis ĠGradient Drawable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbackground . set Stroke ( stroke Size In Pixels . toInt (), Ġcolor Int ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġp View . set BackgroundColor ( color Int ) ĊĠĠĠ Ġ} Ċ }