[Webkit-unassigned] [Bug 25898] [Gtk] object:text-changed events should be emitted for entries and password text

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jul 8 13:41:56 PDT 2010


--- Comment #1 from Mario Sanchez Prada <msanchez at igalia.com>  2010-07-08 13:41:56 PST ---
I was working on this bug for some time and at the end I manage to find a way that, hopefully, would make sense to allow notifying AT's when a piece of text is modified, by sending the apropriate signals, as described by Joanmarie.

What I did was basically to follow the lead of what it was done with the text-caret-moved signal for GTK, which uses a dummy function in WebCore/editing/SelectionController.h for other platforms, providing a specific implementation for GTK through a WebCore/editing/gtk/SelectionControllerGtk.h file.

Hence, after detecting that for the case of text-changed signal a11y should be notified from four commands (InsertIntoTextNode, DeleteFromTextNode, InsertNodeBefore and AppendNode), I followed the same idea and added a new notifyAccessibility() function to the header files in WebCore/editing for those four commands, implementing them through four new GTK-specific files under WebCore/editing/gtk. Most likely, you'll see some refactorization would be in place as the code in those 4 files is very similar, but at this stage (showing my patches) I preferred to keep everything separated to ease reviewing and understanding the patches.

Last, but not least, I also needed to make a couple of small changes in WebCore/edition/DeleteSelectionCommand.cpp to ensure the DeleteFromTextNodeCommand is executed always when removing a text node, so accessibility could be notified as well in that case (I found that, without this change, at some situations a11y wouldn't have a way to notice when text is deleted, e.g., when deleting all the text in a field at once).

Hence, I'm now attaching 5 patches, the first one implementing the changes in DeleteSelectionCommand.cpp I mentioned above and the other 4 implementing the modifications to each of those 4 commands: InsertIntoTextNode, DeleteFromTextNode, InsertNodeBefore and AppendNode. 

Eager to get some feedback! :-)

PS: I've run all the layout tests with and without my changes and no regressions appeared, so I feel confident this shouldn't break anything, but you know... life is unpredictable :-)

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list