GNOME Bugzilla – Bug 107528
Menu keynav is backwards in RTL env
Last modified: 2011-02-04 16:16:03 UTC
In RTL, keynav is backwards. <left> moves right, <right> moves left, etc. Should be reversed.
Updating status_whiteboard field to reflect A11Y team's assessment of accessibility impact.
Not really sure how is best to do this ... maybe just install the key bindings backwards for the menus if gtk_widget_get_default_direction() is RTL. This won't handle change-on-the-fly of widget direction, but practically speaking, that's not going to happen in real uses, just in testgtk. The "clean" way to do it would probably to allow separate RTL and LTR binding sets to be installed for a GtkWidget class - extend:; GtkBindingSet* gtk_binding_set_by_class(gpointer object_class); to take a GtkTextDirection parameter. Shouldn't be that hard to implement, but seems like a bit of overkill. Or, going in the unclean direction, you could simply make GtkMenu interpret GTK_MENU_DIR_PARENT and GTK_MENU_DIR_CHILD backwards in RTL mode, but that seems like a real mess to me.
*** Bug 113976 has been marked as a duplicate of this bug. ***
Changing on the fly will happen in real world usages. I need to support per worksheet (somewhat like notebook a tab) directionality in gnumeric.
I don't think it's sensible to flip the auxilliary UI elements - it's going to be very strange of the auxilliary UI elements don't follow the message language.
Apologies for spam... marking as GNOMEVER2.3 so it appears on the official GNOME bug list :)
Here is the "real mess" approach. Note the extra hack of also flipping prev and next for menubars. Works nicely.
Created attachment 21510 [details] [review] patch