Index: trunk/src/org/openstreetmap/josm/gui/io/BasicUploadSettingsPanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/BasicUploadSettingsPanel.java	(revision 17892)
+++ trunk/src/org/openstreetmap/josm/gui/io/BasicUploadSettingsPanel.java	(revision 17894)
@@ -28,4 +28,6 @@
 import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
+import javax.swing.event.DocumentEvent;
+import javax.swing.event.DocumentListener;
 import javax.swing.event.HyperlinkEvent;
 
@@ -96,4 +98,5 @@
         hcbUploadComment.getEditor().addActionListener(commentModelListener);
         hcbUploadComment.getEditorComponent().addFocusListener(commentModelListener);
+        hcbUploadComment.getEditorComponent().getDocument().addDocumentListener(commentModelListener);
         pnl.add(hcbUploadComment, GBC.eol().fill(GBC.HORIZONTAL));
         pnl.add(uploadCommentFeedback, GBC.eol().insets(0, 3, 0, 0).fill(GBC.HORIZONTAL));
@@ -133,4 +136,5 @@
         hcbUploadSource.getEditor().addActionListener(sourceModelListener);
         hcbUploadSource.getEditorComponent().addFocusListener(sourceModelListener);
+        hcbUploadSource.getEditorComponent().getDocument().addDocumentListener(sourceModelListener);
         pnl.add(hcbUploadSource, GBC.eol().fill(GBC.HORIZONTAL));
         pnl.add(hcbUploadSourceFeedback, GBC.eol().insets(0, 3, 0, 0).fill(GBC.HORIZONTAL));
@@ -350,5 +354,5 @@
      * Updates the changeset comment model upon changes in the input field.
      */
-    static class CommentModelListener extends FocusAdapter implements ActionListener {
+    static class CommentModelListener extends FocusAdapter implements ActionListener, DocumentListener {
 
         private final HistoryComboBox source;
@@ -360,12 +364,31 @@
         }
 
+        private void setComment() {
+            destination.setComment(source.getText());
+        }
+
         @Override
         public void actionPerformed(ActionEvent e) {
-            destination.setComment(source.getText());
+            setComment();
         }
 
         @Override
         public void focusLost(FocusEvent e) {
-            destination.setComment(source.getText());
+            setComment();
+        }
+
+        @Override
+        public void insertUpdate(DocumentEvent e) {
+            setComment();
+        }
+
+        @Override
+        public void removeUpdate(DocumentEvent e) {
+            setComment();
+        }
+
+        @Override
+        public void changedUpdate(DocumentEvent e) {
+            setComment();
         }
     }
