From 70a15c80d722d7974328550498bd2cfc3cc03302 Mon Sep 17 00:00:00 2001 From: Carlos Garcia Campos Date: Sat, 10 Jul 2010 15:50:34 +0000 Subject: [libview] Make sure annot popups never show up outside the main window Fixes bug #604125. --- diff --git a/libview/ev-view.c b/libview/ev-view.c index 1adf772..71470fb 100644 --- a/libview/ev-view.c +++ b/libview/ev-view.c @@ -2400,11 +2400,19 @@ ev_view_window_child_move (EvView *view, gint x, gint y) { + GtkAllocation allocation; + gint width, height; + + gtk_widget_get_allocation (GTK_WIDGET (view), &allocation); + gtk_window_get_size (GTK_WINDOW (child->window), &width, &height); + child->x = x; child->y = y; gtk_window_move (GTK_WINDOW (child->window), - MAX (child->parent_x, x), - MAX (child->parent_y, y)); + CLAMP (x, child->parent_x, + child->parent_x + allocation.width - width), + CLAMP (y, child->parent_y, + child->parent_y + allocation.height - height)); } static void -- cgit v0.9.1