package Ġcom . commons ense . android . kotlin . system . base . helpers Ċ Ċ import Ġandroid . app .* Ċ import Ġcom . commons ense . android . kotlin . base .* Ċ import Ġcom . commons ense . android . kotlin . base . extensions . collections .* Ċ import Ġcom . commons ense . android . kotlin . system . extensions .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġk asper Ġon Ġ 1 5 / 1 2 / 2 0 1 7 . Ċ Ġ* ĠHandles Ġdis missing Ġkeyboard Ġwhen Ġswitching Ġscreens Ġ. Ċ Ġ* Ċ Ġ*/ Ċ class ĠKeyboard Handler Helper Ġ{ ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġif Ġfalse , Ġnothing Ġhappens Ġat Ġlifecycle Ġevents ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġis Enabled : ĠBoolean Ġ= Ġtrue ĊĊĠĠĠ Ġvar Ġhide On Pause : ĠBoolean Ġ= Ġtrue ĊĊĊĠĠĠ Ġfun Ġon Destroy ( activity : ĠActivity ) Ġ= Ġif IsEnabled Ġ{ ĊĠĠĠĠĠĠĠ Ġactivity . hide Soft Keyboard () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Pause ( activity : ĠActivity ) Ġ= Ġif IsEnabled Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( hide On Pause ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . hide Soft Keyboard () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinline Ġfun Ġif IsEnabled ( cross inline Ġaction : ĠEmpty Function ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis Enabled . if True ( action ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ= Ġto Pretty String () ĊĊĠĠĠ Ġfun Ġto Pretty String (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Keyboard Ġhandler Ġstate : Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ n \ t \ tis Ġenabled : Ġ$ isEnabled " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"\ n \ t \ t Hide Ġon Ġpause : Ġ$ hide On Pause " ĊĠĠĠ Ġ} Ċ }