We are currently working on a number of features related to the query results grid. Some of the changes we are working on is that the checkboxes are going away. The implementation of this patch will have to change based on this. We noticed that 5 Javascript Tests are failing, in part because this patch introduces a new bug with the selection of rows.
Replication steps:
- select a column
- select a row
Now notice that the checkbox for the column is still checked, even though the column's cells are no longer selected.
One of the tests that was failing was covering this behavior. Unfortunately there was a typo in the naming of the test (it originally was called "ColumnSelector selecting columns when a row is selected deselects the row" but should have been called "ColumnSelector selecting columns when a row is selected deselects the column"), but we have copied it with the correct naming below:
describe("when a row is selected", function () { beforeEach(function () { var selectedRanges = [new Slick.Range(0, 0, 0, 1)]; rowSelectionModel.setSelectedRanges(selectedRanges); }); it("deselects the column", function () { container.find('.slick-header-column')[1].click(); var selectedRanges = rowSelectionModel.getSelectedRanges(); expect(selectedRanges.length).toBe(1); var column = selectedRanges[0]; expect(column.fromCell).toBe(1); expect(column.toCell).toBe(1); expect(column.fromRow).toBe(0); expect(column.toRow).toBe(9); }) });
Since we are finishing up this feature anyway, if this bug can wait another week, we can take it into our backlog and address it and submit the fix with our next patch.
PFA patch to fix the issue where in SlickGrid column resize also triggers 'onHeaderClick' event and triggers column selection, In this scenario before drag event which column is under mouse gets selected, So to fix the issue we will check if header checkbox is clicked.