GNOME Bugzilla – Bug 519416
Zoomer loses focus when doing a web search
Last modified: 2008-04-15 20:45:11 UTC
Steps to reproduce: 1. Set up full screen magnification and center everything (pointer, cursor, etc.) 2. In FF3, navigate to google.com 3. Type a search term in the entry. Expected results: You could see what were typing. Actual results: You can't see what you're typing. (The zoomer jumps up to display the top of the window) :-( Thanks Mike for the report!
First coarse pass at GNOME 2.24 planning.
Created attachment 108684 [details] [review] revision 1 The problem is that when you're typing a new string (as opposed to editing an existing one), the character offset is at the end of the text and the character at that offset doesn't exist yet. When you ask for the extents of that non-existent character, Gecko returns (0, 0, 0, 0) and we happily try to magnify that area. One possibility is to create a solution specific to Gecko.py. BUT: Can we count on other apps giving us reasonable extents for non-existent characters? While this (apparently) hasn't been an issue, could it become one? So.... This patch does a couple of things: 1. If the caret is at the very end of the string, it asks for the extents of the previous character. 2. If we have extents of (0, 0, 0, 0) it sets (keeps) haveSomethingToMagnify to False so that we can take a stab at getting valid extents from the object that contains the caret. Because #1 impacts all applications where you can type text, I did a before-and-after comparison in OOo Writer and "push" magnification (which would be more greatly impacted by the change). Before with no edge margin: I couldn't see the caret After with no edge margin: I couldn't see the caret :-) When you add an edge margin (which most users who use "push" magnification will do anyway), I see no real difference in the before and after results. Thoughts?
As per discussion in today's team meeting, the patch has been committed both to the 2-22 branch and to trunk. Moving to pending.
As per team meeting, I'm closing this as FIXED.