Bug 280157 - [HTML 4.01 conformance] tabindex attribute specification, tabbing navigation and text field inputs with 'display: none'
Summary: [HTML 4.01 conformance] tabindex attribute specification, tabbing navigation ...
Status: RESOLVED UNMAINTAINED
Alias: None
Product: konqueror
Classification: Applications
Component: khtml (show other bugs)
Version: 4.7.4
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-15 20:59 UTC by Gérard Talbot (no longer involved)
Modified: 2024-05-06 18:39 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gérard Talbot (no longer involved) 2011-08-15 20:59:25 UTC
Version:           4.7.0 (using KDE 4.7.0) 
OS:                Linux

Descendant elements of an element with 'display: none' do not generate any boxes; the element with 'display: none' and its content are removed from the formatting structure entirely. Therefore, descendants of an element with 'display: none' should not be reachable with tab key even if they have a tabindex attribute specification.

Original webpage where the problem occurs
-----------------------------------------
http://www.icab.de/test.html


Relevant chunk of code involved
-------------------------------

  <table>
   <tr><td>1:</td><td><input tabindex="1" size="5" value="A"></td><td>4:</td><td><input tabindex="4" size="5"></td><td>3:</td><td><input tabindex="3" size="5"></td></tr>
   <tr><td>2:</td><td><input tabindex="2" size="5"></td><td>6:</td><td><input tabindex="6" size="5"></td><td>5:</td><td><input tabindex="5" size="5"></td></tr>
  </table>

  <table style="display: none;">
   <tr><td>1:</td><td><input tabindex="1" size="5"></td><td>4:</td><td><input tabindex="4" size="5"></td><td>3:</td><td><input tabindex="3" size="5"></td></tr>
   <tr><td>2:</td><td><input tabindex="2" size="5"></td><td>6:</td><td><input tabindex="6" size="5"></td><td>5:</td><td><input tabindex="5" size="5"></td></tr>
  </table>

The text field inputs of the table with 'display: none' should not be reachable with tab keyboard.


Reduced self-explanatory testcase
---------------------------------
http://www.gtalbot.org/BrowserBugsSection/Konqueror4Bugs/tabindex-display-none.html

Reproducible: Always

Steps to Reproduce:
1- Load
http://www.gtalbot.org/BrowserBugsSection/Konqueror4Bugs/tabindex-display-none.html

2- Click into the first text field and then press the tab key 5 times

Actual Results:  
The text field input 2 does not have focus after 1 tab key.
The text field input 5 does not have focus after 4 tab key.
The text field input 4 has focus after 5 tab key.

Expected Results:  
The text field input 2 should have focus after 1 tab key.
The text field input 5 should have focus after 4 tab key.
The text field input 6 should have focus after 5 tab key.

Internet Explorer 8, Firefox 5.0, Opera 11.50, Chrome 13.0.782.112 and Safari 5.1 pass this test.

Konqueror 4.7.0 fails this test.

I am using
KDE Platform Version: 4.7.0
Konqueror version: 4.7.0 (KHTML rendering engine)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-11-generic-pae i686 (32bits)
Distribution: Kubuntu 11.04
here.

regards, Gérard
Comment 1 Gérard Talbot (no longer involved) 2012-01-13 06:38:16 UTC
Konqueror 4.7.4 (KHTML rendering engine)

Component: tabbing 

CONFIRMING
Comment 2 Dawit Alemayehu 2012-01-19 07:23:42 UTC
(In reply to comment #1)
> Konqueror 4.7.4 (KHTML rendering engine)
> 
> Component: tabbing 
> 
> CONFIRMING

Completely wrong component! The "tabbing" component implies window tabs not keyboard navigation on an HTML document. This bug report is about keyboard tab order on html pages and the issue only affects the khtml browser engine and as such needs to be reported against it.
Comment 3 Christoph Cullmann 2024-05-06 18:39:17 UTC
Dear user,

KHTML (and KJS) was a long time more or less unmaintained and got removed in KF6.

Please migrate to use a QWebEngine based HTML component.

We will do no further fixes or improvements to the KF5 branches of these components beside important security fixes.

For security issues, please see:

https://kde.org/info/security/

Sorry that we did not fix this issue during the life-time of KHTML.

Greetings
Christoph Cullmann