С трудом родил такой вариант:
void grab_focus(GtkWidget *w){
gtk_editable_select_region(GTK_EDITABLE(w), 0, -1);
}
/* ... */
g_signal_connect(G_OBJECT(w),"grab-focus",(GCallback)grab_focus,NULL);
Но он работает, только если переходить в поле ввода tab'ом. Если щелчком мыши - текст выделяется на мгновение, а потом курсор устанавливается в место щелчка и выделение пропадает. Видимо проблема в том, что сигнал «grab-focus» отправляется до сигнала о щелчке кнопкой мыши. Вопрос: как это победить?
P.S. Исходник не мой, GTK+ вижу второй раз в жизни.