From 50d9b7cd4c209e79fa19843feb18902a743312d5 Mon Sep 17 00:00:00 2001 From: Sergei Dorogin Date: Fri, 29 May 2015 17:00:36 +0300 Subject: [PATCH] https://github.com/6pac/SlickGrid/issues/9 : Prevent useless onSelectedRangesChanged events in selectionmodels' setSelectedRanges --- plugins/slick.cellselectionmodel.js | 3 +++ plugins/slick.rowselectionmodel.js | 2 ++ 2 files changed, 5 insertions(+) diff --git a/plugins/slick.cellselectionmodel.js b/plugins/slick.cellselectionmodel.js index 74bc3eb70..3d9e2af0b 100644 --- a/plugins/slick.cellselectionmodel.js +++ b/plugins/slick.cellselectionmodel.js @@ -56,6 +56,9 @@ } function setSelectedRanges(ranges) { + // simle check for: empty selection didn't change, prevent firing onSelectedRangesChanged + if ((!_ranges || _ranges.length === 0) && (!ranges || ranges.length === 0)) { return; } + _ranges = removeInvalidRanges(ranges); _self.onSelectedRangesChanged.notify(_ranges); } diff --git a/plugins/slick.rowselectionmodel.js b/plugins/slick.rowselectionmodel.js index 0de8dd3a4..190b0f71d 100644 --- a/plugins/slick.rowselectionmodel.js +++ b/plugins/slick.rowselectionmodel.js @@ -81,6 +81,8 @@ } function setSelectedRanges(ranges) { + // simle check for: empty selection didn't change, prevent firing onSelectedRangesChanged + if ((!_ranges || _ranges.length === 0) && (!ranges || ranges.length === 0)) { return; } _ranges = ranges; _self.onSelectedRangesChanged.notify(_ranges); }