Merge "Show 'Related Changes' tab only if there are related changes"

This commit is contained in:
Shawn Pearce
2013-11-28 20:54:35 +00:00
committed by Gerrit Code Review

View File

@@ -171,22 +171,30 @@ class RelatedChanges extends TabPanel {
} }
private void setForOpenChange(final ChangeInfo info, final String revision) { private void setForOpenChange(final ChangeInfo info, final String revision) {
relatedChangesTab = createTab(Resources.C.relatedChanges(),
Resources.C.relatedChangesTooltip());
ChangeApi.revision(info.legacy_id().get(), revision).view("related") ChangeApi.revision(info.legacy_id().get(), revision).view("related")
.get(new AsyncCallback<RelatedInfo>() { .get(new AsyncCallback<RelatedInfo>() {
@Override @Override
public void onSuccess(RelatedInfo result) { public void onSuccess(RelatedInfo result) {
relatedChangesTab.setTitle(Resources.M.relatedChanges(result.changes().length())); if (result.changes().length() > 0) {
relatedChangesTab.setChanges(info.project(), revision, result.changes()); getTab().setTitle(Resources.M.relatedChanges(result.changes().length()));
getTab().setChanges(info.project(), revision, result.changes());
}
} }
@Override @Override
public void onFailure(Throwable err) { public void onFailure(Throwable err) {
relatedChangesTab.setTitle( getTab().setTitle(
Resources.M.relatedChanges(Resources.C.notAvailable())); Resources.M.relatedChanges(Resources.C.notAvailable()));
relatedChangesTab.setError(err.getMessage()); getTab().setError(err.getMessage());
}
private RelatedChangesTab getTab() {
if (relatedChangesTab == null) {
relatedChangesTab =
createTab(Resources.C.relatedChanges(),
Resources.C.relatedChangesTooltip());
}
return relatedChangesTab;
} }
}); });