summaryrefslogtreecommitdiff
path: root/openbox/menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/menu.c')
-rw-r--r--openbox/menu.c8
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);