Multiplicom / axiom

3 stars 0 forks source link

added param to the renderTableContent method of PanelTable to force re-measuring the panel #83

Closed MaartenWillemsAgilent closed 3 years ago

MaartenWillemsAgilent commented 3 years ago

added param to the renderTableContent method of PanelTable to force a… measuring of the panel when data is available. #82

MaartenWillemsAgilent commented 3 years ago

Sry for the many changes. I pushed the auto-format button again. It's a reflex. If you want I revert it...

MichaelVyverman commented 3 years ago

No need to revert but would be handy to know which lines contain the actual change. Do you have some line numbers?

MichaelVyverman commented 3 years ago

Could you explain what the error was: was it panel._tableLineCount that was incorrect as this seem to be the only thing that panel._measureSize is modifying? If that value was wrong, what modified it to the wrong value?

MaartenWillemsAgilent commented 3 years ago

When the browser navigates from the account detail screen where the delete action was fired to the account list screen. The resize event is triggered (line 830 in PanelTable.js). This resize event triggers the measuring function without looking at the _sizeMeasured property. When the server did not yet return results before the resize event fires the measure event performs the measuring on an empty serverTable. The result is 1. When the results arrive in the browser the renderTableContent is (re)triggered. This normally performs a measuring as well unless the _sizeMeasured was set to true (in this case due to the resize event) and no resizing is done.

My logic was that in case of new data arriving we definitely need to measure again. That's why I added the forceMeasure Param. Other ideas are always welcome of course.

I see now I forgot to remove the log statements.