Re: G-I - Test results for mini.iso based on 2.8.18 libs
Frans Pop wrote:
On Monday 03 July 2006 23:21, Attilio Fiandrotti wrote:
Nothing wrong, that's the correct behaviour of GTK+ applications : in
SVN rev 38009 i set reactivity to <ENTER> and <SPACEBAR> and double
clicks as pressure on "OK" button for the handler of SELECT questions
only, while MULTISELECT (and SELECT questions which are displayed like
trees) weren't affected : tomorrow i'll investigate about how to fix
IMHO the "correct" GTK behavior is broken then...
I'd personally prefer to have the frontend behave like the newt frontend
in this respect, but I guess that is something to discuss with the team.
I'd certainly appreciate it if you would not change such behavior without
discussing it first on the list.
regarding single MULTISELECT questions, the simple (one line) attached
patch makes the question handler behave like this
-If a checkbox inside a row has focus (small circle around it with many
common GTK themes of GTK default theme) <ENTER> or <SPACE> key pressure
toggles the check and, to go forward, the user has to TAB until the "OK"
button receives the focus and then he can use <ENTER> or <SPACE> to
-If no checkbox has focus, then an <ENTER> or <SPACE> key pressure
activates the "OK" buton while no check is toggled.
When a MULTISELECT question is first displayed, the iterator is placed
at the first row and no check has focus, so that if the user presses
<ENTER> or <SPACE> the "OK" button is activated.
When user presses <UP> or <DOWN>, the checkbox in the line over / below
the currently active one gets focus.
In any case, a double click on a row (outside checkboxes) makes the "OK"
button to be activated.
--- gtk.c (revisione 38698)
+++ gtk.c (copia locale)
@@ -751,6 +751,7 @@
data->treemodel = model;
g_signal_connect(G_OBJECT(renderer_check), "toggled", G_CALLBACK(multiselect_single_callback), data);
g_signal_connect (G_OBJECT(view), "destroy", G_CALLBACK (free_treemodel_data), data);
+ g_signal_connect (G_OBJECT(view), "row-activated", G_CALLBACK (select_onRowActivated), (struct frontend_data *) obj->data);
for (i = 0; i < count; i++)