From: Gabriel S. <ni...@go...> - 2007-03-22 21:50:10
|
Hi! I have based my port on gaim's SVN trunk as of a few weeks ago. I maintain a set of patches against the trunk. Everything is in a Debian repository at http://idefix.go-nix.ca/nix/gaim-dist or deb http://idefix.fo-nix.ca/nix/gaim-dist / in Debian sources.list parlance. I have tried my utmost to make my modifications non-destructive. That is, gaim should build and behave everywhere just as before even with the patches applied. Here's what I've done so far: Patch 000: - Add --enable-hildon configure flag, that adds - Hildon CFLAGS and LIBS - USE_HILDON preprocessor switch (to allow non-destructive code mods) - USE_HILDON Makefile conditional (to allow non-destructive build mods) - Modify default install path for gaim's icon and .desktop file to suit Hildon desktop conventions - Move hildon.desktop.in to hildon.desktop.in.in, because it now contains an AC_SUBST variable, in addition to being subject to the libintl rule for .desktop files. Of course, I have added it to AC_OUTPUT to compensate for the extra .in and to perform the substitution Patch 010: - Turn gaim's toplevel windows from GtkWindow objects to HildonWindow objects, and set their wmclass names and classes to "gaim" (this causes the desktop to recognize them as belonging to the same group) - Remove all menu bars and turn them into GtkMenu objects - Remove typing notification icon that is normally packed next to the menu bar - Set/unset urgency hint on conversation windows Patch 020: - Add tap-and-hold support to buddy list (in lieu of right-click) - Move "Quit" from "Buddies" to "/" (since main menu is now a GtkMenu) - Double-left click issues "row-activated" (should happen by itself) Patch 030: - Pack contents of notebook tabs into GtkScrolledWindow objects, because there are too many widgets to fit on the small screen - for both the preferences dialog, as well as the account details dialog Patch 040: - Get sound working by building a Gstreamer pipeline manually, rather than using "playbin". Here's the pipeline: gnomevfssrc location=file://%s ! wavparse ! audioconvert ! dsppcmsink currently, this ignores the volume setting Unfortunately, I am still not very familiar with the codebase, so I'm running into some problems that I'm hoping to find the solution to on this list. I have noticed that the tree view widgets in Gaim do not behave particularly well: - Buddy list row-activated does not seem to happen - When I collapse a group of buddies in the buddy list and I click on the group heading, it briefly uncollapses but then recollapses the group. The opposite also happens if the group is initially collapsed - Repeated single-left-clicking on an idle buddy causes the text to be painted gray (non-theme colour) - that is, the row hilight remains, but the text is painted as though the entry were not hilighted - Check boxes in the list of sound events do not reflect the state of the underlying GtkTreeModel Another strange thing I've noticed is that combo boxes in the preferences dialog are rendered particularly badly rendered. I will try to hack on these problems some more and hopefully get gaim up to par on Internet tablets as well. If anybody is interested in helping, please let me know! Thanks for your attention, Gabriel |