package Ġcom . xy o ye . anime _ component . utils Ċ Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroidx . annotation . Color Int Ċ import Ġandroidx . palette . graphics . Palette Ċ import Ġcom . bump tech . glide . request . target . Custom Target Ċ import Ġcom . bump tech . glide . request . transition . Transition Ċ import Ġkotlin . math . round ToInt Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġx yo ye Ġon Ġ 2 0 2 0 / 1 0 / 8 . Ċ Ġ*/ Ċ Ċ abstract Ġclass ĠPalette Bitmap Target ( private Ġvar Ġdefault Palette : ĠInt Ġ= Ġ- 1 ) Ġ: ĠCustom Target < Bitmap >() Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġpalette Color Ġ= ĠColor . parse Color ("# 1 2 1 2 1 2 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġdefault Palette Ġ= Ġif Ġ( default Palette Ġ== Ġ- 1 ) Ġpalette Color Ġelse Ġdefault Palette ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonLoad Cle ared ( placeholder : ĠDrawable ?) Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resource Ready ( resource : ĠBitmap , Ġtransition : ĠTransition < in ĠBitmap > ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠPalette . from ( resource ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. maximum Color Count ( 1 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. generate Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvi br ant Color Ġ= Ġit . get V ibr ant Color ( default Palette ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Bitmap Ready ( resource , Ġget Trans luc ent Color ( vi br ant Color )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Bitmap Ready ( resource , Ġget Trans luc ent Color ( default Palette )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Trans luc ent Color ( rgb : ĠInt , Ġpercent : ĠFloat Ġ= Ġ 0 . 7 f ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġblue : ĠInt Ġ= ĠColor . blue ( rgb ) ĊĠĠĠĠĠĠĠ Ġval Ġgreen : ĠInt Ġ= ĠColor . green ( rgb ) ĊĠĠĠĠĠĠĠ Ġval Ġred : ĠInt Ġ= ĠColor . red ( rgb ) ĊĠĠĠĠĠĠĠ Ġvar Ġalpha : ĠInt Ġ= ĠColor . alpha ( rgb ) ĊĠĠĠĠĠĠĠ Ġalpha Ġ= Ġ( alpha Ġ* Ġpercent ). round ToInt () ĊĠĠĠĠĠĠĠ Ġreturn ĠColor . arg b ( alpha , Ġred , Ġgreen , Ġblue ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġon Bitmap Ready ( bitmap : ĠBitmap , Ġ@ Color Int Ġpalette Color : ĠInt ) Ċ }