package Ġcom . f ial as f ias co . custom dic er ol ler Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . SharedPreferences Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . widget . Seek Bar Ċ import Ġandroid . widget . TextView Ċ import Ġkotlinx . android . synt hetic . main . activity _ settings .* Ċ Ċ const Ġval ĠDEFAULT _ SHA KE _ ENABLED Ġ= Ġtrue Ċ const Ġval ĠDEFAULT _ SHA KE _ S ENS IT IVITY Ġ= Ġ 4 Ċ const Ġval ĠDEFAULT _ SHA KE _ DURATION Ġ= Ġ 4 Ċ const Ġval ĠDEFAULT _ H OLD _ DURATION Ġ= Ġ 4 Ċ Ċ class ĠSettings Ġ: ĠAppCompatActivity (), ĠSeek Bar . On Seek Bar ChangeListener Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġpreferences : ĠSharedPreferences ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ settings ) ĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( settings Toolbar ) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. set Display Home As Up Enabled ( true ) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. set Display Show Home Enabled ( true ) ĊĊĠĠĠĠĠĠĠ Ġpreferences Ġ= Ġget SharedPreferences ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . preference _ file _ key ), ĠContext . MODE _ PRIVATE ) ĊĊĠĠĠĠĠĠĠ Ġsetup Sh ake Setting () ĊĠĠĠĠĠĠĠ Ġsetup Sh ake Sensitivity () ĊĠĠĠĠĠĠĠ Ġsetup Sh ake Duration () ĊĠĠĠĠĠĠĠ Ġsetup Hold Duration () ĊĠĠĠĠĠĠĠ Ġset Sh ake Sub Settings Enabled () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Support Navigate Up (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġon Back Pressed () ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Sh ake Setting () ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsh ake Set Ġ= Ġpreferences . getBoolean ( getString ( R . string . shake _ preference _ key ), DEFAULT _ SHA KE _ ENABLED ) ĊĊĠĠĠĠĠĠĠ Ġsh ake To Roll Switch . isChecked Ġ= Ġsh ake Set ĊĊĠĠĠĠĠĠĠ Ġsh ake To Roll Switch . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġpreferences . edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Boolean ( getString ( R . string . shake _ preference _ key ), Ġsh ake To Roll Switch . isChecked ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Sh ake Sub Settings Enabled () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Sh ake Sensitivity () ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsh ake Sensitivity Ġ= Ġpreferences . getInt ( getString ( R . string . shake _ s ensitivity _ key ), ĠDEFAULT _ SHA KE _ S ENS IT IVITY ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠWe ird Ġhack Ġso Ġthat Ġthe Ġprogress Ġgets Ġupdated . ĠH ad Ġto Ġfind Ġit Ġonline . ĊĠĠĠĠĠĠĠ Ġ// Ġhttps :// stackoverflow . com / questions / 9 7 9 2 8 8 8 / android - seek bar - set - progress - value ĊĠĠĠĠĠĠĠ Ġsh ake Sensitivity Bar . max Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġsh ake Sensitivity Bar . max Ġ= Ġ 8 ĊĠĠĠĠĠĠĠ Ġsh ake Sensitivity Bar . setOn Seek Bar ChangeListener ( this ) ĊĠĠĠĠĠĠĠ Ġsh ake Sensitivity Bar . progress Ġ= Ġsh ake Sensitivity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Sh ake Duration () ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsh ake Duration Ġ= Ġpreferences . getInt ( getString ( R . string . shake _ duration _ key ), ĠDEFAULT _ SHA KE _ DURATION ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠWe ird Ġhack Ġso Ġthat Ġthe Ġprogress Ġgets Ġupdated . ĠH ad Ġto Ġfind Ġit Ġonline . ĊĠĠĠĠĠĠĠ Ġ// Ġhttps :// stackoverflow . com / questions / 9 7 9 2 8 8 8 / android - seek bar - set - progress - value ĊĠĠĠĠĠĠĠ Ġsh ake Duration Bar . max Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġsh ake Duration Bar . max Ġ= Ġ 8 ĊĠĠĠĠĠĠĠ Ġsh ake Duration Bar . setOn Seek Bar ChangeListener ( this ) ĊĠĠĠĠĠĠĠ Ġsh ake Duration Bar . progress Ġ= Ġsh ake Duration ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Hold Duration () ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġhold Duration Ġ= Ġpreferences . getInt ( getString ( R . string . hold _ duration _ key ), ĠDEFAULT _ H OLD _ DURATION ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠWe ird Ġhack Ġso Ġthat Ġthe Ġprogress Ġgets Ġupdated . ĠH ad Ġto Ġfind Ġit Ġonline . ĊĠĠĠĠĠĠĠ Ġ// Ġhttps :// stackoverflow . com / questions / 9 7 9 2 8 8 8 / android - seek bar - set - progress - value ĊĠĠĠĠĠĠĠ Ġhold Duration Bar . max Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġhold Duration Bar . max Ġ= Ġ 8 ĊĠĠĠĠĠĠĠ Ġhold Duration Bar . setOn Seek Bar ChangeListener ( this ) ĊĠĠĠĠĠĠĠ Ġhold Duration Bar . progress Ġ= Ġhold Duration ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Sh ake Sub Settings Enabled () ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsh ake Enabled Ġ= Ġsh ake To Roll Switch . isChecked ĊĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . shake Sensitivity Text ). isEnabled Ġ= Ġsh ake Enabled ĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . shake Duration Text ). isEnabled Ġ= Ġsh ake Enabled ĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . hold Duration Text ). isEnabled Ġ= Ġsh ake Enabled ĊĊĠĠĠĠĠĠĠ ĠfindViewById < Seek Bar >( R . id . shake Sensitivity Bar ). isEnabled Ġ= Ġsh ake Enabled ĊĠĠĠĠĠĠĠ ĠfindViewById < Seek Bar >( R . id . shake Duration Bar ). isEnabled Ġ= Ġsh ake Enabled ĊĠĠĠĠĠĠĠ ĠfindViewById < Seek Bar >( R . id . hold Duration Bar ). isEnabled Ġ= Ġsh ake Enabled ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Progress Changed ( seek Bar : ĠSeek Bar , Ġprogress : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom User : ĠBoolean ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġwhen ĊĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġseek Bar . id Ġ== Ġsh ake Sensitivity Bar . id Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġpreferences . edit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Int ( getString ( R . string . shake _ s ensitivity _ key ), Ġprogress ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġseek Bar . id Ġ== Ġsh ake Duration Bar . id Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġpreferences . edit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Int ( getString ( R . string . shake _ duration _ key ), Ġprogress ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġseek Bar . id Ġ== Ġhold Duration Bar . id Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġpreferences . edit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Int ( getString ( R . string . hold _ duration _ key ), Ġprogress ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart Tracking Touch ( seek Bar : ĠSeek Bar ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Stop Tracking Touch ( seek Bar : ĠSeek Bar ) Ġ{ ĊĠĠĠ Ġ} Ċ } Ċ