Index: trunk/src/org/openstreetmap/josm/actions/AboutAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 2305)
+++ trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 2308)
@@ -93,5 +93,5 @@
     static public void setUserAgent() {
         Properties sysProp = System.getProperties();
-        sysProp.put("http.agent", "JOSM/1.5 ("+(version.equals(tr("UNKNOWN"))?"UNKNOWN":version)+" "+LanguageInfo.getLanguageCode()+")");
+        sysProp.put("http.agent", "JOSM/1.5 ("+(version.equals(tr("UNKNOWN"))?"UNKNOWN":version)+" "+LanguageInfo.getJOSMLocaleCode()+")");
         System.setProperties(sysProp);
     }
Index: trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java	(revision 2305)
+++ trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java	(revision 2308)
@@ -107,5 +107,4 @@
         TagCollection wayTags = TagCollection.unionOfAllPrimitives(ways);
 
-
         // try to build a new way which includes all the combined
         // ways
Index: trunk/src/org/openstreetmap/josm/actions/HelpAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/HelpAction.java	(revision 2305)
+++ trunk/src/org/openstreetmap/josm/actions/HelpAction.java	(revision 2308)
@@ -9,13 +9,9 @@
 
 import javax.swing.AbstractAction;
-import javax.swing.AbstractButton;
-import javax.swing.Action;
-import javax.swing.JComponent;
-import javax.swing.JMenu;
 import javax.swing.SwingUtilities;
 
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.gui.help.HelpBrowserProxy;
-import org.openstreetmap.josm.gui.help.Helpful;
+import org.openstreetmap.josm.gui.help.HelpUtil;
 import org.openstreetmap.josm.tools.ImageProvider;
 
@@ -23,11 +19,6 @@
  * Open a help browser and displays lightweight online help.
  *
- * @author imi
  */
 public class HelpAction extends AbstractAction {
-
-
-    private String pathhelp = Main.pref.get("help.pathhelp", "Help/");
-    private String pathmenu = Main.pref.get("help.pathmenu", "Menu/");
 
     public HelpAction() {
@@ -43,5 +34,5 @@
                 if (mouse != null) {
                     c = SwingUtilities.getDeepestComponentAt(c, mouse.x, mouse.y);
-                    topic = contextSensitiveHelp(c);
+                    topic = HelpUtil.getContextSpecificHelpTopic(c);
                 } else {
                     topic = null;
@@ -49,51 +40,14 @@
             } else {
                 Point mouse = Main.parent.getMousePosition();
-                topic = contextSensitiveHelp(SwingUtilities.getDeepestComponentAt(Main.parent, mouse.x, mouse.y));
+                topic = HelpUtil.getContextSpecificHelpTopic(SwingUtilities.getDeepestComponentAt(Main.parent, mouse.x, mouse.y));
             }
             if (topic == null) {
-                HelpBrowserProxy.getInstance().setUrlForHelpTopic("Help");
+                HelpBrowserProxy.getInstance().setUrlForHelpTopic("/");
             } else {
-                help(topic);
+                HelpBrowserProxy.getInstance().setUrlForHelpTopic(topic);
             }
         } else {
-            HelpBrowserProxy.getInstance().setUrlForHelpTopic("Help");
+            HelpBrowserProxy.getInstance().setUrlForHelpTopic("/");
         }
     }
-
-    /**
-     * @return The topic of the help. <code>null</code> for "don't know"
-     */
-    private String contextSensitiveHelp(Object c) {
-        if (c == null)
-            return null;
-        if (c instanceof Helpful)
-            return ((Helpful)c).helpTopic();
-        if (c instanceof JMenu) {
-            JMenu b = (JMenu)c;
-            if (b.getClientProperty("help") != null)
-                return (String)b.getClientProperty("help");
-            return pathmenu+b.getText();
-        }
-        if (c instanceof AbstractButton) {
-            AbstractButton b = (AbstractButton)c;
-            if (b.getClientProperty("help") != null)
-                return (String)b.getClientProperty("help");
-            return contextSensitiveHelp(((AbstractButton)c).getAction());
-        }
-        if (c instanceof Action)
-            return (String)((Action)c).getValue("help");
-        if (c instanceof JComponent && ((JComponent)c).getClientProperty("help") != null)
-            return (String)((JComponent)c).getClientProperty("help");
-        if (c instanceof Component)
-            return contextSensitiveHelp(((Component)c).getParent());
-        return null;
-    }
-
-    /**
-     * Displays the help (or browse on the already open help) on the online page
-     * with the given help topic. Use this for larger help descriptions.
-     */
-    public void help(String topic) {
-        HelpBrowserProxy.getInstance().setUrlForHelpTopic(pathhelp + topic);
-    }
 }
Index: trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 2305)
+++ trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 2308)
@@ -91,5 +91,5 @@
                 tr("Close dialog and cancel downloading")
         });
-        dialog.configureContextsensitiveHelp("Help/Action/OpenLocation", true /* show help button */);
+        dialog.configureContextsensitiveHelp("/Action/OpenLocation", true /* show help button */);
         dialog.showDialog();
         if (dialog.getValue() != 1) return;
Index: trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java	(revision 2305)
+++ trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java	(revision 2308)
@@ -142,5 +142,5 @@
             c = DeleteCommand.deleteWithReferences(getEditLayer(),getCurrentDataSet().getSelected());
         } else {
-            c = DeleteCommand.delete(getEditLayer(),getCurrentDataSet().getSelected(), !alt);
+            c = DeleteCommand.delete(getEditLayer(),getCurrentDataSet().getSelected(), !alt /* also delete nodes in way */);
         }
         if (c != null) {
@@ -309,9 +309,9 @@
      * @param e MouseEvent from which modifiers and position are taken
      * @param int modifiers For explanation: @see updateCursor
-     * @param Simulate Set to true if the user should be bugged with additional
+     * @param silet Set to true if the user should not be bugged with additional
      *        dialogs
      * @return
      */
-    private Command buildDeleteCommands(MouseEvent e, int modifiers, boolean simulate) {
+    private Command buildDeleteCommands(MouseEvent e, int modifiers, boolean silent) {
         // Note: CTRL is the only modifier that is checked in MouseMove, don't
         // forget updating it there
@@ -330,5 +330,5 @@
                     c = DeleteCommand.deleteWithReferences(getEditLayer(),Collections.singleton((OsmPrimitive)ws.way),true);
                 } else {
-                    c = DeleteCommand.delete(getEditLayer(),Collections.singleton((OsmPrimitive)ws.way), !alt, simulate);
+                    c = DeleteCommand.delete(getEditLayer(),Collections.singleton((OsmPrimitive)ws.way), !alt, silent);
                 }
             }
@@ -336,5 +336,5 @@
             c = DeleteCommand.deleteWithReferences(getEditLayer(),Collections.singleton(sel));
         } else {
-            c = DeleteCommand.delete(getEditLayer(),Collections.singleton(sel), !alt, simulate);
+            c = DeleteCommand.delete(getEditLayer(),Collections.singleton(sel), !alt, silent);
         }
 
