diff options
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/section/RenderkitGeneralSection.java')
-rw-r--r-- | jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/section/RenderkitGeneralSection.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/section/RenderkitGeneralSection.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/section/RenderkitGeneralSection.java index 399f547aa..2242f73ca 100644 --- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/section/RenderkitGeneralSection.java +++ b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/section/RenderkitGeneralSection.java @@ -39,6 +39,7 @@ import org.eclipse.jst.jsf.facesconfig.ui.util.ModelUtil; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; +import org.eclipse.ui.PlatformUI; import org.eclipse.ui.forms.IManagedForm; import org.eclipse.ui.forms.widgets.FormToolkit; @@ -240,6 +241,9 @@ public class RenderkitGeneralSection extends AbstractFacesConfigSection { * */ public void refresh() { + if(getSection() == null || getSection().isDisposed()) { + return; + } super.refresh(); Object input = this.getInput(); if (input instanceof RenderKitType) { @@ -386,12 +390,21 @@ public class RenderkitGeneralSection extends AbstractFacesConfigSection { .getRenderKitType_Description() || msg.getFeature() == FacesConfigPackage.eINSTANCE .getRenderKitType_DisplayName()) { - refresh(); + PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() { + public void run() { + refresh(); + } + }); + } else if (msg.getFeature() == FacesConfigPackage.eINSTANCE .getDisplayNameType_TextContent() || msg.getFeature() == FacesConfigPackage.eINSTANCE .getDescriptionType_TextContent()) { - refresh(); + PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() { + public void run() { + refresh(); + } + }); } } } |