# HG changeset patch # User Luke Schierer # Date 1040436842 0 # Node ID 274cb26ba8dcc694d652136969c489276fb5540b # Parent 06435b94c3d735c0a3ffb591822d1e317d58f88f [gaim-migrate @ 4323] (21:13:00) Robot101: little docklet description change, respacing messy file transfer entries in struct aim_user, fixing retrieval of window position, and avoiding un-needed moves of the blist committer: Tailor Script diff -r 06435b94c3d7 -r 274cb26ba8dc plugins/docklet/docklet.c --- a/plugins/docklet/docklet.c Sat Dec 21 01:31:41 2002 +0000 +++ b/plugins/docklet/docklet.c Sat Dec 21 02:14:02 2002 +0000 @@ -411,7 +411,7 @@ desc.api_version = PLUGIN_API_VERSION; desc.name = g_strdup(_("Tray Icon")); desc.version = g_strdup(VERSION); - desc.description = g_strdup(_("Interacts with a System Tray applet (in GNOME or KDE, for example) to display the current status of Gaim, allow fast access to commonly used functions, and to toggle display of the buddy list or login window.")); + desc.description = g_strdup(_("Interacts with a System Tray applet (in GNOME or KDE, for example) to display the current status of Gaim, allow fast access to commonly used functions, and to toggle display of the buddy list or login window. Also allows messages to be queued until the icon is clicked, similar to ICQ (although the icon doesn't flash yet =).")); desc.authors = g_strdup(_("Robert McQueen <robot101@debian.org>")); desc.url = g_strdup(WEBSITE); return &desc; diff -r 06435b94c3d7 -r 274cb26ba8dc src/buddy.c --- a/src/buddy.c Sat Dec 21 01:31:41 2002 +0000 +++ b/src/buddy.c Sat Dec 21 02:14:02 2002 +0000 @@ -2008,7 +2008,8 @@ /* mostly used by code in this file */ void unhide_buddy_list() { if (blist) { - if (blist_options & OPT_BLIST_SAVED_WINDOWS && blist_pos.width != 0) { + if (!GTK_WIDGET_VISIBLE(blist) && blist_options & OPT_BLIST_SAVED_WINDOWS && + blist_pos.width != 0) { /* don't move it off screen */ if (blist_pos.x >= gdk_screen_width()) { blist_pos.x = gdk_screen_width() - 100; @@ -2470,14 +2471,24 @@ } static void configure_blist_window(GtkWidget *w, GdkEventConfigure *event, void *data) { - if (event->x != blist_pos.x || - event->y != blist_pos.y || - event->width != blist_pos.width || - event->height != blist_pos.height) { - blist_pos.x = event->x > 0 ? event->x : 0; - blist_pos.y = event->y > 0 ? event->y : 0; - blist_pos.width = event->width; - blist_pos.height = event->height; + /* unfortunately GdkEventConfigure ignores the window gravity, but * + * the only way we have of setting the position doesn't. we have to * + * call get_position and get_size because they do pay attention to * + * the gravity. this is inefficient and I agree it sucks, but it's * + * more likely to work correctly. - Robot101 */ + gint x, y, width, height; + + gtk_window_get_position(GTK_WINDOW(blist), &x, &y); + gtk_window_get_size(GTK_WINDOW(blist), &width, &height); + + if (x != blist_pos.x || + y != blist_pos.y || + width != blist_pos.width || + height != blist_pos.height) { + blist_pos.x = x; + blist_pos.y = y; + blist_pos.width = width; + blist_pos.height = height; save_prefs(); } } diff -r 06435b94c3d7 -r 274cb26ba8dc src/prpl.h --- a/src/prpl.h Sat Dec 21 01:31:41 2002 +0000 +++ b/src/prpl.h Sat Dec 21 02:14:02 2002 +0000 @@ -179,12 +179,12 @@ char *(* normalize)(const char *); /* transfer files */ - void (* file_transfer_cancel) (struct gaim_connection *, struct file_transfer *); - void (* file_transfer_in) (struct gaim_connection *, struct file_transfer *, int); - void (* file_transfer_out) (struct gaim_connection *, struct file_transfer *, const char *, int, int); - void (* file_transfer_nextfile) (struct gaim_connection *, struct file_transfer *); + void (* file_transfer_cancel) (struct gaim_connection *, struct file_transfer *); + void (* file_transfer_in) (struct gaim_connection *, struct file_transfer *, int); + void (* file_transfer_out) (struct gaim_connection *, struct file_transfer *, const char *, int, int); + void (* file_transfer_nextfile) (struct gaim_connection *, struct file_transfer *); void (* file_transfer_data_chunk)(struct gaim_connection *, struct file_transfer *, const char *, int); - void (* file_transfer_done) (struct gaim_connection *, struct file_transfer *); + void (* file_transfer_done) (struct gaim_connection *, struct file_transfer *); }; extern GSList *protocols;