LP#
1777207: have eg-grid generate DOM nodes only for visible columns
This patch changes an ng-show to an ng-if to generate DOM nodes
for grid cells only for visible columns. Prior to this patch, all
grid cells were generated, but the ones that corresponded to hidden
columns would simply be set as hidden.
By not generating the cells unless they're meant to be visible, grid
refreshes for wide grids (like the checkin table) render much more
quickly for a couple reasons:
- simply that there are fewer DOM nodes to process
- probably more importantly, fewer AngularJS watches get
created
To test
-------
[1] In the checkin grid, check in a large number of items, then
observe/profile timing as you change the number of visible rows.
[2] Apply the patch and repeat step 1. This time, the grid
refreshe should be measurably (and visibly) faster.
[3] Test other AngularJS grids and verify that grid display and
grid actions are normal.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Signed-off-by: Dan Wells <dbw2@calvin.edu>