Merge "Show mini avatar for all account links"
This commit is contained in:
@@ -21,6 +21,7 @@ public interface GerritCss extends CssResource {
|
|||||||
String accountContactPrivacyDetails();
|
String accountContactPrivacyDetails();
|
||||||
String accountDashboard();
|
String accountDashboard();
|
||||||
String accountInfoBlock();
|
String accountInfoBlock();
|
||||||
|
String accountLinkPanel();
|
||||||
String accountName();
|
String accountName();
|
||||||
String accountPassword();
|
String accountPassword();
|
||||||
String accountUsername();
|
String accountUsername();
|
||||||
|
@@ -23,7 +23,7 @@ import com.google.gerrit.client.groups.GroupInfo;
|
|||||||
import com.google.gerrit.client.rpc.GerritCallback;
|
import com.google.gerrit.client.rpc.GerritCallback;
|
||||||
import com.google.gerrit.client.rpc.Natives;
|
import com.google.gerrit.client.rpc.Natives;
|
||||||
import com.google.gerrit.client.ui.AccountGroupSuggestOracle;
|
import com.google.gerrit.client.ui.AccountGroupSuggestOracle;
|
||||||
import com.google.gerrit.client.ui.AccountLink;
|
import com.google.gerrit.client.ui.AccountLinkPanel;
|
||||||
import com.google.gerrit.client.ui.AddMemberBox;
|
import com.google.gerrit.client.ui.AddMemberBox;
|
||||||
import com.google.gerrit.client.ui.FancyFlexTable;
|
import com.google.gerrit.client.ui.FancyFlexTable;
|
||||||
import com.google.gerrit.client.ui.Hyperlink;
|
import com.google.gerrit.client.ui.Hyperlink;
|
||||||
@@ -318,7 +318,7 @@ public class AccountGroupMembersScreen extends AccountGroupScreen {
|
|||||||
CheckBox checkBox = new CheckBox();
|
CheckBox checkBox = new CheckBox();
|
||||||
table.setWidget(row, 1, checkBox);
|
table.setWidget(row, 1, checkBox);
|
||||||
checkBox.setEnabled(enabled);
|
checkBox.setEnabled(enabled);
|
||||||
table.setWidget(row, 2, new AccountLink(i));
|
table.setWidget(row, 2, new AccountLinkPanel(i));
|
||||||
table.setText(row, 3, i.email());
|
table.setText(row, 3, i.email());
|
||||||
|
|
||||||
final FlexCellFormatter fmt = table.getFlexCellFormatter();
|
final FlexCellFormatter fmt = table.getFlexCellFormatter();
|
||||||
|
@@ -27,7 +27,7 @@ import com.google.gerrit.client.rpc.GerritCallback;
|
|||||||
import com.google.gerrit.client.rpc.NativeMap;
|
import com.google.gerrit.client.rpc.NativeMap;
|
||||||
import com.google.gerrit.client.rpc.NativeString;
|
import com.google.gerrit.client.rpc.NativeString;
|
||||||
import com.google.gerrit.client.rpc.Natives;
|
import com.google.gerrit.client.rpc.Natives;
|
||||||
import com.google.gerrit.client.ui.AccountLink;
|
import com.google.gerrit.client.ui.AccountLinkPanel;
|
||||||
import com.google.gerrit.client.ui.AddMemberBox;
|
import com.google.gerrit.client.ui.AddMemberBox;
|
||||||
import com.google.gerrit.client.ui.ReviewerSuggestOracle;
|
import com.google.gerrit.client.ui.ReviewerSuggestOracle;
|
||||||
import com.google.gerrit.common.data.ApprovalDetail;
|
import com.google.gerrit.common.data.ApprovalDetail;
|
||||||
@@ -329,7 +329,7 @@ public class ApprovalTable extends Composite {
|
|||||||
final CellFormatter fmt = table.getCellFormatter();
|
final CellFormatter fmt = table.getCellFormatter();
|
||||||
int col = 0;
|
int col = 0;
|
||||||
|
|
||||||
table.setWidget(row, col++, new AccountLink(account));
|
table.setWidget(row, col++, new AccountLinkPanel(account));
|
||||||
rows.put(account._account_id(), row);
|
rows.put(account._account_id(), row);
|
||||||
|
|
||||||
if (ad.canRemove()) {
|
if (ad.canRemove()) {
|
||||||
|
@@ -18,7 +18,7 @@ import static com.google.gerrit.client.FormatUtil.mediumFormat;
|
|||||||
|
|
||||||
import com.google.gerrit.client.Gerrit;
|
import com.google.gerrit.client.Gerrit;
|
||||||
import com.google.gerrit.client.rpc.GerritCallback;
|
import com.google.gerrit.client.rpc.GerritCallback;
|
||||||
import com.google.gerrit.client.ui.AccountLink;
|
import com.google.gerrit.client.ui.AccountLinkPanel;
|
||||||
import com.google.gerrit.client.ui.BranchLink;
|
import com.google.gerrit.client.ui.BranchLink;
|
||||||
import com.google.gerrit.client.ui.CommentedActionDialog;
|
import com.google.gerrit.client.ui.CommentedActionDialog;
|
||||||
import com.google.gerrit.client.ui.InlineHyperlink;
|
import com.google.gerrit.client.ui.InlineHyperlink;
|
||||||
@@ -104,7 +104,7 @@ public class ChangeInfoBlock extends Composite {
|
|||||||
changeIdLabel.setPreviewText(chg.getKey().get());
|
changeIdLabel.setPreviewText(chg.getKey().get());
|
||||||
table.setWidget(R_CHANGE_ID, 1, changeIdLabel);
|
table.setWidget(R_CHANGE_ID, 1, changeIdLabel);
|
||||||
|
|
||||||
table.setWidget(R_OWNER, 1, AccountLink.link(acc, chg.getOwner()));
|
table.setWidget(R_OWNER, 1, AccountLinkPanel.link(acc, chg.getOwner()));
|
||||||
|
|
||||||
final FlowPanel p = new FlowPanel();
|
final FlowPanel p = new FlowPanel();
|
||||||
p.add(new ProjectSearchLink(chg.getProject()));
|
p.add(new ProjectSearchLink(chg.getProject()));
|
||||||
|
@@ -17,7 +17,7 @@ package com.google.gerrit.client.changes;
|
|||||||
import static com.google.gerrit.client.FormatUtil.shortFormat;
|
import static com.google.gerrit.client.FormatUtil.shortFormat;
|
||||||
|
|
||||||
import com.google.gerrit.client.Gerrit;
|
import com.google.gerrit.client.Gerrit;
|
||||||
import com.google.gerrit.client.ui.AccountLink;
|
import com.google.gerrit.client.ui.AccountLinkPanel;
|
||||||
import com.google.gerrit.client.ui.BranchLink;
|
import com.google.gerrit.client.ui.BranchLink;
|
||||||
import com.google.gerrit.client.ui.ChangeLink;
|
import com.google.gerrit.client.ui.ChangeLink;
|
||||||
import com.google.gerrit.client.ui.NavigationTable;
|
import com.google.gerrit.client.ui.NavigationTable;
|
||||||
@@ -182,8 +182,8 @@ public class ChangeTable extends NavigationTable<ChangeInfo> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private AccountLink link(final Account.Id id) {
|
private AccountLinkPanel link(final Account.Id id) {
|
||||||
return AccountLink.link(accountCache, id);
|
return AccountLinkPanel.link(accountCache, id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addSection(final Section s) {
|
public void addSection(final Section s) {
|
||||||
|
@@ -19,7 +19,7 @@ import static com.google.gerrit.client.FormatUtil.shortFormat;
|
|||||||
|
|
||||||
import com.google.gerrit.client.Gerrit;
|
import com.google.gerrit.client.Gerrit;
|
||||||
import com.google.gerrit.client.changes.ChangeInfo.LabelInfo;
|
import com.google.gerrit.client.changes.ChangeInfo.LabelInfo;
|
||||||
import com.google.gerrit.client.ui.AccountLink;
|
import com.google.gerrit.client.ui.AccountLinkPanel;
|
||||||
import com.google.gerrit.client.ui.BranchLink;
|
import com.google.gerrit.client.ui.BranchLink;
|
||||||
import com.google.gerrit.client.ui.ChangeLink;
|
import com.google.gerrit.client.ui.ChangeLink;
|
||||||
import com.google.gerrit.client.ui.NavigationTable;
|
import com.google.gerrit.client.ui.NavigationTable;
|
||||||
@@ -198,7 +198,7 @@ public class ChangeTable2 extends NavigationTable<ChangeInfo> {
|
|||||||
table.setWidget(row, C_SUBJECT, new TableChangeLink(subject, c));
|
table.setWidget(row, C_SUBJECT, new TableChangeLink(subject, c));
|
||||||
|
|
||||||
if (c.owner() != null) {
|
if (c.owner() != null) {
|
||||||
table.setWidget(row, C_OWNER, new AccountLink(c.owner(), status));
|
table.setWidget(row, C_OWNER, new AccountLinkPanel(c.owner(), status));
|
||||||
} else {
|
} else {
|
||||||
table.setText(row, C_OWNER, "");
|
table.setText(row, C_OWNER, "");
|
||||||
}
|
}
|
||||||
|
@@ -21,7 +21,7 @@ import com.google.gerrit.client.GitwebLink;
|
|||||||
import com.google.gerrit.client.download.DownloadPanel;
|
import com.google.gerrit.client.download.DownloadPanel;
|
||||||
import com.google.gerrit.client.patches.PatchUtil;
|
import com.google.gerrit.client.patches.PatchUtil;
|
||||||
import com.google.gerrit.client.rpc.GerritCallback;
|
import com.google.gerrit.client.rpc.GerritCallback;
|
||||||
import com.google.gerrit.client.ui.AccountLink;
|
import com.google.gerrit.client.ui.AccountLinkPanel;
|
||||||
import com.google.gerrit.client.ui.CommentedActionDialog;
|
import com.google.gerrit.client.ui.CommentedActionDialog;
|
||||||
import com.google.gerrit.client.ui.ComplexDisclosurePanel;
|
import com.google.gerrit.client.ui.ComplexDisclosurePanel;
|
||||||
import com.google.gerrit.client.ui.ListenableAccountDiffPreference;
|
import com.google.gerrit.client.ui.ListenableAccountDiffPreference;
|
||||||
@@ -255,7 +255,7 @@ class PatchSetComplexDisclosurePanel extends ComplexDisclosurePanel
|
|||||||
fp.setStyleName(Gerrit.RESOURCES.css().patchSetUserIdentity());
|
fp.setStyleName(Gerrit.RESOURCES.css().patchSetUserIdentity());
|
||||||
if (who.getName() != null) {
|
if (who.getName() != null) {
|
||||||
if (who.getAccount() != null) {
|
if (who.getAccount() != null) {
|
||||||
fp.add(new AccountLink(who));
|
fp.add(new AccountLinkPanel(who));
|
||||||
} else {
|
} else {
|
||||||
final InlineLabel lbl = new InlineLabel(who.getName());
|
final InlineLabel lbl = new InlineLabel(who.getName());
|
||||||
lbl.setStyleName(Gerrit.RESOURCES.css().accountName());
|
lbl.setStyleName(Gerrit.RESOURCES.css().accountName());
|
||||||
|
@@ -86,6 +86,21 @@ a:hover {
|
|||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.accountLinkPanel {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.accountLinkPanel img {
|
||||||
|
margin-right: 0.2em;
|
||||||
|
position: relative;
|
||||||
|
top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.accountLinkPanel a {
|
||||||
|
position: relative;
|
||||||
|
top: -1px;
|
||||||
|
}
|
||||||
|
|
||||||
.accountName {
|
.accountName {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
@@ -14,6 +14,7 @@
|
|||||||
|
|
||||||
package com.google.gerrit.client.ui;
|
package com.google.gerrit.client.ui;
|
||||||
|
|
||||||
|
import com.google.gerrit.client.AvatarImage;
|
||||||
import com.google.gerrit.client.FormatUtil;
|
import com.google.gerrit.client.FormatUtil;
|
||||||
import com.google.gerrit.client.Gerrit;
|
import com.google.gerrit.client.Gerrit;
|
||||||
import com.google.gerrit.client.account.AccountInfo;
|
import com.google.gerrit.client.account.AccountInfo;
|
||||||
@@ -22,33 +23,46 @@ import com.google.gerrit.common.data.AccountInfoCache;
|
|||||||
import com.google.gerrit.reviewdb.client.Account;
|
import com.google.gerrit.reviewdb.client.Account;
|
||||||
import com.google.gerrit.reviewdb.client.Change;
|
import com.google.gerrit.reviewdb.client.Change;
|
||||||
import com.google.gerrit.reviewdb.client.UserIdentity;
|
import com.google.gerrit.reviewdb.client.UserIdentity;
|
||||||
|
import com.google.gwt.user.client.ui.FlowPanel;
|
||||||
|
|
||||||
/** Link to any user's account dashboard. */
|
/** Link to any user's account dashboard. */
|
||||||
public class AccountLink extends InlineHyperlink {
|
public class AccountLinkPanel extends FlowPanel {
|
||||||
/** Create a link after locating account details from an active cache. */
|
/** Create a link after locating account details from an active cache. */
|
||||||
public static AccountLink link(AccountInfoCache cache, Account.Id id) {
|
public static AccountLinkPanel link(AccountInfoCache cache, Account.Id id) {
|
||||||
com.google.gerrit.common.data.AccountInfo ai = cache.get(id);
|
com.google.gerrit.common.data.AccountInfo ai = cache.get(id);
|
||||||
return ai != null ? new AccountLink(ai) : null;
|
return ai != null ? new AccountLinkPanel(ai) : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public AccountLink(com.google.gerrit.common.data.AccountInfo ai) {
|
public AccountLinkPanel(com.google.gerrit.common.data.AccountInfo ai) {
|
||||||
this(FormatUtil.asInfo(ai));
|
this(FormatUtil.asInfo(ai));
|
||||||
}
|
}
|
||||||
|
|
||||||
public AccountLink(UserIdentity ident) {
|
public AccountLinkPanel(UserIdentity ident) {
|
||||||
this(AccountInfo.create(
|
this(AccountInfo.create(
|
||||||
ident.getAccount().get(),
|
ident.getAccount().get(),
|
||||||
ident.getName(),
|
ident.getName(),
|
||||||
ident.getEmail()));
|
ident.getEmail()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public AccountLink(AccountInfo info) {
|
public AccountLinkPanel(AccountInfo info) {
|
||||||
this(info, Change.Status.NEW);
|
this(info, Change.Status.NEW);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AccountLink(AccountInfo info, Change.Status status) {
|
public AccountLinkPanel(AccountInfo info, Change.Status status) {
|
||||||
super(FormatUtil.name(info), PageLinks.toAccountQuery(owner(info), status));
|
addStyleName(Gerrit.RESOURCES.css().accountLinkPanel());
|
||||||
setTitle(FormatUtil.nameEmail(info));
|
|
||||||
|
InlineHyperlink l =
|
||||||
|
new InlineHyperlink(FormatUtil.name(info), PageLinks.toAccountQuery(
|
||||||
|
owner(info), status)) {
|
||||||
|
@Override
|
||||||
|
public void go() {
|
||||||
|
Gerrit.display(getTargetHistoryToken());
|
||||||
|
}
|
||||||
|
};
|
||||||
|
l.setTitle(FormatUtil.nameEmail(info));
|
||||||
|
|
||||||
|
add(new AvatarImage(info, 16));
|
||||||
|
add(l);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String owner(AccountInfo ai) {
|
private static String owner(AccountInfo ai) {
|
||||||
@@ -62,9 +76,4 @@ public class AccountLink extends InlineHyperlink {
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void go() {
|
|
||||||
Gerrit.display(getTargetHistoryToken());
|
|
||||||
}
|
|
||||||
}
|
}
|
Reference in New Issue
Block a user