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)); } }