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.
Sometimes, especially when disk caches are slow, creating presenter for "Open Recent Project" can be quite slow. Looks like it is enough to invoke popup menu on Project tab (e.g. without even trying to expand the list of recent projects).
Created attachment 83105 [details] Profiler snapshot
Because of the word "sometimes" and due to the fact that I'm not able to reproduce any delay at all even when the menu if full and even on VBoxed machine I'm lowering priority to P3.
Fixed. http://hg.netbeans.org/cdev/rev/e9594a65a4c9
*** Issue 169416 has been marked as a duplicate of this issue. ***
*** Issue 169505 has been marked as a duplicate of this issue. ***
*** Issue 171088 has been marked as a duplicate of this issue. ***
*** Issue 169715 has been marked as a duplicate of this issue. ***
Integrated into 'main-golden', will be available in build *200909071948* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/e9594a65a4c9 User: Milan Kubec <mkubec@netbeans.org> Log: #166408: filling recent projects submenu out off AWT EQ
Are you sure you want to use RequestProcessor.getDefault()? Tasks posted into RP.gD() run in parallel. Is that your intended behaviour? If so, close and sorry for re-opening. Are you also sure that for each project (and its JMenuItem) you want to call own SwingUtilities.invokeLater? Would it not be cleaner to prepare all JMenuItems and only then switch to AWT thread? If the current behaviour is intended then sorry for re-opening. Btw. do you know it is possible to reuse the same Runnable for RP.gD() and SU.iL()? Just first statement in the run() method needs to be if (SwingUtilities.isEventDispatchThread()) { /* do the AWT part */ } else { /* initialize */; SwingUtilities.invokeLater(this); }
Better fix. http://hg.netbeans.org/cdev/rev/ca6b11107f5d
OK, thanks.
Had to be rollbacked, see issue #171861 for details. http://hg.netbeans.org/core-main/rev/2cbedcc89760
*** Issue 169094 has been marked as a duplicate of this issue. ***
Integrated into 'main-golden', will be available in build *200909111401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/2cbedcc89760 User: Milan Kubec <mkubec@netbeans.org> Log: #171861: rollback of fix for issue #166408, filling submenu asynchronously is not that easy
Different sort of fix: we won't call refresh. http://hg.netbeans.org/core-main/rev/31c42d425c99
Should not you warn the user when he tries to open no longer existing project with some dialog? Otherwise OK from performance point of view.
There already is code that does it in RecentProjects.java. But IDE refresh was usually faster than me when I tested the fix, so I actually haven't a chance to click on the non existing project.
*** Issue 172468 has been marked as a duplicate of this issue. ***
Integrated into 'main-golden', will be available in build *200909181401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/31c42d425c99 User: Milan Kubec <mkubec@netbeans.org> Log: #166408: avoiding refresh when returning recent projects