diff --git a/distro/changelog.xml b/distro/changelog.xml index 491acf0..4495f94 100644 --- a/distro/changelog.xml +++ b/distro/changelog.xml @@ -1,14 +1,22 @@ - + Enhanced information passed when an item is selected, now passing more info such as if the item is a group or not and the item id + + + - Fix for Incident #4246, in some cases notification email resulting from posts are "broken" - Fix for hashtags not allowing to use enter after picked one + Fix for Incident #4246, in some cases notification email + resulting from posts are "broken" + Fix for hashtags not allowing to use enter after picked one + Ported to GWT 2.7.0 Fix for Bug #320, Users tagging does not work if @ is in the - middle of already typed text + middle of already typed text + diff --git a/pom.xml b/pom.xml index 7ee622d..b006458 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ org.gcube.portlets.widgets pickitem-widget - 1.2.0-SNAPSHOT + 1.3.0-SNAPSHOT jar gCube Pick Item Widget diff --git a/src/main/java/org/gcube/portlets/widgets/pickitem/client/dialog/PickItemsDialog.java b/src/main/java/org/gcube/portlets/widgets/pickitem/client/dialog/PickItemsDialog.java index 9d52d81..ac7b725 100644 --- a/src/main/java/org/gcube/portlets/widgets/pickitem/client/dialog/PickItemsDialog.java +++ b/src/main/java/org/gcube/portlets/widgets/pickitem/client/dialog/PickItemsDialog.java @@ -157,7 +157,9 @@ public class PickItemsDialog extends PopupPanel { private void handleMouseDown() { SelectableItem ut = (SelectableItem) mainPanel.getWidget(displayIndexSelected); - eventBus.fireEvent(new PickedItemEvent(new ItemBean("id", "username", ut.getItemName(), "thumb"), this.triggerChar, itemCursorIndexStart, itemCursorIndexEnd)); + ItemBean itemBean = new ItemBean(ut.getItemId(), "username", ut.getItemName(), "thumb"); + itemBean.setItemGroup(ut.isGroup()); + eventBus.fireEvent(new PickedItemEvent(itemBean, this.triggerChar, itemCursorIndexStart, itemCursorIndexEnd)); hide(); select(0); //RESET } @@ -251,7 +253,9 @@ public class PickItemsDialog extends PopupPanel { ut = (SelectableItem) mainPanel.getWidget(0); else ut = (SelectableItem) mainPanel.getWidget(displayIndexSelected); - eventBus.fireEvent(new PickedItemEvent(new ItemBean("id", "username", ut.getItemName(), "thumb"), this.triggerChar, itemCursorIndexStart, itemCursorIndexEnd)); + ItemBean itemBean = new ItemBean(ut.getItemId(), "username", ut.getItemName(), "thumb"); + itemBean.setItemGroup(ut.isGroup()); + eventBus.fireEvent(new PickedItemEvent(itemBean, this.triggerChar, itemCursorIndexStart, itemCursorIndexEnd)); hide(); select(0); //RESET } diff --git a/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/NoPhotoTemplate.java b/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/NoPhotoTemplate.java index c04313f..da87f2d 100644 --- a/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/NoPhotoTemplate.java +++ b/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/NoPhotoTemplate.java @@ -28,14 +28,16 @@ public class NoPhotoTemplate extends Composite implements SelectableItem { FocusPanel focusDiv; @UiField HTML contentArea; + private String id; + private boolean isGroup; public NoPhotoTemplate(PickItemsDialog owner, ItemBean user, int displayIndex) { initWidget(uiBinder.createAndBindUi(this)); this.owner = owner; currDisplayIndex = displayIndex; contentArea.setHTML(user.getAlternativeName()); - - + this.id = user.getId(); + this.isGroup = user.isItemGroup(); } @UiHandler("focusDiv") @@ -47,6 +49,13 @@ public class NoPhotoTemplate extends Composite implements SelectableItem { public String getItemName() { return contentArea.getText(); } - + @Override + public String getItemId() { + return this.id; + } + @Override + public boolean isGroup() { + return this.isGroup; + } } diff --git a/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/SelectableItem.java b/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/SelectableItem.java index 6c6be82..19ff7f0 100644 --- a/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/SelectableItem.java +++ b/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/SelectableItem.java @@ -1,5 +1,7 @@ package org.gcube.portlets.widgets.pickitem.client.uibinder; public interface SelectableItem { + String getItemId(); String getItemName(); + boolean isGroup(); } diff --git a/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/WithPhotoTemplate.java b/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/WithPhotoTemplate.java index e9b8f93..ad65b52 100644 --- a/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/WithPhotoTemplate.java +++ b/src/main/java/org/gcube/portlets/widgets/pickitem/client/uibinder/WithPhotoTemplate.java @@ -31,6 +31,9 @@ public class WithPhotoTemplate extends Composite implements SelectableItem { @UiField HTML contentArea; + private String id; + private boolean isGroup; + public WithPhotoTemplate(PickItemsDialog owner, ItemBean user, int displayIndex) { initWidget(uiBinder.createAndBindUi(this)); this.owner = owner; @@ -40,7 +43,8 @@ public class WithPhotoTemplate extends Composite implements SelectableItem { avatarImage.setPixelSize(30, 30); contentArea.setHTML(user.getAlternativeName()); - + this.id = user.getId(); + this.isGroup = user.isItemGroup(); } @@ -53,4 +57,12 @@ public class WithPhotoTemplate extends Composite implements SelectableItem { public String getItemName() { return contentArea.getText(); } + @Override + public String getItemId() { + return this.id; + } + @Override + public boolean isGroup() { + return this.isGroup; + } }