Sorting out icons
This commit is contained in:
parent
95a6179d20
commit
40eb18a391
|
@ -721,12 +721,13 @@ void desktop_icon_remove(Desktop * desktop, DesktopIcon * icon)
|
|||
desktop->icon_cnt--;
|
||||
for(; i < desktop->icon_cnt; i++)
|
||||
desktop->icon[i] = desktop->icon[i + 1];
|
||||
desktop_icons_align(desktop);
|
||||
}
|
||||
desktop_icons_align(desktop);
|
||||
}
|
||||
|
||||
|
||||
/* desktop_icons_align */
|
||||
static int _align_compare(const void * a, const void * b);
|
||||
void desktop_icons_align(Desktop * desktop)
|
||||
{
|
||||
GdkScreen * screen;
|
||||
|
@ -735,6 +736,7 @@ void desktop_icons_align(Desktop * desktop)
|
|||
int x = 0;
|
||||
int y = 0;
|
||||
|
||||
qsort(desktop->icon, desktop->icon_cnt, sizeof(void*), _align_compare);
|
||||
if((screen = gdk_screen_get_default()) != NULL)
|
||||
height = gdk_screen_get_height(screen);
|
||||
for(i = 0; i < desktop->icon_cnt; i++)
|
||||
|
@ -749,6 +751,14 @@ void desktop_icons_align(Desktop * desktop)
|
|||
}
|
||||
}
|
||||
|
||||
static int _align_compare(const void * a, const void * b)
|
||||
{
|
||||
DesktopIcon * icona = *(DesktopIcon**)a;
|
||||
DesktopIcon * iconb = *(DesktopIcon**)b;
|
||||
|
||||
return strcmp(desktopicon_get_path(icona), desktopicon_get_path(iconb));
|
||||
}
|
||||
|
||||
|
||||
/* usage */
|
||||
static int _usage(void)
|
||||
|
|
Loading…
Reference in New Issue
Block a user