package Ġorg . library simpl ified . audio book . views Ċ Ċ import Ġandroid . os . Handler Ċ import Ġandroid . os . Looper Ċ Ċ /** Ċ Ġ* ĠUtility Ġfunctions Ġto Ġexecute Ġcode Ġon Ġthe ĠAndroid ĠUI Ġthread . Ċ Ġ*/ Ċ Ċ internal Ġclass ĠUIT hread Ġprivate Ġconstructor () Ġ{ ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCheck Ġthat Ġthe Ġcurrent Ġthread Ġis Ġthe ĠUI Ġthread Ġand Ġraise Ġ{@ link ĠIllegalStateException } ĊĠĠĠĠ Ġ* Ġif Ġit Ġisn 't . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġcheck Is UIT hread () Ġ{ ĊĠĠĠĠĠ Ġif Ġ( is UIT hread () Ġ== Ġfalse ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegalStateException ( ĊĠĠĠĠĠĠĠĠĠ ĠString . format ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Current Ġthread Ġ'% s ' Ġis Ġnot Ġthe ĠAndroid ĠUI Ġthread ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThread . currentThread () ĊĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ@ return Ġ` true ` Ġiff Ġthe Ġcurrent Ġthread Ġis Ġthe ĠUI Ġthread . ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġis UIT hread (): ĠBoolean Ġ{ ĊĠĠĠĠĠ Ġreturn ĠL ooper . get Main Looper (). thread Ġ=== ĠThread . currentThread () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠRun Ġthe Ġgiven ĠRunnable Ġon Ġthe ĠUI Ġthread . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġr ĠThe Ġrunnable ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġrun On UIT hread ( r : ĠRunnable ) Ġ{ ĊĠĠĠĠĠ Ġval Ġlo oper Ġ= ĠL ooper . get Main Looper () ĊĠĠĠĠĠ Ġval Ġh Ġ= ĠHandler ( lo oper ) ĊĠĠĠĠĠ Ġh . post ( r ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠRun Ġthe Ġgiven ĠRunnable Ġon Ġthe ĠUI Ġthread Ġafter Ġthe Ġspecified Ġdelay . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġr ĠThe Ġrunnable ĊĠĠĠĠ Ġ* Ġ@ param Ġms ĠThe Ġdelay Ġin Ġmilliseconds ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġrun On UIT hread Delayed ( ĊĠĠĠĠĠ Ġr : ĠRunnable , ĊĠĠĠĠĠ Ġms : ĠLong ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠ Ġval Ġlo oper Ġ= ĠL ooper . get Main Looper () ĊĠĠĠĠĠ Ġval Ġh Ġ= ĠHandler ( lo oper ) ĊĠĠĠĠĠ Ġh . post Delayed ( r , Ġms ) ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ