-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Summary
There is a dangerous synchronization bug in the Data Grid component when used with Glide Big Tables and Freeze First Column enabled.
When a user navigates between pages (Pagination), the "Frozen" column does not update—it continues to display the values from the previous page, while the rest of the columns update correctly. This creates a mismatch where Row X displays the Name/ID of Row Y.
Severity: CRITICAL
This is causing actual data loss. Users see the ID/Name from Page 1 (in the frozen column), but the row actually represents data from Page 2. When they attempt to delete or edit what they think is the record in the first column, they are actually deleting/editing a completely different record.
Steps to Reproduce
- Create a Glide Big Table with enough data for multiple pages (e.g., 20+ rows).
- Add a Data Grid component pointing to this table.
- Enable "Freeze First Column" in the Data Grid settings.
- View the app and scroll/click to Page 2 using the pagination controls at the bottom.
Current Behavior (The Bug)
- The non-frozen columns (right side) correctly update to show data for Page 2.
- The Frozen First Column stays stuck showing the data from Page 1.
- Note: The frozen column only updates if the user clicks somewhere inside the table grid, forcing a re-render.
Evidence (See Screenshots)
- Screenshot 1 (Page 1): Column
Indexshows 1-5. ColumnIndex2shows 1-5. (Correct). - Screenshot 2 (Page 2): Column
Index2correctly updates to 6-10. However, the Frozen ColumnIndexstill shows 1-5. - Result: The row visually represents "Index 1" combined with "Index2 6", which is a non-existent data combination.
Expected Behavior
When the user changes the page, ALL columns, including the Frozen one, must refresh immediately to show the correct data for the current page offset.
