diff options
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Window.cc b/src/Window.cc index 523fd66..d878e2e 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -2333,8 +2333,10 @@ void FluxboxWindow::showMenu(int menu_x, int menu_y) { | |||
2333 | 2333 | ||
2334 | int head = screen().getHead(menu_x, menu_y); | 2334 | int head = screen().getHead(menu_x, menu_y); |
2335 | 2335 | ||
2336 | // but not under screen | 2336 | // but not off the screen |
2337 | if (menu_y + menu().height() >= screen().maxBottom(head)) | 2337 | if (menu_y < static_cast<signed>(screen().maxTop(head))) |
2338 | menu_y = screen().maxTop(head); | ||
2339 | else if (menu_y + menu().height() >= screen().maxBottom(head)) | ||
2338 | menu_y = screen().maxBottom(head) - menu().height() - 1 - menu().fbwindow().borderWidth(); | 2340 | menu_y = screen().maxBottom(head) - menu().height() - 1 - menu().fbwindow().borderWidth(); |
2339 | 2341 | ||
2340 | if (menu_x < static_cast<signed>(screen().maxLeft(head))) | 2342 | if (menu_x < static_cast<signed>(screen().maxLeft(head))) |