package Ġcom . android bol ts . library . utils Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . location . Location Ċ import Ġandroid . location . Location Manager Ċ import Ġandroid . os . Build Ċ import Ġandroid . os . System Clock Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . annotation . Requires Api Ċ import Ġandroidx . appcompat . app . AlertDialog Ċ import Ġcom . android bol ts . library . R Ċ Ċ internal Ġinline Ġfun Ġ< R > ĠR ?. orElse ( block : Ġ() Ġ-> ĠR ): ĠR Ġ{ ĊĠĠĠ Ġreturn Ġthis Ġ?: Ġblock () Ċ } Ċ Ċ internal Ġfun Ġshow Loading Dialog ( ĊĠĠĠ Ġcontext : Context , ĊĠĠĠ Ġmessage : ĠString ?, ĊĠĠĠ Ġtitle : ĠString ? Ġ= Ġ"", ĊĠĠĠ Ġcancel able : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġon Positive Button Clicked : () Ġ-> ĠUnit , Ġon Negative Button Clicked : ()-> Unit ): ĠAlertDialog ? Ġ{ ĊĠĠĠ Ġval Ġbuilder Ġ= ĠAlertDialog . Builder ( context ) ĊĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( context ). inflate ( R . layout . progress _ layout , Ġnull ) ĊĠĠĠ Ġval Ġtv Title Ġ= Ġview . findViewById < TextView >( R . id . title ) ĊĠĠĠ Ġtv Title . visibility Ġ= ĠView . GONE ĊĠĠĠ Ġif Ġ(! title . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġtv Title . text Ġ= Ġtitle ĊĠĠĠĠĠĠĠ Ġtv Title . visibility Ġ= ĠView . VISIBLE ĊĠĠĠ Ġ} ĊĠĠĠ Ġview . findViewById < TextView >( R . id . message ). text Ġ= Ġmessage ĊĠĠĠ Ġbuilder . set Positive Button (" Retry ") Ġ{ Ġ_, Ġ_ -> ĊĠĠĠĠĠĠĠ Ġon Positive Button Clicked () ĊĠĠĠ Ġ} ĊĠĠĠ Ġbuilder . set Negative Button (" Cancel "){ _, _ Ġ-> ĊĠĠĠĠĠĠĠ Ġon Negative Button Clicked () ĊĠĠĠ Ġ} ĊĠĠĠ Ġbuilder . setView ( view ) ĊĠĠĠ Ġval Ġdialog Ġ= Ġbuilder . create () ĊĠĠĠ Ġdialog . set Cancel able ( cancel able ) ĊĠĠĠ Ġreturn Ġdialog Ċ }