From ef0cfaa46a2d7abd0605fbc7cc04fbc78d73bc28 Mon Sep 17 00:00:00 2001 From: Constantin Kaplinsky Date: Wed, 3 Sep 2008 03:37:28 +0000 Subject: [Bugfix] Selection grew incorrectly when it passed left or upper boundary of the framebuffer. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2747 3789f03b-4d11-0410-bbf8-ca57d06f2519 --- java/src/com/tightvnc/vncviewer/VncCanvas.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'java/src') diff --git a/java/src/com/tightvnc/vncviewer/VncCanvas.java b/java/src/com/tightvnc/vncviewer/VncCanvas.java index 5422137b..17bb6c84 100644 --- a/java/src/com/tightvnc/vncviewer/VncCanvas.java +++ b/java/src/com/tightvnc/vncviewer/VncCanvas.java @@ -2016,10 +2016,18 @@ class VncCanvas extends Canvas h = (h * 100 + scalingFactor/2) / scalingFactor; } // Clip the selection to framebuffer. - if (x < 0) + if (x < 0) { + if (horizSwap) { + w += x; + } x = 0; - if (y < 0) + } + if (y < 0) { + if (vertSwap) { + h += y; + } y = 0; + } if (x + w > rfb.framebufferWidth) w = rfb.framebufferWidth - x; if (y + h > rfb.framebufferHeight) -- cgit v1.2.3