Hi Caolán,

     I'm working on part of this bug: 
https://bugs.freedesktop.org/show_bug.cgi?id=71764. Main problem is that the 
'Help' and the 'Extensions' buttons on the Start Center are in different 
GtkBoxes and so arrow key traversal doesn't work between them. Nested GtkBoxes 
are necessary for special effect (thin border around the buttons) which I can't 
replace with a working solution with the same appearance.
    So I tried to find a way to solve this problem:
        - First I found a "group" property with which arrow key traversal can 
be specified explicitly but it just work for RadioButtons. Maybe it can be 
extend to other buttons, but RadioButton groups has a special meaning (only one 
item of the group is enabled), so I'm not sure it make any sense for other type 
of buttons.
        - Second I pick up "member_of" property and 
Window::SetAccessibleRelationMemberOf() method which is used not for only 
RadioButtons but for other elements too. For example: 
http://opengrok.libreoffice.org/xref/core/cui/source/dialogs/hlinettp.cxx#93 
(an image button related with a fixed text). So this property can use for other 
UI elements, but this relation doesn't affect the arrow key traversal. So 
secondly that came in my mind to modify the corresponding Window::ImplDlgCtrl() 
method to take account of member_of relation in case of arrow keys.
        - The third and simplest one to override BackingWindow::Notify() method 
(BackingWindow implements of Start Center) and handle arrow keys. I can keep at 
this third solution, but maybe the need of adding groups is not a unique 
problem.

    So I'd like to ask some suggestions about what would be the best way to fix 
this bug, in your opinion.


Thanks,
Tamás 
_______________________________________________
LibreOffice mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to