@@ -14,6 +14,8 @@ import com.nlinterface.R
1414import com.nlinterface.databinding.ActivitySettingsBinding
1515import com.nlinterface.utility.ActivityType
1616import com.nlinterface.utility.GlobalParameters
17+ import com.nlinterface.utility.GlobalParameters.ThemeChoice
18+ import com.nlinterface.utility.GlobalParameters.KeepScreenOn
1719import com.nlinterface.utility.STTInputType
1820import com.nlinterface.utility.setViewRelativeSize
1921import com.nlinterface.viewmodels.SettingsViewModel
@@ -57,6 +59,8 @@ class SettingsActivity : AppCompatActivity() {
5759
5860 private lateinit var lastCommand: String
5961 private lateinit var lastResponse: String
62+
63+ private val globalParameters = GlobalParameters .instance!!
6064
6165 /* *
6266 * The onCreate Function initializes the view by binding the Activity and the Layout,
@@ -93,26 +97,17 @@ class SettingsActivity : AppCompatActivity() {
9397 private fun configureUI () {
9498
9599 voiceActivationButton = findViewById<View >(R .id.voice_activation_bt) as ImageButton
96- voiceActivationButton.setOnClickListener {
97- onVoiceActivationButtonClick()
98- }
99-
100+ voiceActivationButton.setOnClickListener { onVoiceActivationButtonClick() }
101+
100102 setViewRelativeSize(voiceActivationButton, 1.0 , 0.33 )
101103
102104 themeButton = findViewById(R .id.settings_theme)
103- themeButton.text = themeOptions[GlobalParameters .instance!! .themeChoice.ordinal]
104-
105- themeButton.setOnClickListener {
106- onThemeButtonClick()
107- }
108-
105+ themeButton.setOnClickListener { onThemeButtonClick() }
106+ themeButton.text = themeOptions[globalParameters.themeChoice.ordinal]
107+
109108 keepScreenOnButton = findViewById(R .id.settings_keep_screen_on)
110- keepScreenOnButton.text =
111- keepScreenOnOptions[GlobalParameters .instance!! .keepScreenOn.ordinal]
112-
113- keepScreenOnButton.setOnClickListener {
114- onKeepScreenOnButtonClick()
115- }
109+ keepScreenOnButton.setOnClickListener { onKeepScreenOnButtonClick() }
110+ keepScreenOnButton.text = keepScreenOnOptions[globalParameters.keepScreenOn.ordinal]
116111
117112 }
118113
@@ -122,18 +117,14 @@ class SettingsActivity : AppCompatActivity() {
122117 */
123118 private fun onThemeButtonClick () {
124119
125- if (
126- GlobalParameters .instance!! .themeChoice.ordinal ==
127- GlobalParameters .ThemeChoice .values().size - 1
128- ) {
129- GlobalParameters .instance!! .themeChoice = GlobalParameters .ThemeChoice .values()[0 ]
120+ if (globalParameters.themeChoice.ordinal == ThemeChoice .values().size - 1 ) {
121+ globalParameters.themeChoice = ThemeChoice .values()[0 ]
130122 } else {
131- GlobalParameters .instance!! .themeChoice =
132- GlobalParameters .ThemeChoice .values()[
133- GlobalParameters .instance!! .themeChoice.ordinal + 1
134- ]
123+ globalParameters.themeChoice =
124+ ThemeChoice .values()[globalParameters.themeChoice.ordinal + 1 ]
135125 }
136- themeButton.text = themeOptions[GlobalParameters .instance!! .themeChoice.ordinal]
126+
127+ themeButton.text = themeOptions[globalParameters.themeChoice.ordinal]
137128
138129 viewModel.say(resources.getString(R .string.new_theme_setting, themeButton.text))
139130 }
@@ -144,20 +135,14 @@ class SettingsActivity : AppCompatActivity() {
144135 */
145136 private fun onKeepScreenOnButtonClick () {
146137
147- if (
148- GlobalParameters .instance!! .keepScreenOn.ordinal ==
149- GlobalParameters .KeepScreenOn .values().size - 1
150- ) {
151- GlobalParameters .instance!! .keepScreenOn =
152- GlobalParameters .KeepScreenOn .values()[0 ]
138+ if (globalParameters.keepScreenOn.ordinal == KeepScreenOn .values().size - 1 ) {
139+ globalParameters.keepScreenOn = KeepScreenOn .values()[0 ]
153140 } else {
154- GlobalParameters .instance!! .keepScreenOn =
155- GlobalParameters .KeepScreenOn .values()[
156- GlobalParameters .instance!! .keepScreenOn.ordinal + 1
157- ]
141+ globalParameters.keepScreenOn =
142+ KeepScreenOn .values()[globalParameters.keepScreenOn.ordinal + 1 ]
158143 }
159- keepScreenOnButton.text =
160- keepScreenOnOptions[GlobalParameters .instance !! .keepScreenOn.ordinal]
144+
145+ keepScreenOnButton.text = keepScreenOnOptions[globalParameters .keepScreenOn.ordinal]
161146
162147 viewModel.say(resources.getString(R .string.new_screen_setting, keepScreenOnButton.text))
163148 }
@@ -172,15 +157,18 @@ class SettingsActivity : AppCompatActivity() {
172157 getString(R .string.settings_preferences_key),
173158 Context .MODE_PRIVATE
174159 ) ? : return
160+
175161 with (sharedPref.edit()) {
162+
163+
176164 putString(
177165 getString(R .string.settings_keep_screen_on_key),
178- GlobalParameters .instance !! .keepScreenOn.toString()
166+ globalParameters .keepScreenOn.toString()
179167 )
180168 putString(
181- getString(R .string.settings_theme_key),
182- GlobalParameters .instance!! .themeChoice.toString()
169+ getString(R .string.settings_theme_key), globalParameters.themeChoice.toString()
183170 )
171+
184172 apply ()
185173 }
186174 }
@@ -296,14 +284,8 @@ class SettingsActivity : AppCompatActivity() {
296284
297285 viewModel.say(
298286 " ${resources.getString(R .string.your_options_are)} " +
299- " ${resources.getString(R .string.add_an_item)} ," +
300- " ${resources.getString(R .string.remove_an_item)} ," +
301- " ${resources.getString(R .string.add_an_item_to_the_cart)} ," +
302- " ${resources.getString(R .string.remove_an_item_from_the_cart)} ," +
303- " ${resources.getString(R .string.check_if_an_item_is_on_the_list)} ," +
304- " ${resources.getString(R .string.list_all_grocery_items)} ," +
305- " ${resources.getString(R .string.list_all_items_not_in_cart)} ," +
306- " ${resources.getString(R .string.list_all_items_in_cart)} ," +
287+ " ${resources.getString(R .string.change_theme)} ," +
288+ " ${resources.getString(R .string.change_screen_settings)} ," +
307289 " ${resources.getString(R .string.navigate_to_grocery_list)} ," +
308290 " ${resources.getString(R .string.navigate_to_place_details)} and" +
309291 " ${resources.getString(R .string.navigate_to_settings)} ."
@@ -340,21 +322,21 @@ class SettingsActivity : AppCompatActivity() {
340322 when (response) {
341323
342324 resources.getString(R .string.default_theme) -> {
343- viewModel.setTheme(GlobalParameters . ThemeChoice .SYSTEM_DEFAULT )
325+ viewModel.setTheme(ThemeChoice .SYSTEM_DEFAULT )
344326 viewModel.say(
345327 resources.getString(R .string.new_theme_setting, " default" )
346328 )
347329 }
348330
349331 resources.getString(R .string.light_theme) -> {
350- viewModel.setTheme(GlobalParameters . ThemeChoice .LIGHT )
332+ viewModel.setTheme(ThemeChoice .LIGHT )
351333 viewModel.say(
352334 resources.getString(R .string.new_theme_setting, " light theme" )
353335 )
354336 }
355337
356338 resources.getString(R .string.dark_theme) -> {
357- viewModel.setTheme(GlobalParameters . ThemeChoice .DARK )
339+ viewModel.setTheme(ThemeChoice .DARK )
358340 viewModel.say(
359341 resources.getString(R .string.new_theme_setting, " dark theme" )
360342 )
@@ -369,15 +351,15 @@ class SettingsActivity : AppCompatActivity() {
369351 when (response) {
370352
371353 resources.getString(R .string.keep_screen_always_on) -> {
372- viewModel.setScreenSettings(GlobalParameters . KeepScreenOn .YES )
354+ viewModel.setScreenSettings(KeepScreenOn .YES )
373355 viewModel.say(
374356 resources.getString(R .string.new_screen_setting,
375357 " keep screen always on" )
376358 )
377359 }
378360
379361 resources.getString(R .string.dim_screen_after_a_while) -> {
380- viewModel.setScreenSettings(GlobalParameters . KeepScreenOn .NO )
362+ viewModel.setScreenSettings(KeepScreenOn .NO )
381363 viewModel.say(
382364 resources.getString(R .string.new_screen_setting,
383365 " dim screen after a while" )
0 commit comments