From fd88b53a6146bf8dd242b5f3887089e843235b79 Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Mon, 11 Dec 2023 10:21:20 +0100 Subject: [PATCH] [refactoring] keep selection on double click in member selection table (IDEA-339835) GitOrigin-RevId: dd7654fc6f26c0db13f41aa9dc82c184bf01eec1 --- .../refactoring/ui/AbstractMemberSelectionTable.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/refactoring/ui/AbstractMemberSelectionTable.java b/platform/lang-impl/src/com/intellij/refactoring/ui/AbstractMemberSelectionTable.java index 65a038573401..d27f7000bf81 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/ui/AbstractMemberSelectionTable.java +++ b/platform/lang-impl/src/com/intellij/refactoring/ui/AbstractMemberSelectionTable.java @@ -121,10 +121,9 @@ public abstract class AbstractMemberSelectionTable= myMemberInfos.size()) return false; - final M memberInfo = myMemberInfos.get(row); - memberInfo.setChecked(!memberInfo.isChecked()); - fireMemberInfoChange(List.of(memberInfo)); - myTableModel.fireTableDataChanged(); + Boolean current = (Boolean)getValueAt(row, CHECKED_COLUMN); + setValueAt(!current, row, CHECKED_COLUMN); + setRowSelectionInterval(row,row); return true; } }.installOn(this); @@ -167,7 +166,6 @@ public abstract class AbstractMemberSelectionTable list = new ArrayList<>(myMemberInfos.size()); for (M info : myMemberInfos) { if (isMemberInfoSelected(info)) { -// if (info.isChecked() || (!myMemberInfoModel.isMemberEnabled(info) && myMemberInfoModel.isCheckedWhenDisabled(info))) { list.add(info); } }