| Summary: | Closing last view of a minimized stack makes the stack in an unstable state | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] e4 | Reporter: | Remy Suen <remy.suen> | ||||||||||
| Component: | UI | Assignee: | Eric Moffatt <emoffatt> | ||||||||||
| Status: | RESOLVED FIXED | QA Contact: | |||||||||||
| Severity: | normal | ||||||||||||
| Priority: | P3 | CC: | bokowski, susan | ||||||||||
| Version: | 1.0 | Flags: | bokowski:
review+
susan: review+ |
||||||||||
| Target Milestone: | 1.0 RC3 | ||||||||||||
| Hardware: | PC | ||||||||||||
| OS: | Windows XP | ||||||||||||
| Whiteboard: | |||||||||||||
| Attachments: |
|
||||||||||||
|
Description
Remy Suen
Created attachment 174919 [details]
Ongoing work for trim stack handling (not ready for review)
Created attachment 175010 [details]
Patch to cover off edge conditions
Another scenario to test that this patch fixes:
Minimize a stack and select one of the icons to open the fast view
*Using the Menu* select Window->Close Perspective
-or-
Hit Ctrl-3 and execute the close perpective *menu* item (the other one doesn't seem to work).
Susan, can you please spend some time testing this, too? The changes are kind of scary but seem to fix the problems. +1 *** Bug 320321 has been marked as a duplicate of this bug. *** this fix also fixes the "chunk" problem in bug 320321 1. Window > New Window 2. Minimize the 'Package Explorer'. 3. Click the icon on the trim so it shows up. 4. Alt+F4 to close the new window. The key here is that the 'Package Explorer' is still up. 5. Try to do anything in the original window, you can't and are permanently screwed. org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.swt.SWT.error(SWT.java:4083) at org.eclipse.swt.SWT.error(SWT.java:3998) at org.eclipse.swt.SWT.error(SWT.java:3969) at org.eclipse.swt.widgets.Widget.error(Widget.java:468) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:340) at org.eclipse.swt.widgets.Control.getParent(Control.java:1377) at org.eclipse.e4.ui.workbench.addons.minmax.TrimStack$2.handleEvent(TrimStack.java:84) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1253) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1052) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) Without the patch, you get some errors on workbench window activation but those just popup once and then they leave you alone. Created attachment 175027 [details]
Patch that safes up the pane's disposal
This appears to be a low-level implementation issue; we're lacking some system hooks that will allow us to pick up these events -or- we're not listening to the model's 'widget' att enough (it should always go null on a dispose).
In any case the question is whether or not this patch is better than what we have...
Created attachment 175028 [details]
updated patch
I added some more disposed checks to avoid the error case described by Remy.
(In reply to comment #7) > Created an attachment (id=175027) [details] > Patch that safes up the pane's disposal Oops, I didn't see your attachment when I uploaded mine, and marked it as obsolete by accident. I can try to compare my changes and yours later tonight. Committed in >20100722. Applied the patch. I'll mark this as FIXED, open a new defect unless this one has a major regression... That's what you get for not being on IRC...you can check my patch if you like but you'll have to commit the changes yourself... adding a belated +1 for bookkeeping (is Boris going to run one of those "bugs that got released that weren't reviewed reports?) ;-) I was about halfway through testing and had to drop... Marking as fixed, re-open only if it's a regression against the scenarios on this bug. Verified on XP in I20100726-2152. |