package Ġorg . erg op l atform . ios . ui Ċ Ċ import Ġkotlinx . coroutines . Coroutine Scope Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġkotlinx . coroutines . cancel Ċ import Ġorg . erg op l atform . utils . Log Utils Ċ import Ġorg . ro bo vm . apple . u ikit . UI ViewController Ċ Ċ abstract Ġclass ĠCor outine ViewController Ġ: ĠUI ViewController () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġ_ view Controller Scope : ĠCor outine Scope ? Ġ= Ġnull ĊĠĠĠ Ġval Ġview Controller Scope : ĠCor outine Scope ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(_ view Controller Scope Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Utils . log Debug ( this . java Class . simple Name , Ġ" view Controller Scope Ġstarted ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ view Controller Scope Ġ= ĠCor outine Scope ( Dispatch ers . Default ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ_ view Controller Scope !! ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġview Did Ap pear ( animated : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . view Did Ap pear ( animated ) ĊĠĠĠĠĠĠĠ Ġget App Delegate (). add App Active Observer ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġview Will Dis appear ( animated : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . view Will Dis appear ( animated ) ĊĠĠĠĠĠĠĠ Ġget App Delegate (). remove App Active Observer ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġview Did Dis appear ( animated : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . view Did Dis appear ( animated ) ĊĠĠĠĠĠĠĠ Ġ_ view Controller Scope ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog Utils . log Debug ( this . java Class . simple Name , Ġ" view Controller Scope Ġcancelled ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . cancel () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ_ view Controller Scope Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcalled Ġwhen Ġapp Ġgets Ġactive Ġagain , Ġoverride Ġin Ġsubclasses ĊĠĠĠ Ġ} Ċ }