| Summary: | [client] collapsing the splitter on the editor flushes editor to 0 rather than margin | ||
|---|---|---|---|
| Product: | [ECD] Orion | Reporter: | Susan McCourt <susan> |
| Component: | Client | Assignee: | Susan McCourt <susan> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | libingw |
| Version: | 0.2 | ||
| Target Milestone: | 0.2 | ||
| Hardware: | PC | ||
| OS: | Windows 7 | ||
| Whiteboard: | |||
|
Description
Susan McCourt
will take a look for M6. Libing, would you have time to suggest a fix? I looked into this a little. Verified that on IE, FF, and Chrome, the behavior is as follows: - closing the splitter will flush the editor to 0 - opening it will restore the margin The problem was not hard-coding the position (it was setting the width to 0, not the position). The problem is that the left pane has the margin-left and the right pane does not. We could "fix" this by ensuring that any margin-left on the left pane gets set into the rightpane when the splitter collapses, and restoring the margin-left back to whatever it was when the splitter opens again. But I decided that for M6, we can live with this (and declare this is a "feature" because when you close the outliner, it means you need every piece of horizontal space.) When we start using the splitter in other windows such as nav, we should fix this. (In reply to comment #2) > The problem was not hard-coding the position (it was setting the width to 0, > not the position). The problem is that the left pane has the margin-left and > the right pane does not. We could "fix" this by ensuring that any margin-left > on the left pane gets set into the rightpane when the splitter collapses, and > restoring the margin-left back to whatever it was when the splitter opens > again. Actually, this approach does not work. If you step through the code, the pane ends up where you think it should (visually aligned with the 44 px banner) and then when the splitter toggles itself closed, it performs a layout that ends up flushing it left. I think the fix is going to involve some nesting, whereby some outer div in the center of the border container provides the margin for the orion logo, and then an inner border container does the splitting. (In reply to comment #3) > I think the fix is going to involve some nesting, whereby > some outer div in the center of the border container provides the margin for > the orion logo, and then an inner border container does the splitting. This is what I did. Using dijit.layout.BorderContainer for the outer border container, and then nested a splitter BorderContainer inside the center area of that one. Did this for navigator and editor. |