diff --git a/source/ubl-settings-usergroups.c b/source/ubl-settings-usergroups.c
index d6d3da9..8fdb6ed 100644
--- a/source/ubl-settings-usergroups.c
+++ b/source/ubl-settings-usergroups.c
@@ -210,19 +210,34 @@ void yon_delete_confirmation_save(GtkWidget *self, dictionary *dict){
int valid2 = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(window->list),&itar);
for (;valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(window->list),&itar)){
char *name_check;
- int status;
- gtk_tree_model_get(GTK_TREE_MODEL(window->list),&itar,1,&name_check,3,&status,-1);
- if (!strcmp(name,name_check)){
- GtkTreeIter *it = gtk_tree_iter_copy(&iter);
- if (!gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->UsersList),&iter)){
- iter = *gtk_tree_iter_copy(it);
- if (!gtk_tree_model_iter_previous(GTK_TREE_MODEL(widgets->UsersList),&iter)){
- iter = *gtk_tree_iter_copy(it);
+ int status,delete;
+ gtk_tree_model_get(GTK_TREE_MODEL(window->list),&itar,0,&delete,1,&name_check,3,&status,-1);
+ if (!strcmp(name,name_check)&&delete){
+ gtk_list_store_remove(widgets->UsersList,&iter);
+ yon_config_remove_by_key(USERADD(name));
+ yon_config_remove_by_key(USERSHADOW(name));
+ gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->UsersList),&iter);
+ if (status){
+ if (yon_char_parsed_check_exist(main_config.remove_homes,main_config.homes_size,name)==-1){
+ yon_char_parsed_add_or_create_if_exists(main_config.remove_homes,&main_config.homes_size,name);
}
}
- gtk_list_store_remove(widgets->UsersList,it);
+ }
+ }
+ }
+ char *name;
+ gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->UsersList),&iter);
+ gtk_tree_model_get(GTK_TREE_MODEL(widgets->UsersList),&iter,2,&name,-1);
+ int valid2 = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(window->list),&itar);
+ for (;valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(window->list),&itar)){
+ char *name_check;
+ int status,delete;
+ gtk_tree_model_get(GTK_TREE_MODEL(window->list),&itar,0,&delete,1,&name_check,3,&status,-1);
+ if (!strcmp(name,name_check)&&delete){
+ gtk_list_store_remove(widgets->UsersList,&iter);
yon_config_remove_by_key(USERADD(name));
yon_config_remove_by_key(USERSHADOW(name));
+ gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->UsersList),&iter);
if (status){
if (yon_char_parsed_check_exist(main_config.remove_homes,main_config.homes_size,name)==-1){
yon_char_parsed_add_or_create_if_exists(main_config.remove_homes,&main_config.homes_size,name);
@@ -230,7 +245,6 @@ void yon_delete_confirmation_save(GtkWidget *self, dictionary *dict){
}
}
}
- }
on_subwindow_close(self);
}
diff --git a/ubl-settings-usergroups-confirmation.glade b/ubl-settings-usergroups-confirmation.glade
index d56818e..65e05e5 100644
--- a/ubl-settings-usergroups-confirmation.glade
+++ b/ubl-settings-usergroups-confirmation.glade
@@ -71,8 +71,9 @@
False
20
20
- 20
- 20
+ 10
+ 10
+ 50
dialog-question-symbolic
6