From: Leif Åstrand Date: Wed, 5 Jun 2013 07:08:21 +0000 (+0300) Subject: Ensure VBrowserFrame content is unloaded in IE (#11683) X-Git-Tag: 7.0.7~4 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=d647d7a48a70cf6d4d86500311e235e0778c7dab;p=vaadin-framework.git Ensure VBrowserFrame content is unloaded in IE (#11683) Change-Id: Ic3850bf00a1cfbdae6a955256509f0389fadaaa5 --- diff --git a/client/src/com/vaadin/client/ui/VBrowserFrame.java b/client/src/com/vaadin/client/ui/VBrowserFrame.java index c1e131a6c5..4e13921582 100644 --- a/client/src/com/vaadin/client/ui/VBrowserFrame.java +++ b/client/src/com/vaadin/client/ui/VBrowserFrame.java @@ -19,6 +19,7 @@ import com.google.gwt.dom.client.Document; import com.google.gwt.dom.client.Element; import com.google.gwt.dom.client.IFrameElement; import com.google.gwt.user.client.ui.Widget; +import com.vaadin.client.BrowserInfo; public class VBrowserFrame extends Widget { @@ -134,4 +135,23 @@ public class VBrowserFrame extends Widget { iframe.setName(name); } } + + @Override + protected void onDetach() { + if (BrowserInfo.get().isIE()) { + // Force browser to fire unload event when component is detached + // from the view (IE doesn't do this automatically) + if (iframe != null) { + /* + * src was previously set to javascript:false, but this was not + * enough to overcome a bug when detaching an iframe with a pdf + * loaded in IE9. about:blank seems to cause the adobe reader + * plugin to unload properly before the iframe is removed. See + * #7855 + */ + iframe.setSrc("about:blank"); + } + } + super.onDetach(); + } }