package Ġcom . cr az yle g end . kotlin extensions . views Ċ Ċ import Ġandroid . app . Wall paper Manager Ċ import Ġandroid . content . res . Color State List Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Bitmap Factory Ċ import Ġandroid . graphics . Port er D uff Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroid . util . Base 6 4 Ċ import Ġandroid . widget . ImageView Ċ import Ġandroidx . annotation . Color Res Ċ import Ġandroidx . core . widget . ImageView Compat Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . bump tech . glide . request . RequestOptions Ċ import Ġcom . cr az yle g end . kotlin extensions . context . getColor Compat Ċ import Ġjava . io . File OutputStream ĊĊ Ċ /** Ċ Ġ* ĠCreated Ġby Ġh rist ij an Ġon Ġ 3 / 4 / 1 9 Ġto Ġlong Ġlive Ġand Ġpro sper Ġ! Ċ Ġ*/ Ċ Ċ /** Ċ Ġ* ĠChange ĠImage view Ġt int Ċ Ġ*/ Ċ fun ĠImageView . set Tint ( color : ĠInt ) Ġ{ ĊĠĠĠ ĠImageView Compat . setImage Tint List ( this , ĠColor State List . valueOf ( color )) Ċ Ċ } Ċ Ċ fun ĠImageView . clear () Ġ{ ĊĠĠĠ Ġset Image Drawable ( null ) Ċ } Ċ Ċ fun ĠImageView . set Tint (@ Color Res Ġcolor Res : ĠInt , Ġmode : ĠPort er D uff . Mode Ġ= ĠPort er D uff . Mode . SRC _ OVER ) Ġ{ ĊĠĠĠ Ġthis . setColor Filter ( context . getColor Compat ( color Res ), Ġmode ) Ċ } Ċ Ċ fun ĠImageView . load Base 6 4 Image ( base 6 4 Image : ĠString ?) Ġ{ ĊĠĠĠ Ġbase 6 4 Image ?. let Ġ{ ĊĠĠĠĠĠĠĠ ĠG lide . with ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. as Bitmap () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( Base 6 4 . decode ( base 6 4 Image , ĠBase 6 4 . DEFAULT )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( this ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ sealed Ġclass ĠTransformation Ġ{ ĊĠĠĠ Ġobject ĠCenter Crop Ġ: ĠTransformation () ĊĠĠĠ Ġobject ĠCircle Ġ: ĠTransformation () Ċ } Ċ Ċ fun ĠImageView . load Image Resource ( image Resource : ĠString ?, Ġskip Memory Cache : ĠBoolean Ġ= Ġfalse , Ġtransformation : ĠTransformation ? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġimage Resource ?. let Ġ{ ĊĠĠĠĠĠĠĠ Ġload Image ( it , Ġskip Memory Cache , Ġtransformation ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠImageView . load Image Resource ( image Resource : ĠInt ?, Ġskip Memory Cache : ĠBoolean Ġ= Ġfalse , Ġtransformation : ĠTransformation ? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġimage Resource ?. let Ġ{ ĊĠĠĠĠĠĠĠ Ġload Image ( it , Ġskip Memory Cache , Ġtransformation ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠImageView . load Image Resource ( image Resource : ĠBitmap ?, Ġskip Memory Cache : ĠBoolean Ġ= Ġfalse , Ġtransformation : ĠTransformation ? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġimage Resource ?. let Ġ{ ĊĠĠĠĠĠĠĠ Ġload Image ( it , Ġskip Memory Cache , Ġtransformation ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠImageView . load Image Resource ( image Resource : ĠDrawable ?, Ġskip Memory Cache : ĠBoolean Ġ= Ġfalse , Ġtransformation : ĠTransformation ? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġimage Resource ?. let Ġ{ ĊĠĠĠĠĠĠĠ Ġload Image ( it , Ġskip Memory Cache , Ġtransformation ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun ĠImageView . load Image ( image Resource : ĠAny , Ġskip Memory Cache : ĠBoolean , Ġtransformation : ĠTransformation ?) Ġ{ ĊĠĠĠ Ġvar Ġrequest Options Ġ= ĠRequest Options () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. skip Memory Cache ( skip Memory Cache ) ĊĊĠĠĠ Ġrequest Options Ġ= Ġwhen Ġ( transformation ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis ĠTransformation . Center Crop Ġ-> Ġrequest Options . center Crop () ĊĠĠĠĠĠĠĠ Ġis ĠTransformation . Circle Ġ-> Ġrequest Options . circle Crop () ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġrequest Options Ġ// ĠDo Ġnothing ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠG lide . with ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( image Resource ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( request Options ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( this ) Ċ } Ċ Ċ fun ĠImageView . set Base 6 4 ( base 6 4 : ĠString , Ġflag : ĠInt ) Ġ{ ĊĠĠĠ Ġif Ġ( base 6 4 . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthumb : ĠBitmap ? ĊĠĠĠĠĠĠĠ Ġval Ġbytes Ġ= ĠBase 6 4 . decode ( base 6 4 , Ġflag ) ĊĠĠĠĠĠĠĠ Ġval Ġfile Ġ= Ġcreate TempFile ( suffix Ġ= Ġ". png ") ĊĠĠĠĠĠĠĠ Ġvar Ġout : ĠFileOutputStream ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Ġ= ĠFileOutputStream ( file ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout . write ( bytes ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout . flush () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout ?. close () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġthumb Ġ= ĠBitmap Factory . decode File ( file . absolute Path ) ĊĠĠĠĠĠĠĠ Ġfile . delete () ĊĠĠĠĠĠĠĠ Ġset Image Bitmap ( thumb ) ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ /** Ċ Ġ* ĠLoads Ġcurrent Ġdevice Ġwall paper Ġto Ġan ĠImage view Ċ Ġ*/ Ċ fun ĠImageView . set Wall paper () Ġ{ ĊĠĠĠ Ġval Ġwall paper Manager Ġ= ĠWall paper Manager . getInstance ( context ) ĊĠĠĠ Ġset Image Drawable ( wall paper Manager . drawable ) Ċ } ĊĊ