Cool! I tried it and after a bit of futzing, it (mostly) works! Some minor issues (besides those you mentioned): (1) Some hunks didn't apply for some reason, though the failed hunks _did_ apply when I tried in diff-mode, so perhaps there's a character encoding issue. I've appended a patch generated with `cvs diff' that the patch program seems to be happy with. (2) HAVE_GTK isn't defined in src/config.in, and I had problems getting autoheader to do so (the autoheader invocation in the top-level Makefile seems to not be correct, though maybe I screwed something up). I've also included this change in the patch at the end of this message. (3) The `xg_win_to_widget' function in gtkutil.c contained intermixed declarations and statements, which is not legal C (I _think_ it's legal in C99, but most people are using older compilers). (4) It looks like the user has to give the `--with-gtk' option to configure to enable GTK. I think using `--with-x-toolkit=gtk' would be more correct, at least from a user's perspective. I'll withhold comments on scrollbars &c. until you think you've got those working properly. Here's my change to gtkutil.c: