aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2007-11-01 13:21:49 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2007-11-01 13:21:49 +0000
commit3d518f037b3ec296df2e92f813729fc0ff83ab2b (patch)
tree69da616b2bd05489653af1e7d8b9cd3ad6839ae2
parent44601df8829b7e1e12c78909fef14264d68fffd8 (diff)
downloadvaadin-framework-3d518f037b3ec296df2e92f813729fc0ff83ab2b.tar.gz
vaadin-framework-3d518f037b3ec296df2e92f813729fc0ff83ab2b.zip
select: stretch option popup to be width of textfield (minimum)
svn changeset:2656/svn branch:trunk
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java20
1 files changed, 18 insertions, 2 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 de78951986..bb41130a1b 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IFilterSelect.java
@@ -27,8 +27,7 @@ import com.itmill.toolkit.terminal.gwt.client.Util;
/**
*
- * TODO needs major refactoring to be easily expandable TODO add new items TODO
- * null selections
+ * TODO needs major refactoring (to be extensible etc)
*/
public class IFilterSelect extends Composite implements Paintable,
KeyboardListener, ClickListener {
@@ -215,10 +214,18 @@ public class IFilterSelect extends Composite implements Paintable,
menu.setHeight("");
menu.setWidth("");
offsetHeight = getOffsetHeight();
+
+ offsetWidth = getOffsetWidth();
+ int desiredWidth = IFilterSelect.this.getOffsetWidth() - popupOpener.getOffsetWidth();
+ if(offsetWidth < desiredWidth) {
+ menu.setWidth(desiredWidth + "px");
+ }
+
if (!isPagingEnabled && offsetHeight > Window.getClientHeight()) {
offsetHeight = Window.getClientHeight();
menu.setHeight((offsetHeight - EXTRASPACE) + "px");
DOM.setStyleAttribute(menu.getElement(), "overflow", "auto");
+
// add scrollbar width
menu
.setWidth((menu.getOffsetWidth() * 2 - DOM
@@ -265,6 +272,15 @@ public class IFilterSelect extends Composite implements Paintable,
}
suggestionPopup.hide();
}
+
+ public void setWidth(String width) {
+ super.setWidth(width);
+ if(!width.equals("") || width != null) {
+ DOM.setStyleAttribute(DOM.getFirstChild(getElement()), "width", "100%");
+ } else {
+ DOM.setStyleAttribute(DOM.getFirstChild(getElement()), "width", "");
+ }
+ }
}
public static final int FILTERINGMODE_OFF = 0;