@@ -184,19 +184,23 @@ private void loadSettings() {
184
184
private void resetSettingsAction () {
185
185
logger .info ("Attempting to reset all settings" );
186
186
if (FxUtils .showConfirmationAlert (translationBundle .getString ("ConfirmReset" ), getClass ().getResourceAsStream (SharedVariables .ICON_URL ))) {
187
- showAlertIfLanguageMismatch (DEFAULT_LOCALE );
188
-
189
187
Application .setUserAgentStylesheet (new PrimerLight ().getUserAgentStylesheet ());
190
188
try {
191
189
settingsController .createDefaultProperties ();
192
190
settingsController .setProperties (settingsController .readPropertiesFile ());
193
191
192
+ final Locale locale = Locale .forLanguageTag (DEFAULT_LOCALE );
193
+ final ResourceBundle translationBundle = ResourceBundle .getBundle ("translations.OpalApplication" , locale );
194
+
195
+ mainWindowController .updateResourceBundle (translationBundle );
196
+
194
197
mainWindowController .loadMediaButtonVisibility (Boolean .parseBoolean (settingsController .getProperties ().getProperty ("mediaButtons" , "true" )));
195
198
mainWindowController .setAudioBalance (Double .parseDouble (settingsController .getProperties ().getProperty ("audioBalance" , "0.0" )));
196
199
197
200
trayIconController .hideTrayIcon ();
198
201
199
- loadSettings ();
202
+ Stage stage = (Stage ) sldAudioBalance .getScene ().getWindow ();
203
+ stage .close ();
200
204
} catch (final IOException ex ) {
201
205
logger .error ("Unable to reset all settings" , ex );
202
206
FxUtils .showErrorAlert (translationBundle .getString ("ResetSettingsError" ), ex .toString (), getClass ().getResourceAsStream (SharedVariables .ICON_URL ));
@@ -228,9 +232,13 @@ private void saveSettingsAction() {
228
232
trayIconController .hideTrayIcon ();
229
233
}
230
234
231
- showAlertIfLanguageMismatch (settingsController .getProperties ().getProperty ("locale" , DEFAULT_LOCALE ));
235
+ final String languageTag = LanguageController .getLocaleFromLanguageIndex (cboLanguage .getSelectionModel ().getSelectedIndex ());
236
+ final Locale locale = Locale .forLanguageTag (languageTag );
237
+ final ResourceBundle translationBundle = ResourceBundle .getBundle ("translations.OpalApplication" , locale );
238
+
239
+ mainWindowController .updateResourceBundle (translationBundle );
232
240
233
- settingsController .getProperties ().setProperty ("locale" , LanguageController . getLocaleFromLanguageIndex ( cboLanguage . getSelectionModel (). getSelectedIndex ()) );
241
+ settingsController .getProperties ().setProperty ("locale" , languageTag );
234
242
235
243
settingsController .getProperties ().setProperty ("theme" , cboTheme .getSelectionModel ().getSelectedItem ());
236
244
settingsController .getProperties ().setProperty ("loglevel" , cboLogLevel .getValue ());
@@ -281,19 +289,6 @@ private void saveSettingsAction() {
281
289
}
282
290
}
283
291
284
- /**
285
- * Show an information alert if a restart is required
286
- *
287
- * @param languageToMatch The language that needs to be matched to the combobox
288
- */
289
- private void showAlertIfLanguageMismatch (final String languageToMatch ) {
290
- final String newLanguage = LanguageController .getLocaleFromLanguageIndex (cboLanguage .getSelectionModel ().getSelectedIndex ());
291
-
292
- if (!languageToMatch .equals (newLanguage )) {
293
- FxUtils .showInformationAlert (translationBundle .getString ("RestartRequired" ), getClass ().getResourceAsStream (SharedVariables .ICON_URL ));
294
- }
295
- }
296
-
297
292
/**
298
293
* Method that is invoked when the window should be closed
299
294
*
0 commit comments