From 926a88c9d6cfb36466c569fcf6e580ac43b4a1d3 Mon Sep 17 00:00:00 2001 From: Javier Godoy <11554739+javier-godoy@users.noreply.github.com> Date: Tue, 11 Mar 2025 14:42:46 -0300 Subject: [PATCH] fix: avoid IndexOutOfBoundsException in enhanced selection Close #125 --- .../addons/gridhelpers/EnhancedSelectionGridHelper.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/flowingcode/vaadin/addons/gridhelpers/EnhancedSelectionGridHelper.java b/src/main/java/com/flowingcode/vaadin/addons/gridhelpers/EnhancedSelectionGridHelper.java index 4fbf846..83217fd 100644 --- a/src/main/java/com/flowingcode/vaadin/addons/gridhelpers/EnhancedSelectionGridHelper.java +++ b/src/main/java/com/flowingcode/vaadin/addons/gridhelpers/EnhancedSelectionGridHelper.java @@ -2,7 +2,7 @@ * #%L * Grid Helpers Add-on * %% - * Copyright (C) 2022 - 2024 Flowing Code + * Copyright (C) 2022 - 2025 Flowing Code * %% * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -110,7 +110,7 @@ void enableEnhancedSelection() { int newFocusedItemIndex = (int) ev.getEventData().getNumber(KEY_UP_ELEMENT_FOCUSED_ITEM_INDEX); if (newFocusedItemIndex >= 0) { - newFocusedItemMaybe = Optional.ofNullable(dataView.getItem(newFocusedItemIndex)); + newFocusedItemMaybe = dataView.getItems().skip(newFocusedItemIndex).findFirst(); } if (newFocusedItemMaybe.isPresent()) {