e_desktop_border_edit(E_Container *con, E_Border *bd)
{
E_Desktop_Edit *editor;
+ int new_desktop;
if (!con) return NULL;
editor = E_OBJECT_ALLOC(E_Desktop_Edit, E_DESKTOP_EDIT_TYPE, _e_desktop_edit_free);
editor->desktop = e_desktop_border_create(bd);
if ((editor->desktop) && (editor->desktop->icon))
editor->tmp_image_path = strdup(editor->desktop->icon);
+ new_desktop = 1;
}
#if 0
e_object_del(E_OBJECT(editor));
editor = NULL;
}
+
+ e_config_dialog_changed_set(editor->cfd, new_desktop);
+
return editor;
}
e_config_dialog_new(con, _("Desktop Entry Editor"), "E",
"_desktop_editor_dialog",
"enlightenment/applications", 0, v, editor);
+
+ if (!editor->cfd)
+ {
+ E_FREE(v);
+ return 0;
+ }
+
return 1;
}
static void
_e_desktop_edit_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
{
- if (cfdata->desktop) efreet_desktop_free(cfdata->desktop);
if (cfdata->editor->tmp_image_path)
{
if ((!cfdata->desktop) || (!cfdata->editor->saved) ||
ecore_file_unlink(cfdata->editor->tmp_image_path);
}
}
+ if (cfdata->desktop) efreet_desktop_free(cfdata->desktop);
IFFREE(cfdata->name);
IFFREE(cfdata->generic_name);