#1950 closed defect (fixed)
Accordion Container inside Layout Container doesn't work in IE.
Reported by: | guest | Owned by: | bill |
---|---|---|---|
Priority: | high | Milestone: | |
Component: | Widgets | Version: | 0.4 |
Keywords: | Layout problems | Cc: | |
Blocked By: | Blocking: |
Description
On IE when Accordion Contaier is used inside a Layout Container, it expands to occupy whole of the page. This is a layout issue. On FF it works fine but on IE it doesn't. haven't tried on other browsers.
Attachments (1)
Change History (6)
comment:1 Changed 14 years ago by
Changed 14 years ago by
this is the test case, this uses a split container, on one side i have a LayoutContainer? and inside it there is a accordion container. This works fine in FF but in IE, the accordions enter the other split pane, and occupy the whole page.
comment:3 Changed 14 years ago by
Status: | new → assigned |
---|
Thanks for the bug report; I can reproduce the error and I'm fixing it now.
comment:4 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
(In [6682]) Add overflow:hidden for LayoutContainer?, so that resizing to a smaller size works. This fixes #1950, which was failing because the LayoutContainer? was first sized to 1200px, then resized to 200px, but the offsetWidth (and thus getContentBox().width) was still 1200. This highlights an inefficiency: many widgets call setMarginBox(this.domNode) followed by getContentBox(this.domNode); maybe if we know the margin box size we should calculate the content size ourselves rather than depending on the browser.
Also changed the layout engine and SplitContainer? to call HtmlWidget?.resizeTo(), rather than adjusting the dom node size directly and calling onResized()/checkSize(). That still needs work though, since resizeTo() can't adjust width or height individually, nor can it adjust left/top.
As usual you need to attach a testcase before we can look at this.