Bug 60236 [Progress] non-responsive blocked dialogs
When an operation is executed with IRunnableContext.run(false, false, ...) and a blocked dialog shows up, then the blocked dialog is not responsive since there is nobody to process the events. The non-responsiveness shows up as follows: - the details button is not responsive - the progress bars shown in the details area are not updated - you cannot cancel a thread in the details area In this situation we should disable the details button and collapse the details area. To detect the forked=false case could you make the following test: ModalContext.isModalContextThread(Thread.currentThread(). If the current thread isn't the modal context thread then the operation wasn't forked.
bundles/org.eclipse.jface/src/org/eclipse/jface/wizard/WizardDialog.java
progressMonitorPart.setVisible(false);
		
		Label separator = new Label(composite, SWT.HORIZONTAL | SWT.SEPARATOR);
		separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		return composite;
	}
	/**
	 * Create the progress monitor part in the receiver.
	 * @param composite
	 * @param pmlayout
	 */
	protected ProgressMonitorPart createProgressMonitorPart(Composite composite, GridLayout pmlayout) {
		return new ProgressMonitorPart(composite, pmlayout, SWT.DEFAULT) {
			String currentTask = null;
			/* (non-Javadoc)
			 * @see org.eclipse.jface.wizard.ProgressMonitorPart#setBlocked(org.eclipse.core.runtime.IStatus)
			 */
			public void setBlocked(IStatus reason) {
				super.setBlocked(reason);
				getBlockedHandler().showBlocked(getShell(), this, reason, currentTask);
			}
			/* (non-Javadoc)
			 * @see org.eclipse.jface.wizard.ProgressMonitorPart#clearBlocked()
			 */
			public void clearBlocked() {
				super.clearBlocked();
				getBlockedHandler().clearBlocked();
			}
			/* (non-Javadoc)
			 * @see org.eclipse.jface.wizard.ProgressMonitorPart#beginTask(java.lang.String, int)