Sometimes when you invoke Find Usages, it can take a long time for it to enable
the components on the dialog; it just sits there for a while with only the
Cancel button enabled. But if you press Cancel, the dialog is closed, but then
the event queue is just blocked for the same amount of time it would have spent
to enable the components - i.e. it doesn't really cancel anything.
Should be fixed to
1. Show some progress meter while calculating whatever it needs to calculate to
enable the components in the FU dialog.
2. Have Cancel really stop this computation immediately.
Problem probably is, that some MDR transaction is blocking EQ I suppose.
Note that this freeze is a bit unusual for the IDE since it happens for a
limited amount of time, and if you did *not* press Cancel, the same pause would
occur with the EQ live (but interactions prevented by the dialog being up).
It is tricky to reproduce this since I have found that the initialization stage
for F.U. can be almost immediate if some internal cache is warmed up. Most
likely to be a long wait if you have a lot of modules open and are running F.U.
for the first time in this IDE session.
Whatever it is doing, a progress bar (or just some message "Initializing...")
would be appreciated, since if you are not familiar with it, it looks like
something is broken: the dialog comes up with most functionality disabled and no
indication that it will be enabled shortly.
Checking in AbstractRefactoring.java;
new revision: 1.26; previous revision: 1.25
Did that commit actually fix the bug? It looks like you just added a progress
meter, which is OK (not as good as showing progress in the dialog itself), but I
think wouldn't address the problem of the EQ freeze after pressing Cancel.
The commit adds progress indication. I'll must take a look at Cancel more closely.
EQ is not blocked any more.
Checking in ParametersPanel.java;
new revision: 1.18; previous revision: 1.17