summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2009-02-04 15:49:40 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2009-02-04 15:49:40 +0000
commit3088fae40b3c32dc20ce480b7a5399b61cd21bfc (patch)
tree14d0ba3c800a4c365e225aec65c5ad950ccb6499
parent87799ae4037121d379a37098d5b659e8c76a0f08 (diff)
downloadvaadin-framework-3088fae40b3c32dc20ce480b7a5399b61cd21bfc.tar.gz
vaadin-framework-3088fae40b3c32dc20ce480b7a5399b61cd21bfc.zip
fixes #2504, filterselect now compatible with ridiculous sized item icons
svn changeset:6732/svn branch:trunk
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java
index 3352ed26a7..89d5f482f3 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java
@@ -404,6 +404,19 @@ public class IFilterSelect extends Composite implements Paintable, Field,
while (it.hasNext()) {
final FilterSelectSuggestion s = it.next();
final MenuItem mi = new MenuItem(s.getDisplayString(), true, s);
+
+ com.google.gwt.dom.client.Element child = mi.getElement()
+ .getFirstChildElement();
+ while (child != null) {
+ if (child.getNodeName().toLowerCase().equals("img")) {
+ DOM
+ .sinkEvents((Element) child.cast(),
+ (DOM.getEventsSunk((Element) child
+ .cast()) | Event.ONLOAD));
+ }
+ child = child.getNextSiblingElement();
+ }
+
this.addItem(mi);
if (s == currentSuggestion) {
selectItem(mi);
@@ -458,6 +471,19 @@ public class IFilterSelect extends Composite implements Paintable, Field,
}
suggestionPopup.hide();
}
+
+ @Override
+ public void onBrowserEvent(Event event) {
+ if (event.getTypeInt() == Event.ONLOAD) {
+ if (suggestionPopup.isVisible()) {
+ setWidth("");
+ DOM.setStyleAttribute(DOM.getFirstChild(getElement()),
+ "width", "");
+ suggestionPopup.setPopupPositionAndShow(suggestionPopup);
+ }
+ }
+ super.onBrowserEvent(event);
+ }
}
public static final int FILTERINGMODE_OFF = 0;
@@ -897,6 +923,12 @@ public class IFilterSelect extends Composite implements Paintable, Field,
updateRootWidth();
}
+ @Override
+ public void setHeight(String height) {
+ super.setHeight(height);
+ Util.setHeightExcludingPaddingAndBorder(tb, height, 3);
+ }
+
private void updateRootWidth() {
if (width == null) {
/*