package Ġeu . kan ade . t ach iy omi . ui . setting Ċ Ċ import Ġandroidx . fragment . app . Fragment Activity Ċ import Ġandroidx . preference . Preference Screen Ċ import Ġeu . kan ade . t ach iy omi . R Ċ import Ġeu . kan ade . t ach iy omi . data . preference . Preference Keys Ċ import Ġeu . kan ade . t ach iy omi . data . preference . as Immediate Flow In Ċ import Ġeu . kan ade . t ach iy omi . ui . security . Secure Activity Delegate Ċ import Ġeu . kan ade . t ach iy omi . util . system . Authenticator Util . is Authentication Supported Ċ Ċ class ĠSettings Security Controller Ġ: ĠSettings Controller () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġsetup Preference Screen ( screen : ĠPreference Screen ) Ġ= Ġscreen . apply Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . security ĊĊĠĠĠĠĠĠĠ Ġif Ġ( context . is Authentication Supported ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Preference Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= ĠPreference Keys . use Bio metrics ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . lock _ with _ bio metrics ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠdefaultValue Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Authentication ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Ġas ? ĠFragment Activity , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity !!. getString ( R . string . lock _ with _ bio metrics ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġint List Preference ( activity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= ĠPreference Keys . lock After ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . lock _ when _ idle ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalues Ġ= ĠlistOf ( 0 , Ġ 2 , Ġ 5 , Ġ 1 0 , Ġ 2 0 , Ġ 3 0 , Ġ 6 0 , Ġ 9 0 , Ġ 1 2 0 , Ġ- 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentries Ġ= Ġvalues . map NotNull Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( it ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġcontext . getString ( R . string . always ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ- 1 Ġ-> Ġcontext . getString ( R . string . never ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġresources ?. get Quantity String ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . plurals . after _ minutes , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentry Values Ġ= Ġvalues ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠdefaultValue Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpreferences . use Bio metrics (). as Immediate Flow In ( view Scope ) Ġ{ Ġis Visible Ġ= Ġit Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġswitch Preference Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= ĠPreference Keys . secure Screen ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . secure _ screen ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsummary Res Ġ= ĠR . string . hide _ app _ block _ screenshots ĊĠĠĠĠĠĠĠĠĠĠĠ ĠdefaultValue Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonChange Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġas ĠBoolean ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSecure Activity Delegate . set Secure ( activity , Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġswitch Preference Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkey Ġ= ĠPreference Keys . hide Notification Content ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res Ġ= ĠR . string . hide _ notification _ content ĊĠĠĠĠĠĠĠĠĠĠĠ ĠdefaultValue Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ