www.cendio.com

Bug 6152

Summary: Web Access keyboard code is needlessly complex
Product: ThinLinc Reporter: Pierre Ossman <ossman@cendio.se>
Component: Web AccessAssignee: Pierre Ossman <ossman@cendio.se>
Status: NEW QA Contact: Bugzilla mail exporter <bugzilla-qa@cendio.se>
Severity: Normal    
Priority: P2 CC: astrand@cendio.se, samuel@cendio.se
Version: 1.3.1Keywords: upstream
Target Milestone: MediumPrio   
Hardware: PC   
OS: Unknown   
Acceptance Criteria:
Bug Depends on:    
Bug Blocks: 5135    

Description From cendio 2017-01-30 09:43:23
The HTML keyboard code is very complex and fragile, making it difficult to do
any fixes or improvements to it. It has several problems:

 a) It is overly abstracted, with a complex pipeline model even though the
steps in the pipeline are fixed. The steps aren't even independent of each
other.

 b) The code has grown organically as a series of individual fixes and lacks an
overall algorithm.

 c) Large parts of the code is there to deal with old browsers that aren't in
use and do not fulfil noVNC's other requirements anyway.

A major cleanup is needed.
------- Comment #1 From cendio 2017-01-30 10:35:36 -------
One symptom of this is that when fixing support for Unicode characters (needed
for many virtual keyboards), Enter and Backspace on IE/Edge stopped working:

https://github.com/novnc/noVNC/issues/734
------- Comment #2 From cendio 2017-02-02 15:51:03 -------
(In reply to comment #1)
> One symptom of this is that when fixing support for Unicode characters (needed
> for many virtual keyboards), Enter and Backspace on IE/Edge stopped working:
> 
> https://github.com/novnc/noVNC/issues/734

The code that caused this was reverted in r32158. 

When the PR below is merged and we are going to include it in thinlinc, we need
to revert the above commit.

https://github.com/novnc/noVNC/pull/766
------- Comment #3 From cendio 2017-02-03 13:42:31 -------
We decided to not do this right now.
------- Comment #4 From cendio 2017-02-03 13:43:11 -------
(In reply to comment #2)
> 
> https://github.com/novnc/noVNC/pull/766

This PR seems to solve most of the issues in bug 5135, reducing them to just a
handful specific things.
------- Comment #5 From cendio 2018-02-14 09:23:55 -------
The PR mentioned here has been merged upstream.