aboutsummaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorHenri Sara <henri.sara@itmill.com>2011-09-01 12:15:58 +0000
committerHenri Sara <henri.sara@itmill.com>2011-09-01 12:15:58 +0000
commitd1e5bd7216d90993cb95c79ad54f90a40dbff8eb (patch)
tree344bf364c11995376e72fd8686cf9f6306b01760 /src/com
parent84d95e404d24a639412a4c39712deac948f378b6 (diff)
parent835a4f80470827c8b2a2eeda51b18a9a447036b1 (diff)
downloadvaadin-framework-d1e5bd7216d90993cb95c79ad54f90a40dbff8eb.tar.gz
vaadin-framework-d1e5bd7216d90993cb95c79ad54f90a40dbff8eb.zip
Merged changes from 6.6
svn changeset:20790/svn branch:6.7
Diffstat (limited to 'src/com')
-rw-r--r--src/com/vaadin/data/util/AbstractInMemoryContainer.java2
-rw-r--r--src/com/vaadin/data/util/IndexedContainer.java18
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VUpload.java2
3 files changed, 17 insertions, 5 deletions
diff --git a/src/com/vaadin/data/util/AbstractInMemoryContainer.java b/src/com/vaadin/data/util/AbstractInMemoryContainer.java
index d3e981231f..75983d1e4f 100644
--- a/src/com/vaadin/data/util/AbstractInMemoryContainer.java
+++ b/src/com/vaadin/data/util/AbstractInMemoryContainer.java
@@ -725,7 +725,7 @@ public abstract class AbstractInMemoryContainer<ITEMIDTYPE, PROPERTYIDCLASS, ITE
getAllItemIds().indexOf(previousItemId) + 1, newItemId,
item);
}
- if (newItem != null) {
+ if (newItem != null && filter) {
// TODO filter only this item, use fireItemAdded()
filterAll();
if (!isFiltered()) {
diff --git a/src/com/vaadin/data/util/IndexedContainer.java b/src/com/vaadin/data/util/IndexedContainer.java
index 7fbb1e9128..2f45def4f1 100644
--- a/src/com/vaadin/data/util/IndexedContainer.java
+++ b/src/com/vaadin/data/util/IndexedContainer.java
@@ -106,8 +106,11 @@ public class IndexedContainer extends
this();
if (items != null) {
for (final Iterator<?> i = itemIds.iterator(); i.hasNext();) {
- this.addItem(i.next());
+ Object itemId = i.next();
+ internalAddItemAtEnd(itemId, new IndexedContainerItem(itemId),
+ false);
}
+ filterAll();
}
}
@@ -246,8 +249,17 @@ public class IndexedContainer extends
*/
@Override
public Item addItem(Object itemId) {
- return internalAddItemAtEnd(itemId, new IndexedContainerItem(itemId),
- true);
+ Item item = internalAddItemAtEnd(itemId, new IndexedContainerItem(
+ itemId), false);
+ if (!isFiltered()) {
+ // always the last item
+ fireItemAdded(size() - 1, itemId, item);
+ } else if (passesFilters(itemId)) {
+ getFilteredItemIds().add(itemId);
+ // always the last item
+ fireItemAdded(size() - 1, itemId, item);
+ }
+ return item;
}
/**
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VUpload.java b/src/com/vaadin/terminal/gwt/client/ui/VUpload.java
index a49450e086..25fd1d7604 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/VUpload.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/VUpload.java
@@ -157,7 +157,7 @@ public class VUpload extends SimplePanel implements Paintable {
return;
}
if (uidl.hasAttribute("forceSubmit")) {
- element.submit();
+ submit();
return;
}
setImmediate(uidl.getBooleanAttribute("immediate"));