X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fsp-namedview.cpp;h=47720c5d64f12fb9409e1f74aa7a537b457d0fe8;hb=11c5de79de3c200331e168a745b0505a50aeffea;hp=15f2d6d725d9a2658e302bac6bbf3589a16924ae;hpb=ecb620bfe562f1fbbbfea4c9fd92540a1ceb607b;p=inkscape.git diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 15f2d6d72..47720c5d6 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -745,12 +745,14 @@ void sp_namedview_window_from_document(SPDesktop *desktop) } else { gint w = MIN(gdk_screen_width(), nv->window_width); gint h = MIN(gdk_screen_height(), nv->window_height); + // prevent the window from moving off the screen to the right or to the bottom gint x = MIN(gdk_screen_width() - MIN_ONSCREEN_DISTANCE, nv->window_x); gint y = MIN(gdk_screen_height() - MIN_ONSCREEN_DISTANCE, nv->window_y); + // prevent the window from moving off the screen to the left or to the top + x = MAX(MIN_ONSCREEN_DISTANCE - nv->window_width, x); + y = MAX(MIN_ONSCREEN_DISTANCE - nv->window_height, y); if (w>0 && h>0) { desktop->setWindowSize(w, h); - x = MIN(gdk_screen_width() - w, x); - y = MIN(gdk_screen_height() - h, y); desktop->setWindowPosition(Geom::Point(x, y)); } }