package Ġco . nim ble hq . rx java . ui . screens . webview Ċ Ċ import Ġandroid . webkit . Web Chrome Client Ċ import Ġandroid . webkit . WebView Ċ Ċ class ĠApp Web Chrome Client ( private Ġval Ġon Progress : Ġ( WebView Progress ) Ġ-> ĠUnit ) Ġ: ĠWeb Chrome Client () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Progress Changed ( view : ĠWebView ?, Ġnew Progress : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Progress Changed ( view , Ġnew Progress ) ĊĠĠĠĠĠĠĠ Ġval Ġprogress Ġ= Ġwhen Ġ( new Progress ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPROG RESS _ STARTED Ġ-> ĠWebView Progress . Show ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPROG RESS _ COMPLETED Ġ-> ĠWebView Progress . Hide ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠWebView Progress . Progress ( new Progress ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġon Progress . invoke ( progress ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠWe Ġseparate Ġthe ĠWebView Progress Ġto Ġ 3 Ġstates Ġto Ġkeep Ġthe Ġway Ġto Ġhandle Ġprogress Ċ Ġ* Ġshowing / h iding Ġor Ġprogress Ġupdating Ġsimple Ġand Ġeasy . Ċ Ġ*/ Ċ sealed Ġclass ĠWebView Progress Ġ{ ĊĠĠĠ Ġobject ĠShow Ġ: ĠWebView Progress () ĊĠĠĠ Ġdata Ġclass ĠProgress ( val Ġprogress : ĠInt ) Ġ: ĠWebView Progress () ĊĠĠĠ Ġobject ĠHide Ġ: ĠWebView Progress () Ċ } Ċ Ċ private Ġconst Ġval ĠPROG RESS _ STARTED Ġ= Ġ 0 Ċ private Ġconst Ġval ĠPROG RESS _ COMPLETED Ġ= Ġ 1 0 0 Ċ