package Ġcom . em man uel keh inde . shutdown Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . widget . Toast Ċ Ċ class ĠShutdown Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠDEFAULT _ TIMEOUT : ĠLong Ġ= Ġ 3 0 0 0 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠDEFAULT _ MESSAGE Ġ= Ġ" Press Ġback Ġagain Ġto Ġclose " ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġlast Click Time : ĠLong Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠStatic Ġmethod Ġto Ġbe Ġcalled Ġthat Ġhandles Ġclosing Ġof Ġthe Ġapp Ġinter activ ely ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġcontext Ġthe ĠActivity Ġas Ġa Ġcontext ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġmessage Ġthe Ġmessage Ġto Ġbe Ġdisplayed ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtimeout Ġthe Ġtime Ġbefore Ġit Ġresets , Ġwhere by Ġuser Ġis Ġrequired Ġto Ġpress Ġback Ġtwice Ġagain ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġ@ Jvm Over loads ĊĠĠĠĠĠĠĠ Ġfun Ġnow ( context : ĠActivity ?, Ġmessage : ĠString Ġ= ĠDEFAULT _ MESSAGE , Ġtimeout : ĠLong Ġ= ĠDEFAULT _ TIMEOUT ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext ?. let Ġ{ Ġinit ( it , Ġmessage , Ġtimeout ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠHelper Ġmethod ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġcontext Ġthe ĠActivity Ġas Ġa Ġcontext ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġmessage Ġthe Ġmessage Ġto Ġbe Ġdisplayed ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtimeout Ġthe Ġtime Ġbefore Ġit Ġresets , Ġwhere by Ġuser Ġis Ġrequired Ġto Ġpress Ġback Ġtwice Ġagain ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġinit ( context : ĠActivity , Ġmessage : ĠString , Ġtimeout : ĠLong ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( last Click Time Ġ+ Ġtimeout Ġ> ĠSystem . currentTimeMillis ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . finish () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmake Text ( context , Ġmessage ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlast Click Time Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠShows Ġa Ġtoast Ġwith Ġthe Ġspecified Ġmessage Ġin Ġgiven Ġcontext ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġcontext Ġthe ĠActivity Ġas Ġa Ġcontext ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġmessage Ġthe Ġmessage Ġto Ġbe Ġdisplayed ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġmake Text ( context : ĠActivity , Ġmessage : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( context , Ġmessage , ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }