Index: src/org/openstreetmap/josm/gui/preferences/ImageryPreference.java
===================================================================
--- src/org/openstreetmap/josm/gui/preferences/ImageryPreference.java	(revision 4429)
+++ src/org/openstreetmap/josm/gui/preferences/ImageryPreference.java	(working copy)
@@ -378,6 +381,36 @@
         final JTable listdef;
         final JMapViewer map;
         final PreferenceTabbedPane gui;
+        
+        private class ImageryTableCellRenderer extends DefaultTableCellRenderer {
+            
+            private List<ImageryInfo> layers;
+            
+            public ImageryTableCellRenderer(List<ImageryInfo> layers) {
+                this.layers = layers;
+            }
+            
+            @Override
+            public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
+                JLabel label = (JLabel) super.getTableCellRendererComponent(
+                table, value, isSelected, hasFocus, row, column);
+                String t = value.toString();
+                label.setBackground(Main.pref.getUIColor("Table.background"));
+                if (isSelected) {
+                    label.setForeground(Main.pref.getUIColor("Table.foreground"));
+                }
+                for(ImageryInfo l : layers)
+                {
+                    if(l.getExtendedUrl().equals(t)) {
+                        label.setBackground(Main.pref.getColor(
+                        marktr("Imagery Background: Default"),
+                        new Color(200,255,200)));
+                        break;
+                    }
+                }
+                return label;
+            }
+        }
 
         public ImageryProvidersPanel(final PreferenceTabbedPane gui, ImageryLayerInfo layerInfoArg) {
             super(new GridBagLayout());
@@ -425,54 +458,14 @@
             mod.getColumn(1).setPreferredWidth(400);
             mod.getColumn(0).setPreferredWidth(50);
 
-            mod.getColumn(2).setCellRenderer(new DefaultTableCellRenderer() {
-                @Override
-                public Component getTableCellRendererComponent(JTable table,
-                Object value, boolean isSelected, boolean hasFocus, int row,
-                int column) {
-                    JLabel label = (JLabel) super.getTableCellRendererComponent(
-                    table, value, isSelected, hasFocus, row, column);
-                    String t = value.toString();
-                    label.setBackground(Main.pref.getUIColor("Table.background"));
-                    for(ImageryInfo l : layerInfo.getLayers())
-                    {
-                        if(l.getExtendedUrl().equals(t)) {
-                            label.setBackground(Main.pref.getColor(
-                            marktr("Imagery Background: Default"),
-                            new Color(200,255,200)));
-                            break;
-                        }
-                    }
-                    return label;
-                };
-            });
+            mod.getColumn(2).setCellRenderer(new ImageryTableCellRenderer(layerInfo.getLayers()));
 
             mod = listActive.getColumnModel();
             mod.getColumn(2).setPreferredWidth(50);
             mod.getColumn(1).setPreferredWidth(800);
             mod.getColumn(0).setPreferredWidth(200);
 
-            mod.getColumn(1).setCellRenderer(new DefaultTableCellRenderer() {
-                @Override
-                public Component getTableCellRendererComponent(JTable table,
-                Object value, boolean isSelected, boolean hasFocus, int row,
-                int column) {
-                    JLabel label = (JLabel) super.getTableCellRendererComponent(
-                    table, value, isSelected, hasFocus, row, column);
-                    String t = value.toString();
-                    label.setBackground(Main.pref.getUIColor("Table.background"));
-                    for(ImageryInfo l : layerInfo.getDefaultLayers())
-                    {
-                        if(l.getExtendedUrl().equals(t)) {
-                            label.setBackground(Main.pref.getColor(
-                            marktr("Imagery Background: Default"),
-                            new Color(200,255,200)));
-                            break;
-                        }
-                    }
-                    return label;
-                };
-            });
+            mod.getColumn(1).setCellRenderer(new ImageryTableCellRenderer(layerInfo.getDefaultLayers()));
 
             RemoveEntryAction remove = new RemoveEntryAction();
             listActive.getSelectionModel().addListSelectionListener(remove);
