Index: /applications/editors/josm/plugins/MicrosoftStreetside/src/org/openstreetmap/josm/plugins/streetside/gui/imageinfo/ImageInfoPanel.java
===================================================================
--- /applications/editors/josm/plugins/MicrosoftStreetside/src/org/openstreetmap/josm/plugins/streetside/gui/imageinfo/ImageInfoPanel.java	(revision 34393)
+++ /applications/editors/josm/plugins/MicrosoftStreetside/src/org/openstreetmap/josm/plugins/streetside/gui/imageinfo/ImageInfoPanel.java	(revision 34394)
@@ -5,4 +5,5 @@
 import java.awt.GridBagConstraints;
 import java.awt.GridBagLayout;
+import java.awt.Image;
 import java.awt.Insets;
 import java.awt.datatransfer.StringSelection;
@@ -11,4 +12,5 @@
 
 import javax.swing.ImageIcon;
+import javax.swing.JCheckBox;
 import javax.swing.JLabel;
 import javax.swing.JPanel;
@@ -18,4 +20,5 @@
 import org.openstreetmap.josm.data.osm.DataSelectionListener;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.data.osm.Tag;
 import org.openstreetmap.josm.data.osm.event.SelectionEventManager;
 import org.openstreetmap.josm.data.preferences.AbstractProperty.ValueChangeListener;
@@ -26,4 +29,5 @@
 import org.openstreetmap.josm.plugins.streetside.gui.boilerplate.SelectableLabel;
 import org.openstreetmap.josm.plugins.streetside.gui.boilerplate.StreetsideButton;
+import org.openstreetmap.josm.plugins.streetside.model.UserProfile;
 import org.openstreetmap.josm.plugins.streetside.utils.StreetsideProperties;
 import org.openstreetmap.josm.plugins.streetside.utils.StreetsideURL;
@@ -39,11 +43,10 @@
 
   private final JLabel numDetectionsLabel;
-  //private final JCheckBox showDetectionsCheck;
-  private final JLabel placeholder1Label;
+  private final JCheckBox showDetectionsCheck;
   private final JLabel usernameLabel;
   private final JTextPane imgKeyValue;
   private final WebLinkAction imgLinkAction;
   private final ClipboardAction copyImgKeyAction;
-  //private final AddTagToPrimitiveAction addStreetsideTagAction;
+  private final AddTagToPrimitiveAction addStreetsideTagAction;
   private final JTextPane seqKeyValue;
 
@@ -63,14 +66,12 @@
     numDetectionsLabel.setFont(numDetectionsLabel.getFont().deriveFont(Font.PLAIN));
 
-    placeholder1Label = new JLabel();
-
-    //showDetectionsCheck = new JCheckBox(I18n.tr("Show detections on top of image"));
-    //showDetectionsCheck.setSelected(StreetsideProperties.SHOW_DETECTED_SIGNS.get());
-    /*showDetectionsCheck.addActionListener(
+    showDetectionsCheck = new JCheckBox(I18n.tr("Show detections on top of image"));
+     showDetectionsCheck.setSelected(StreetsideProperties.SHOW_DETECTED_SIGNS.get());
+     showDetectionsCheck.addActionListener(
       action -> StreetsideProperties.SHOW_DETECTED_SIGNS.put(showDetectionsCheck.isSelected())
     );
     StreetsideProperties.SHOW_DETECTED_SIGNS.addListener(
       valueChange -> showDetectionsCheck.setSelected(StreetsideProperties.SHOW_DETECTED_SIGNS.get())
-    );*/
+    );
 
     usernameLabel = new JLabel();
@@ -85,5 +86,5 @@
     copyImgKeyAction.setPopupParent(copyButton);
 
-    //addStreetsideTagAction = new AddTagToPrimitiveAction(I18n.tr("Add Streetside tag"));
+    addStreetsideTagAction = new AddTagToPrimitiveAction(I18n.tr("Add Streetside tag"));
 
     JPanel imgKey = new JPanel();
@@ -92,5 +93,5 @@
     JPanel imgButtons = new JPanel();
     imgButtons.add(new StreetsideButton(imgLinkAction, true));
-    //imgButtons.add(new StreetsideButton(addStreetsideTagAction, true));
+    imgButtons.add(new StreetsideButton(null/*addStreetsideTagAction*/, true));
     seqKeyValue = new SelectableLabel();
 
@@ -105,10 +106,10 @@
     gbc.gridwidth = 1;
     gbc.gridheight = 2;
-    root.add(new JLabel(("Placeholder2 label")), gbc);
+    root.add(new JLabel(I18n.tr("Image detections")), gbc);
     gbc.gridy += 2;
     gbc.gridheight = 1;
-    root.add(new JLabel(("Blah")), gbc);
-    gbc.gridy++;
-    root.add(new JLabel(("Blee")), gbc);
+    root.add(new JLabel(I18n.tr("User")), gbc);
+    gbc.gridy++;
+    root.add(new JLabel(I18n.tr("Image actions")), gbc);
     gbc.gridy++;
     root.add(new JLabel(I18n.tr("Image key")), gbc);
@@ -123,8 +124,6 @@
     root.add(numDetectionsLabel, gbc);
     gbc.gridy++;
-    //root.add(showDetectionsCheck, gbc);
-    //gbc.gridy++;
-    root.add(placeholder1Label, gbc);
-     gbc.gridy++;
+    root.add(showDetectionsCheck, gbc);
+    gbc.gridy++;
     root.add(usernameLabel, gbc);
     gbc.gridy++;
@@ -185,5 +184,5 @@
     ));
 
-    //numDetectionsLabel.setText(I18n.tr("{0} detections", newImage instanceof StreetsideImage ? ((StreetsideImage) newImage).getDetections().size() : 0));
+    numDetectionsLabel.setText(I18n.tr("{0} detections", newImage instanceof StreetsideImage ? /*((StreetsideImage) newImage).getDetections().size()*/0 : 0));
     imgKeyValue.setEnabled(newImage instanceof StreetsideImage);
     final String newImageKey = newImage instanceof StreetsideImage ? ((StreetsideImage) newImage).getId(): null;
@@ -199,5 +198,5 @@
       imgKeyValue.setText(newImageKey);
       copyImgKeyAction.setContents(new StringSelection(newImageKey));
-      //addStreetsideTagAction.setTag(new Tag("streetside", newImageKey));
+      addStreetsideTagAction.setTag(new Tag("streetside", newImageKey));
     } else {
       if (imageLinkChangeListener != null) {
@@ -209,8 +208,8 @@
       imgKeyValue.setText('‹' + I18n.tr("image has no key") + '›');
       copyImgKeyAction.setContents(null);
-      //addStreetsideTagAction.setTag(null);
-    }
-
-    /*final UserProfile user = newImage instanceof StreetsideImage ? ((StreetsideImage) newImage).getUser() : null;
+      addStreetsideTagAction.setTag(null);
+    }
+
+    final UserProfile user = newImage instanceof StreetsideImage ? ((StreetsideImage) newImage).getUser() : null;
     usernameLabel.setEnabled(user != null);
     if (user != null) {
@@ -220,5 +219,5 @@
       usernameLabel.setText("‹" + I18n.tr("unknown user") + "›");
       usernameLabel.setIcon(EMPTY_USER_AVATAR);
-    }*/
+    }
 
     final boolean partOfSequence = newImage != null && newImage.getSequence() != null && newImage.getSequence().getId() != null;
@@ -240,5 +239,5 @@
       logger.debug(String.format("Selection changed. %d primitives are selected.", sel == null ? 0 : sel.size()));
     }
-    //addStreetsideTagAction.setTarget(sel != null && sel.size() == 1 ? sel.iterator().next() : null);
+    addStreetsideTagAction.setTarget(sel != null && sel.size() == 1 ? sel.iterator().next() : null);
   }
 }
