package Ġcom . jar vis . ca Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Color Filter Ċ import Ġandroid . graphics . Port er D uff Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroidx . annotation .* Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroidx . core . view . View Compat Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . view . animation . Animation Utils Ċ import Ġjava . lang . ref . Weak Reference ĊĊ Ċ class ĠA ler ter Factory Ġprivate Ġconstructor () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġalert : ĠJar vis Alert ? Ġ= Ġnull ĊĊĠĠĠ Ġprivate Ġval Ġactivity Decor View : ĠViewGroup ? ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġdecor View : ĠViewGroup ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Weak Reference ?. get ()?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdecor View Ġ= Ġit . window . decor View Ġas ĠViewGroup ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġdecor View ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġshow (): ĠJar vis Alert ? Ġ{ ĊĠĠĠĠĠĠĠ Ġactivity Weak Reference ?. get ()?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . run On Ui Thread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Decor View ?. addView ( alert ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġalert ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠsetTitle (@ String Res Ġtitle Id : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setTitle ( title Id ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠsetTitle ( title : ĠCharSequence ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setTitle ( title ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠsetTitle Type face ( type face : ĠType face ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setTitle Type face ( type face ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠsetTitle Appearance (@ Style Res Ġtext Appearance : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setTitle Appearance ( text Appearance ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Content Gravity ( gravity : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. content Gravity Ġ= Ġgravity ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Text (@ String Res Ġtext Id : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setText ( text Id ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Text ( text : ĠCharSequence ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setText ( text ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Text Type face ( type face : ĠType face ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setText Type face ( type face ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset TextAppearance (@ Style Res Ġtext Appearance : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setText Appearance ( text Appearance ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset BackgroundColor Int (@ Color Int Ġcolor Int : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Alert BackgroundColor ( color Int ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset BackgroundColor Res (@ Color Res Ġcolor Res Id : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġactivity Weak Reference ?. get ()?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġalert ?. set Alert BackgroundColor ( Context Compat . getColor ( it , Ġcolor Res Id )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Background Drawable ( drawable : ĠDrawable ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Alert Background Drawable ( drawable ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Background Resource (@ Drawable Res Ġdrawable Res Id : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Alert Background Resource ( drawable Res Id ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon (@ Drawable Res Ġicon Id : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon ( icon Id ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon ( bitmap : ĠBitmap ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon ( bitmap ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon ( drawable : ĠDrawable ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon ( drawable ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon Size (@ Dim en Res Ġsize : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon Size ( size ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon Pixel Size (@ Px Ġsize : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon Pixel Size ( size ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon Color Filter (@ Color Int Ġcolor : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon Color Filter ( color ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon Color Filter ( color Filter : ĠColor Filter ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon Color Filter ( color Filter ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Icon Color Filter (@ Color Int Ġcolor : ĠInt , Ġmode : ĠPort er D uff . Mode ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setIcon Color Filter ( color , Ġmode ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġhide Icon (): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. show Icon ( false ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset OnClickListener ( on ClickListener : ĠView . OnClickListener ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setOnClickListener ( on ClickListener ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Duration ( milliseconds : ĠLong ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. duration Ġ= Ġmilliseconds ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġenable Icon Pulse ( pulse : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. pulse Icon ( pulse ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġshow Icon ( show Icon : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. show Icon ( show Icon ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġenable Infinite Duration ( infinite Duration : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Enable Infinite Duration ( infinite Duration ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset On Show Listener ( listener : ĠOn Show Jar vis Alert Listener ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. setOn Show Listener ( listener ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset On Hide Listener ( listener : ĠOn Hide Jar vis Alert Listener ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. on Hide Listener Ġ= Ġlistener ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġenable Swipe To Dismiss (): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. enable Swipe To Dismiss () ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġenable V ibration ( enable : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set V ibration Enabled ( enable ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġenable Sound ( enable : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Sound Enabled ( enable ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdisable Outside Touch (): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. disable Outside Touch () ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġenable Progress ( enable : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Enable Progress ( enable ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Progress Color Res (@ Color Res Ġcolor : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Progress Color Res ( color ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Progress Color Int (@ Color Int Ġcolor : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Progress Color Int ( color ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Dismiss able ( dismiss able : ĠBoolean ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. set Dismiss ible ( dismiss able ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Enter Animation (@ Anim Res Ġanimation : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. enter Animation Ġ= ĠAnimation Utils . load Animation ( alert ?. context , Ġanimation ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Exit Animation (@ Anim Res Ġanimation : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. exit Animation Ġ= ĠAnimation Utils . load Animation ( alert ?. context , Ġanimation ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Button ( ĊĠĠĠĠĠĠĠ Ġtext : ĠCharSequence , Ġ@ Style Res Ġstyle : ĠInt Ġ= ĠR . style . Alert Button , ĊĠĠĠĠĠĠĠ ĠonClick : ĠView . OnClickListener ĊĠĠĠ Ġ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. add Button ( text , Ġstyle , ĠonClick ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Button Type face ( type face : ĠType face ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġalert ?. button Type Face Ġ= Ġtype face ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Layout Container (): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġalert ?. layout Container ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Activity ( activity : ĠActivity ) Ġ{ ĊĠĠĠĠĠĠĠ Ġactivity Weak Reference Ġ= ĠWeak Reference ( activity ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġactivity Weak Reference : ĠWeak Reference < Activity >? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( activity : ĠActivity ?): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcreate ( activity , ĠR . layout . aler ter _ alert _ default _ layout ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( activity : ĠActivity ?, Ġ@ Layout Res Ġlayout Id : ĠInt ): ĠA ler ter Factory Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( activity Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegalArgumentException (" Activity Ġcannot Ġbe Ġnull !") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġal er ter Ġ= ĠA ler ter Factory () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Hide Ġcurrent ĠJar vis Alert , Ġif Ġone Ġis Ġactive ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclear Current ( activity ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġal er ter . set Activity ( activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġal er ter . alert Ġ= ĠJar vis Alert ( activity , Ġlayout Id ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġal er ter ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġclear Current ( activity : ĠActivity ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( activity ?. window ?. decor View Ġas ? ĠViewGroup )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Find Ġall ĠJar vis Alert ĠViews Ġin ĠParent Ġlayout ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 .. it . child Count ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchild View Ġ= Ġif Ġ( it . getChild At ( i ) Ġis ĠJar vis Alert ) Ġit . getChild At ( i ) Ġas ĠJar vis Alert Ġelse Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( child View Ġ!= Ġnull Ġ&& Ġchild View . window Token Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠView Compat . animate ( child View ). alpha ( 0 f ). with End Action ( get Remove View Runnable ( child View )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġhide () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Weak Reference ?. get ()?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclear Current ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġval Ġis Showing : ĠBoolean ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġis Showing Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Weak Reference ?. get ()?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Showing Ġ= Ġit . findViewById < View >( R . id . ll Alert Background ) Ġ!= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġis Showing ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Remove View Runnable ( child View : ĠJar vis Alert ?): ĠRunnable Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRunnable Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchild View ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( child View . parent Ġas ? ĠViewGroup )?. remove View ( child View ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }