Reviewers: Ray Ryan, Description: Description: ============ CollapsiblePanel (both versions) can throw an IllegalStateException in the following case: 1. User hovers over the hover bar while CollapsiblePanel is hidden 2. State is set to WILL_SHOW 3. Timer set for 300ms before actually showing the panel 4. State is changed programatically to IS_HIDDEN 5. Timer fires after 300ms and tries to set state to SHOWING 6. IllegalStateException occurs
Fix: === We now call cancelAllTimers() before setting the state to IS_HIDDEN. Testing: ======== I added unit tests for both versions of CollapsiblePanel. I verified the tests fail without the fix, but pass with it. Please review this at http://gwt-code-reviews.appspot.com/68802 Affected files: src/com/google/gwt/gen2/complexpanel/client/CollapsiblePanel.java src/com/google/gwt/widgetideas/client/CollapsiblePanel.java test/com/google/gwt/gen2/complexpanel/client/CollapsiblePanelTestBase.java test/com/google/gwt/widgetideas/client/CollapsiblePanelTest.java --~--~---------~--~----~------------~-------~--~----~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~----------~----~----~----~------~----~------~--~---
