Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://twitter.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

CAPS LOCK HANDLING

Any features you would like to see in UltraVNC? Propose it here
Post Reply
aminxyzx
Posts: 3
Joined: 2006-06-25 15:10

CAPS LOCK HANDLING

Post by aminxyzx »

If Local Keyboard CAPS LOCK is OFF then all the keys are sent the way they are supposed to. However, if local keyboard CAPS LOCK is turned ON, all keys are sent to the host as if CAPS LOCK is still OFF but the SHIFT key is pressed with every key stroke. This is not an issue with regular (non-special) keys because it simply becomes upper case, i.e., same effect as if CAPS LOCK was ON. However, issue arises with special key combinations. For example if CAPS LOCK is ON and "CTRL+F" is pressed (As in MS Word "Find" shortcut key), what the host gets is "CTRL+SHIFT+F". This causes a totally different effect! This is just one example out of huge number of possibilities. Currently the work around is to keep CAPS LOCK OFF as much as possible, especially if special key combinations are used. However, that is a difficult habit to develop and undevelop!

I think either this should be fixed in hard coding of the software or the user be provided an option in settings as to how do they want the CAPS LOCK behavior to be handled by UltraVNC: Either as it is OR transmit CAPS LOCK status and then transmit the keys as they are with the addition of SHIFT KeyPress event!
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6832
Joined: 2004-04-23 10:21
Contact:

Re: CAPS LOCK HANDLING

Post by Rudi De Vos »

Vnc don't send SHIFT OR CAPLOCK.

It send the actual char "E", then the keyboard engine on the remote translate this as shift+e.
The reason for this is that you need to be able to support international keyboards.

US: 1 shifted !
FR: ! shifted 8

If remote is US and local is FR, sending "!" need to be translated
to 1+shift, "!" key does not exist in the US layout. The only way of doing is is by sending the "!" char and let the remote PC make his own translation via his keyboard engine.

What you propose will only work between two == keyboard layouts.
irishmon
Posts: 1
Joined: 2006-08-04 16:20

Re: CAPS LOCK HANDLING

Post by irishmon »

I have had several cases where I VNC into another PC, WinXP, with CAPS LOCK activated on the remote pc. The only work around I have found is to reboot the pc, then wait a couple minutes and re-logon to the remote pc when it has booted with CAPs off. I noticed there is a send special character option in the ultra vnc. Is there any way you can send the CAPS LOCK special character, if there is one, to the remote host?

Thanks.
DrFalken07732
Posts: 2
Joined: 2006-08-22 18:59
Location: Middletown Area, NJ, USA
Contact:

Re: CAPS LOCK HANDLING

Post by DrFalken07732 »

There is a problem between the Viewer and Server PCs when the Server PC has the CAPS Lock On. For example, I wish to send the letters "xixi" to a windows login password prompt (no other program available to toggle CAPS LOCK). When I enter "xixi" at the viewer PC the server PC receives "XIXI". If I enter SHIFT "xixi" the server PC still receives (or translates) it as "XIXI". I tried CAPS LOCK ON on the viewer PC and sent "XIXI" and the login worked. For some reason the UltraVNC 1.0.2 server processing, BIOS keyboard scan code translation and O/S Interpertation allow it to work this way.


I recommend the addition of a status panel showing the status of CAPS, NUM, INSERT and SCROLL locks of the server PC with the ability to toggle them. I notice the ability to toggle some of these exsits now, I think a status pannel and click to toggle would be nice. The link below has some code that probably could be adapted to accomplish this.

http://www.codeguru.com/code/legacy/ric ... atesrc.zip
oh dear
Posts: 1
Joined: 2007-10-26 18:29

Re: CAPS LOCK HANDLING

Post by oh dear »

irishmon wrote:I have had several cases where I VNC into another PC, WinXP, with CAPS LOCK activated on the remote pc. The only work around I have found is to reboot the pc, then wait a couple minutes and re-logon to the remote pc when it has booted with CAPs off. I noticed there is a send special character option in the ultra vnc. Is there any way you can send the CAPS LOCK special character, if there is one, to the remote host?

Thanks.
This happened to me recently and I used the on screen keyboard programme to turn it off. Accessories - Accessibility - On Screen Keyboard.

Worked for me
ro0ter
Posts: 4
Joined: 2008-09-29 12:22

Re: CAPS LOCK HANDLING

Post by ro0ter »

why can`t one just send keys as they are pressed?

for example send a CONTROL_DOWN event, a SHIFT_DOWN event etc

in my opinion the current special key handling is extremely dumb. I mean guess what: I am inside Notepad++ or SciTE and I press CTRL+Z or CTRL+D ..... or what-so-ever key combination and unfortunately I see only SUB and EOT....

an other thing: isn`t anyone disturbed by the "ding" sound that the vnc viewer spits on any key combination like ALT+_ ? When accessing a window menu inside uvncviewer the vncviewer DINGS because it has no such menu. Same thing for ALT+SPACE -> vncVIEWER traps it and gains focus (but the key event also goes to the remote machine).

Can`t someone just create an option to allow choosing this keyboard send mode? I mean under a mode the keys are sent like they are sent now and under an other mode the keys are send via keypress and keydepress events (not only the special keys, but all the keyboard... wondering what effect could this have if the viewer sends LCTRL_DOWN event and then KEY_N_DOWN event).

Also, I was wondering if the "special key capture" mode could be driven not by scroll lock but like in VMWARE --- CTRL+G grab input devices and CTRL+ALT - release input devices (or some other key combination to be displayed in statusbar)

For the keyboard indicators - it would be VERY nice to have them on the local keyboard, not under some gui component.

BTW: didn`t anyone modified the code so far? I mean I would like to try to modify it but I don`t think I am so good with UVNC code...
plouf
20
20
Posts: 35
Joined: 2007-06-04 23:56
Location: Ilion,Athens,Greece

Re: CAPS LOCK HANDLING

Post by plouf »

ro0ter wrote:why can`t one just send keys as they are pressed?

for example send a CONTROL_DOWN event, a SHIFT_DOWN event etc

in my opinion the current special key handling is extremely dumb. I mean guess what: I am inside Notepad++ or SciTE and I press CTRL+Z or CTRL+D ..... or what-so-ever key combination and unfortunately I see only SUB and EOT....
1+ for me

this behaviour complety mess up multilingua keyboards too....
if compatibility with "VNC 3.3" is the issue maybe an extra option can be added to server like "send raw keys (only supported in ultravnc)"
ket_n13
Posts: 1
Joined: 2012-05-10 17:16

Re: CAPS LOCK HANDLING

Post by ket_n13 »

I am using ubuntu through uVNC and I found that login to your ubuntu once using local caps lock on (which is caps lock off on remote) and then on the remote terminal type
'onboard' that will bring out onscreen keyboard. Click on caps lock button there and then you get everything you want.
MAB
Posts: 5
Joined: 2013-02-13 12:31
Location: Lisboa/Portugal

Re: CAPS LOCK HANDLING

Post by MAB »

I second this request.

I had this problem several times, and always had to use the onscreen keyboard. If ultravnc had this option would save me a few clicks.

Thanks againg for this great program.
Tommytdrx
Posts: 1
Joined: 2014-04-27 06:10

Re: CAPS LOCK HANDLING

Post by Tommytdrx »

I noticed this issue and the version I have of uVNC had a button to send a custom key. I held the caps lock key and pressed send and it worked for me. So, if anyone else comes here I suggest trying that.
Post Reply