Project

General

Profile

action #14100

Implement ClientCutText for VNC to speed up sending text

Added by rpalethorpe almost 4 years ago. Updated about 2 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
Feature requests
Target version:
Start date:
2016-10-07
Due date:
% Done:

0%

Estimated time:
Difficulty:
Duration:

Description

Assuming the backend's VNC server supports *CutText actions we can send text more quickly using the ClientCutText message: https://tools.ietf.org/html/rfc6143#section-7.5.6

Control flow:

  1. Test case calls type_string or perhaps a new call like paste_string
  2. Check the guest is in a state which supports the clipboard
  3. Check the string for any none latin characters or control codes which may break the operation
  4. Send ClientCutText message in VNC.pm
  5. Send the appropriate key sequence to perform paste/yank

Similarly ServerCutText can be used to send text in the opposite direction, if the test writer can reliably copy text to the clipboard.

Potential problems:

  • The backends may not support the *CutText operations
  • It may require a daemon to be running on the guest OS
  • Not all software supports the clipboard.

Advantages:

  • Faster
  • Won't drop keypresses
  • May work in most situations

I will investigate further if other attempts to speed up text input are not adequate.

History

#1 Updated by coolo almost 4 years ago

This is the client_cut_text function in qemu in full length:

static void client_cut_text(VncState *vs, size_t len, uint8_t *text)
{
}

#2 Updated by rpalethorpe almost 4 years ago

  • Status changed from New to Rejected

coolo wrote:

This is the client_cut_text function in qemu in full length:

static void client_cut_text(VncState *vs, size_t len, uint8_t *text)
{
}

OK, I will close this for now, it doesn't look well supported in the virtualization domain.

#3 Updated by okurz about 2 years ago

  • Target version changed from future to future

Also available in: Atom PDF