[kune-commits] r1230 - in trunk: script src/main/java/cc/kune/chat src/main/java/cc/kune/chat/client src/main/java/cc/kune/chat/public src/main/java/cc/kune/client src/main/java/cc/kune/common/client/actions/gwtui src/main/java/cc/kune/common/client/actions/gxtui src/main/java/cc/kune/common/client/actions/ui src/main/java/cc/kune/common/client/ui src/main/java/cc/kune/common/public src/main/java/cc/kune/core src/main/java/cc/kune/core/client/init src/main/java/cc/kune/core/client/sitebar src/main/java/cc/kune/core/client/ui/dialogs src/main/java/cc/kune/core/public src/main/java/cc/kune/msgs src/main/java/cc/kune/msgs/public

Vicente J. Ruiz Jurado vjrj_ at ourproject.org
Tue Feb 1 02:54:09 CET 2011


Author: vjrj_
Date: 2011-02-01 02:54:08 +0100 (Tue, 01 Feb 2011)
New Revision: 1230

Added:
   trunk/src/main/java/cc/kune/chat/public/kune-chat.css
   trunk/src/main/java/cc/kune/chat/public/kune-hablar.css
   trunk/src/main/java/cc/kune/common/client/ui/AbstractFlowToolbar.java
Modified:
   trunk/script/css-update.sh
   trunk/src/main/java/cc/kune/chat/Chat.gwt.xml
   trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java
   trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
   trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java
   trunk/src/main/java/cc/kune/common/client/actions/gxtui/AbstractGxtButtonGui.java
   trunk/src/main/java/cc/kune/common/client/actions/gxtui/GxtToolbarSeparatorGui.java
   trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractGuiItem.java
   trunk/src/main/java/cc/kune/common/client/ui/FlowToolbar.java
   trunk/src/main/java/cc/kune/common/public/kune-common.css
   trunk/src/main/java/cc/kune/core/Core.gwt.xml
   trunk/src/main/java/cc/kune/core/client/init/AppStarterDefault.java
   trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java
   trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java
   trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java
   trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java
   trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.java
   trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.ui.xml
   trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialogView.java
   trunk/src/main/java/cc/kune/core/public/ws.html
   trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml
   trunk/src/main/java/cc/kune/msgs/public/kune-message.css
Log:
NEW - # 19: Public part info message and URL 
http://kune.ourproject.org/issues/ticket/19
NEW - # 15: WIAB under proxy 
http://kune.ourproject.org/issues/ticket/15
NEW - # 16: Autocomplete in login form 
http://kune.ourproject.org/issues/ticket/16
NEW - # 14: Site bar update 
http://kune.ourproject.org/issues/ticket/14

Modified: trunk/script/css-update.sh
===================================================================
--- trunk/script/css-update.sh	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/script/css-update.sh	2011-02-01 01:54:08 UTC (rev 1230)
@@ -9,6 +9,8 @@
 #rsync -aC $APPPUB/css/ $WEBAPP/css
 #rsync -aC $APPPUB/images/ $WEBAPP/images
 
+cp src/main/java/cc/kune/chat/public/kune-chat.css target/kune-0.0.7/ws/
+cp src/main/java/cc/kune/chat/public/kune-hablar.css target/kune-0.0.7/ws/
 cp src/main/java/cc/kune/msgs/public/kune-message.css target/kune-0.0.7/ws/
 cp src/main/java/cc/kune/common/public/kune-common.css target/kune-0.0.7/ws/
 cp src/main/java/cc/kune/core/public/ws.css target/kune-0.0.7/ws/

Modified: trunk/src/main/java/cc/kune/chat/Chat.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/chat/Chat.gwt.xml	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/chat/Chat.gwt.xml	2011-02-01 01:54:08 UTC (rev 1230)
@@ -10,4 +10,5 @@
   <inherits name='com.calclab.hablar.icons.alt.HablarAltIcons' />
   <source path="client" />
   <set-property name="user.agent" value="safari,gecko1_8" />
+  <public path="public" />
 </module>
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/chat/client/ChatClientDefault.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -6,9 +6,11 @@
 import cc.kune.common.client.actions.Action;
 import cc.kune.common.client.actions.ActionEvent;
 import cc.kune.common.client.actions.KeyStroke;
+import cc.kune.common.client.actions.Shortcut;
 import cc.kune.common.client.actions.ui.ParentWidget;
 import cc.kune.common.client.actions.ui.descrip.IconLabelDescriptor;
-import cc.kune.common.client.shortcuts.Keyboard;
+import cc.kune.common.client.actions.ui.descrip.ToolbarSeparatorDescriptor;
+import cc.kune.common.client.actions.ui.descrip.ToolbarSeparatorDescriptor.Type;
 import cc.kune.common.client.ui.PopupTopPanel;
 import cc.kune.core.client.init.AppStartEvent;
 import cc.kune.core.client.resources.icons.IconResources;
@@ -52,7 +54,6 @@
 
         @Override
         public void actionPerformed(final ActionEvent event) {
-            // FIXME
             eventBus.fireEvent(new ToggleShowChatDialogEvent());
         }
 
@@ -60,30 +61,36 @@
 
     protected static final String CHAT_CLIENT_ICON_ID = "k-chat-icon-id";
 
+    private final ChatClientAction action;
     protected IconLabelDescriptor chatIcon;
+    private final I18nTranslationService i18n;
+
     private PopupTopPanel popup;
 
+    private final IconResources res;
+
     private final Session session;
 
+    private final SitebarActionsPresenter siteActions;
+
     @Inject
     public ChatClientDefault(final EventBus eventBus, final I18nTranslationService i18n, final ChatClientAction action,
             final SitebarActionsPresenter siteActions, final IconResources res, final Session session) {
+        this.i18n = i18n;
+        this.action = action;
+        this.siteActions = siteActions;
+        this.res = res;
         this.session = session;
         eventBus.addHandler(AppStartEvent.getType(), new AppStartEvent.AppStartHandler() {
             @Override
             public void onAppStart(final AppStartEvent event) {
-                res.css().ensureInjected();
-                chatIcon = new IconLabelDescriptor(action);
-                chatIcon.putValue(Action.SMALL_ICON, res.chat());
-                chatIcon.setId(CHAT_CLIENT_ICON_ID);
-                chatIcon.setStyles("k-floatright, k-no-backimage, k-btn-sitebar, k-chat-icon");
-                action.putValue(Action.SHORT_DESCRIPTION, i18n.t("Show/hide the chat window"));
-                action.setShortcut(KeyStroke.getKeyStroke('C', Keyboard.MODIFIER_ALT));
-                chatIcon.setVisible(session.isLogged());
-                siteActions.getLeftToolbar().addAction(chatIcon);
+                if (session.isLogged()) {
+                    createActionIfNeeded();
+                }
                 eventBus.addHandler(UserSignInEvent.getType(), new UserSignInHandler() {
                     @Override
                     public void onUserSignIn(final UserSignInEvent event) {
+                        createActionIfNeeded();
                         createDialogIfNeeded();
                         chatIcon.setVisible(true);
                     }
@@ -91,12 +98,14 @@
                 eventBus.addHandler(UserSignOutEvent.getType(), new UserSignOutHandler() {
                     @Override
                     public void onUserSignOut(final UserSignOutEvent event) {
+                        createActionIfNeeded();
                         chatIcon.setVisible(false);
                     }
                 });
                 eventBus.addHandler(ShowChatDialogEvent.getType(), new ShowChatDialogHandler() {
                     @Override
                     public void onShowChatDialog(final ShowChatDialogEvent event) {
+                        createActionIfNeeded();
                         showDialog(event.show);
                     }
                 });
@@ -119,11 +128,34 @@
     @Override
     public void chat(final XmppURI jid) {
         // TODO Auto-generated method stub
+    }
 
+    private void createActionIfNeeded() {
+        if (chatIcon == null) {
+            res.css().ensureInjected();
+            chatIcon = new IconLabelDescriptor(action);
+            chatIcon.setParent(SitebarActionsPresenter.LEFT_TOOLBAR);
+            chatIcon.putValue(Action.SMALL_ICON, res.chat());
+            chatIcon.putValue(Action.NAME, i18n.t("Chat ;)"));
+            chatIcon.setId(CHAT_CLIENT_ICON_ID);
+            chatIcon.setStyles("k-no-backimage, k-btn-sitebar, k-chat-icon");
+            action.putValue(Action.SHORT_DESCRIPTION, i18n.t("Show/hide the chat window"));
+            final KeyStroke shortcut = Shortcut.getShortcut(false, true, true, false, Character.valueOf('C'));
+            action.setShortcut(shortcut);
+            chatIcon.setVisible(session.isLogged());
+            siteActions.getLeftToolbar().addAction(
+                    new ToolbarSeparatorDescriptor(Type.spacer, SitebarActionsPresenter.LEFT_TOOLBAR));
+            siteActions.getLeftToolbar().addAction(
+                    new ToolbarSeparatorDescriptor(Type.spacer, SitebarActionsPresenter.LEFT_TOOLBAR));
+            siteActions.getLeftToolbar().addAction(
+                    new ToolbarSeparatorDescriptor(Type.spacer, SitebarActionsPresenter.LEFT_TOOLBAR));
+            siteActions.getLeftToolbar().addAction(chatIcon);
+        }
     }
 
     private void createDialog(final HablarWidget widget, final HtmlConfig htmlConfig) {
         // popup.setSize(htmlConfig.width, htmlConfig.height);
+        widget.addStyleName("k-chat-panel");
         setSize(widget, htmlConfig);
         popup.add(widget);
     }
@@ -227,8 +259,8 @@
         if (htmlConfig.height != null) {
             widget.setHeight(htmlConfig.height);
         }
-        widget.setWidth("400px");
-        widget.setHeight("400px");
+        widget.setWidth("450px");
+        widget.setHeight("300px");
     }
 
     @Override

Added: trunk/src/main/java/cc/kune/chat/public/kune-chat.css
===================================================================
--- trunk/src/main/java/cc/kune/chat/public/kune-chat.css	                        (rev 0)
+++ trunk/src/main/java/cc/kune/chat/public/kune-chat.css	2011-02-01 01:54:08 UTC (rev 1230)
@@ -0,0 +1,7 @@
+.k-chat-icon {
+	
+}
+
+.k-chat-panel {
+	margin: 10px;
+}
\ No newline at end of file


Property changes on: trunk/src/main/java/cc/kune/chat/public/kune-chat.css
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/src/main/java/cc/kune/chat/public/kune-hablar.css
===================================================================
--- trunk/src/main/java/cc/kune/chat/public/kune-hablar.css	                        (rev 0)
+++ trunk/src/main/java/cc/kune/chat/public/kune-hablar.css	2011-02-01 01:54:08 UTC (rev 1230)
@@ -0,0 +1,602 @@
+/** Colors */
+.hablar-clearBackground {
+	background-color: white;
+}
+
+.hablar-lightBackground {
+	background-color: #e9e9e9;
+}
+
+.hablar-highlightBackground {
+	background-color: highlight;
+}
+
+.hablar-defaultBackground {
+	background-color: #bbbbbb;
+}
+
+.hablar-darkBackground {
+	background-color: #bbbbbb;
+}
+
+.hablar-selectedBackground {
+	background-color: highlight;
+}
+
+.hablar-selectedBackground div.hablar-RosterItemWidget:hover {
+	background-color: transparent;
+}
+
+/** Text colors **/
+.hablar-clearColor {
+	color: black;
+}
+
+.hablar-lightColor {
+	color: #BBBBBB;
+}
+
+.hablar-mediumColor {
+	color: gray;
+}
+
+.hablar-darkColor {
+	color: black;
+}
+
+.hablar-errorColor {
+	color: #c00;
+}
+
+/** Non generalizable styles **/
+div.hablar-ActionWidget:hover {
+	background-color: #BBBBBB;
+}
+
+div.hablar-GroupHeaderWidget:hover {
+	background-color: #BBBBBB;
+	color: black;
+}
+
+div.hablar-RosterItemWidget:hover {
+	background-color: #E9E9E9;
+}
+
+div.hablar-SearchResultItemWidget:hover {
+	background-color: #e9e9e9;
+}
+
+.hablar-ChatWidget .actions div.hablar-OccupantsWidget:hover {
+	background-color: #BBBBBB;
+	color: white;
+}
+
+.hablar-Logger a.gwt-Anchor:hover {
+	color: white;
+	background-color: #BBBBBB;
+}
+
+.hablar-HablarWidget .gwt-TabLayoutPanel .gwt-TabLayoutPanelTab {
+	background-color: #AAAAAA;
+	padding: 0px 1px;
+	margin: 0 0px 0 0;
+	border-left: 1px solid #bbbbbb;
+	border-top: 1px solid #e9e9e9;
+	border-right: 1px solid e9e9e9;
+}
+
+.hablar-HablarWidget .gwt-TabLayoutPanel .gwt-TabLayoutPanelTab-selected
+	{
+	background-color: #e9e9e9;
+	border-left: 1px solid white;
+	border-top: 1px solid white;
+	border-right: 1px solid white;
+}
+/*
+.gwt-SplitLayoutPanel .gwt-SplitLayoutPanel-HDragger {
+	background-color: #bbbbbb;
+    border-left: 1px solid gray;
+    border-right: 1px solid #e9e9e9;
+}
+*/
+
+input[disabled] {
+	background-color: #e9e9e9;
+	color: black;
+}
+
+.hablar-Header.unattended {
+	color: #cc0000;
+	font-weight: bold;
+}
+
+.hablar-Header.unattended.blinkOn {
+	color: #000000;
+	background-color: highlight;
+}
+
+/** Classes for borders **/
+.hablar-lightBordered {
+	border: 3px solid #E9E9E9;
+}
+
+.hablar-partialLightBordered {
+	border-top: 1px solid #E9E9E9;
+	border-bottom: 1px solid #E9E9E9;
+}
+
+.hablar-bottomLightBordered {
+	border-bottom: 1px solid #E9E9E9;
+}
+
+.hablar-defaultBordered {
+	border-left: 1px solid #BBBBBB;
+	/* This border affects scroll visibility */
+	border-top: 1px solid #BBBBBB;
+}
+
+.hablar-topDefaultBordered {
+	border-top: 1px solid #BBBBBB;
+}
+
+.hablar-bottomDefaultBordered {
+	border-bottom: 1px solid #BBBBBB;
+}
+
+.hablar-partialDarkBordered {
+	border-left: 1px solid #BBBBBB;
+	border-top: 1px solid #BBBBBB;
+}
+
+.hablar-darkBordered {
+	border: 1px solid #BBBBBB;
+}
+
+.hablar-bottomDarkBordered {
+	border-bottom: 1px solid #BBBBBB;
+}
+
+.hablar-disabledBordered {
+	border-left: 1px solid #8C8C8C;
+	border-top: 1px solid #8C8C8C;
+}
+
+/** Accordion effects **/
+.hablar-AccordionHeaderWidget.notFocused {
+	border-top: 1px solid #E9E9E9;
+	border-bottom: 1px solid #BBB;
+}
+
+.hablar-AccordionHeaderWidget.focused {
+	border-top: 1px solid white;
+	border-bottom: 1px solid #BBB;
+}
+
+/** Chat messages **/
+.chatMessage .body.incoming {
+	
+}
+
+.chatMessage .body.sent {
+	color: #808080;
+}
+
+.chatMessage .body.info {
+	color: #808080;
+	font-style: italic;
+}
+
+.chatMessage .body.alert {
+	color: #c00;
+}
+
+.hablar-ChatWidget .chatMessage {
+	display: block;
+	width: 94%;
+	overflow: hidden;
+	padding: 2px 3% 2px 3%;
+}
+
+.hablar-ChatWidget .chatMessage.odd {
+	background-color: #efefef;
+}
+
+.chatMessage .author {
+	display: inline;
+	font-weight: bold;
+}
+
+.chatMessage .metadata {
+	display: inline;
+	color: #808080;
+	font-size: 90%;
+}
+
+.chatMessage .body {
+	display: inline;
+}
+
+.hablar-EmoticonImage {
+	vertical-align: text-top;
+}
+
+/** MUC room occupants **/
+.gwt-PopupPanel.occupants {
+	border-top: 1px solid #E9E9E9;
+	border-left: 1px solid #BBBBBB;
+	border-right: 1px solid #BBBBBB;
+	border-bottom: 1px solid #BBBBBB;
+	background-color: #e9e9e9;
+	z-index: 10000;
+}
+
+/** IE6 ZINDEX BUG **/
+.hablar-HablarWidget {
+	z-index: 1;
+}
+
+html {
+	font-family: Tahoma, sans-serif;
+	font-size: 80%;
+}
+
+body {
+	height: 90%;
+}
+
+/** HABLAR HEADER **/
+.hablar-Header {
+	width: 100%;
+	overflow: hidden;
+	cursor: pointer;
+	padding: 3px 0;
+}
+
+.hablar-Header .icon {
+	float: left;
+	margin-right: 3px;
+	margin-left: 3px;
+}
+
+.hablar-RosterGroupWidget .icon {
+	float: left;
+	margin-right: 3px;
+}
+
+.hablar-Header .title {
+	float: left;
+}
+
+.hablar-AccordionHeaderWidget  .icon {
+	float: left;
+	margin: 0 3px 0 3px;
+}
+
+.hablar-AccordionHeaderWidget  .title {
+	display: block;
+	margin: 0 3px;
+}
+
+.hablar-AccordionHeaderWidget  .close {
+	float: right;
+	margin: 0px 3px 0 0;
+}
+
+.hablar-TabsHeaderWidget {
+	padding: 0;
+	margin: 0;
+	background-color: transparent;
+	border: none;
+}
+
+.hablar-TabsHeaderWidget .close {
+	margin: 2px 3px;
+}
+
+.hablar-AccordionHeader .close {
+	margin: 2px 3px 0 0;
+}
+
+.hablar-AccordionHeader .icon {
+	
+}
+
+.hablar-AccordionHeader .title {
+	display: block;
+}
+
+.hablar-TabsHeaderWidget .title {
+	display: inline;
+	margin-right: 10px;
+}
+
+/** DOCKS **/
+.hablar-DockContainer-top {
+	background-color: transparent;
+	z-index: 4000;
+}
+
+.hablar-Header.DockHeaderWidget-top {
+	background-color: transparent;
+	border: 1px transparent;
+}
+
+.hablar-Header.DockHeaderWidget-left {
+	cursor: default;
+	-moz-user-select: none;
+}
+
+.DockHeaderWidget-left .icon {
+	margin-left: 3px;
+}
+
+/** LIST ITEMS **/
+.hablar-ListItem {
+	display: block;
+	width: 100%;
+	overflow: hidden;
+	padding: 5px 0px 0 0px;
+}
+
+.clickable {
+	cursor: pointer;
+}
+
+/** USER **/
+.hablar-UserWidget .container {
+	padding: 0px 10px;
+	z-index: 3000;
+}
+
+.hablar-UserWidget h2 {
+	margin: 15px 0 5px 0;
+}
+
+.hablar-UserWidget .actions {
+	padding: 5px 0 0 10px;
+}
+
+/** ROSTER **/
+.hablar-RosterWidget .item {
+	width: 100%;
+	overflow: hidden;
+}
+
+.hablar-RosterWidget .actions {
+	width: 100%;
+	overflow: hidden;
+}
+
+.hablar-RosterWidget .actions .hablar-ActionWidget {
+	float: left;
+	margin-right: 1px;
+}
+
+.hablar-GroupHeaderWidget {
+	overflow: hidden;
+	padding: 3px;
+	cursor: pointer;
+	border-bottom: 1px solid #BBBBBB;
+	border-top: 1px solid white;
+}
+
+.hablar-GroupHeaderWidget .label {
+	display: block;
+	margin: 3px;
+}
+
+.hablar-GroupHeaderWidget .menu {
+	float: right;
+	margin-right: 3px;
+}
+
+.hablar-RosterItemWidget .user {
+	float: left;
+}
+
+.hablar-RosterItemWidget .icon {
+	display: block;
+	float: left;
+	margin: 2px 5px 2px 2px;
+}
+
+.hablar-RosterItemWidget .name {
+	display: block;
+	float: left;
+	margin-right: 5px;
+}
+
+.hablar-RosterItemWidget .menu {
+	float: right;
+}
+
+.hablar-RosterGroupWidget .menu {
+	float: right;
+	cursor: pointer;
+}
+
+/** CHAT PAGE **/
+.hablar-ChatWidget .actions div {
+	float: right;
+}
+
+/** SEARCH PAGE **/
+.hablar-SearchWidget .searchBox {
+	width: 75%;
+	padding: 3px;
+	margin-right: 1%;
+}
+
+.hablar-SearchWidget .gwt-Button {
+	width: 20%;
+}
+
+/** ROOMS **/
+.hablar-ChatWidget .actions .hablar-OccupantsWidget {
+	display: block;
+	float: left;
+	padding: 2px 5px;
+	margin-left: 5px;
+	-moz-border-radius: 5px;
+	-webkit-border-radius: 5px;
+	cursor: pointer;
+}
+
+.hablar-OccupantWidget {
+	width: 100%;
+	overflow: hidden;
+	margin: 2px 5px;
+	cursor: default;
+}
+
+.hablar-OccupantWidget .icon {
+	display: block;
+	float: left;
+	margin-right: 5px;
+}
+
+.hablar-OccupantWidget .name {
+	display: block;
+	float: left;
+}
+
+/** ROOM INVITATION **/
+.hablar-OpenRoomWidget .list {
+	padding: 5px;
+}
+
+/** LOGGER **/
+.hablar-Logger .gwt-Label {
+	opacity: 0.5;
+}
+
+.hablar-Logger .gwt-Label.ready {
+	opacity: 1;
+}
+
+.hablar-Logger .output {
+	color: blue;
+}
+
+.hablar-Logger .input {
+	color: #0c0;
+}
+
+/** OVERLAY **/
+.hablar-Overlay {
+	z-index: 7000;
+	padding: 20px 10px 10px 10px;
+}
+
+/** FORMS **/
+.form p {
+	width: 100%;
+	overflow: hidden;
+	margin: 3px 0;
+}
+
+.form h2 {
+	font-size: 200%;
+}
+
+.form span.option {
+	display: block;
+	margin: 0 0 15px 30px;
+}
+
+.form p label {
+	display: block;
+	margin-top: 5px;
+	margin-right: 10px;
+	margin-right: 0.5em;
+}
+
+.form p .gwt-Label {
+	font-weight: bold;
+}
+
+.form .actions {
+	padding-left: 5px;
+	margin-top: 15px;
+	padding-top: 5px;
+}
+
+.form .gwt-TextBox,.form .gwt-PasswordTextBox {
+	padding: 2px;
+	width: 98%;
+	border: 0;
+}
+
+.form p .gwt-RadioButton,.form p .gwt-CheckBox {
+	display: block;
+	width: 100%;
+	overflow: hidden;
+}
+
+.form p .gwt-RadioButton input,.form p .gwt-CheckBox input {
+	float: left;
+	margin-right: 5px;
+}
+
+.form p .gwt-RadioButton label,.form p .gwt-CheckBox label {
+	float: left;
+	margin: 0;
+}
+
+.hablar-PopupPanel {
+	z-index: 5000;
+	-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
+	-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
+}
+
+.hablar-PresenceWidget .controls {
+	width: 100%;
+	overflow: hidden;
+}
+
+.hablar-PresenceWidget .menu,.hablar-PresenceWidget .icon {
+	float: left;
+	margin-top: 4px;
+}
+
+.loading {
+	width: 100%;
+	overflow: hidden;
+}
+
+.loading .icon {
+	display: block;
+	float: left;
+	margin-right: 5px;
+}
+
+/** SEMANTIC CSS PLEASE! **/
+.overflowhidden {
+	overflow: hidden;
+}
+
+/** ADD TO GROUP **/
+.hablar-ManageGroupsWidget .list {
+	padding: 5px;
+}
+
+/** COPY TO CLIPBOARD **/
+.hablar-CopyToClipboardWidget .gwt-TextArea {
+	width: 100%;
+	height: 10em;
+	margin-top: 3px;
+}
+
+.ellipsis {
+	white-space: nowrap;
+	overflow: hidden;
+	text-overflow: ellipsis;
+	-o-text-overflow: ellipsis;
+	-ms-text-overflow: ellipsis;
+	-moz-binding: url('ellipsis.xml#ellipsis');
+	width: 100%
+}
+
+.gwt-TextArea {
+	border: 1px solid #bbbbbb;
+}
\ No newline at end of file


Property changes on: trunk/src/main/java/cc/kune/chat/public/kune-hablar.css
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: trunk/src/main/java/cc/kune/client/KuneEntryPoint.java
===================================================================
--- trunk/src/main/java/cc/kune/client/KuneEntryPoint.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/client/KuneEntryPoint.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -46,7 +46,6 @@
         DelayedBindRegistry.bind(ginjector);
         AsyncCallbackSimple.init(ginjector.getErrorHandler());
         NotifyUser.init(ginjector.getEventBus());
-        // ginjector.getPlaceManager().revealCurrentPlace();
         ginjector.getCorePresenter().get().forceReveal();
         ginjector.getStateManager();
         ginjector.getSiteTokenListeners();
@@ -54,6 +53,7 @@
         ginjector.getI18n();
         ginjector.getGxtGuiProvider();
         ginjector.getUserNotifierPresenter();
+        ginjector.getGlobalShortcutRegister();
         ginjector.getSpinerPresenter();
         ginjector.getSiteLogoPresenter();
         ginjector.getSpacesTabPresenter();

Modified: trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/common/client/actions/gwtui/AbstractGwtButtonGui.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -21,6 +21,7 @@
     private ButtonBase button;
     private final boolean enableTongle;
     private IconLabel iconLabel;
+    private boolean isChild;
 
     public AbstractGwtButtonGui() {
         this(null, false);
@@ -51,9 +52,14 @@
         if (id != null) {
             button.ensureDebugId(id);
         }
-        initWidget(button);
-        if (descriptor.isChild()) {
-            child = button;
+        isChild = descriptor.isChild();
+        if (isChild) {
+            // If button is inside a toolbar don't init...
+            if (descriptor.isChild()) {
+                child = button;
+            }
+        } else {
+            initWidget(button);
         }
         button.addClickHandler(new ClickHandler() {
             @Override
@@ -109,8 +115,10 @@
 
     @Override
     public void setVisible(final boolean visible) {
-        if (button.isAttached()) {
-            super.setVisible(visible);
+        if (!isChild) {
+            if (button.isAttached()) {
+                super.setVisible(visible);
+            }
         }
     }
 

Modified: trunk/src/main/java/cc/kune/common/client/actions/gxtui/AbstractGxtButtonGui.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/gxtui/AbstractGxtButtonGui.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/common/client/actions/gxtui/AbstractGxtButtonGui.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -5,10 +5,12 @@
 import cc.kune.common.client.actions.KeyStroke;
 import cc.kune.common.client.actions.ui.AbstractChildGuiItem;
 import cc.kune.common.client.actions.ui.AbstractGuiItem;
+import cc.kune.common.client.actions.ui.ParentWidget;
 import cc.kune.common.client.actions.ui.descrip.AbstractGuiActionDescrip;
 import cc.kune.common.client.actions.ui.descrip.ButtonDescriptor;
 import cc.kune.common.client.actions.ui.descrip.PushButtonDescriptor;
 
+import com.extjs.gxt.ui.client.Style.ButtonScale;
 import com.extjs.gxt.ui.client.event.ButtonEvent;
 import com.extjs.gxt.ui.client.event.SelectionListener;
 import com.extjs.gxt.ui.client.widget.button.Button;
@@ -35,11 +37,15 @@
     @Override
     public AbstractGuiItem create(final AbstractGuiActionDescrip descriptor) {
         super.descriptor = descriptor;
+        descriptor.putValue(ParentWidget.PARENT_UI, this);
         if (descriptor instanceof PushButtonDescriptor) {
             button = new ToggleButton();
         } else {
             button = new Button();
         }
+        button.setAutoWidth(false);
+        button.setAutoHeight(false);
+        button.setBorders(false);
         final String id = descriptor.getId();
         if (id != null) {
             button.ensureDebugId(id);
@@ -71,6 +77,7 @@
     @Override
     protected void setIconStyle(final String style) {
         button.setIconStyle(style);
+        button.setScale(ButtonScale.SMALL);
     }
 
     public void setPressed(final boolean pressed) {

Modified: trunk/src/main/java/cc/kune/common/client/actions/gxtui/GxtToolbarSeparatorGui.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/gxtui/GxtToolbarSeparatorGui.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/common/client/actions/gxtui/GxtToolbarSeparatorGui.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -21,10 +21,10 @@
             child = new FillToolItem();
             break;
         case spacer:
-            child = new SeparatorToolItem();
+            child = new LabelToolItem();
             break;
         case separator:
-            child = new LabelToolItem();
+            child = new SeparatorToolItem();
             break;
         default:
             break;

Modified: trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractGuiItem.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractGuiItem.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/common/client/actions/ui/AbstractGuiItem.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -31,7 +31,9 @@
     }
 
     protected void clearStyles() {
-        super.setStyleName("");
+        if (super.isAttached()) {
+            super.setStyleName("");
+        }
     }
 
     private void configure() {

Added: trunk/src/main/java/cc/kune/common/client/ui/AbstractFlowToolbar.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/ui/AbstractFlowToolbar.java	                        (rev 0)
+++ trunk/src/main/java/cc/kune/common/client/ui/AbstractFlowToolbar.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -0,0 +1,97 @@
+/*
+ *
+ * Copyright (C) 2007-2009 The kune development team (see CREDITS for details)
+ * This file is part of kune.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ \*/
+package cc.kune.common.client.ui;
+
+import com.google.gwt.user.client.ui.FlowPanel;
+import com.google.gwt.user.client.ui.HasWidgets;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.Widget;
+
+public abstract class AbstractFlowToolbar extends FlowPanel implements AbstractToolbar, HasWidgets {
+
+    public AbstractFlowToolbar() {
+        super();
+    }
+
+    @Override
+    public Widget addFill() {
+        final Label emptyLabel = new Label("");
+        emptyLabel.addStyleName("oc-floatright");
+        // emptyLabel.setWidth("100%");
+        add(emptyLabel);
+        return emptyLabel;
+    }
+
+    @Override
+    public Widget addSeparator() {
+        final Label emptyLabel = new Label("");
+        emptyLabel.setStyleName("ytb-sep-FIXMEEE");
+        emptyLabel.addStyleName("oc-tb-sep");
+        emptyLabel.addStyleName("oc-floatleft");
+        add(emptyLabel);
+        return emptyLabel;
+    }
+
+    @Override
+    public Widget addSpacer() {
+        final Label emptyLabel = new Label("");
+        emptyLabel.setStyleName("oc-tb-spacer");
+        emptyLabel.addStyleName("oc-floatleft");
+        add(emptyLabel);
+        return emptyLabel;
+    }
+
+    @Override
+    public void removeAll() {
+        clear();
+    }
+
+    private void setBasicStyle() {
+        setStyleName("x-toolbar-FIXME");
+        addStyleName("x-panel-FIXME");
+    }
+
+    /**
+     * Set the blank style
+     */
+    @Override
+    public void setBlankStyle() {
+        setBasicStyle();
+        addStyleName("oc-blank-toolbar");
+    }
+
+    /**
+     * Set the normal grey style
+     */
+    @Override
+    public void setNormalStyle() {
+        setBasicStyle();
+        addStyleName("oc-tb-bottom-line");
+    }
+
+    /**
+     * Set the transparent style
+     */
+    public void setTranspStyle() {
+        setBasicStyle();
+        addStyleName("oc-transp");
+    }
+
+}
\ No newline at end of file


Property changes on: trunk/src/main/java/cc/kune/common/client/ui/AbstractFlowToolbar.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: trunk/src/main/java/cc/kune/common/client/ui/FlowToolbar.java
===================================================================
--- trunk/src/main/java/cc/kune/common/client/ui/FlowToolbar.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/common/client/ui/FlowToolbar.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -19,20 +19,19 @@
  \*/
 package cc.kune.common.client.ui;
 
-import java.util.Iterator;
-
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlowPanel;
 import com.google.gwt.user.client.ui.HasVerticalAlignment.VerticalAlignmentConstant;
-import com.google.gwt.user.client.ui.HasWidgets;
 import com.google.gwt.user.client.ui.HorizontalPanel;
+import com.google.gwt.user.client.ui.IndexedPanel.ForIsWidget;
+import com.google.gwt.user.client.ui.IsWidget;
 import com.google.gwt.user.client.ui.Label;
 import com.google.gwt.user.client.ui.Widget;
 
-public class FlowToolbar extends Composite implements AbstractToolbar, HasWidgets {
+public class FlowToolbar extends Composite implements AbstractToolbar, ForIsWidget {
 
+    private final FlowPanel childPanel;
     private final HorizontalPanel mainPanel;
-    private final FlowPanel childPanel;
 
     public FlowToolbar() {
         super();
@@ -42,14 +41,17 @@
         initWidget(mainPanel);
     }
 
+    @Override
     public void add(final Widget widget) {
         childPanel.add(widget);
     }
 
+    @Override
     public void add(final Widget widget, final VerticalAlignmentConstant valign) {
         childPanel.add(widget);
     }
 
+    @Override
     public Widget addFill() {
         final Label emptyLabel = new Label("");
         emptyLabel.addStyleName("oc-floatright");
@@ -58,6 +60,7 @@
         return emptyLabel;
     }
 
+    @Override
     public Widget addSeparator() {
         final Label emptyLabel = new Label("");
         emptyLabel.setStyleName("ytb-sep-FIXMEEE");
@@ -67,6 +70,7 @@
         return emptyLabel;
     }
 
+    @Override
     public Widget addSpacer() {
         final Label emptyLabel = new Label("");
         emptyLabel.setStyleName("oc-tb-spacer");
@@ -75,31 +79,59 @@
         return emptyLabel;
     }
 
-    @Override
     public void clear() {
         childPanel.clear();
     }
 
+    @Override
+    public Widget getWidget(final int index) {
+        return childPanel.getWidget(index);
+    }
+
+    @Override
+    public int getWidgetCount() {
+        return childPanel.getWidgetCount();
+    }
+
+    @Override
+    public int getWidgetIndex(final IsWidget child) {
+        return childPanel.getWidgetIndex(child);
+    }
+
+    @Override
+    public int getWidgetIndex(final Widget child) {
+        return childPanel.getWidgetIndex(child);
+    }
+
+    @Override
     public void insert(final Widget widget, final int position) {
         childPanel.insert(widget, position);
     }
 
     @Override
-    public Iterator<Widget> iterator() {
-        return childPanel.iterator();
+    public boolean remove(final int index) {
+        return childPanel.remove(index);
     }
 
+    @Override
     public boolean remove(final Widget widget) {
         return childPanel.remove(widget);
     }
 
+    @Override
     public void removeAll() {
         childPanel.clear();
     }
 
+    private void setBasicStyle() {
+        setStyleName("x-toolbar-FIXME");
+        addStyleName("x-panel-FIXME");
+    }
+
     /**
      * Set the blank style
      */
+    @Override
     public void setBlankStyle() {
         setBasicStyle();
         addStyleName("oc-blank-toolbar");
@@ -114,6 +146,7 @@
     /**
      * Set the normal grey style
      */
+    @Override
     public void setNormalStyle() {
         setBasicStyle();
         addStyleName("oc-tb-bottom-line");
@@ -126,9 +159,4 @@
         setBasicStyle();
         addStyleName("oc-transp");
     }
-
-    private void setBasicStyle() {
-        setStyleName("x-toolbar-FIXME");
-        addStyleName("x-panel-FIXME");
-    }
 }
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/common/public/kune-common.css
===================================================================
--- trunk/src/main/java/cc/kune/common/public/kune-common.css	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/common/public/kune-common.css	2011-02-01 01:54:08 UTC (rev 1230)
@@ -6,11 +6,11 @@
 	
 }
 
-.k-floatleft, .k-fl {
+.k-floatleft,.k-fl {
 	float: left;
 }
 
-.k-floatright, .k-fr {
+.k-floatright,.k-fr {
 	float: right;
 }
 
@@ -20,21 +20,21 @@
 }
 
 .k-opacity80 {
-	kfilter: alpha(opacity =       80);
+	kfilter: alpha(opacity =         80);
 	-moz-opacity: 0.80;
 	-khtml-opacity: 0.80;
 	opacity: 0.80;
 }
 
 .k-opacity90 {
-	kfilter: alpha(opacity =       90);
+	kfilter: alpha(opacity =         90);
 	-moz-opacity: 0.90;
 	-khtml-opacity: 0.90;
 	opacity: 0.90;
 }
 
 .k-opacity95 {
-	kfilter: alpha(opacity =       95);
+	kfilter: alpha(opacity =         95);
 	-moz-opacity: 0.95;
 	-khtml-opacity: 0.95;
 	opacity: 0.95;
@@ -42,7 +42,7 @@
 
 .gwt-PopupPanelGlass {
 	background-color: #f7ebe3 !important;
-	kfilter: alpha(opacity =       68) !important;
+	kfilter: alpha(opacity =         68) !important;
 	-moz-opacity: 0.68 !important;
 	-khtml-opacity: 0.68 !important;
 	opacity: 0.68 !important;
@@ -130,13 +130,28 @@
 	color: #552200;
 	font-size: 20px;
 	font-weight: bold;
+	margin: 5px 0 0 12px;
 }
 
 .k-dialog-innerp {
 	background-color: #FFFFFF;
 	border: solid 1px #F2F2F2;
+	margin: 34px 16px 20px 16px;
 }
 
+.k-dialog-btn-area {
+	padding:0 15px 15px 15px;
+	margin-bottom:30px;
+}
+
+.k-dialog-btn-area div {
+	margin: 10px
+}
+
+.k-dialog-innerp table {
+	margin: 5px;
+}
+
 .k-dialog-btn {
 	text-shadow: 1px 1px 1px #FFFFFF;
 	font-weight: bold;
@@ -163,21 +178,21 @@
 }
 
 .oc-user-msg {
-  background-color: #FFCC00;
-  padding: 3px;
+	background-color: #FFCC00;
+	padding: 3px;
 }
 
 .oc-user-msg-popup {
-  padding: 0px;
-  border: 0px;
+	padding: 0px;
+	border: 0px;
 }
 
 .oc-floatleft {
-  float: left;
+	float: left;
 }
 
 .oc-floatright {
-  float: right;
+	float: right;
 }
 
 .x-toolbar {
@@ -186,111 +201,113 @@
 }
 
 .oc-testico {
-  background-image: url(/common/img/ico.png) !important;
-  -moz-background-clip: border;
-  -moz-background-inline-policy: continuous;
-  -moz-background-origin: padding;
-  background-attachment: scroll;
-  background-color: transparent;
-  background-position: 0 0;
-  background-repeat: no-repeat;
-  height: 16px;
-  widows: 16px;
+	background-image: url(/common/img/ico.png) !important;
+	-moz-background-clip: border;
+	-moz-background-inline-policy: continuous;
+	-moz-background-origin: padding;
+	background-attachment: scroll;
+	background-color: transparent;
+	background-position: 0 0;
+	background-repeat: no-repeat;
+	height: 16px;
+	widows: 16px;
 }
 
 .oc-ico-pad {
-  padding-left: 20px;
-  white-space: normal;
+	padding-left: 20px;
+	white-space: normal;
 }
 
 .oc-tb-spacer {
-  margin: 2px;
-  width: 2px;
+	margin: 2px;
+	width: 2px;
 }
 
 .oc-tb-bottom-line {
-  border-bottom-color: rgb(208, 208, 208);
-  border-bottom-style: solid;
-  border-bottom-width: 1px;
+	border-bottom-color: rgb(208, 208, 208);
+	border-bottom-style: solid;
+	border-bottom-width: 1px;
 }
 
 .oc-blank-toolbar {
-  background: #FFF none repeat scroll 0% 50%;
+	background: #FFF none repeat scroll 0% 50%;
 }
 
 .oc-tb-sep {
-  padding-top: 4px;
-  padding-left: 5px;
+	padding-top: 4px;
+	padding-left: 5px;
 }
 
 .oc-transp .x-panel-body {
-  background: transparent;
+	background: transparent;
 }
 
 .oc-menu {
-  cursor: default;
-  -moz-user-select: none;
-  -khtml-user-select: none;
-  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
-  -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
-  border: 1 px solid #BBBBBB;
+	cursor: default;
+	-moz-user-select: none;
+	-khtml-user-select: none;
+	-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
+	-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
+	border: 1 px solid #BBBBBB;
 }
 
 .oc-menu .gwt-MenuItem {
-  cursor: default;
-  -moz-user-select: none;
-  -khtml-user-select: none;
+	cursor: default;
+	-moz-user-select: none;
+	-khtml-user-select: none;
 }
 
 .oc-button {
-  padding: 2px;
-  -webkit-border-radius: 6px;
-  -moz-border-radius: 6px;
-  border-radius: 6px;
-  text-decoration: none;
-  vertical-align: middle;
-   background-color: #F2F2F2;
+	padding: 2px;
+	-webkit-border-radius: 6px;
+	-moz-border-radius: 6px;
+	border-radius: 6px;
+	text-decoration: none;
+	vertical-align: middle;
+	background-color: #F2F2F2;
 }
 
 .oc-button:hover {
-  border: 2px orange solid;
-  background: #f0f0f0;
-  color: #855585;
+	border: 2px orange solid;
+	background: #f0f0f0;
+	color: #855585;
 }
 
 .oc-button:active {
-  border-top-color: #ffffff;
-  background: #ffffff;
+	border-top-color: #ffffff;
+	background: #ffffff;
 }
 
 #oc-mshortcut {
-  position: absolute;
-  right: 10px;
+	position: absolute;
+	right: 10px;
 }
 
 #oc-mshortcut-hidden {
-  visibility: hidden;
+	visibility: hidden;
 }
 
 #oc-mshortcut a {
-  text-decoration: none;
-  color: black;
-}.oc-user-msg {
-  background-color: #FFCC00;
-  padding: 3px;
+	text-decoration: none;
+	color: black;
 }
 
+.oc-user-msg {
+	background-color: #FFCC00;
+	padding: 3px;
+}
+
 .oc-user-msg-popup {
-  padding: 0px;
-  border: 0px;
+	padding: 0px;
+	border: 0px;
 }
 
 .oc-floatleft {
-  float: left;
+	float: left;
 }
 
 .oc-floatright {
-  float: right;
+	float: right;
 }
 
 .x-toolbar {
@@ -299,97 +316,97 @@
 }
 
 .oc-testico {
-  background-image: url(/common/img/ico.png) !important;
-  -moz-background-clip: border;
-  -moz-background-inline-policy: continuous;
-  -moz-background-origin: padding;
-  background-attachment: scroll;
-  background-color: transparent;
-  background-position: 0 0;
-  background-repeat: no-repeat;
-  height: 16px;
-  widows: 16px;
+	background-image: url(/common/img/ico.png) !important;
+	-moz-background-clip: border;
+	-moz-background-inline-policy: continuous;
+	-moz-background-origin: padding;
+	background-attachment: scroll;
+	background-color: transparent;
+	background-position: 0 0;
+	background-repeat: no-repeat;
+	height: 16px;
+	widows: 16px;
 }
 
 .oc-ico-pad {
-  padding-left: 20px;
-  white-space: normal;
+	padding-left: 20px;
+	white-space: normal;
 }
 
 .oc-tb-spacer {
-  margin: 2px;
-  width: 2px;
+	margin: 2px;
+	width: 2px;
 }
 
 .oc-tb-bottom-line {
-  border-bottom-color: rgb(208, 208, 208);
-  border-bottom-style: solid;
-  border-bottom-width: 1px;
+	border-bottom-color: rgb(208, 208, 208);
+	border-bottom-style: solid;
+	border-bottom-width: 1px;
 }
 
 .oc-blank-toolbar {
-  background: #FFF none repeat scroll 0% 50%;
+	background: #FFF none repeat scroll 0% 50%;
 }
 
 .oc-tb-sep {
-  padding-top: 4px;
-  padding-left: 5px;
+	padding-top: 4px;
+	padding-left: 5px;
 }
 
 .oc-transp .x-panel-body {
-  background: transparent;
+	background: transparent;
 }
 
 .oc-menu {
-  cursor: default;
-  -moz-user-select: none;
-  -khtml-user-select: none;
-  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
-  -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
-  border: 1 px solid #BBBBBB;
+	cursor: default;
+	-moz-user-select: none;
+	-khtml-user-select: none;
+	-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
+	-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
+	border: 1 px solid #BBBBBB;
 }
 
 .oc-menu .gwt-MenuItem {
-  cursor: default;
-  -moz-user-select: none;
-  -khtml-user-select: none;
+	cursor: default;
+	-moz-user-select: none;
+	-khtml-user-select: none;
 }
 
 .oc-button {
-  padding: 2px;
-  -webkit-border-radius: 6px;
-  -moz-border-radius: 6px;
-  border-radius: 6px;
-  text-decoration: none;
-  vertical-align: middle;
-   background-color: #F2F2F2;
+	padding: 2px;
+	-webkit-border-radius: 6px;
+	-moz-border-radius: 6px;
+	border-radius: 6px;
+	text-decoration: none;
+	vertical-align: middle;
+	background-color: #F2F2F2;
 }
 
 .oc-button:hover {
-  border: 2px orange solid;
-  background: #f0f0f0;
-  color: #855585;
+	border: 2px orange solid;
+	background: #f0f0f0;
+	color: #855585;
 }
 
 .oc-button:active {
-  border-top-color: #ffffff;
-  background: #ffffff;
+	border-top-color: #ffffff;
+	background: #ffffff;
 }
 
 #oc-mshortcut {
-  position: absolute;
-  right: 10px;
+	position: absolute;
+	right: 10px;
 }
 
 #oc-mshortcut-hidden {
-  visibility: hidden;
+	visibility: hidden;
 }
 
 #oc-mshortcut a {
-  text-decoration: none;
-  color: black;
+	text-decoration: none;
+	color: black;
 }
 
-.k-no-backimage, .k-no-backimage td {
+.k-no-backimage,.k-no-backimage td {
 	background-image: none;
-}
+}
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/core/Core.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/core/Core.gwt.xml	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/Core.gwt.xml	2011-02-01 01:54:08 UTC (rev 1230)
@@ -19,7 +19,5 @@
     <inherits name="com.jhickman.web.gwt.gxtuibinder.GxtUiBinder" />
 	<inherits name="com.calclab.suco.Suco" />
 	<!-- Styles =================================================== -->
-	<stylesheet src="ws.css" />
-	<stylesheet src="fontface/stylesheet.css" />
 	<!-- <inherits name="com.google.gwt.user.theme.standard.Standard" /> -->
 </module>
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/core/client/init/AppStarterDefault.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/init/AppStarterDefault.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/init/AppStarterDefault.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -95,9 +95,7 @@
                     @Override
                     public void execute() {
                         hideInitialPanels();
-                        // eventBus.fireEvent(new
-                        // UserNotifyEvent(NotifyLevel.info, "Success",
-                        // "App Started.", true));
+                        eventBus.fireEvent(new UserNotifyEvent(NotifyLevel.info, "Success", "App Started.", true));
                     }
                 });
             }

Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarActionsPresenter.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -40,8 +40,9 @@
         IsActionExtensible getRightBar();
     }
 
+    public static final ToolbarDescriptor LEFT_TOOLBAR = new ToolbarDescriptor();
     public static final MenuDescriptor OPTIONS_MENU = new MenuDescriptor();
-    public static final ToolbarDescriptor TOOLBAR = new ToolbarDescriptor();
+    public static final ToolbarDescriptor RIGHT_TOOLBAR = new ToolbarDescriptor();
 
     private final I18nTranslationService i18n;
     private final IconResources icons;
@@ -63,6 +64,7 @@
         this.signInLink = signInLink;
         this.res = res;
         this.icons = icons;
+        init();
     }
 
     public IsActionExtensible getLeftToolbar() {
@@ -77,8 +79,17 @@
         return getView().getRightBar();
     }
 
-    public void init() {
+    private void init() {
+        getView().getLeftBar().addAction(LEFT_TOOLBAR);
+        getView().getRightBar().addAction(RIGHT_TOOLBAR);
+        getView().getRightBar().addAction(OPTIONS_MENU);
+    }
+
+    @ProxyEvent
+    public void onAppStart(final AppStartEvent event) {
+        final IsActionExtensible right = getView().getRightBar();
         OPTIONS_MENU.putValue(Action.NAME, i18n.t("Options"));
+        OPTIONS_MENU.setParent(RIGHT_TOOLBAR);
         final AbstractExtendedAction action = new AbstractExtendedAction() {
             @Override
             public void actionPerformed(final ActionEvent event) {
@@ -88,15 +99,10 @@
         action.putValue(Action.NAME, "Test");
         final MenuItemDescriptor testMenuItem = new MenuItemDescriptor(OPTIONS_MENU, action);
         OPTIONS_MENU.setStyles("k-no-backimage, k-btn-sitebar");
-        final ToolbarSeparatorDescriptor separator = new ToolbarSeparatorDescriptor(Type.separator,
-                SitebarActionsPresenter.TOOLBAR);
-        final ToolbarSeparatorDescriptor separator2 = new ToolbarSeparatorDescriptor(Type.separator,
-                SitebarActionsPresenter.TOOLBAR);
-        final ToolbarSeparatorDescriptor spacer = new ToolbarSeparatorDescriptor(Type.spacer,
-                SitebarActionsPresenter.TOOLBAR);
-        final IsActionExtensible right = getView().getRightBar();
+        final ToolbarSeparatorDescriptor separator = new ToolbarSeparatorDescriptor(Type.separator, RIGHT_TOOLBAR);
+        final ToolbarSeparatorDescriptor separator2 = new ToolbarSeparatorDescriptor(Type.separator, RIGHT_TOOLBAR);
 
-        final MenuSeparatorDescriptor sep = new MenuSeparatorDescriptor(OPTIONS_MENU);
+        final MenuSeparatorDescriptor menuSeparator = new MenuSeparatorDescriptor(OPTIONS_MENU);
         final AbstractExtendedAction bugsAction = new AbstractExtendedAction() {
             @Override
             public void actionPerformed(final ActionEvent event) {
@@ -120,27 +126,18 @@
         aboutAction.putValue(Action.SMALL_ICON, res.kuneIcon16());
         // aboutAction.setShortcut(shortcut);
         // shortcutReg.put(shortcut, aboutAction);
-        right.addAction(TOOLBAR);
-        // addAction(separator);
-        right.addAction(OPTIONS_MENU);
+
         right.addAction(signInLink.get());
         right.addAction(signOutLink.get());
-        // addAction(spacer);
-        // addAction(separator2);
+        right.addAction(separator2);
         right.addAction(newGroupLink.get());
-        // addAction(spacer);
+        right.addAction(separator);
         right.addAction(testMenuItem);
-        right.addAction(sep);
+        right.addAction(menuSeparator);
         right.addAction(bugs);
         right.addAction(new MenuItemDescriptor(OPTIONS_MENU, aboutAction));
-
     }
 
-    @ProxyEvent
-    public void onAppStart(final AppStartEvent event) {
-        init();
-    }
-
     @Override
     protected void revealInParent() {
         RevealRootContentEvent.fire(this, this);

Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarNewGroupLink.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -34,5 +34,6 @@
     public SitebarNewGroupLink(final SitebarNewGroupAction action) {
         super(action);
         setStyles("k-no-backimage, k-btn-sitebar");
+        setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
     }
 }

Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignInLink.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -42,9 +42,10 @@
     @Inject
     public SitebarSignInLink(final SitebarSignInAction action, final EventBus eventBus, final Session session) {
         super(action);
-        setStyles("k-no-backimage, k-btn-sitebar");
+        setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
         setId(SITE_SIGN_IN);
         setVisible(!session.isLogged());
+        setStyles("k-no-backimage, k-btn-sitebar");
         eventBus.addHandler(UserSignInEvent.getType(), new UserSignInHandler() {
             @Override
             public void onUserSignIn(final UserSignInEvent event) {

Modified: trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/sitebar/SitebarSignOutLink.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -96,9 +96,10 @@
     public SitebarSignOutLink(final SitebarSignOutAction action, final EventBus eventBus,
             final ErrorHandler errorHandler, final Session session) {
         super(action);
-        setStyles("k-no-backimage, k-btn-sitebar");
         setId(SITE_SIGN_OUT);
+        setParent(SitebarActionsPresenter.RIGHT_TOOLBAR);
         setVisible(session.isLogged());
+        setStyles("k-no-backimage, k-btn-sitebar");
         eventBus.addHandler(UserSignInEvent.getType(), new UserSignInHandler() {
             @Override
             public void onUserSignIn(final UserSignInEvent event) {

Modified: trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -9,6 +9,7 @@
 import com.google.gwt.uibinder.client.UiField;
 import com.google.gwt.user.client.ui.Button;
 import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.FlowPanel;
 import com.google.gwt.user.client.ui.HasDirectionalText;
 import com.google.gwt.user.client.ui.HasText;
 import com.google.gwt.user.client.ui.InsertPanel.ForIsWidget;
@@ -23,6 +24,8 @@
     @UiField
     VerticalPanel bottomPanel;
     @UiField
+    FlowPanel btnPanel;
+    @UiField
     Button firstBtn;
     @UiField
     Button secondBtn;
@@ -90,6 +93,11 @@
         firstBtn.setTabIndex(index);
     }
 
+    @Override
+    public void setFirstBtnVisible(final boolean visible) {
+        firstBtn.setVisible(visible);
+    }
+
     public void setSecondBtnId(final String id) {
         secondBtn.ensureDebugId(id);
     }
@@ -98,6 +106,11 @@
         secondBtn.setTabIndex(index);
     }
 
+    @Override
+    public void setSecondBtnVisible(final boolean visible) {
+        secondBtn.setVisible(visible);
+    }
+
     public void setTitleIcon(final String icon) {
         if (TextUtils.notEmpty(icon)) {
             title.setIcon(icon);

Modified: trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.ui.xml
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.ui.xml	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialog.ui.xml	2011-02-01 01:54:08 UTC (rev 1230)
@@ -11,7 +11,7 @@
         <g:VerticalPanel ui:field="bottomPanel"></g:VerticalPanel>
       </g:VerticalPanel>
     </g:SimplePanel>
-    <g:FlowPanel>
+    <g:FlowPanel ui:field="btnPanel" addStyleNames="k-dialog-btn-area">
       <g:Button ui:field="firstBtn"
         addStyleNames="k-dialog-btn, k-dialog-firstBtn, k-5corners " />
       <g:Button ui:field="secondBtn"

Modified: trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialogView.java
===================================================================
--- trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialogView.java	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/client/ui/dialogs/BasicDialogView.java	2011-02-01 01:54:08 UTC (rev 1230)
@@ -21,4 +21,8 @@
 
     HasDirectionalText getTitleText();
 
+    void setFirstBtnVisible(boolean visible);
+
+    void setSecondBtnVisible(boolean visible);
+
 }
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/core/public/ws.html
===================================================================
--- trunk/src/main/java/cc/kune/core/public/ws.html	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/core/public/ws.html	2011-02-01 01:54:08 UTC (rev 1230)
@@ -21,6 +21,8 @@
 <meta name="hablar.width" content="100%" />
 <meta name="hablar.height" content="100%" />
 <link rel="shortcut icon" href="favicon.ico" />
+<link rel="stylesheet" type="text/css"
+	href="http://yui.yahooapis.com/2.8.0r4/build/reset/reset-min.css">
 <!-- FIXME: make something local -->
 <script src="//ajax.googleapis.com/ajax/libs/webfont/1/webfont.js"></script>
 <script>
@@ -37,16 +39,29 @@
 	rel='stylesheet' type='text/css'> -->
 <link type="text/css" rel="stylesheet" href="gxt/css/gxt-all.css">
 <link type="text/css" rel="stylesheet" href="gxt/css/gxt-gray.css">
+<link type="text/css" rel="stylesheet" href="kune-chat.css">
+<link type="text/css" rel="stylesheet" href="kune-hablar.css">
+<link type="text/css" rel="stylesheet" href="kune-common.css">
+<link type="text/css" rel="stylesheet" href="fontface/stylesheet.css">
+<link type="text/css" rel="stylesheet" href="kune-message.css">
+<link type="text/css" rel="stylesheet" href="ws.css">
 <style type="text/css">
+body {
+	background-color: white;
+	color: black;
+	font-family: 'Ubuntu', Arial;
+	font-size: small;
+	margin: 5px;
+	overflow: hidden;
+}
 </style>
 </head>
 <body>
 <!-- Autocomplete user/pass -->
 <form method="post" action="javascript:void(0)" style="display: none">
-    <input type="text" id="username" name="username" value=""/>
-    <input type="password" id="password" name="password" value=""/>
-    <input type="submit" value="Login" id="login"/>
-</form>
+<input type="text" id="username" name="username" value="" /> <input
+	type="password" id="password" name="password" value="" /> <input
+	type="submit" value="Login" id="login" /></form>
 <!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
 <noscript>
 <div

Modified: trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml
===================================================================
--- trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/msgs/KuneMsgs.gwt.xml	2011-02-01 01:54:08 UTC (rev 1230)
@@ -17,5 +17,4 @@
   <!-- Specify the paths for translatable code -->
   <source path='client' />
   <public path="public" />
-  <stylesheet src="kune-message.css" />
 </module>
\ No newline at end of file

Modified: trunk/src/main/java/cc/kune/msgs/public/kune-message.css
===================================================================
--- trunk/src/main/java/cc/kune/msgs/public/kune-message.css	2011-01-31 18:59:30 UTC (rev 1229)
+++ trunk/src/main/java/cc/kune/msgs/public/kune-message.css	2011-02-01 01:54:08 UTC (rev 1230)
@@ -1,5 +1,7 @@
 .k-msg-panel {
 	background-color: #892c00;
+	border-collapse: separate;
+	border-spacing: 15px 8px;
 }
 
 .k-msg-panel-title {
@@ -9,10 +11,11 @@
 }
 
 .k-msg {
-	margin: 0 5px;
 	border: solid 1px #F2F2F2;
 	background: #fff0e6;
-	color: #280b0b
+	color: #280b0b;
+	border-collapse: separate;
+	border-spacing: 0px;
 }
 
 .k-msg-close {




More information about the kune-commits mailing list