Index: /trunk/src/org/openstreetmap/josm/actions/PreferencesAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/PreferencesAction.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/actions/PreferencesAction.java	(revision 1053)
@@ -38,5 +38,5 @@
 	public void actionPerformed(ActionEvent e) {
 		PreferenceDialog prefDlg = new PreferenceDialog();
-		prefDlg.setMinimumSize(new Dimension(300,200));
+		prefDlg.setMinimumSize(new Dimension(400,300));
 		JPanel prefPanel = new JPanel(new GridBagLayout());
 		prefPanel.add(prefDlg, GBC.eol().fill(GBC.BOTH));
@@ -45,5 +45,5 @@
 		JDialog dlg = pane.createDialog(Main.parent, tr("Preferences"));
 		dlg.setResizable(true);
-		dlg.setMinimumSize(new Dimension(400,300));
+		dlg.setMinimumSize(new Dimension(500,400));
 
 //		if (dlg.getWidth() > 600)
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/AdvancedPreference.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/AdvancedPreference.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/AdvancedPreference.java	(revision 1053)
@@ -36,5 +36,6 @@
 
 	public void addGui(final PreferenceDialog gui) {
-		JPanel p = gui.createPreferenceTab("advanced", tr("Advanced Preferences"), tr("Setting Preference entries directly. Use with caution!"));
+		JPanel p = gui.createPreferenceTab("advanced", tr("Advanced Preferences"), 
+		        tr("Setting Preference entries directly. Use with caution!"), false);
 
 		model = new DefaultTableModel(new String[]{tr("Key"), tr("Value")},0) {
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/ColorPreference.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/ColorPreference.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/ColorPreference.java	(revision 1053)
@@ -2,6 +2,6 @@
 package org.openstreetmap.josm.gui.preferences;
 
+import static org.openstreetmap.josm.tools.I18n.marktr;
 import static org.openstreetmap.josm.tools.I18n.tr;
-import static org.openstreetmap.josm.tools.I18n.marktr;
 
 import java.awt.Color;
@@ -104,4 +104,5 @@
 			}
 		};
+		colors.setPreferredSize(new Dimension(200,200));
 		colors.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
 		final TableCellRenderer oldColorsRenderer = colors.getDefaultRenderer(Object.class);
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/DrawingPreference.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/DrawingPreference.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/DrawingPreference.java	(revision 1053)
@@ -4,4 +4,5 @@
 import static org.openstreetmap.josm.tools.I18n.tr;
 
+import java.awt.Dimension;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -33,5 +34,6 @@
 
 	public void addGui(PreferenceDialog gui) {
-		// drawRawGpsLines
+	    gui.display.setPreferredSize(new Dimension(400,600));
+	    // drawRawGpsLines
 		drawRawGpsLines.addActionListener(new ActionListener(){
 			public void actionPerformed(ActionEvent e) {
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/LafPreference.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/LafPreference.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/LafPreference.java	(revision 1053)
@@ -29,5 +29,5 @@
 		// let's try to load additional LookAndFeels and put them into the list
 		try {
-			Class Cquaqua = Class.forName("ch.randelshofer.quaqua.QuaquaLookAndFeel");
+			Class<?> Cquaqua = Class.forName("ch.randelshofer.quaqua.QuaquaLookAndFeel");
 			Object Oquaqua = Cquaqua.getConstructor((Class[])null).newInstance((Object[])null);
 			// no exception? Then Go!
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/PluginPreference.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/PluginPreference.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/PluginPreference.java	(revision 1053)
@@ -74,6 +74,5 @@
 			if(n instanceof PluginDescription)
 				return name.compareToIgnoreCase(((PluginDescription)n).name);
-			else
-				return -1;
+			return -1;
 		}
 	}
@@ -107,5 +106,5 @@
 	public void addGui(final PreferenceDialog gui) {
 		this.gui = gui;
-		plugin = gui.createPreferenceTab("plugin", tr("Plugins"), tr("Configure available plugins."));
+		plugin = gui.createPreferenceTab("plugin", tr("Plugins"), tr("Configure available plugins."), false);
 		JScrollPane pluginPane = new JScrollPane(pluginPanel, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
 		pluginPane.setBorder(null);
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java	(revision 1053)
@@ -6,4 +6,5 @@
 import java.awt.Font;
 import java.awt.GridBagLayout;
+import java.awt.ScrollPane;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -13,4 +14,5 @@
 
 import javax.swing.BorderFactory;
+import javax.swing.JComponent;
 import javax.swing.JLabel;
 import javax.swing.JOptionPane;
@@ -45,5 +47,6 @@
 	/**
 	 * Construct a JPanel for the preference settings. Layout is GridBagLayout
-	 * and a centered title label and the description are added.
+	 * and a centered title label and the description are added. The panel 
+	 * will be shown inside a {@link ScrollPane} 
 	 * @param icon The name of the icon.
 	 * @param title The title of this preference tab.
@@ -53,18 +56,36 @@
 	 */
 	public JPanel createPreferenceTab(String icon, String title, String desc) {
-		JPanel p = new JPanel(new GridBagLayout());
-		p.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
-		p.add(new JLabel(title), GBC.eol().anchor(GBC.CENTER).insets(0,5,0,10));
-
-		JLabel descLabel = new JLabel("<html>"+desc+"</html>");
-		descLabel.setFont(descLabel.getFont().deriveFont(Font.ITALIC));
-		p.add(descLabel, GBC.eol().insets(5,0,5,20).fill(GBC.HORIZONTAL));
-
-        JScrollPane sp = new JScrollPane(p);
-		addTab(null, ImageProvider.get("preferences", icon), sp);
-		setToolTipTextAt(getTabCount()-1, "<html>"+desc+"</html>");
-		return p;
+		return createPreferenceTab(icon, title, desc, true);
 	}
 
+    /**
+     * Construct a JPanel for the preference settings. Layout is GridBagLayout
+     * and a centered title label and the description are added.
+     * @param icon The name of the icon.
+     * @param title The title of this preference tab.
+     * @param desc A description in one sentence for this tab. Will be displayed
+     *      italic under the title.
+     * @param inScrollPane if <code>true</code> the added tab will show scroll bars 
+     *        if the panel content is larger than the available space
+     * @return The created panel ready to add other controls.
+     */
+    public JPanel createPreferenceTab(String icon, String title, String desc, boolean inScrollPane) {
+        JPanel p = new JPanel(new GridBagLayout());
+        p.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
+        p.add(new JLabel(title), GBC.eol().anchor(GBC.CENTER).insets(0,5,0,10));
+
+        JLabel descLabel = new JLabel("<html>"+desc+"</html>");
+        descLabel.setFont(descLabel.getFont().deriveFont(Font.ITALIC));
+        p.add(descLabel, GBC.eol().insets(5,0,5,20).fill(GBC.HORIZONTAL));
+
+        JComponent tab = p;
+        if (inScrollPane) {
+            JScrollPane sp = new JScrollPane(p);
+            tab = sp;
+        }
+        addTab(null, ImageProvider.get("preferences", icon), tab);
+        setToolTipTextAt(getTabCount()-1, "<html>"+desc+"</html>");
+        return p;
+    }
 
 
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/ProxyPreferences.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/ProxyPreferences.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/ProxyPreferences.java	(revision 1053)
@@ -28,9 +28,9 @@
 
 	private JCheckBox proxyEnable = new JCheckBox(tr("Enable proxy server"));
-	private JTextField proxyHost = new JTextField(50);
+	private JTextField proxyHost = new JTextField(20);
 	private JTextField proxyPort = new JTextField(5);
 	private JCheckBox proxyAnonymous = new JCheckBox(tr("Anonymous"));
-	private JTextField proxyUser = new JTextField(50);
-	private JPasswordField proxyPass = new JPasswordField(50);
+	private JTextField proxyUser = new JTextField(20);
+	private JPasswordField proxyPass = new JPasswordField(20);
 
 	public void addGui(PreferenceDialog gui) {
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/ShortcutPreference.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/ShortcutPreference.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/ShortcutPreference.java	(revision 1053)
@@ -22,5 +22,6 @@
 		// icon original size: 128x128
 		// modifications: icon was cropped, then resized
-		JPanel p = gui.createPreferenceTab("shortcuts", tr("Shortcut Preferences"), tr("Changing keyboard shortcuts manually."));
+		JPanel p = gui.createPreferenceTab("shortcuts", tr("Shortcut Preferences"), 
+		        tr("Changing keyboard shortcuts manually."), false);
 
 		prefJPanel prefpanel = new prefJPanel(new scListModel());
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java	(revision 1053)
@@ -197,5 +197,6 @@
 		p.add(right);
 
-		JPanel panel = gui.createPreferenceTab("toolbar", tr("Toolbar customization"), tr("Customize the elements on the toolbar."));
+		JPanel panel = gui.createPreferenceTab("toolbar", tr("Toolbar customization"), 
+		        tr("Customize the elements on the toolbar."), false);
 		panel.add(p, GBC.eol().fill(GBC.BOTH));
 
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/prefJPanel.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/prefJPanel.java	(revision 1052)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/prefJPanel.java	(revision 1053)
@@ -8,15 +8,18 @@
 
 import static org.openstreetmap.josm.tools.I18n.tr;
-import javax.swing.table.TableModel;
+
 import java.awt.event.KeyEvent;
+import java.util.LinkedHashMap;
 import java.util.Map;
-import java.util.LinkedHashMap;
-import javax.swing.event.ListSelectionListener;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.ListSelectionModel;
-import org.openstreetmap.josm.tools.ShortCut;
+
 import javax.swing.JEditorPane;
 import javax.swing.JScrollPane;
+import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.table.TableModel;
+
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.tools.ShortCut;
 
 /**
@@ -247,4 +250,5 @@
         // Would be a nice array if I had done it by hand. But then, it would be finished next year or so...
         modifierTab.setLayout(new java.awt.GridLayout(0, 1));
+        JScrollPane modifierScroller = new JScrollPane(modifierTab);
 
         editGroupPane.setBorder(javax.swing.BorderFactory.createTitledBorder(tr("Edit Shortcuts")));
@@ -352,7 +356,7 @@
 				bxTer4.setAction(action2);
 
-        modifierTab.add(subwindowGroupPane);
-
-        prefTabPane.addTab(tr("Modifier Groups"), modifierTab);
+		modifierTab.add(subwindowGroupPane);
+
+        prefTabPane.addTab(tr("Modifier Groups"), modifierScroller);
 
         add(prefTabPane);
