After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 416857 - Entering Firefox dialogs/panels interferes with caret position
Entering Firefox dialogs/panels interferes with caret position
Status: RESOLVED FIXED
Product: orca
Classification: Applications
Component: general
2.17.x
Other Linux
: Normal normal
: ---
Assigned To: Willie Walker
Orca Maintainers
Depends on:
Blocks: 404403
 
 
Reported: 2007-03-10 18:23 UTC by Joanmarie Diggs (IRC: joanie)
Modified: 2007-03-14 21:55 UTC
See Also:
GNOME target: ---
GNOME version: 2.17/2.18


Attachments
Patch to look at newLocusOfFocus instead of event.source in locusOfFocusChanged (833 bytes, patch)
2007-03-14 15:54 UTC, Willie Walker
none Details | Review
debug.out from using the patch (637.40 KB, text/plain)
2007-03-14 16:05 UTC, Joanmarie Diggs (IRC: joanie)
  Details
Patch to fix stupid mistake. (838 bytes, patch)
2007-03-14 16:23 UTC, Willie Walker
committed Details | Review

Description Joanmarie Diggs (IRC: joanie) 2007-03-10 18:23:47 UTC
Steps to reproduce:
1. Launch Orca
2. Launch Firefox 3
3. Navigate to a page, then navigate within that page.
4. Get into the Open dialog (File->Open) then press Escape
5. Resume navigation in the page.

Actual Results:  Orca will start at the top of the page rather than resume at the location where the user had been prior to getting into the Open dialog.

Expected Results:  The caret position would not be affected as a result of getting into the Open dialog box.

Other notes:  This also happens when getting into and then out of the History panel (View->Sidebar->History)
Comment 1 Willie Walker 2007-03-14 15:54:49 UTC
Created attachment 84579 [details] [review]
Patch to look at newLocusOfFocus instead of event.source in locusOfFocusChanged

I think the Gecko.py:locusOfFocusChanged method might be erroneously looking at event.source instead of newLocusOfFocus.  This patch seems to fix the problem.  Joanie, can you please verify?
Comment 2 Joanmarie Diggs (IRC: joanie) 2007-03-14 16:05:51 UTC
Created attachment 84581 [details]
debug.out from using the patch

This patch works, but we get an error:

[...]
  • File "/usr/lib/python2.5/site-packages/orca/Gecko.py", line 1456 in locusOfFocusChanged
    caretOffset = newLocusOfFocus.caretOffset
  • File "/usr/lib/python2.5/site-packages/orca/atspi.py", line 1348 in __getattr__
    return self.__dict__[attr]
KeyError: 'caretOffset'

Full debug.out attached.
Comment 3 Willie Walker 2007-03-14 16:23:08 UTC
Created attachment 84582 [details] [review]
Patch to fix stupid mistake.

Oops!  I forgot to add the .text reference in.
Comment 4 Joanmarie Diggs (IRC: joanie) 2007-03-14 16:31:11 UTC
Still works, but....

Traceback (most recent call last):
  • File "/usr/lib/python2.5/site-packages/orca/Gecko.py", line 2068 in getCharacterOffsetInParent
    return obj.characterOffsetInParent
  • File "/usr/lib/python2.5/site-packages/orca/atspi.py", line 1348 in __getattr__
    return self.__dict__[attr]
KeyError: 'characterOffsetInParent'

Comment 5 Willie Walker 2007-03-14 16:37:50 UTC
Oh...that.  I think it might be YAFFB.  Here's the comment from the code:

            # If this is issued, something is broken in the AT-SPI
            # implementation.
            #
            debug.printException(debug.LEVEL_SEVERE)
            return -1

Rather than swallowing the garbage I think we might be getting from FF, I wanted to make sure I had something in there to remind us to spit it out and log a bug against them if we ran into this situation.


(In reply to comment #4)
> Still works, but....
> 
> Traceback (most recent call last):
>   File "/usr/lib/python2.5/site-packages/orca/Gecko.py", line 2068, in
> getCharacterOffsetInParent
>     return obj.characterOffsetInParent
>   File "/usr/lib/python2.5/site-packages/orca/atspi.py", line 1348, in
> __getattr__
>     return self.__dict__[attr]
> KeyError: 'characterOffsetInParent'
> 

Comment 6 Joanmarie Diggs (IRC: joanie) 2007-03-14 21:01:08 UTC
I can no longer reproduce this problem.  The patch works period. :-)
Comment 7 Willie Walker 2007-03-14 21:10:55 UTC
Thanks!  Committed and closing as FIXED.