[Xfce4-commits] <ristretto:master> Limit move and zoom selection to the inside of the image-frame.
Stephan Arts
noreply at xfce.org
Sun Dec 18 09:18:02 CET 2011
Updating branch refs/heads/master
to 97a169c4755d83c6ae626439d426cd7f994e2147 (commit)
from 89127b8c5899ba151bfced6f61e353042ad5e9b7 (commit)
commit 97a169c4755d83c6ae626439d426cd7f994e2147
Author: Stephan Arts <stephan at xfce.org>
Date: Sun Dec 18 09:16:04 2011 +0100
Limit move and zoom selection to the inside of the image-frame.
src/image_viewer.c | 28 ++++++++++++++++++++--------
1 files changed, 20 insertions(+), 8 deletions(-)
diff --git a/src/image_viewer.c b/src/image_viewer.c
index 702df06..6a58052 100644
--- a/src/image_viewer.c
+++ b/src/image_viewer.c
@@ -2155,19 +2155,31 @@ rstto_button_press_event (
{
if (!(event->state & (GDK_CONTROL_MASK)))
{
- GdkCursor *cursor = gdk_cursor_new(GDK_FLEUR);
- gdk_window_set_cursor(widget->window, cursor);
- gdk_cursor_unref(cursor);
- rstto_image_viewer_set_motion_state (viewer, RSTTO_IMAGE_VIEWER_MOTION_STATE_MOVE);
+ if ( (event->x > viewer->priv->rendering.x_offset) &&
+ (event->y > viewer->priv->rendering.y_offset) &&
+ (event->y < (viewer->priv->rendering.y_offset + viewer->priv->rendering.height)) &&
+ (event->x < (viewer->priv->rendering.x_offset + viewer->priv->rendering.width)))
+ {
+ GdkCursor *cursor = gdk_cursor_new(GDK_FLEUR);
+ gdk_window_set_cursor(widget->window, cursor);
+ gdk_cursor_unref(cursor);
+ rstto_image_viewer_set_motion_state (viewer, RSTTO_IMAGE_VIEWER_MOTION_STATE_MOVE);
+ }
}
if (event->state & GDK_CONTROL_MASK)
{
- GdkCursor *cursor = gdk_cursor_new(GDK_UL_ANGLE);
- gdk_window_set_cursor(widget->window, cursor);
- gdk_cursor_unref(cursor);
+ if ( (event->x > viewer->priv->rendering.x_offset) &&
+ (event->y > viewer->priv->rendering.y_offset) &&
+ (event->y < (viewer->priv->rendering.y_offset + viewer->priv->rendering.height)) &&
+ (event->x < (viewer->priv->rendering.x_offset + viewer->priv->rendering.width)))
+ {
+ GdkCursor *cursor = gdk_cursor_new(GDK_UL_ANGLE);
+ gdk_window_set_cursor(widget->window, cursor);
+ gdk_cursor_unref(cursor);
- rstto_image_viewer_set_motion_state (viewer, RSTTO_IMAGE_VIEWER_MOTION_STATE_BOX_ZOOM);
+ rstto_image_viewer_set_motion_state (viewer, RSTTO_IMAGE_VIEWER_MOTION_STATE_BOX_ZOOM);
+ }
}
}
return TRUE;
More information about the Xfce4-commits
mailing list