diff options
author | Leif Åstrand <leif@vaadin.com> | 2012-08-03 14:24:33 +0300 |
---|---|---|
committer | Leif Åstrand <leif@vaadin.com> | 2012-08-03 14:24:33 +0300 |
commit | 94f81dc79526a257451c6638a0696e7505227cb7 (patch) | |
tree | 13f094b896c74032ab86d079362a511f8ce478a1 /src/com/vaadin/ui | |
parent | 406c50ad6cbe537ce709b8958272f93c919e9653 (diff) | |
parent | bc5831f069f648fbf0d89a863b28d80dc4c2bf35 (diff) | |
download | vaadin-framework-94f81dc79526a257451c6638a0696e7505227cb7.tar.gz vaadin-framework-94f81dc79526a257451c6638a0696e7505227cb7.zip |
Merge remote-tracking branch 'origin/6.8'
+ add @Override
Conflicts:
src/com/vaadin/terminal/gwt/client/Util.java
src/com/vaadin/terminal/gwt/client/ui/VOverlay.java
src/com/vaadin/terminal/gwt/client/ui/menubar/VMenuBar.java
src/com/vaadin/terminal/gwt/client/ui/popupview/VPopupView.java
src/com/vaadin/terminal/gwt/client/ui/table/VScrollTable.java
src/com/vaadin/terminal/gwt/server/AbstractCommunicationManager.java
src/com/vaadin/ui/LoginForm.java
src/com/vaadin/ui/Table.java
tests/test.xml
Diffstat (limited to 'src/com/vaadin/ui')
-rw-r--r-- | src/com/vaadin/ui/LoginForm.java | 2 | ||||
-rw-r--r-- | src/com/vaadin/ui/Root.java | 10 | ||||
-rw-r--r-- | src/com/vaadin/ui/Table.java | 16 |
3 files changed, 27 insertions, 1 deletions
diff --git a/src/com/vaadin/ui/LoginForm.java b/src/com/vaadin/ui/LoginForm.java index 2d4513c5e3..db7e5f9dd9 100644 --- a/src/com/vaadin/ui/LoginForm.java +++ b/src/com/vaadin/ui/LoginForm.java @@ -91,7 +91,7 @@ public class LoginForm extends CustomComponent { response.setContentType("text/html; charset=utf-8"); response.getWriter() .write("<html><body>Login form handled." - + "<script type='text/javascript'>top.vaadin.forceSync();" + + "<script type='text/javascript'>parent.parent.vaadin.forceSync();" + "</script></body></html>"); Map<String, String[]> parameters = request.getParameterMap(); diff --git a/src/com/vaadin/ui/Root.java b/src/com/vaadin/ui/Root.java index a5e69d5546..bd4842632b 100644 --- a/src/com/vaadin/ui/Root.java +++ b/src/com/vaadin/ui/Root.java @@ -419,6 +419,7 @@ public abstract class Root extends AbstractComponentContainer implements private Page page = new Page(this); private RootServerRpc rpc = new RootServerRpc() { + @Override public void click(MouseEventDetails mouseDetails) { fireEvent(new ClickEvent(Root.this, mouseDetails)); } @@ -502,6 +503,7 @@ public abstract class Root extends AbstractComponentContainer implements return this; } + @Override public void replaceComponent(Component oldComponent, Component newComponent) { throw new UnsupportedOperationException(); } @@ -511,6 +513,7 @@ public abstract class Root extends AbstractComponentContainer implements return application; } + @Override public void paintContent(PaintTarget target) throws PaintException { page.paintContent(target); @@ -550,6 +553,7 @@ public abstract class Root extends AbstractComponentContainer implements fireEvent(new ClickEvent(this, mouseDetails)); } + @Override @SuppressWarnings("unchecked") public void changeVariables(Object source, Map<String, Object> variables) { if (variables.containsKey(CLICK_EVENT_ID)) { @@ -578,6 +582,7 @@ public abstract class Root extends AbstractComponentContainer implements * * @see com.vaadin.ui.ComponentContainer#getComponentIterator() */ + @Override public Iterator<Component> getComponentIterator() { // TODO could directly create some kind of combined iterator instead of // creating a new ArrayList @@ -597,6 +602,7 @@ public abstract class Root extends AbstractComponentContainer implements * * @see com.vaadin.ui.ComponentContainer#getComponentCount() */ + @Override public int getComponentCount() { return windows.size() + (getContent() == null ? 0 : 1); } @@ -956,11 +962,13 @@ public abstract class Root extends AbstractComponentContainer implements return actionManager; } + @Override public <T extends Action & com.vaadin.event.Action.Listener> void addAction( T action) { getActionManager().addAction(action); } + @Override public <T extends Action & com.vaadin.event.Action.Listener> void removeAction( T action) { if (actionManager != null) { @@ -968,10 +976,12 @@ public abstract class Root extends AbstractComponentContainer implements } } + @Override public void addActionHandler(Handler actionHandler) { getActionManager().addActionHandler(actionHandler); } + @Override public void removeActionHandler(Handler actionHandler) { if (actionManager != null) { actionManager.removeActionHandler(actionHandler); diff --git a/src/com/vaadin/ui/Table.java b/src/com/vaadin/ui/Table.java index 71f41fb257..39b7fb7473 100644 --- a/src/com/vaadin/ui/Table.java +++ b/src/com/vaadin/ui/Table.java @@ -538,6 +538,13 @@ public class Table extends AbstractSelect implements Action.Container, private HashMap<Object, Converter<String, Object>> propertyValueConverters = new HashMap<Object, Converter<String, Object>>(); + /** + * Set to true if the client-side should be informed that the key mapper has + * been reset so it can avoid sending back references to keys that are no + * longer present. + */ + private boolean keyMapperReset; + /* Table constructors */ /** @@ -2890,6 +2897,11 @@ public class Table extends AbstractSelect implements Action.Container, paintVisibleColumns(target); + if (keyMapperReset) { + keyMapperReset = false; + target.addAttribute(VScrollTable.ATTRIBUTE_KEY_MAPPER_RESET, true); + } + if (dropHandler != null) { dropHandler.getAcceptCriterion().paint(target); } @@ -4053,6 +4065,10 @@ public class Table extends AbstractSelect implements Action.Container, public void containerItemSetChange(Container.ItemSetChangeEvent event) { super.containerItemSetChange(event); + // super method clears the key map, must inform client about this to + // avoid getting invalid keys back (#8584) + keyMapperReset = true; + // ensure that page still has first item in page, ignore buffer refresh // (forced in this method) setCurrentPageFirstItemIndex(getCurrentPageFirstItemIndex(), false); |