Fix so that the vnc viewer properly sizes on resizes. Using the LWScrollPane from the vncviewer.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2543 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/java/src/com/tightvnc/rfbplayer/RfbPlayer.java b/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
index 7a767f1..9f7aa63 100644
--- a/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
+++ b/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
@@ -57,7 +57,8 @@
Frame vncFrame;
Container vncContainer;
- ScrollPane desktopScrollPane;
+ //ScrollPane desktopScrollPane;
+ LWScrollPane desktopScrollPane;
GridBagLayout gridbag;
ButtonPanel buttonPanel;
VncCanvas vc;
@@ -141,23 +142,26 @@
// Create a panel which itself is resizeable and can hold
// non-resizeable VncCanvas component at the top left corner.
- Panel canvasPanel = new Panel();
- canvasPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
- canvasPanel.add(vc);
+ //Panel canvasPanel = new Panel();
+ //canvasPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
+ //canvasPanel.add(vc);
// Create a ScrollPane which will hold a panel with VncCanvas
// inside.
- desktopScrollPane = new ScrollPane(ScrollPane.SCROLLBARS_AS_NEEDED);
+ //desktopScrollPane = new ScrollPane(ScrollPane.SCROLLBARS_AS_NEEDED);
+ desktopScrollPane = new LWScrollPane();
gbc.fill = GridBagConstraints.BOTH;
- gridbag.setConstraints(canvasPanel, gbc);
- desktopScrollPane.add(canvasPanel);
+ gridbag.setConstraints(vc, gbc);
+ //gridbag.setConstraints(canvasPanel, gbc);
+ desktopScrollPane.addComp(vc);
+ desktopScrollPane.setSize(dispW, dispH);
+ //desktopScrollPane.add(canvasPanel);
// Now add the scroll bar to the container.
if (inSeparateFrame) {
gridbag.setConstraints(desktopScrollPane, gbc);
vncFrame.add(desktopScrollPane);
vncFrame.setTitle(rfb.desktopName);
- vncFrame.pack();
vc.resizeDesktopFrame();
} else {
// Size the scroll pane to display size.