Revision: 4881
          http://tigervnc.svn.sourceforge.net/tigervnc/?rev=4881&view=rev
Author:   bphinz
Date:     2012-04-05 02:23:58 +0000 (Thu, 05 Apr 2012)
Log Message:
-----------
Prevent viewer from reconfiguring viewport on pixel format changes.

Modified Paths:
--------------
    trunk/java/com/tigervnc/rfb/PixelBuffer.java
    trunk/java/com/tigervnc/vncviewer/CConn.java

Modified: trunk/java/com/tigervnc/rfb/PixelBuffer.java
===================================================================
--- trunk/java/com/tigervnc/rfb/PixelBuffer.java        2012-04-05 02:08:49 UTC 
(rev 4880)
+++ trunk/java/com/tigervnc/rfb/PixelBuffer.java        2012-04-05 02:23:58 UTC 
(rev 4881)
@@ -45,7 +45,7 @@
       int gmask = pf.greenMax << pf.greenShift;
       int bmask = pf.blueMax << pf.blueShift;
       cm = new DirectColorModel(8, rmask, gmask, bmask);
-      if (pf.depth == 8 && !pf.trueColour)
+      if (!pf.trueColour)
         cm = new IndexColorModel(8, 256, new byte[256], new byte[256], new 
byte[256]);
       break;
     case 16: 

Modified: trunk/java/com/tigervnc/vncviewer/CConn.java
===================================================================
--- trunk/java/com/tigervnc/vncviewer/CConn.java        2012-04-05 02:08:49 UTC 
(rev 4880)
+++ trunk/java/com/tigervnc/vncviewer/CConn.java        2012-04-05 02:23:58 UTC 
(rev 4881)
@@ -1044,21 +1044,27 @@
     viewer.acceptBell.setParam(options.acceptBell.isSelected());
     String scaleString =
       options.scalingFactor.getSelectedItem().toString();
+    String oldScaleFactor = viewer.scalingFactor.getValue();
     if (scaleString.equals("Auto")) {
+      if (!oldScaleFactor.equals(scaleString)) {
       viewer.scalingFactor.setParam("Auto");
-      if (desktop != null)
-        reconfigureViewport();
+        if (desktop != null)
+          reconfigureViewport();
+      }
     } else if(scaleString.equals("Fixed Aspect Ratio")) {
-      viewer.scalingFactor.setParam("FixedRatio");
-      if (desktop != null)
-        reconfigureViewport();
+      if (!oldScaleFactor.equals("FixedRatio")) {
+        viewer.scalingFactor.setParam("FixedRatio");
+        if (desktop != null)
+          reconfigureViewport();
+      }
     } else { 
       scaleString=scaleString.substring(0, scaleString.length()-1);
-      String oldScaleFactor = viewer.scalingFactor.getValue();
-      viewer.scalingFactor.setParam(scaleString);
-      if ((desktop != null) && (!oldScaleFactor.equals("Auto") ||
-           !oldScaleFactor.equals("FixedRatio"))) {
-        reconfigureViewport();
+      if (!oldScaleFactor.equals(scaleString)) {
+        viewer.scalingFactor.setParam(scaleString);
+        if ((desktop != null) && (!oldScaleFactor.equals("Auto") ||
+            !oldScaleFactor.equals("FixedRatio"))) {
+          reconfigureViewport();
+        }
       }
     }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
_______________________________________________
Tigervnc-commits mailing list
Tigervnc-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-commits

Reply via email to