Show file name in window title
Change-Id: I988858e013e7dc4009b3bec35c581c18b1625259
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocScreen.java b/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocScreen.java
index 07a5f85..9c3439e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocScreen.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocScreen.java
@@ -16,6 +16,7 @@
import com.google.gerrit.plugin.client.Plugin;
import com.google.gerrit.plugin.client.screen.Screen;
+import com.google.gerrit.reviewdb.client.Patch;
import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestBuilder;
import com.google.gwt.http.client.RequestCallback;
@@ -35,8 +36,9 @@
public void onLoad(Screen screen) {
String projectName = URL.decode(screen.getToken(1));
String revision = URL.decode(screen.getToken(2));
- String fileName = URL.decode(screen.getToken(3));
- screen.show(new XDocScreen(projectName, revision, fileName));
+ String path = URL.decode(screen.getToken(3));
+ screen.show(new XDocScreen(projectName, revision, path));
+ screen.setWindowTitle(getFileName(path));
}
}
@@ -44,23 +46,24 @@
@Override
public void onLoad(Screen screen) {
String projectName = URL.decode(screen.getToken(1));
- String fileName = URL.decode(screen.getToken(2));
- screen.show(new XDocScreen(projectName, "HEAD", fileName));
+ String path = URL.decode(screen.getToken(2));
+ screen.show(new XDocScreen(projectName, "HEAD", path));
+ screen.setWindowTitle(getFileName(path));
}
}
- XDocScreen(String projectName, String revision, String fileName) {
+ XDocScreen(String projectName, String revision, String path) {
setStyleName("xdocs-panel");
HorizontalPanel p = new HorizontalPanel();
p.setStyleName("xdocs-header");
p.add(new InlineHyperlink(projectName, "/admin/projects/" + projectName));
p.add(new Label("/"));
- p.add(new Label(fileName));
+ p.add(new Label(path));
p.add(new Label("(" + revision + ")"));
add(p);
- final String url = getUrl(projectName, revision, fileName);
+ final String url = getUrl(projectName, revision, path);
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url);
try {
builder.sendRequest(null, new RequestCallback() {
@@ -92,6 +95,14 @@
add(l);
}
+ public static String getFileName(String path) {
+ String fileName = Patch.COMMIT_MSG.equals(path)
+ ? "Commit Message"
+ : path;
+ int s = fileName.lastIndexOf('/');
+ return s >= 0 ? fileName.substring(s + 1) : fileName;
+ }
+
public static String getUrl(String projectName, String revision, String fileName) {
StringBuilder url = new StringBuilder();
url.append("plugins/");
diff --git a/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocSideBySideDiffScreen.java b/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocSideBySideDiffScreen.java
index 767ff9c..f46344e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocSideBySideDiffScreen.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocSideBySideDiffScreen.java
@@ -27,6 +27,7 @@
String patchSet = URL.decode(screen.getToken(2));
String path = URL.decode(screen.getToken(4));
screen.show(new XDocSideBySideDiffScreen(change, patchSet, path));
+ screen.setWindowTitle(XDocScreen.getFileName(path));
}
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocUnifiedDiffScreen.java b/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocUnifiedDiffScreen.java
index 64258d1..57d6dcb 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocUnifiedDiffScreen.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/xdocs/client/XDocUnifiedDiffScreen.java
@@ -26,6 +26,7 @@
String patchSet = URL.decode(screen.getToken(2));
String path = URL.decode(screen.getToken(4));
screen.show(new XDocUnifiedDiffScreen(change, patchSet, path));
+ screen.setWindowTitle(XDocScreen.getFileName(path));
}
}