improve UI layout of label and change id
diff --git a/src/main/java/com/googlesource/gerrit/plugins/chound/client/LabelPanel.java b/src/main/java/com/googlesource/gerrit/plugins/chound/client/LabelPanel.java
index 1fb3a28..cd3fcfe 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/chound/client/LabelPanel.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/chound/client/LabelPanel.java
@@ -24,10 +24,12 @@
 import com.google.gwt.regexp.shared.MatchResult;
 import com.google.gwt.regexp.shared.RegExp;
 import com.google.gwt.user.client.rpc.AsyncCallback;
+import com.google.gwt.user.client.ui.Grid;
 import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.InlineHyperlink;
-import com.google.gwt.user.client.ui.InlineLabel;
+import com.google.gwt.user.client.ui.Label;
+
 import com.google.gwt.user.client.ui.VerticalPanel;
+import com.google.gwtexpui.clippy.client.CopyableLabel;
 
 public class LabelPanel extends VerticalPanel {
   static class Factory implements Panel.EntryPoint {
@@ -44,61 +46,66 @@
         panel.getObject(GerritUiExtensionPoint.Key.REVISION_INFO).cast();
 
     new RestApi("changes").id(change.id()).view("revisions").id(rev.id())
-    .view("commit")
-    .get(new AsyncCallback<CommitInfo>() {
-      @Override
-      public void onSuccess(CommitInfo result) {
-        if (result != null) {
-          displayDependsOn(result);
-        }
-      }
+        .view("commit").get(new AsyncCallback<CommitInfo>() {
+          @Override
+          public void onSuccess(CommitInfo result) {
+            if (result != null) {
+              displayDependsOn(result);
+            }
+          }
 
-      @Override
-      public void onFailure(Throwable caught) {
-        // never invoked
-      }
-    });
+          @Override
+          public void onFailure(Throwable caught) {
+            // never invoked
+          }
+        });
 
     new RestApi("changes").view("?q=message:" + change.changeId())
-    .view("+NOT+change:" + change.changeId())
-    .get(new AsyncCallback<NativeMap<ChangeInfo>>() {
-      @Override
-      public void onSuccess(NativeMap<ChangeInfo> result) {
-        if (!result.isEmpty()) {
-          displayNeededBy(result);
-        }
-      }
+        .view("+NOT+change:" + change.changeId())
+        .get(new AsyncCallback<NativeMap<ChangeInfo>>() {
+          @Override
+          public void onSuccess(NativeMap<ChangeInfo> result) {
+            if (!result.isEmpty()) {
+              displayNeededBy(result);
+            }
+          }
 
-      @Override
-      public void onFailure(Throwable caught) {
-        // never invoked
-      }
-    });
+          @Override
+          public void onFailure(Throwable caught) {
+            // never invoked
+          }
+        });
   }
 
   private void displayDependsOn(CommitInfo result) {
+    int row = 0;
+    int column = 1;
+    Grid grid = new Grid(row, column);
     String message = result.message();
     if (message.toLowerCase().contains("depends-on:")) {
-      HorizontalPanel p = new HorizontalPanel();
-      p.add(new InlineLabel("Depends-on"));
       MatchResult matcher;
-      RegExp pattern = RegExp.compile("[Dd]epends-[Oo]n:? (I[0-9a-f]{8,40})", "g");
+      RegExp pattern =
+          RegExp.compile("[Dd]epends-[Oo]n:? (I[0-9a-f]{8,40})", "g");
       while ((matcher = pattern.exec(message)) != null) {
-        p.add(new InlineLabel(matcher.getGroup(1)));
+        grid.insertRow(row);
+        HorizontalPanel p = new HorizontalPanel();
+        p.addStyleName("infoBlock");
+        p.add(new Label("Depends-on"));
+        p.add(new CopyableLabel(matcher.getGroup(1)));
+        grid.setWidget(row, 0, p);
+        row++;
       }
-      add(p);
+      add(grid);
     }
   }
 
   private void displayNeededBy(NativeMap<ChangeInfo> result) {
     HorizontalPanel p = new HorizontalPanel();
-    InlineLabel il = new InlineLabel("Needed-by");
-    p.add(il);
+    p.addStyleName("infoBlock");
+    p.add(new Label("Needed-by"));
     for (String key : result.keySet()) {
-      InlineHyperlink ih = new InlineHyperlink(
-          result.get(key).changeId(), "/c/" + result.get(key)._number());
-      p.add(ih);
+      p.add(new CopyableLabel(result.get(key).changeId()));
     }
     add(p);
   }
-}
\ No newline at end of file
+}