diff options
Diffstat (limited to 'openbox/menu.c')
| -rw-r--r-- | openbox/menu.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/openbox/menu.c b/openbox/menu.c index 5efacc2a..1585a56d 100644 --- a/openbox/menu.c +++ b/openbox/menu.c @@ -290,7 +290,13 @@ void menu_show(gchar *name, gint x, gint y, ObClient *client) menu_frame_hide_all(); frame = menu_frame_new(self, client); - menu_frame_move(frame, x - ob_rr_theme->bwidth, y - ob_rr_theme->bwidth); + if (client && x < 0 && y < 0) + menu_frame_move(frame, + client->frame->area.x + client->frame->size.left, + client->frame->area.y + client->frame->size.top); + else + menu_frame_move(frame, + x - ob_rr_theme->bwidth, y - ob_rr_theme->bwidth); menu_frame_show(frame, NULL); if (frame->entries) menu_frame_select_next(frame); |
