[ 
https://issues.apache.org/jira/browse/NETBEANS-1813?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Emilian Bold updated NETBEANS-1813:
-----------------------------------
    Description: 
BaseProgressUtils.showProgressDialogAndRun shows a modal progress dialog and 
puts a translucent grey fog over the main window.

It's possible with two overlapping progress dialogs to forever corrupt the main 
window glass pane. This glass pane is also used to show node tooltips (when the 
text is too long to fit).

See the attached TriggerBugAction which reproduces the issue on NetBeans 8.2 
and Apache NetBeans 10.

The explanation is simple. Each progress dialog will:

1. save the existing glass pane 
2. set the grey glass pane
3. restore the glass pane to the saved one when the task has finished.

If you have dialog 1 and dialog 2 the 2nd dialog will save the glass pane as 
set by dialog 1. But, if dialog 2 finishes last, it will forever set the glass 
pane to the grey glass pane.

I've also attached a video showing how the node tooltip toggles the grey glass 
pane instead. 

This glass pane switch logic is in 
platform/progress.ui/src/org/netbeans/modules/progress/ui/AbstractWindowRunner.java

  was:
BaseProgressUtils.showProgressDialogAndRun shows a modal progress dialog and 
puts a translucent grey fog over the main window.

It's possible with two overlapping progress dialogs to forever corrupt the main 
window glass pane. This glass pane is also used to show node tooltips (then the 
text is too long to fit).

See the attached TriggerBugAction which reproduces the issue on NetBeans 8.2 
and Apache NetBeans 10.

The explanation is simple. Each progress dialog will:

1. save the existing glass pane 
2. set the grey glass pane
3. restore the glass pane to the saved one when the task has finished.

If you have dialog 1 and dialog 2 the 2nd dialog will save the glass pane as 
set by dialog 1. But, if dialog 2 finishes last, it will forever set the glass 
pane to the grey glass pane.

I've also attached a video showing how the node tooltip toggles the grey glass 
pane instead. 

This glass pane switch logic is in 
platform/progress.ui/src/org/netbeans/modules/progress/ui/AbstractWindowRunner.java


> Overlapping BaseProgressUtils progress dialogs globally corrupt the main 
> window glass pane
> ------------------------------------------------------------------------------------------
>
>                 Key: NETBEANS-1813
>                 URL: https://issues.apache.org/jira/browse/NETBEANS-1813
>             Project: NetBeans
>          Issue Type: Bug
>            Reporter: Emilian Bold
>            Priority: Major
>         Attachments: TriggerBugAction.java
>
>
> BaseProgressUtils.showProgressDialogAndRun shows a modal progress dialog and 
> puts a translucent grey fog over the main window.
> It's possible with two overlapping progress dialogs to forever corrupt the 
> main window glass pane. This glass pane is also used to show node tooltips 
> (when the text is too long to fit).
> See the attached TriggerBugAction which reproduces the issue on NetBeans 8.2 
> and Apache NetBeans 10.
> The explanation is simple. Each progress dialog will:
> 1. save the existing glass pane 
> 2. set the grey glass pane
> 3. restore the glass pane to the saved one when the task has finished.
> If you have dialog 1 and dialog 2 the 2nd dialog will save the glass pane as 
> set by dialog 1. But, if dialog 2 finishes last, it will forever set the 
> glass pane to the grey glass pane.
> I've also attached a video showing how the node tooltip toggles the grey 
> glass pane instead. 
> This glass pane switch logic is in 
> platform/progress.ui/src/org/netbeans/modules/progress/ui/AbstractWindowRunner.java



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to