package Ġcom . mit se st . material progress button Ċ Ċ import ĠVertical Image Span Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroid . text . Sp ann able String Ċ import Ġandroid . text . Sp anned Ċ import Ġandroid . text . style . Image Span Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . swiper ef resh layout . widget . Circular Progress Drawable Ċ Ċ internal Ġfun Ġinit Progress Drawable ( context : ĠContext ): Ġ( Any ) Ġ-> ĠCircular Progress Drawable Ġ= Ġ{ ĊĠĠĠ ĠCircular Progress Drawable ( context ). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġset Style ( Circular Progress Drawable . DEFAULT ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ internal Ġfun Ġset Progress Drawable Color ( Progress Drawable Color : ĠInt ?): Ġ( Circular Progress Drawable ) Ġ-> ĠCircular Progress Drawable Ġ= ĊĠĠĠ Ġ{ Ġprogress Drawable Ġ-> ĊĠĠĠĠĠĠĠ Ġprogress Drawable . setColor Scheme Colors ( Progress Drawable Color !! ) ĊĠĠĠĠĠĠĠ Ġprogress Drawable ĊĠĠĠ Ġ} Ċ Ċ internal Ġfun Ġget Progress Drawable Size (): Ġ( Circular Progress Drawable ) Ġ-> ĠPair < Circular Progress Drawable , ĠInt > Ġ= ĊĠĠĠ Ġ{ Ġprogress Drawable Ġ-> ĊĠĠĠĠĠĠĠ ĠPair ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprogress Drawable , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( progress Drawable . center Radius Ġ+ Ġprogress Drawable . stroke Width ). toInt () Ġ* Ġ 2 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ Ċ internal Ġfun Ġset Progress Drawable Bounds (): Ġ( Pair < Circular Progress Drawable , ĠInt >) Ġ-> ĠCircular Progress Drawable Ġ= ĊĠĠĠ Ġ{ Ġpair Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġ( progress Drawable , Ġsize ) Ġ= Ġpair ĊĠĠĠĠĠĠĠ Ġprogress Drawable . setBounds ( 0 , Ġ 0 , Ġsize , Ġsize ) ĊĠĠĠĠĠĠĠ Ġprogress Drawable ĊĠĠĠ Ġ} Ċ Ċ internal Ġfun Ġinit Progress Drawable Callback ( view : ĠView ?): Ġ( Any ) Ġ-> ĠDrawable . Callback Ġ= Ġ{ ĊĠĠĠ Ġobject Ġ: ĠDrawable . Callback Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinvalidate Drawable ( who : ĠDrawable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview ?. invalidate () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġschedule Drawable ( who : ĠDrawable , Ġwhat : ĠRunnable , Ġ` when `: ĠLong ) Ġ{} ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġun schedule Drawable ( who : ĠDrawable , Ġwhat : ĠRunnable ) Ġ{} ĊĠĠĠ Ġ} Ċ } Ċ Ċ internal Ġfun Ġset Progress Drawable Callback (): Ġ( Pair < Circular Progress Drawable ?, ĠDrawable . Callback >) Ġ-> ĠPair < Circular Progress Drawable ?, ĠDrawable . Callback ?> Ġ= ĊĠĠĠ Ġ{ Ġpair Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġ( progress Drawable , Ġprogress Drawable Callback ) Ġ= Ġpair ĊĠĠĠĠĠĠĠ Ġprogress Drawable ?. callback Ġ= Ġprogress Drawable Callback ĊĠĠĠĠĠĠĠ Ġpair ĊĠĠĠ Ġ} ĊĊ Ċ @ Suppress Lint (" In lined Api ") Ċ internal Ġfun Ġcreate Image Span From Progress Drawable (): Ġ( Pair < Circular Progress Drawable ?, ĠDrawable . Callback ?> ) Ġ-> ĠPair < Circular Progress Drawable ?, ĠImage Span ?> Ġ= ĊĠĠĠ Ġ{ Ġpair Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġ( progress Drawable , Ġ_) Ġ= Ġpair ĊĊĠĠĠĠĠĠĠ Ġif Ġ( progress Drawable Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair ( progress Drawable , ĠVertical Image Span ( progress Drawable )) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair ( progress Drawable , Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ internal Ġfun Ġcreate Sp ann able From Image Span (): Ġ( Pair < Circular Progress Drawable ?, ĠImage Span ?> ) Ġ-> ĠAnimated View Chain Ġ= ĊĠĠĠ Ġ{ Ġpair Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġ( progress Drawable , Ġimage Span ) Ġ= Ġpair ĊĠĠĠĠĠĠĠ Ġval Ġsp ann able Ġ= ĠSp ann able String (" Ġ") ĊĠĠĠĠĠĠĠ Ġsp ann able . set Span ( image Span , Ġ 0 , Ġ 1 , ĠSp anned . SPAN _ EXCL USIVE _ EXCL USIVE ) ĊĠĠĠĠĠĠĠ ĠAnimated View Chain ( progress Drawable , Ġsp ann able , Ġnull ) ĊĠĠĠ Ġ} Ċ Ċ internal Ġfun Ġstart Progress Drawable (): Ġ( Pair < Circular Progress Drawable ?, ĠCharSequence ?> ) Ġ-> ĠPair < Circular Progress Drawable ?, ĠCharSequence ?> Ġ= ĊĠĠĠ Ġ{ Ġpair Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġ( progress Drawable , Ġ_) Ġ= Ġpair ĊĠĠĠĠĠĠĠ Ġprogress Drawable ?. start () ĊĠĠĠĠĠĠĠ Ġpair ĊĠĠĠ Ġ} Ċ Ċ internal Ġfun ĠTextView . setText From Sp ann able (): Ġ( Pair < Circular Progress Drawable ?, ĠCharSequence ?> ) Ġ-> ĠPair < Circular Progress Drawable ?, ĠCharSequence ?> Ġ= ĊĠĠĠ Ġ{ Ġpair Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġ(_, Ġsp ann able String ) Ġ= Ġpair ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġsp ann able String ĊĠĠĠĠĠĠĠ Ġpair ĊĠĠĠ Ġ} Ċ