| Summary: | Select Variable dialog goes in wait when clicking on the 'Edit Variables' button in the Select Variable dialog from Preferences | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | Abhishek <pabhishek> | ||||||||
| Component: | Debug | Assignee: | Darin Wright <darin.eclipse> | ||||||||
| Status: | VERIFIED FIXED | QA Contact: | |||||||||
| Severity: | major | ||||||||||
| Priority: | P3 | CC: | daniel_megert, darin.eclipse, Michael_Rennie, Olivier_Thomann | ||||||||
| Version: | 3.4 | ||||||||||
| Target Milestone: | 3.7 M1 | ||||||||||
| Hardware: | All | ||||||||||
| OS: | All | ||||||||||
| Whiteboard: | |||||||||||
| Attachments: |
|
||||||||||
|
Description
Abhishek
Created attachment 173213 [details]
Select variable dialog box hangs
Select variable dialog box hangs..
Move to JDT/Text Can reproduce using 3.6 and latest 3.7 builds.
>Select variable dialog box hangs..
It doesn't hang: you can hit 'Cancel' to abort.
Bug is in org.eclipse.debug.ui.StringVariableSelectionDialog.editVariables()
Dani, Yes you can click cancel to abort but still this 'Edit Variables' is broken and it gives a impression as if window has hanged.. (In reply to comment #4) > Dani, Yes you can click cancel to abort but still this 'Edit Variables' is > broken and it gives a impression as if window has hanged.. Yes, I agree that it's a major bug since the user might not even try to cancel. Marking as 3.6.1 candidate Moving to 3.7, this is not a regression - same problem existed in 3.5. Created attachment 175255 [details]
patch
This patch does not add the "Edit Variables" button when the parenting shell is the preference dialog.
Dani, do you think this is a reasonable approach? or would it be better to add API to the dialog to programmatically hide the edit button? (I'm not sure if this is a sure fire way of detecting the preference dialog is open - for example, it could be broken when the preference dialog is open but not the immediate parent).
Not showing the button is good enough for me but the code you use is not safe. Theoretically, someone can open many PreferenceDialog/s on different shells. What you really want to check is whether the PreferenceUtil returns a preference dialog that has the same parent. You can then call open() on it if the button gets pressed. Created attachment 175345 [details]
patch
Updated patch. Opens a new preference dialog rather than re-using.
Fixed. >Updated patch. Opens a new preference dialog rather than re-using.
So, you chose the hard way ;-)
(In reply to comment #12) > >Updated patch. Opens a new preference dialog rather than re-using. > So, you chose the hard way ;-) Sort of.. the problem was that the PreferenceUtil method to create a preference dialog modifies the page the existing dialog is on before calling open()... so I could not find a clean way to tell if the existing dialog was parented by a preference dialog to hide the button... However, it works. >PreferenceUtil method to create a preference
>dialog modifies the page the existing dialog is on before calling open
Ugly.
Verified. |