mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-16 10:48:47 +00:00
bug6239: remove from actions' column now preserves the last selection state for rows and global remove() button
This commit is contained in:
-1
@@ -469,7 +469,6 @@ public class EventListComposite extends Composite {
|
||||
|
||||
@Override
|
||||
public void onSuccess(Void result) {
|
||||
refreshableEventSelectionModel.clear();
|
||||
presenter.getEventsRefresher().remove(event);
|
||||
presenter.getEventsRefresher().callAllFill();
|
||||
}
|
||||
|
||||
-1
@@ -310,7 +310,6 @@ public class LeaderboardConfigPanel extends AbstractLeaderboardConfigPanel
|
||||
leaderboardActionColumn.addAction(LeaderboardConfigImagesBarCell.ACTION_UPDATE, UPDATE, this::editLeaderboard);
|
||||
leaderboardActionColumn.addAction(LeaderboardConfigImagesBarCell.ACTION_DELETE, DELETE, leaderboardDTO -> {
|
||||
if (Window.confirm(stringMessages.doYouReallyWantToRemoveLeaderboard(leaderboardDTO.getName()))) {
|
||||
leaderboardSelectionModel.clear();
|
||||
removeLeaderboard(leaderboardDTO);
|
||||
}
|
||||
});
|
||||
|
||||
-1
@@ -552,7 +552,6 @@ public class LeaderboardGroupConfigPanel extends AbstractRegattaPanel
|
||||
this::openEditLeaderboardGroupDialog);
|
||||
actionsColumn.addAction(LeaderboardGroupConfigImagesBarCell.ACTION_DELETE, DELETE, group -> {
|
||||
if (Window.confirm(stringMessages.doYouReallyWantToRemoveLeaderboardGroup(group.getName()))) {
|
||||
refreshableGroupsSelectionModel.clear();
|
||||
removeLeaderboardGroup(group);
|
||||
}
|
||||
});
|
||||
|
||||
-1
@@ -513,7 +513,6 @@ public class MediaPanel extends FlowPanel implements FilterablePanelProvider<Med
|
||||
new DefaultActionsImagesBarCell(stringMessages), userService);
|
||||
actionsColumn.addAction(ACTION_DELETE, DELETE, mediaTrack -> {
|
||||
if (Window.confirm(stringMessages.reallyRemoveMediaTrack(mediaTrack.title))) {
|
||||
refreshableSelectionModel.clear();
|
||||
removeMediaTrack(mediaTrack);
|
||||
}
|
||||
});
|
||||
|
||||
-1
@@ -285,7 +285,6 @@ public class RegattaListComposite extends Composite {
|
||||
actionsColumn.addAction(RegattaConfigImagesBarCell.ACTION_UPDATE, UPDATE, this::editRegatta);
|
||||
actionsColumn.addAction(RegattaConfigImagesBarCell.ACTION_DELETE, DELETE, regatta -> {
|
||||
if (Window.confirm(stringMessages.doYouReallyWantToRemoveRegatta(regatta.getName()))) {
|
||||
refreshableRegattaMultiSelectionModel.clear();
|
||||
removeRegatta(regatta);
|
||||
}
|
||||
});
|
||||
|
||||
-1
@@ -263,7 +263,6 @@ public class CourseTemplatePanel extends FlowPanel implements FilterablePanelPro
|
||||
stringMessages);
|
||||
actionsColumn.addAction(ACTION_DELETE, DELETE, e -> {
|
||||
if (Window.confirm(stringMessages.doYouReallyWantToRemoveCourseTemplate(e.getName()))) {
|
||||
refreshableSelectionModel.clear();
|
||||
sailingService.removeCourseTemplates(Collections.singletonList(e.getUuid()), new AsyncCallback<Void>() {
|
||||
|
||||
@Override
|
||||
|
||||
+8
-2
@@ -212,19 +212,25 @@ public class SelectionCheckboxColumn<T> extends AbstractSortableColumnWithMinMax
|
||||
private EventTranslator<T> createSelectionEventTranslator() {
|
||||
return new EventTranslator<T>() {
|
||||
/**
|
||||
* Don't clear the selection when the user has clicked on the checkbox column
|
||||
* Don't clear the selection when the user has clicked on the checkbox column or
|
||||
* on an actions column (ImagesBarColumn): action icon clicks must not disturb
|
||||
* the multi-selection state.
|
||||
*/
|
||||
@Override
|
||||
public boolean clearCurrentSelection(CellPreviewEvent<T> event) {
|
||||
NativeEvent nativeEvent = event.getNativeEvent();
|
||||
boolean ctrlOrMeta = nativeEvent.getCtrlKey() || nativeEvent.getMetaKey();
|
||||
return !isSelectionCheckboxColumn(event) && !ctrlOrMeta;
|
||||
return !isSelectionCheckboxColumn(event) && !isImagesBarColumn(event) && !ctrlOrMeta;
|
||||
}
|
||||
|
||||
private boolean isSelectionCheckboxColumn(CellPreviewEvent<T> event) {
|
||||
Column<?, ?> column = getColumn(event);
|
||||
return column == SelectionCheckboxColumn.this;
|
||||
}
|
||||
|
||||
private boolean isImagesBarColumn(CellPreviewEvent<T> event) {
|
||||
return getColumn(event) instanceof ImagesBarColumn;
|
||||
}
|
||||
|
||||
private Column<?, ?> getColumn(CellPreviewEvent<T> event) {
|
||||
CellTable<T> table = (CellTable<T>) event.getDisplay();
|
||||
|
||||
-1
@@ -242,7 +242,6 @@ public class RoleDefinitionsPanel extends VerticalPanel {
|
||||
|
||||
@Override
|
||||
public void onSuccess(Void result) {
|
||||
refreshableRoleDefinitionMultiSelectionModel.clear();
|
||||
updateRoleDefinitions();
|
||||
}
|
||||
});
|
||||
|
||||
-1
@@ -133,7 +133,6 @@ public class GroupRoleDefinitionPanel extends Composite
|
||||
} else if (Window.confirm(stringMessages.doYouReallyWantToRemoveRole(selectedRole.getA().getName()))) {
|
||||
UserGroupDTO selectedObject = TableWrapper.getSingleSelectedObjectOrNull(userGroupSelectionModel);
|
||||
if (selectedObject != null) {
|
||||
roleDefinitionTableWrapper.getSelectionModel().clear();
|
||||
userManagementService.removeRoleDefinitionFromUserGroup(selectedObject.getId().toString(),
|
||||
selectedRole.getA().getId().toString(), new AsyncCallback<Void>() {
|
||||
@Override
|
||||
|
||||
-1
@@ -97,7 +97,6 @@ public class RoleDefinitionTableWrapper extends
|
||||
@Override
|
||||
public void onSuccess(Void result) {
|
||||
selectedObject.remove(rolePair.getA());
|
||||
getSelectionModel().clear();
|
||||
refresher.run();
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user