| Summary: | Resetting a perspective with multiple minimized stacks causes 'widget is disposed' errors | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] e4 | Reporter: | Eric Moffatt <emoffatt> | ||||
| Component: | UI | Assignee: | Project Inbox <e4.ui-inbox> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | major | ||||||
| Priority: | P3 | ||||||
| Version: | unspecified | ||||||
| Target Milestone: | 4.1 M6 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Eric Moffatt
Created attachment 190278 [details]
Defer the TrimBar layouts using 'asynchExec'
The basic issue was that the TrimBarRenderer would attempt to layout every time one of its children was removed (removeGui calls 'hideChild'). This meant that while the 'resetPerspective' code was removing the trim associated with the perspective it was recursively calling the trimbar's layout...
This patch gathers up all the trim that needs to be adjusted and the layouts happen in a single, deferred, pass.
Committed in >20110303. Applied the patch. |