Accepting request 226467 from home:michalsrb:branches:X11:XOrg

- Update HTML page that serves vnc client applet. (bnc#867273)
- u_tigervnc-dont-send-ascii-control-characters.patch
  * Send CTRL+[A-Z] combinations instead of ascii control characters.
    (bnc#864666)

OBS-URL: https://build.opensuse.org/request/show/226467
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/tigervnc?expand=0&rev=19
This commit is contained in:
Michal Srb 2014-03-17 14:34:08 +00:00 committed by Git OBS Bridge
parent d2b4e99566
commit 6eb478ebc4
5 changed files with 61 additions and 3 deletions

21
index.vnc Normal file
View File

@ -0,0 +1,21 @@
<!--
index.vnc - default HTML page for TigerVNC Java viewer applet, to be
used with Xvnc. On any file ending in .vnc, the HTTP server embedded in
Xvnc will substitute the following variables when preceded by a dollar:
USER, DESKTOP, DISPLAY, APPLETWIDTH, APPLETHEIGHT, WIDTH, HEIGHT, PORT,
Use two dollar signs ($$) to get a dollar sign in the generated
HTML page.
-->
<HTML>
<TITLE>
$USER's $DESKTOP desktop ($DISPLAY)
</TITLE>
<APPLET CODE="com.tigervnc.vncviewer.VncViewer" ARCHIVE="VncViewer.jar" WIDTH="$APPLETWIDTH" HEIGHT="$APPLETHEIGHT">
<PARAM NAME="Port" VALUE="$PORT">
<PARAM NAME="Embed" VALUE="true">
<PARAM NAME="AlwaysShowServerDialog" VALUE="false">
</APPLET>
<BR>
<A href="http://www.tigervnc.org/">TigerVNC site</A>
</HTML>

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Mon Mar 17 13:47:18 UTC 2014 - msrb@suse.com
- Update HTML page that serves vnc client applet. (bnc#867273)
- u_tigervnc-dont-send-ascii-control-characters.patch
* Send CTRL+[A-Z] combinations instead of ascii control characters.
(bnc#864666)
-------------------------------------------------------------------
Mon Feb 24 14:42:50 UTC 2014 - msrb@suse.com

View File

@ -92,6 +92,7 @@ Source6: vnc-httpd.firewall
Source7: vnc_inetd_httpd
Source8: vnc.reg
Source9: vncpasswd.arg
Source10: index.vnc
# Tiger vnc patches
Patch1: u_tigervnc-1.3.0-fix-use-after-free.patch
@ -99,6 +100,7 @@ Patch2: tigervnc-newfbsize.patch
Patch3: tigervnc-clean-pressed-key-on-exit.patch
Patch4: tigervnc-sf3492352.diff
Patch5: tigervnc-sf3495623.patch
Patch6: u_tigervnc-dont-send-ascii-control-characters.patch
# Xserver patches
Patch10: tigervnc-1.2.80-fix-int-to-pointer.patch
@ -136,6 +138,7 @@ fi
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p0
pushd unix/xserver
patch -p1 < ../xserver113.patch
@ -189,7 +192,6 @@ popd
pushd java
mkdir -p $RPM_BUILD_ROOT%{_datadir}/vnc/classes
install -m755 VncViewer.jar $RPM_BUILD_ROOT%{_datadir}/vnc/classes
install -m644 com/tigervnc/vncviewer/index.vnc $RPM_BUILD_ROOT%{_datadir}/vnc/classes
popd
install -D -m 644 %{SOURCE3} $RPM_BUILD_ROOT/etc/xinetd.d/vnc
@ -201,6 +203,7 @@ install -D -m 644 %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/servi
install -D -m 755 %{SOURCE7} $RPM_BUILD_ROOT%{_bindir}/vnc_inetd_httpd
install -D -m 644 %{SOURCE8} $RPM_BUILD_ROOT/etc/slp.reg.d/vnc.reg
install -D -m 755 %{SOURCE9} $RPM_BUILD_ROOT%{_bindir}/vncpasswd.arg
install -D -m 644 %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/vnc/classes
%find_lang '%{name}'

View File

@ -0,0 +1,24 @@
Author: Michal Srb <msrb@suse.com>
Subject: Do not send ascii control characters for CTRL+[A-Z] combinations.
Patch-Mainline: To be upstreamed
References: bnc#864666
Index: vncviewer/Viewport.cxx
===================================================================
--- vncviewer/Viewport.cxx (revision 5162)
+++ vncviewer/Viewport.cxx (working copy)
@@ -753,7 +753,13 @@
return XK_VoidSymbol;
}
- ucs = fl_utf8decode(keyText, NULL, NULL);
+ if (keyCode >= 'a' && keyCode <= 'z' && keyText[0] < 0x20) {
+ // Do not send ascii control characters - send the original key combination that caused them.
+ ucs = keyCode;
+ } else {
+ ucs = fl_utf8decode(keyText, NULL, NULL);
+ }
+
return ucs2keysym(ucs);
}

View File

@ -23,8 +23,10 @@ case "$url" in
content="
<HTML><HEAD><TITLE>Remote Desktop</TITLE></HEAD>
<BODY>
<APPLET CODE=VncViewer.class ARCHIVE=VncViewer.jar WIDTH=$width HEIGHT=$height>
<param name=PORT value=$port>
<APPLET CODE=\"com.tigervnc.vncviewer.VncViewer\" ARCHIVE=\"VncViewer.jar\" WIDTH=\"$width\" HEIGHT=\"$height\">
<PARAM name=\"Port\" value=\"$port\">
<param name=\"Embed\" value=\"true\">
<param name=\"AlwaysShowServerDialog\" value=\"false\">
</APPLET>
</BODY></HTML>"
;;