On 8-Jan-07, at 4:02 AM, Christian Biere wrote: > It's better to discuss these things on -devel because it's about code > in SVN (not a release) and very technical, so it's not very > interesting > from a user's view.
Sure thing. I wasn't sure which was most appropriate. I'm hesitant about posting to this list because I do not wish to be seen as styling myself a 'developer'; nor do I wish to add chaff and annoying newbie errors to the list traffic. I'm recovering rusty old ANSI-C programming skills from high school, and I have absolutely no 'real' programming experience. In other words: 1) I am NOT a developer. 2) My code suggestions SHOULD be reviewed by actual developers before implementation. 3) Tell me to go away if I'm bothering you. C.B. is correct, of course, about how my 'fix' worked; it just prevented the gtk_clist_moveto(). Removing the conditional execution entirely does solve the jumping problem. However, this prevents jumping when required, i.e., if 'jump to new search' is selected, and the bottom of the search list is not visible. 1) Would the following substitution [which seems to work] be acceptable? It seems to solve my problem. -2297 if (!GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(clist))) gtk_clist_moveto(clist, row, 0, 0.0, 0.0); +2297 if ( gtk_clist_row_is_visible(clist, row) != GTK_VISIBILITY_FULL) gtk_clist_moveto(clist, row, 0, 0.0, 0.0); 2) What's going on with the "! GTK_WIDGET_HAS_FOCUS" conditional "gtk_ctree_node_moveto()" functions in the following places? I tried changing them into straight visibility tests as above, and then finally tried removing them; nothing I did seemed to change the behavior of the GUI in any way. I'm mainly just curious, but someone might want to review them. a) in "src/ui/gtk/gtk1/search.c": 2366 if (!GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(ctree))) gtk_ctree_node_moveto(ctree, node, 0, 0.0, 0.0); b) in "src/ui/gtk/main_cb.c": 378 if (!GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(ctree))) gtk_ctree_node_moveto(ctree, node, 0, 0.0, 0.0); The documentation makes it sound like gtk_ctree_node_is_visible(), the closest analog to the function that worked for me above, cannot guarantee that the node itself will actually be within the viewable container bounds. As far as I can tell, it can't ... but I'm unsure of whether I've actually seen the code change execute. 3) Most importantly (probably): has anyone else running with GTK +1.2 on any other platform experienced problems with the 'jumping' behavior? My GTK+ version is 1.2.10, and my X11 version is "1.1.3 - XFree86 4.4.0". - matt ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Gtk-gnutella-devel mailing list Gtk-gnutella-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel