Bug 178557 - [Forms] MSAA problems with FormText - Tabstop without Focus
Summary: [Forms] MSAA problems with FormText - Tabstop without Focus
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: User Assistance (show other bugs)
Version: 3.3   Edit
Hardware: PC Windows XP
: P2 major (vote)
Target Milestone: 3.4 M2   Edit
Assignee: Adam Archer CLA
QA Contact:
URL:
Whiteboard:
Keywords: contributed
Depends on:
Blocks:
 
Reported: 2007-03-21 10:45 EDT by Michael Burkhart CLA
Modified: 2008-07-02 18:05 EDT (History)
6 users (show)

See Also:
agarcher: review? (dejan)


Attachments
Picture of Scan for Updates MSAA data that is incorrect (69.42 KB, image/pjpeg)
2007-03-21 10:48 EDT, Michael Burkhart CLA
no flags Details
DefaultAction value in MSAA viewer (98.68 KB, image/pjpeg)
2007-03-21 10:50 EDT, Michael Burkhart CLA
no flags Details
Example of a good url/link DefAction value. (67.20 KB, image/pjpeg)
2007-03-21 10:50 EDT, Michael Burkhart CLA
no flags Details
patch for problem 1 (2.78 KB, patch)
2007-08-03 10:08 EDT, Adam Archer CLA
no flags Details | Diff
patch (1.16 KB, patch)
2007-08-15 17:32 EDT, Adam Archer CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Burkhart CLA 2007-03-21 10:45:12 EDT
When executing our product accessibility testing using the Inspect32 MSAA viewer the following problems were discovered on the Update Manager Product Configuration Dialog.

(1) When tabbing through the screen there is a tab stop on the description in the panel on the right ("This is the description ...." ) but it does not get focus.

(2) When tabbing through and the Scan for Updates link is reached, it shows a value of Role: Editable Text, rather than Role: link as expected and as shown by all other links on this page.

(3) All links in the right hand panel show DefAction: as none, but we believe that they should show DefAction as "Press"

I am sorry for including all of these in the same bugzilla record, but since they are all so closely related I was hoping to save developer time. If some of these are completed different separate bugzilla records should certainly be opened.

Since these are seen as accessibility issues for our product I am marking the severity as Major.

I will include a few screen shots as well to help illustrate what we are seeing.
Comment 1 Michael Burkhart CLA 2007-03-21 10:48:52 EDT
Created attachment 61551 [details]
Picture of Scan for Updates MSAA data that is incorrect
Comment 2 Michael Burkhart CLA 2007-03-21 10:50:19 EDT
Created attachment 61554 [details]
DefaultAction value in MSAA viewer
Comment 3 Michael Burkhart CLA 2007-03-21 10:50:52 EDT
Created attachment 61555 [details]
Example of a good url/link DefAction value.
Comment 4 Philipe Mulet CLA 2007-03-26 05:21:24 EDT
Are we doing this for 3.3 ?
Comment 5 Philipe Mulet CLA 2007-03-27 05:15:30 EDT
Note: if we do anything here, pls record a 3.3 patch, and a risk assessment for a 3.2.2 backport.
Comment 6 Dejan Glozic CLA 2007-04-04 14:11:03 EDT
This is UI Forms (more precisely, FormText widget).

This has been a regular complaint - we should see if we can do something for 3.3 here.
Comment 7 Philipe Mulet CLA 2007-04-06 05:35:02 EDT
Thx, pls set the target accordingly.
Comment 8 Philipe Mulet CLA 2007-04-23 07:29:52 EDT
Priority lowered, could be deferred until 3.4.
Comment 9 Philipe Mulet CLA 2007-04-27 04:17:45 EDT
Chris - are you still targetting 3.3M7 ?
Comment 10 Chris Goldthorpe CLA 2007-04-27 10:22:58 EDT
I'm out of time in M7, this bug could take a few days as there are three separate problems in it. Will try for RC1.
Comment 11 Chris Goldthorpe CLA 2007-05-08 19:30:30 EDT
I have fixes for problems 2 and 3. To make it easier to follow the approvals process required for RC1 I have created a Bug 186053 to track the problems I can fix now. This bug now only tracks problem 1.

Problem 1 (tab stop but no focus)is a little harder to fix than the other two. I will look into it some more since it is related to some other forms bugs relating to focus but I will fix problem 1 for Eclipse 3.3 only if I have a low risk fix.
Comment 12 Chris Goldthorpe CLA 2007-05-10 11:05:29 EDT
Two of the three problems (2 and 3) are resolved, see Bug 186053. I am not going to be able to fix problem 1 for RC1 and would like to defer this. Removing the target milestone.
Comment 13 Chris Goldthorpe CLA 2007-05-16 16:35:41 EDT
Targeting Eclipse 3.4.
Comment 14 Chris Goldthorpe CLA 2007-07-11 17:44:04 EDT
Reassigning my forms bugs to Adam
Comment 15 Adam Archer CLA 2007-08-03 10:08:43 EDT
Created attachment 75333 [details]
patch for problem 1

This patch changes the description from a Text widget to a FormText. In order to do this it was necessary to add a method to FormText that returns a String with its contents (for the purpose of Section#getDescription()). The method FormText#getAccessibleText() has been added which simply returns the result of FormTextModel#getAccessibleText().

Also modified FormText#handleFocusChange() to ensure that focus is passed to a sibling when there are no focusable items.
Comment 16 Adam Archer CLA 2007-08-03 10:10:05 EDT
Michael, does this patch resolve the remaining issue for you?

Dejan, can you review?
Comment 17 Dejan Glozic CLA 2007-08-14 13:38:28 EDT
Adam, adding a protected method to FormText qualifies at API. You need to add Javadoc and fully document it according to the API rules. Also remove the System.out.println from 'setDescription()'. I would have removed it myself but since you need to also add API, you should do it in the next patch.
Comment 18 Adam Archer CLA 2007-08-15 17:32:08 EDT
Created attachment 76164 [details]
patch

I misunderstood the bug before. Please disregard that last patch.   :|

This patch fixes the problem by adding a call to setFocusToNextSibling(...) when the FormText has no focusable segments. Since the next sibling in this case is also a FormText, this fix actually revealed a problem in which a programmatic call to FormText#setFocus() was not focusing on the first segment.

This problem is fixed as well by removing code that sets FormText#mouseFocus to true for a portion of the setFocus() method. This code was added as part of a fix to bug 95612 and removing it does not cause the bug to reoccur.

Additional testing on forms clients has not revealed any other regressions caused by removing the code.
Comment 19 Dejan Glozic CLA 2007-08-16 12:19:18 EDT
Committed to HEAD - that's #2 :-).
Comment 20 Adam Archer CLA 2007-08-16 12:23:42 EDT
Marking as FIXED.
Comment 21 Chris Goldthorpe CLA 2007-09-12 14:08:29 EDT
Setting milestone.
Comment 22 Adam Archer CLA 2008-07-02 18:05:55 EDT
This fix caused a regression. See bug 236735.

For 3.5M1, the default behaviour has been changed back to allow focus without painting it. In order to work around the problem, FormText now supports the SWT.NO_FOCUS style bit which will prevent it from receiving focus in all cases.

We are also considering adding support for another style bit which would cause FormText to actually render its focus. See bug 236739.