diff options
Diffstat (limited to 'gerrit-gwtui/src/main/java/com/google/gerrit/client/Gerrit.java')
-rw-r--r-- | gerrit-gwtui/src/main/java/com/google/gerrit/client/Gerrit.java | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/Gerrit.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/Gerrit.java index d67a4ca02d..0b1af89406 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/Gerrit.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/Gerrit.java @@ -19,6 +19,7 @@ import static com.google.gerrit.common.data.GlobalCapability.CREATE_GROUP; import static com.google.gerrit.common.data.GlobalCapability.CREATE_PROJECT; import com.google.gerrit.client.account.AccountCapabilities; +import com.google.gerrit.client.account.AccountInfo; import com.google.gerrit.client.admin.ProjectScreen; import com.google.gerrit.client.changes.ChangeConstants; import com.google.gerrit.client.changes.ChangeListScreen; @@ -95,6 +96,7 @@ public class Gerrit implements EntryPoint { GWT.create(GerritResources.class); public static final SystemInfoService SYSTEM_SVC; public static final EventBus EVENT_BUS = GWT.create(SimpleEventBus.class); + public static Themer THEMER = GWT.create(Themer.class); private static String myHost; private static GerritConfig myConfig; @@ -248,6 +250,11 @@ public class Gerrit implements EntryPoint { return myAccount; } + /** @return the currently signed in user's account data; empty account data if no account */ + public static AccountInfo getUserAccountInfo() { + return FormatUtil.asInfo(myAccount); + } + /** @return access token to prove user identity during REST API calls. */ public static String getXGerritAuth() { return xGerritAuth; @@ -552,9 +559,17 @@ public class Gerrit implements EntryPoint { if (signInAnchor != null) { signInAnchor.setHref(loginRedirect(token)); } + + saveDefaultTheme(); loadPlugins(hpd, token); } + private void saveDefaultTheme() { + THEMER.init(Document.get().getElementById("gerrit_sitecss"), + Document.get().getElementById("gerrit_header"), + Document.get().getElementById("gerrit_footer")); + } + private void loadPlugins(HostPageData hpd, final String token) { if (hpd.plugins != null) { for (final String url : hpd.plugins) { @@ -754,9 +769,9 @@ public class Gerrit implements EntryPoint { } private static void whoAmI(boolean canLogOut) { - Account account = getUserAccount(); - final CurrentUserPopupPanel userPopup = - new CurrentUserPopupPanel(account, canLogOut); + AccountInfo account = getUserAccountInfo(); + final UserPopupPanel userPopup = + new UserPopupPanel(account, canLogOut, true); final FlowPanel userSummaryPanel = new FlowPanel(); class PopupHandler implements KeyDownHandler, ClickHandler { private void showHidePopup() { @@ -783,7 +798,7 @@ public class Gerrit implements EntryPoint { final PopupHandler popupHandler = new PopupHandler(); final InlineLabel l = new InlineLabel(FormatUtil.name(account)); l.setStyleName(RESOURCES.css().menuBarUserName()); - final AvatarImage avatar = new AvatarImage(account.getId(), 26); + final AvatarImage avatar = new AvatarImage(account, 26, false); avatar.setStyleName(RESOURCES.css().menuBarUserNameAvatar()); userSummaryPanel.setStyleName(RESOURCES.css().menuBarUserNamePanel()); userSummaryPanel.add(l); |