user groups: Update handling of user group remove event.

Groups list in group_list_widget data was not propoerly updated
on group remove event as a result the group list on left panel
gave errors during search/(tab switches) redraws.
This commit is contained in:
m-e-l-u-h-a-n
2023-05-11 02:21:08 +05:30
committed by Tim Abbott
parent 0261be5993
commit 5cb99ad8a4
3 changed files with 12 additions and 4 deletions

View File

@@ -857,8 +857,8 @@ export function dispatch_normal_event(event) {
}
break;
case "remove":
user_group_edit.handle_deleted_group(event.group_id);
user_groups.remove(user_groups.get_user_group_from_id(event.group_id));
user_group_edit.handle_deleted_group(event.group_id);
break;
case "add_members":
user_groups.add_members(event.group_id, event.user_ids);

View File

@@ -199,11 +199,15 @@ export function is_editing_group(desired_group_id) {
}
export function handle_deleted_group(group_id) {
if (!is_editing_group(group_id)) {
if (!overlays.groups_open()) {
return;
}
if (is_editing_group(group_id)) {
open_right_panel_empty();
}
user_group_settings_ui.redraw_user_group_list();
}
export function open_group_edit_panel_for_row(group_row) {
const group = get_user_group_for_target(group_row);

View File

@@ -207,7 +207,11 @@ function redraw_left_panel(tab_name) {
user_groups.get_user_groups_of_user(people.my_current_user_id()),
);
}
// TODO: If possible persist selection of active group in the left panel.
}
export function redraw_user_group_list() {
const tab_name = get_active_data().$tabs.first().attr("data-tab-key");
redraw_left_panel(tab_name);
}
export function switch_group_tab(tab_name) {