v14.2
We have an igGrid in an igDialog. We have checkboxes that select groups which populate the grid. Each group contains anywhere from 4 - 100 items. We are running into performance issues when there are a lot of items in the grid - say more than 50. Paging is disabled because it confuses our users if a group overlaps to another page (the number of items).
I've done some internal debugging and I've isolated the issue to this method in the module:
_trackFocus()
If this method is called, it causes a timeout function to do some work every 200 milliseconds which is causing the screen to repaint VERY SLOWLY - indefinitely. From my testing, removing this call doesn't impact any functionality that we need and it prevents the performance issue.
We are trying but it will take us some time to create a sample reproducing this in an isolated sample. In the meantime, is there a work around to using igDialog without the overhead over focus tracking? I've searched but I haven't found any similar issues.
(Thoughts?)
I've fixed it for now until I want to dedicate additional time to find the underlying cause. We are still open to feedback but as a temporary measure we did the following:
var dialog = $(.selector).data("igDialog");
dialog._trackFocus = $.noop;
$(.selector).igDialog("open");
Performance is outstanding.
Hello,
I am still following up. Have you been able to resolve the issue?If you have any concerns or questions, please feel free to contact me, I will be glad to help you.Thank you for choosing Infragistics components!
There is a rogue debugger statement on line 66 that you should remove prior to testing...sorry!
Never mind - I lied.
The issue happens in FF but only for about 2 seconds then the performance is great again. In IE the performance issues linger indefinitely from what I can tell.
Hello Karthik,
I tried this in both FF (latest version) and IE11 and also in Chrome and I didn't notice anything like this.
What machine are you testing this on? Is it happening on all kinds of machines?
What I did was to run the file you attached and performed the steps you described, nothing else.
I've attached the same test but I used camtasia to record my findings. I've included the before and after changes to the code to demonstrate the slowdown. The test was ran in IE 11.
Hi,
I saw the issue, thank you!
We are going to research this, in the meantime please set the trackFocus option to false http://www.igniteui.com/help/api/2015.1/ui.igDialog#options:trackFocus.
I am going to link this issue to case CAS-156798-H4X8N4 which should be visible in your account on our website.
Hello all,
In order to assist everybody hitting this thread, I just want to let you know what our dev team has responded with: "In case of trackFocus enabled both focus and blur handlers are attached. It's not preferred to have this option set to true when a lot of DOM elements are attached inside the dialog, because it may cause performance issues. In case of igHierarchicalGrid a lot of cells get rendered and to all of them dialog attaches focus and blur handlers which causes performance issues. In that case it is suggested to set trackFocus property to false. "
Perfect, thank you!