PDA

View Full Version : [CLOSED] Reloading iframe-content after move the portlet in another section



Woyciniuk
Sep 16, 2014, 10:09 AM
Hi,

We have just migrated our Dashboard application from the Ext version 1.2 to version 2.5.2. This dashboard is represented by the portal, portlet and portalcolumn-items. Within the portlets (Widget) is an iframe, in the different websites can be accessed.

We have now the problem that by moving the portlets, with the title: ?Row 1 Col 1 Portlet 1?, in the lower section (Over widget "Row 2 Col 1 Portlet 1"), the browser (IE 9, 10, 11, FF ESR 31.1) recharge the content of the widget "Row 2 Col 1 Portlet 1". With the old Ext version this behavior is not observed. Additional in the IE browsers also increases the memory footprint of the application, because the DOM is not cleaned up properly. Move I the widget "Row 1 Col 1 Portlet1" back in the starting position, the content of the widget "Row 2 Col 1 Portlet 1" is not recharged. This behavior is in my opinion very inconsistent. How can I stop reloading of the widget content?




<ext:Panel ID="Panel1" runat="server" Layout="FormLayout" Title="Portal">
<Items>
<ext:Portal ID="Portal1" runat="server" Draggable="true">
<Items>
<ext:PortalColumn ID="Col1" runat="server" ColumnWidth="0.3" Frame="true">
<Items>
<ext:Portlet ID="Port1Col1" Title="Row 1 Col 1 Portlet 1" runat="server" Height="300" Padding="6">
<Loader ID="Loader1" Url="Webtime.aspx" Mode="Frame" AutoLoad="true" runat="server">
<LoadMask Msg="Loading..." UseMsg="true" ShowMask="true" ></LoadMask>
</Loader>
</ext:Portlet>
</Items>
</ext:PortalColumn>
<ext:PortalColumn ID="col2" runat="server" ColumnWidth="0.69">
<Items>
<ext:Portlet ID="Port1Col2" Title="Row 1 Col2 Portlet 1" runat="server" Height="300" Padding="6">
<Loader ID="Loader2" Url="Webtime.aspx" Mode="Frame" AutoLoad="true" runat="server">
<LoadMask Msg="Loading..." UseMsg="true" ShowMask="true" ></LoadMask>
</Loader>
</ext:Portlet>
</Items>
</ext:PortalColumn>
</Items>
</ext:Portal>
<ext:Portal ID="Portal2" runat="server" Layout="ColumnLayout" Draggable="true">
<Items>
<ext:PortalColumn ID="Portal2Col1" runat="server" ColumnWidth="0.3">
<Items>
<ext:Portlet ID="Portlet1" Title="Row 2 Col 1 Portlet 1" runat="server" Height="300" Padding="6">
<Loader Url="Webtime.aspx" Mode="Frame" AutoLoad="true" runat="server">
<LoadMask Msg="Loading..." UseMsg="true" ShowMask="true" ></LoadMask>
</Loader>
</ext:Portlet>
</Items>
</ext:PortalColumn>
<ext:PortalColumn ID="Portal2Col2" runat="server" ColumnWidth="0.3">
<Items>
<ext:Portlet ID="Portlet2" Title="Row 2 Col2 Portlet 1" runat="server" Height="300" Padding="6">
</ext:Portlet>
</Items>
</ext:PortalColumn>
<ext:PortalColumn ID="Portal2Col3" runat="server" ColumnWidth="0.4">
</ext:PortalColumn>
</Items>
</ext:Portal>
</Items>
</ext:Panel>


Systeminformation

Windows 7 x64
.Net 4.5
Ext.Net Version 2.5.2


I hope you can help me further

regards

Daniil
Sep 16, 2014, 11:14 AM
Hello @Woyciniuk,


With the old Ext version this behavior is not observed.

I've reproduced exactly the same behavior with Ext.NET v1.

The problem is not inside Ext.NET. Browsers reloads an iframe if it is moved in DOM.

For example,
http://stackoverflow.com/questions/7434230/how-to-prevent-an-iframe-from-reloading-when-moving-it-in-the-dom
http://stackoverflow.com/questions/8318264/how-to-move-an-iframe-in-the-dom-without-losing-its-state


As for memory leak with iframes, it is a long story.
https://github.com/extnet/Ext.NET/issues/10

Woyciniuk
Sep 17, 2014, 8:01 AM
Hi Daniil,

thank you for your answer, but I'm not sure if I have presented my problem clearly. The reloads of the moved Portlet-contents "Row 1 Col 1 Portlet 1" is ok. What bothers me, is that the portlet content of "Row 2 Col 1 Portlet 1" is reloaded. This is not so in the Ext version 1.2..

regards

Daniil
Sep 17, 2014, 11:49 AM
Thank you for the clarification, I've got it now. I will investigate. At the first glance, I don't want to say it might be impossible to get rid of this issue, but it might be problematic, at least.

Daniil
Sep 25, 2014, 3:41 PM
Unfortunately, we are not able to find a solution so far and I cannot promise we will. The ExtJS layout system has been quite reworked in ExtJS 4 (from ExtJS 3) and now it moves the DOM objects in the hierarchy and it causes that backstage effect.