This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | project.ui.actions.NewFile$2.run calls to wizards from non-EDT thread | ||
---|---|---|---|
Product: | apisupport | Reporter: | Karol Harezlak <kharezlak> |
Component: | Templates | Assignee: | Jesse Glick <jglick> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | jtulach |
Priority: | P3 | Keywords: | THREAD |
Version: | 7.1 | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | 181575 |
Bug Depends on: | |||
Bug Blocks: | 191951 | ||
Attachments: | stacktrace |
Description
Karol Harezlak
2011-10-04 01:54:05 UTC
Created attachment 111441 [details]
stacktrace
Visual Layout Editor wizard causes: Do resetting of permutation only in AWT queue! I know the threading policy of various part of our APIs is a gray area, but in case of Wizards API (and its visual nature) I'd expect it should be accessed from EDT or at least make callbacks to providers from EDT. Can project's NewFile actions be modified to do the call in EDT? (In reply to comment #3) > Can project's NewFile actions be modified to do the call in EDT? No, this is intentionally run off EQ. This particular wizard will just need to be fixed. Only reproducible when invoked from context menu (New...), not from File > New. This is a less common mechanism, which is why it was not reported earlier. Root problem here is a misdesign in BasicWizardIterator: it eagerly calls createPanels (and these BasicWizardIterator.Panel's are actual Component's) from initialize, whereas wizards are normally supposed to create just WizardDescriptor.Panel's and construct the actual Component if and when getComponent is called. Probably do not have time to refactor this properly but can look for a quick fix. core-main #1b68cab75355 Integrated into 'main-golden' Changeset: http://hg.netbeans.org/main-golden/rev/1b68cab75355 User: Jesse Glick <jglick@netbeans.org> Log: #203011: project.ui.actions.NewFile$2.run calls to wizards from non-EDT thread Hot fix; proper fix would delay construction of physical panels until displayed. |