Bug 473757

Summary: PrintPreviewControl in PrintPreviewDialog does not receive focused state
Product: [Mono] UI Automation Reporter: Brian Merrell <bgmerrell>
Component: Winforms - GeneralAssignee: E-mail List <mono-a11y-bugs>
Status: NEW --- QA Contact: E-mail List <mono-a11y-qa>
Severity: Normal    
Priority: P2 - High    
Version: Release 1.0   
Target Milestone: Release 1.1   
Hardware: All   
OS: Linux   
Whiteboard:
Found By: Integration Test Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: script referenced in the REPRO section above

Description Brian Merrell 2009-02-09 03:59:34 UTC
PROBLEM STATEMENT

The PrintPreviewDialog contains a PrintPreviewControl (which is the big panel at the bottom that contains the actual preview of what will be printed).  The problem is that the PrintPreviewControl panel does not receive the focused state when using pyatspi to open the PrintPreviewDialog and then click on the PrintPreviewControl panel.

REPRO

1.  Run Accerciser, open the "Interface Viewer" tab, and expand the
    "Accessible" expander
2.  Run uia2atk/test/samples/printpreviewdialog.py
3.  Run the attached script, which does the following:
    1.  Clicks on the "PrintPreviewDialog" button, which opens the 
        PrintPreviewDialog window.
    2.  Clicks on the PrintPreviewControl panel in the PrintPreviewDialog
        window.
    3.  Prints the states of the PrintPreviewControl panel
4.  Notice the states in Accerciser's interface viewer tab

RESULTS

The "focused" state is not present for the PrintPreviewControl panel

EXPECTED RESULTS

The "focused" state should be present for the PrintPreviewControl panel.  This expected result has been confirmed by UISpy in Windows.

COMMENTS

Okay, there is definitely some weirdness going on here, and I'm not sure if it is our fault or not.  First of all, after running the attached script, the PrintPreviewControl panel will receive the focused state if you click on another window and *then* return to the "PrintPreviewDialog" window (just by clicking on the title bar, don't click on the PrintPreviewControl panel again as it will skew the test).  You can verify this in Accerciser's interface viewer.

Now things get even weirder... If the user manually performs the steps in the script, then the problem does not exist, i.e., the PrintPreviewControl panel gets the "focused" state as expected.  Additionally, even if the only performs the first step in the script (which opens the PrintPreviewDialog window), and then executes only the second portion of the script (by commenting out lines 11-17), then the problem also doe *not* exist.
Comment 1 Brian Merrell 2009-02-09 04:00:30 UTC
Created attachment 271087 [details]
script referenced in the REPRO section above
Comment 2 Brad Taylor 2009-03-04 15:30:29 UTC
Focus is critical for ATs.
Comment 3 Brad Taylor 2009-03-04 16:13:23 UTC
This appears to be a dupe of #465945

*** This bug has been marked as a duplicate of bug 465945 ***
Comment 4 Brian Merrell 2009-03-19 22:39:23 UTC
Not a dupe of 465945.  Also, please read the COMMENTS carefully.
Comment 5 Brian Merrell 2009-03-19 22:44:10 UTC
btw, I didn't mean COMMENTS in a yelling way, I meant COMMENTS like the all-caps heading in the bug description :)