summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--java/src/com/tightvnc/vncviewer/VncCanvas.java12
1 files changed, 10 insertions, 2 deletions
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)