rem: PlaceIcon(dock->screen_ptr, &aicon->x_pos, &aicon->y_pos);
add: PlaceIcon(dock->screen_ptr, &aicon->x_pos, &aicon->y_pos, wGetHeadForWindow(aicon->icon->owner));
context: removeIconsCallback(WMenu *menu, WMenuEntry *entry){    WAppIcon *clickedIcon = (WAppIcon*)entry->clientdata;    WDock *dock;    WAppIcon *aicon;    WMArray *selectedIcons;    int keepit;    WMArrayIterator it;    assert(clickedIcon!=NULL);    dock = clickedIcon->dock;    selectedIcons = getSelected(dock);    if (WMGetArrayItemCount(selectedIcons)) {	if (wMessageDialog(dock->screen_ptr, _("Workspace Clip"),			   _("All selected icons will be removed!"),			   _("OK"), _("Cancel"), NULL)!=WAPRDefault) {	    WMFreeArray(selectedIcons);	    return;	}    } else {	if (clickedIcon->xindex==0 && clickedIcon->yindex==0) {	    WMFreeArray(selectedIcons);	    return;	}	WMAddToArray(selectedIcons, clickedIcon);    }    WM_ITERATE_ARRAY(selectedIcons, aicon, it) {        keepit = aicon->running && wApplicationOf(aicon->main_window);        wDockDetach(dock, aicon);        if (keepit) {            PlaceIcon(dock->screen_ptr, &aicon->x_pos, &aicon->y_pos);            XMoveWindow(dpy, aicon->icon->core->window,                        aicon->x_pos, aicon->y_pos);            if (!dock->mapped || dock->collapsed)                XMapWindow(dpy, aicon->icon->core->window);        }    }    WMFreeArray(selectedIcons);    if (wPreferences.auto_arrange_icons)        wArrangeIcons(dock->screen_ptr, True);}