private boolean restoreSelectedRows(int[] rows) {
		traceRows("restoreSelectedRows(): ", rows);
		if (Arrays.equals(rows, table.getSelectedRows())) {
			trace("\tselection hasn't changed--nothing to do");
			// the selection is the same, nothing to change; don't send out excess events
			return false;
		}

		trace("\tpreparing to restore selection");
		notifyRestoringSelection(true);
		restoringSelection = true;

		ListSelectionModel selectionModel = table.getSelectionModel();
		selectionModel.setValueIsAdjusting(true);
		selectionModel.clearSelection();
		for (int row : rows) {
			selectionModel.addSelectionInterval(row, row);
		}
		selectionModel.setValueIsAdjusting(false);

		restoringSelection = false;
		notifyRestoringSelection(false);
		trace("\tdone restoring selection");
		return true;
	}
checks to see if we are ignoring selection changes AND will reset the ignore state
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/RowObjectSelectionManager.java