Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java	(revision 8462)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java	(revision 8463)
@@ -520,6 +520,7 @@
                 @Override
                 public void actionPerformed(ActionEvent e) {
-                    boolean sel=((JCheckBoxMenuItem) e.getSource()).getState();
-                    PROPERTY_FIX_TAG_LOCALE.put(sel);
+                    boolean use=((JCheckBoxMenuItem) e.getSource()).getState();
+                    PROPERTY_FIX_TAG_LOCALE.put(use);
+                    keys.setFixedLocale(use);
                 }
             });
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletingComboBox.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletingComboBox.java	(revision 8462)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletingComboBox.java	(revision 8463)
@@ -314,5 +314,17 @@
         useFixedLocale = f;
         if (useFixedLocale) {
-            privateInputContext.selectInputMethod(new Locale("en", "US"));
+            Locale oldLocale = privateInputContext.getLocale();
+            Main.info("Using English input method");
+            if (!privateInputContext.selectInputMethod(new Locale("en", "US"))) {
+                // Unable to use English keyboard layout, disable the feature
+                Main.warn("Unable to use English input method");
+                useFixedLocale = false;
+                if (oldLocale != null) {
+                    Main.info("Restoring input method to " + oldLocale);
+                    if (!privateInputContext.selectInputMethod(oldLocale)) {
+                        Main.warn("Unable to restore input method to " + oldLocale);
+                    }
+                }
+            }
         }
     }
