From 44148026914b06417037f0d4fe6f714f99d1d687 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Fri, 11 May 2018 23:17:59 +0200 Subject: Do not push menus off the screen when hitting screen limits Closes #279 --- src/events.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/events.c b/src/events.c index 4a24935..89eaab8 100644 --- a/src/events.c +++ b/src/events.c @@ -509,6 +509,8 @@ static void feh_event_handle_MotionNotify(XEvent * ev) dy = scr_height - (m->y + m->h); dx = dx < 0 ? dx : 0; dy = dy < 0 ? dy : 0; + dx = m->x + dx < 0 ? -m->x : dx; + dy = m->y + dy < 0 ? -m->y : dy; if (dx || dy) feh_menu_slide_all_menus_relative(dx, dy); } @@ -521,6 +523,8 @@ static void feh_event_handle_MotionNotify(XEvent * ev) dy = scr->height - (m->next->y + m->next->h); dx = dx < 0 ? dx : 0; dy = dy < 0 ? dy : 0; + dx = m->x + dx < 0 ? -m->x : dx; + dy = m->y + dy < 0 ? -m->y : dy; if (dx || dy) feh_menu_slide_all_menus_relative(dx, dy); } -- cgit v1.2.3