rem: scr->scr_width - dock->menu->frame->core->width - 2 : 0;
add: scr->scr_width - dock->menu->frame->core->width - 3 : 0;
context: openDockMenu(WDock *dock, WAppIcon *aicon, XEvent *event){    WScreen *scr = dock->screen_ptr;    WObjDescriptor *desc;    WMenuEntry *entry;    WApplication *wapp = NULL;    int index = 0;    int x_pos;    int n_selected;    int appIsRunning = aicon->running && aicon->icon && aicon->icon->owner;    if (dock->type == WM_DOCK) {	/* keep on top */	entry = dock->menu->entries[index];        entry->flags.indicator_on = !dock->lowered;	entry->clientdata = dock;	dock->menu->flags.realized = 0;    } else {	/* clip options */	if (scr->clip_options)	    updateClipOptionsMenu(scr->clip_options, dock);        n_selected = numberOfSelectedIcons(dock);	/* Rename Workspace */	entry = dock->menu->entries[++index];        if (aicon == scr->clip_icon) {            entry->callback = renameCallback;            entry->clientdata = dock;            entry->flags.indicator = 0;            entry->text = _("Rename Workspace");        } else {            entry->callback = omnipresentCallback;            entry->clientdata = aicon;            if (n_selected > 0) {                entry->flags.indicator = 0;                entry->text = _("Toggle Omnipresent");            } else {                entry->flags.indicator = 1;                entry->flags.indicator_on = aicon->omnipresent;                entry->flags.indicator_type = MI_CHECK;                entry->text = _("Omnipresent");            }        }	/* select/unselect icon */	entry = dock->menu->entries[++index];        entry->clientdata = aicon;        entry->flags.indicator_on = aicon->icon->selected;	wMenuSetEnabled(dock->menu, index, aicon!=scr->clip_icon);	/* select/unselect all icons */	entry = dock->menu->entries[++index];        entry->clientdata = aicon;        if (n_selected > 0)            entry->text = _("Unselect All Icons");        else            entry->text = _("Select All Icons");	wMenuSetEnabled(dock->menu, index, dock->icon_count > 1);	/* keep icon(s) */	entry = dock->menu->entries[++index];        entry->clientdata = aicon;        if (n_selected > 1)            entry->text = _("Keep Icons");        else            entry->text = _("Keep Icon");	wMenuSetEnabled(dock->menu, index, dock->icon_count > 1);	/* this is the workspace submenu part */        entry = dock->menu->entries[++index];        if (n_selected > 1)            entry->text = _("Move Icons To");        else            entry->text = _("Move Icon To");	if (scr->clip_submenu)	    updateWorkspaceMenu(scr->clip_submenu, aicon);        wMenuSetEnabled(dock->menu, index, !aicon->omnipresent);	/* remove icon(s) */	entry = dock->menu->entries[++index];	entry->clientdata = aicon;        if (n_selected > 1)            entry->text = _("Remove Icons");        else            entry->text = _("Remove Icon");	wMenuSetEnabled(dock->menu, index, dock->icon_count > 1);	/* attract icon(s) */	entry = dock->menu->entries[++index];        entry->clientdata = aicon;        dock->menu->flags.realized = 0;        wMenuRealize(dock->menu);    }        if (aicon->icon->owner) {        wapp = wApplicationOf(aicon->icon->owner->main_window);    } else {	wapp = NULL;    }        /* launch */    entry = dock->menu->entries[++index];    entry->clientdata = aicon;    wMenuSetEnabled(dock->menu, index, aicon->command!=NULL);    /* unhide here */    entry = dock->menu->entries[++index];    entry->clientdata = aicon;    if (wapp && wapp->flags.hidden) {	entry->text = _("Unhide Here");    } else {	entry->text = _("Bring Here");    }    wMenuSetEnabled(dock->menu, index, appIsRunning);    /* hide */    entry = dock->menu->entries[++index];    entry->clientdata = aicon;    if (wapp && wapp->flags.hidden) {	entry->text = _("Unhide");    } else {	entry->text = _("Hide");    }    wMenuSetEnabled(dock->menu, index, appIsRunning);    /* settings */    entry = dock->menu->entries[++index];    entry->clientdata = aicon;    wMenuSetEnabled(dock->menu, index, !aicon->editing		    && !wPreferences.flags.noupdates);    /* kill */    entry = dock->menu->entries[++index];    entry->clientdata = aicon;    wMenuSetEnabled(dock->menu, index, appIsRunning);    if (!dock->menu->flags.realized)	wMenuRealize(dock->menu);    if (dock->type == WM_CLIP) {	x_pos = event->xbutton.x_root+2;    } else {	x_pos = dock->on_right_side ?	    scr->scr_width - dock->menu->frame->core->width - 2 : 0;    }    wMenuMapAt(dock->menu, x_pos, event->xbutton.y_root+2, False);    /* allow drag select */    event->xany.send_event = True;    desc = &dock->menu->menu->descriptor;    (*desc->handle_mousedown)(desc, event);}