summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-im/gaim/ChangeLog8
-rw-r--r--net-im/gaim/files/gaim-0.81cvs-gtkblist_dnd.diff37
-rw-r--r--net-im/gaim/files/gaim-0.81cvs-icon_scaling.diff124
-rw-r--r--net-im/gaim/files/gaim-0.81cvs-irc-ison-lessflood.patch39
-rw-r--r--net-im/gaim/gaim-0.80.ebuild5
5 files changed, 211 insertions, 2 deletions
diff --git a/net-im/gaim/ChangeLog b/net-im/gaim/ChangeLog
index 2b73b1f7650f..108741d585c4 100644
--- a/net-im/gaim/ChangeLog
+++ b/net-im/gaim/ChangeLog
@@ -1,10 +1,16 @@
# ChangeLog for net-im/gaim
# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/gaim/ChangeLog,v 1.201 2004/07/19 01:32:30 kloeri Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/gaim/ChangeLog,v 1.202 2004/07/19 01:42:10 rizzo Exp $
19 Jul 2004; Bryan Østergaard <kloeri@gentoo.org> gaim-0.79-r1.ebuild:
Stable on alpha.
+ 18 Jul 2004; Don Seiler <rizzo@gentoo.org>
+ +files/gaim-0.81cvs-gtkblist_dnd.diff,
+ +files/gaim-0.81cvs-icon_scaling.diff,
+ +files/gaim-0.81cvs-irc-ison-lessflood.patch, gaim-0.80.ebuild:
+ Patches sent from upstream
+
*gaim-0.80 (16 Jul 2004)
16 Jul 2004; Don Seiler <rizzo@gentoo.org> +gaim-0.80.ebuild:
diff --git a/net-im/gaim/files/gaim-0.81cvs-gtkblist_dnd.diff b/net-im/gaim/files/gaim-0.81cvs-gtkblist_dnd.diff
new file mode 100644
index 000000000000..fb4f68c9dde2
--- /dev/null
+++ b/net-im/gaim/files/gaim-0.81cvs-gtkblist_dnd.diff
@@ -0,0 +1,37 @@
+===================================================================
+RCS file: /cvsroot/gaim/gaim/src/gtkblist.c,v
+retrieving revision 1.134
+retrieving revision 1.136
+diff -u -r1.134 -r1.136
+--- gaim/gaim/src/gtkblist.c 2004/07/15 01:59:05 1.134
++++ gaim/gaim/src/gtkblist.c 2004/07/18 18:21:26 1.136
+@@ -3040,12 +3040,14 @@
+ GtkSizeGroup *sg;
+ GtkAccelGroup *accel_group;
+ GtkTreeSelection *selection;
+- GtkTargetEntry gte[] = {{"GAIM_BLIST_NODE", GTK_TARGET_SAME_APP, DRAG_ROW},
++ GtkTargetEntry dte[] = {{"GAIM_BLIST_NODE", GTK_TARGET_SAME_APP, DRAG_ROW},
+ {"application/x-im-contact", 0, DRAG_BUDDY},
+ {"text/x-vcard", 0, DRAG_VCARD },
+ {"text/uri-list", 0, DRAG_URI},
+ {"text/plain", 0, DRAG_TEXT}};
+-
++ GtkTargetEntry ste[] = {{"GAIM_BLIST_NODE", GTK_TARGET_SAME_APP, DRAG_ROW},
++ {"application/x-im-contact", 0, DRAG_BUDDY},
++ {"text/x-vcard", 0, DRAG_VCARD }};
+ if (gtkblist && gtkblist->window) {
+ gtk_widget_show(gtkblist->window);
+ return;
+@@ -3114,10 +3116,10 @@
+
+ /* Set up dnd */
+ gtk_tree_view_enable_model_drag_source(GTK_TREE_VIEW(gtkblist->treeview),
+- GDK_BUTTON1_MASK, gte, NUM_TARGETS,
++ GDK_BUTTON1_MASK, ste, 3,
+ GDK_ACTION_COPY);
+ gtk_tree_view_enable_model_drag_dest(GTK_TREE_VIEW(gtkblist->treeview),
+- gte, NUM_TARGETS,
++ dte, 5,
+ GDK_ACTION_COPY | GDK_ACTION_MOVE);
+
+ g_signal_connect(G_OBJECT(gtkblist->treeview), "drag-data-received", G_CALLBACK(gaim_gtk_blist_drag_data_rcv_cb), NULL);
diff --git a/net-im/gaim/files/gaim-0.81cvs-icon_scaling.diff b/net-im/gaim/files/gaim-0.81cvs-icon_scaling.diff
new file mode 100644
index 000000000000..71f71d0f4087
--- /dev/null
+++ b/net-im/gaim/files/gaim-0.81cvs-icon_scaling.diff
@@ -0,0 +1,124 @@
+===================================================================
+RCS file: /cvsroot/gaim/gaim/src/gtkaccount.c,v
+retrieving revision 1.135
+retrieving revision 1.136
+diff -u -r1.135 -r1.136
+--- gaim/gaim/src/gtkaccount.c 2004/07/12 19:47:46 1.135
++++ gaim/gaim/src/gtkaccount.c 2004/07/18 14:57:55 1.136
+@@ -158,6 +158,8 @@
+ static void add_account(AccountsWindow *dialog, GaimAccount *account);
+ static void set_account(GtkListStore *store, GtkTreeIter *iter,
+ GaimAccount *account);
++static char*
++convert_buddy_icon(GaimAccount *account, const char *path);
+
+ static char *
+ proto_name(const char *id)
+@@ -281,13 +283,13 @@
+
+ if (dialog->icon_path)
+ g_free(dialog->icon_path);
+- dialog->icon_path = g_strdup(filename);
+- gtk_image_set_from_file(GTK_IMAGE(dialog->icon_entry), filename);
++ dialog->icon_path = convert_buddy_icon(dialog->account, filename);
++ gtk_image_set_from_file(GTK_IMAGE(dialog->icon_entry), dialog->icon_path);
+ gtk_widget_show(dialog->icon_entry);
+
+ gtk_widget_destroy(dialog->icon_filesel);
+ dialog->icon_filesel = NULL;
+-}
++ }
+
+ static void
+ #if GTK_CHECK_VERSION(2,4,0) /* FILECHOOSER */
+@@ -473,8 +475,8 @@
+ *rtmp = '\0';
+ if (dialog->icon_path)
+ g_free(dialog->icon_path);
+- dialog->icon_path = g_strdup(tmp);
+- gtk_image_set_from_file(GTK_IMAGE(dialog->icon_entry), tmp);
++ dialog->icon_path = convert_buddy_icon(dialog->account, tmp);
++ gtk_image_set_from_file(GTK_IMAGE(dialog->icon_entry), dialog->icon_path);
+ gtk_widget_show(dialog->icon_entry);
+ g_free(tmp);
+ }
+@@ -500,8 +502,8 @@
+ }
+ #endif
+
+-static void
+-convert_and_set_buddy_icon(GaimAccount *account, const char *path)
++static char*
++convert_buddy_icon(GaimAccount *account, const char *path)
+ {
+ #if GTK_CHECK_VERSION(2,2,0)
+ int width, height;
+@@ -544,7 +546,7 @@
+ prpl_info->icon_spec.min_height <= height &&
+ prpl_info->icon_spec.max_height >= height))) { /* The icon is the correct size */
+ #endif
+- gaim_account_set_buddy_icon(account, path);
++ return g_strdup(path);
+ #if GTK_CHECK_VERSION(2,2,0)
+ } else {
+ int i;
+@@ -577,7 +579,7 @@
+ g_free(random);
+ gaim_debug_error("buddyicon", "Could not open icon for conversion: %s\n", error->message);
+ g_error_free(error);
+- return;
++ return NULL;
+ }
+ for (i = 0; prpl_formats[i]; i++) {
+ gaim_debug_info("buddyicon", "Converting buddy icon to %s as %s\n", prpl_formats[i], filename);
+@@ -585,7 +587,9 @@
+ break;
+ }
+ if (!error) {
+- gaim_account_set_buddy_icon(account, filename);
++ g_free(random);
++ g_object_unref(G_OBJECT(pixbuf));
++ return filename;
+ } else {
+ gaim_debug_error("buddyicon", "Could not convert icon to usable format: %s\n", error->message);
+ g_error_free(error);
+@@ -594,6 +598,7 @@
+ g_free(random);
+ g_object_unref(G_OBJECT(pixbuf));
+ }
++ return NULL;
+ #endif
+ }
+
+@@ -1330,14 +1335,8 @@
+
+ /* Buddy Icon */
+ value = dialog->icon_path;
++ gaim_account_set_buddy_icon(dialog->account, value);
+
+- if (dialog->prpl_info &&
+- (dialog->prpl_info->icon_spec.format) &&
+- value != NULL) {
+- convert_and_set_buddy_icon(dialog->account, value);
+- } else {
+- gaim_account_set_buddy_icon(dialog->account, NULL);
+- }
+ /* Remember Password */
+ gaim_account_set_remember_password(dialog->account,
+ gtk_toggle_button_get_active(
+===================================================================
+RCS file: /cvsroot/gaim/gaim/src/protocols/msn/msn.c,v
+retrieving revision 1.308
+retrieving revision 1.309
+diff -u -r1.308 -r1.309
+--- gaim/gaim/src/protocols/msn/msn.c 2004/07/17 18:11:10 1.308
++++ gaim/gaim/src/protocols/msn/msn.c 2004/07/18 14:57:55 1.309
+@@ -1661,7 +1661,7 @@
+ OPT_PROTO_MAIL_CHECK,
+ NULL, /* user_splits */
+ NULL, /* protocol_options */
+- {"png", 0, 0, 0, 0, 0}, /* icon_spec */
++ {"png", 0, 0, 96, 96, GAIM_ICON_SCALE_SEND}, /* icon_spec */
+ msn_list_icon, /* list_icon */
+ msn_list_emblems, /* list_emblems */
+ msn_status_text, /* status_text */
diff --git a/net-im/gaim/files/gaim-0.81cvs-irc-ison-lessflood.patch b/net-im/gaim/files/gaim-0.81cvs-irc-ison-lessflood.patch
new file mode 100644
index 000000000000..5ce886c3afa8
--- /dev/null
+++ b/net-im/gaim/files/gaim-0.81cvs-irc-ison-lessflood.patch
@@ -0,0 +1,39 @@
+? src/protocols/irc/ircdiff.patch
+Index: src/protocols/irc/irc.c
+===================================================================
+RCS file: /cvsroot/gaim/gaim/src/protocols/irc/irc.c,v
+retrieving revision 1.227
+diff -u -p -r1.227 irc.c
+--- src/protocols/irc/irc.c 7 Jul 2004 16:31:59 -0000 1.227
++++ src/protocols/irc/irc.c 17 Jul 2004 16:58:42 -0000
+@@ -123,6 +123,17 @@ static void irc_buddy_append(char *name,
+ g_string_append_printf(string, "%s ", name);
+ }
+
++static void irc_ison_one(struct irc_conn *irc, struct irc_buddy *ib)
++{
++ char *buf;
++
++ ib->flag = FALSE;
++ buf = irc_format(irc, "vn", "ISON", ib->name);
++ irc_send(irc, buf);
++ g_free(buf);
++}
++
++
+ static const char *irc_blist_icon(GaimAccount *a, GaimBuddy *b)
+ {
+ return "irc";
+@@ -345,7 +356,11 @@ static void irc_add_buddy(GaimConnection
+ ib->name = g_strdup(buddy->name);
+ g_hash_table_insert(irc->buddies, ib->name, ib);
+
+- irc_blist_timeout(irc);
++ /* if the timer isn't set, this is during signon, so we don't want to flood
++ * ourself off with ISON's, so we don't, but after that we want to know when
++ * someone's online asap */
++ if (irc->timer)
++ irc_ison_one(irc, ib);
+ }
+
+ static void irc_remove_buddy(GaimConnection *gc, GaimBuddy *buddy, GaimGroup *group)
diff --git a/net-im/gaim/gaim-0.80.ebuild b/net-im/gaim/gaim-0.80.ebuild
index ad35b42c6a20..e00cb6d83aea 100644
--- a/net-im/gaim/gaim-0.80.ebuild
+++ b/net-im/gaim/gaim-0.80.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/gaim/gaim-0.80.ebuild,v 1.1 2004/07/16 12:54:40 rizzo Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/gaim/gaim-0.80.ebuild,v 1.2 2004/07/19 01:42:10 rizzo Exp $
inherit flag-o-matic eutils gcc
use debug && inherit debug
@@ -61,6 +61,9 @@ src_unpack() {
unpack ${A}
cd ${S}
use cjk && epatch ${FILESDIR}/gaim-0.76-xinput.patch
+ epatch ${FILESDIR}/gaim-0.81cvs-gtkblist_dnd.diff
+ epatch ${FILESDIR}/gaim-0.81cvs-icon_scaling.diff
+ epatch ${FILESDIR}/gaim-0.81cvs-irc-ison-lessflood.patch
}
src_compile() {