]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.cms/src/org/argeo/cms/util/UserMenuLink.java
Introduce workbench login
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / util / UserMenuLink.java
index f4c5f006305deeaff642958046c615239a169cdf..afab928aa363cdc04d85d37876e4c8633ecf90c9 100644 (file)
@@ -5,7 +5,7 @@ import javax.jcr.Node;
 import org.argeo.cms.CmsMsg;
 import org.argeo.cms.CmsStyles;
 import org.argeo.cms.auth.AuthConstants;
-import org.argeo.security.SecurityUtils;
+import org.argeo.cms.auth.CurrentUser;
 import org.eclipse.swt.events.DisposeEvent;
 import org.eclipse.swt.events.DisposeListener;
 import org.eclipse.swt.events.MouseEvent;
@@ -23,12 +23,12 @@ public class UserMenuLink extends MenuLink {
 
        @Override
        public Control createUi(Composite parent, Node context) {
-               String username = SecurityUtils.getUsername(CmsUtils.getCmsView()
+               String username = CurrentUser.getUsername(CmsUtils.getCmsView()
                                .getSubject());
                if (username.equalsIgnoreCase(AuthConstants.ROLE_ANONYMOUS))
                        setLabel(CmsMsg.login.lead());
                else {
-                       setLabel(SecurityUtils.getDisplayName(CmsUtils.getCmsView()
+                       setLabel(CurrentUser.getDisplayName(CmsUtils.getCmsView()
                                        .getSubject()));
                }
                Label link = (Label) ((Composite) super.createUi(parent, context))
@@ -38,7 +38,7 @@ public class UserMenuLink extends MenuLink {
        }
 
        protected UserMenu createUserMenu(Control source) {
-               return new UserMenu(source.getParent());
+               return new UserMenu(source.getParent(), true);
        }
 
        private class UserMenuLinkController implements MouseListener,
@@ -61,7 +61,7 @@ public class UserMenuLink extends MenuLink {
                                        // avoid to reopen the menu, if one has clicked gain
                                        if (durationSinceLastDispose > 200) {
                                                userMenu = createUserMenu(source);
-                                               userMenu.addDisposeListener(this);
+                                               userMenu.getShell().addDisposeListener(this);
                                        }
                                }
                        }