package Ġcom . sk yy o . samples . features . scan QR Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġcom . sk yy o . samples . extensions . log Ċ import Ġcom . sk yy o . samples . utils . Navigation Dispatcher Ċ import Ġdagger . h ilt . android . lifecycle . H ilt ViewModel Ċ import Ġjavax . inject . Inject Ċ Ċ @ H ilt ViewModel Ċ class ĠQ r ViewModel Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġnavigation Dispatcher : ĠNavigation Dispatcher , Ċ ) Ġ: ĠViewModel () Ġ{ ĊĊĠĠĠ Ġvar Ġis Processing Allowed Ġ= Ġtrue ĊĊĠĠĠ Ġfun Ġon Qr Code Re cognized ( qr Code : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// handle Ġthe Ġmultiple Ġevents Ġhere Ġby Ġusing Ġa Ġboolean , Ġclosing Ġthe Ġscanner Ġetc ĊĠĠĠĠĠĠĠ Ġ// Ġremember Ġto Ġset Ġis Processing Allowed Ġto Ġtrue Ġif Ġneeded , Ġeg . Ġin Ġon Resume () ĊĠĠĠĠĠĠĠ Ġif Ġ(! is Processing Allowed ) Ġreturn ĊĠĠĠĠĠĠĠ Ġis Processing Allowed Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġlog (" qr Code :$ qr Code ") ĊĠĠĠ Ġ} Ċ } Ċ