=================================================================== RCS file: /cvsroot/gaim/gaim/configure.in,v
diff -u -r1.95 configure.in --- configure.in 2001/05/31 01:07:12 1.95 +++ configure.in 2001/06/06 23:32:31 AM_CONDITIONAL(DISTRIB, test "x$enable_distrib" = "xyes")
AC_ARG_ENABLE(multi, [ --disable-multi disable multiple connections],,enable_multi=yes)
AC_ARG_ENABLE(prpls, [ --disable-prpls don't build protocol plugins],,enable_prpls=yes)
-AC_ARG_ENABLE(gnome, [ --disable-gnome compile without Gnome bits],,enable_gnome=yes) -AC_ARG_ENABLE(pixbuf, [ --disable-pixbuf compile without GdkPixbuf (needed for Buddy Icons)],,enable_pixbuf=yes) -AC_ARG_ENABLE(panel, [ --enable-panel compile as a GNOME applet],,enable_panel=$enable_distrib) +dnl AC_ARG_ENABLE(gnome, [ --disable-gnome compile without Gnome bits],,enable_gnome=yes) +dnl AC_ARG_ENABLE(pixbuf, [ --disable-pixbuf compile without GdkPixbuf (needed for Buddy Icons)],,enable_pixbuf=yes) +dnl AC_ARG_ENABLE(panel, [ --enable-panel compile as a GNOME applet],,enable_panel=$enable_distrib) AM_CONDITIONAL(GNOMEAPPLET, test "x$enable_panel" = "xyes")
AC_ARG_ENABLE(esd, [ --disable-esd Turn off ESD (default=auto)],,enable_esd=yes)
AC_ARG_ENABLE(nas, [ --enable-nas Enable NAS (Network Audio System) support],,enable_nas=no)
-if test "x$enable_gnome" = "xyes" ; then - if test "x$enable_panel" = "xyes" ; then - CFLAGS="$CFLAGS $GNOME_INCLUDEDIR" - LIBS="$LIBS $GTK_LIBS $GNOME_LIBDIR $GNOME_APPLETS_LIBS $GNOMEUI_LIBS" - AC_PATH_PROG(gaimpath, gaim_applet) - AC_PATH_PROG(gnomepath, gnome-config) - AC_MSG_CHECKING(for Gnome compile flags) - GNOME_CFLAGS=`$gnomepath gnomeui --cflags 2>/dev/null` - if test "x$GNOME_CFLAGS" = "x" ; then - AC_MSG_RESULT([Gnome not found, building without it.]) - GNOME_VER=`$gnomepath --version |$sedpath 's/gnome-libs //' 2>/dev/null` - GNOME_MAJOR=`echo $GNOME_VER |$sedpath 's/\([[0-9]*]*\).\([[0-9]*]*\).\([[0-9]*]*\)/\1/' 2>/dev/null` - if test "x$GNOME_MAJOR" = "x0" ; then - AC_MSG_RESULT([old Gnome found, building without it.]) - CFLAGS="$CFLAGS $GNOME_CFLAGS" - LIBS="$LIBS `$gnomepath gnomeui --libs 2>/dev/null`" - GNOME_CONFIG="$gnomepath" - AC_PATH_PROG(gaimpath, gaim) +dnl if test "x$enable_gnome" = "xyes" ; then +dnl if test "x$enable_panel" = "xyes" ; then +dnl CFLAGS="$CFLAGS $GNOME_INCLUDEDIR" +dnl AC_DEFINE(USE_APPLET) +dnl AC_DEFINE(USE_GNOME) +dnl LIBS="$LIBS $GTK_LIBS $GNOME_LIBDIR $GNOME_APPLETS_LIBS $GNOMEUI_LIBS" +dnl AC_PATH_PROG(gaimpath, gaim_applet) +dnl AC_PATH_PROG(gnomepath, gnome-config) +dnl AC_MSG_CHECKING(for Gnome compile flags) +dnl GNOME_CFLAGS=`$gnomepath gnomeui --cflags 2>/dev/null` +dnl if test "x$GNOME_CFLAGS" = "x" ; then +dnl AC_MSG_RESULT([Gnome not found, building without it.]) +dnl GNOME_VER=`$gnomepath --version |$sedpath 's/gnome-libs //' 2>/dev/null` +dnl GNOME_MAJOR=`echo $GNOME_VER |$sedpath 's/\([[0-9]*]*\).\([[0-9]*]*\).\([[0-9]*]*\)/\1/' 2>/dev/null` +dnl if test "x$GNOME_MAJOR" = "x0" ; then +dnl AC_MSG_RESULT([old Gnome found, building without it.]) +dnl CFLAGS="$CFLAGS $GNOME_CFLAGS" +dnl LIBS="$LIBS `$gnomepath gnomeui --libs 2>/dev/null`" +dnl AC_DEFINE(USE_GNOME) +dnl GNOME_CONFIG="$gnomepath" +dnl AC_SUBST(GNOME_CONFIG) +dnl AC_PATH_PROG(gaimpath, gaim) -if test "x$enable_gnome" != "xyes" ; then - AM_PATH_GLIB(1.2.0,,AC_MSG_ERROR([ +dnl if test "x$enable_gnome" != "xyes" ; then + AM_PATH_GLIB_2_0(1.2.3,,AC_MSG_ERROR([ *** GLib is required to build Gaim; please make sure you have the GLib
*** development headers installed. The latest version of GLib is
*** always available at http://www.gtk.org/.]))
- AM_PATH_GTK(1.2.0,,AC_MSG_ERROR([ + AM_PATH_GTK_2_0(1.2.3,,AC_MSG_ERROR([ *** GTK+ is required to build Gaim; please make sure you have the GTK+
*** development headers installed. The latest version of GTK+ is
*** always available at http://www.gtk.org/.]),gthread)
AC_PATH_PROG(gaimpath, gaim)
-CFLAGS="$CFLAGS $GTK_CFLAGS" +CFLAGS="$CFLAGS $GTK_CFLAGS -DGTK_ENABLE_BROKEN" -if test "x$enable_pixbuf" = "xyes" ; then - AC_PATH_PROG(pixbufcfg, gdk-pixbuf-config) - if test "x$pixbufcfg" != "x" ; then - GDK_PIXBUF_CFLAGS=`$pixbufcfg --cflags` - GDK_PIXBUF_LIBS=`$pixbufcfg --libs` - GDK_PIXBUF_CONFIG="$pixbufcfg" - AC_SUBST(GDK_PIXBUF_CONFIG) - AC_SUBST(GDK_PIXBUF_CFLAGS) - AC_SUBST(GDK_PIXBUF_LIBS) - CFLAGS="$CFLAGS $GDK_PIXBUF_CFLAGS" - LIBS="$LIBS $GDK_PIXBUF_LIBS" - dnl We should be doing checks to see that the header files and functions exist. eh. +dnl if test "x$enable_pixbuf" = "xyes" ; then +dnl AC_PATH_PROG(pixbufcfg, gdk-pixbuf-config) +dnl if test "x$pixbufcfg" != "x" ; then +dnl GDK_PIXBUF_CFLAGS=`$pixbufcfg --cflags` +dnl GDK_PIXBUF_LIBS=`$pixbufcfg --libs` +dnl GDK_PIXBUF_CONFIG="$pixbufcfg" +dnl AC_SUBST(GDK_PIXBUF_CONFIG) +dnl AC_SUBST(GDK_PIXBUF_CFLAGS) +dnl AC_SUBST(GDK_PIXBUF_LIBS) +dnl CFLAGS="$CFLAGS $GDK_PIXBUF_CFLAGS" +dnl LIBS="$LIBS $GDK_PIXBUF_LIBS" +dnl dnl We should be doing checks to see that the header files and functions exist. eh. +dnl AC_DEFINE(USE_PIXBUF) dnl Check for XScreenSaver
if test "x$enable_xss" = "xyes" ; then
echo Allow Multiple Connections. : $enable_multi
echo Build Protocol Plugins..... : $enable_prpls
-echo Build with GNOME bits...... : $enable_gnome -echo Use GdkPixbuf for Icons.... : $use_pixbuf -echo Build as GNOME applet...... : $enable_panel +dnl echo Build with GNOME bits...... : $enable_gnome +dnl echo Use GdkPixbuf for Icons.... : $use_pixbuf +dnl echo Build as GNOME applet...... : $enable_panel echo Build with Plugin support.. : $enable_plugins
echo Build with Perl support.... : $enable_perl
=================================================================== RCS file: /cvsroot/gaim/gaim/src/browser.c,v
--- src/browser.c 2001/06/01 23:17:09 1.10 +++ src/browser.c 2001/06/06 23:32:32 mozilla_remote_init_atoms();
window = mozilla_remote_find_window();
- if (window && (((GdkWindowPrivate *) window)->destroyed == FALSE)) { + if (window && (((GdkWindowObject *) window)->destroyed == FALSE)) { XSelectInput(gdk_display, GDK_WINDOW_XWINDOW(window),
(PropertyChangeMask | StructureNotifyMask));
mozilla_remote_init_atoms();
window = mozilla_remote_find_window();
- if (window && (((GdkWindowPrivate *) window)->destroyed == FALSE)) { + if (window && (((GdkWindowObject *) window)->destroyed == FALSE)) { XSelectInput(gdk_display, GDK_WINDOW_XWINDOW(window),
(PropertyChangeMask | StructureNotifyMask));
Index: src/conversation.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/conversation.c,v
retrieving revision 1.226
diff -u -r1.226 conversation.c --- src/conversation.c 2001/05/29 23:51:15 1.226 +++ src/conversation.c 2001/06/06 23:32:34 +#include <gtk/gtkeditable.h> #include <gdk/gdkkeysyms.h>
gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event");
int entry_key_pressed(GtkWidget *w, GtkWidget *entry)
/*------------------------------------------------------------------------*/
- toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS); + toolbar = gtk_toolbar_new(); =================================================================== RCS file: /cvsroot/gaim/gaim/src/dialogs.c,v
retrieving revision 1.234
diff -u -r1.234 dialogs.c --- src/dialogs.c 2001/05/25 23:07:22 1.234 +++ src/dialogs.c 2001/06/06 23:32:35 vbox = gtk_vbox_new(TRUE, 5);
bbox = gtk_hbox_new(FALSE, 5);
- smiley_box_1 = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS); - smiley_box_2 = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS); - smiley_box_3 = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS); - smiley_box_4 = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS); + smiley_box_1 = gtk_toolbar_new(); + smiley_box_2 = gtk_toolbar_new(); + smiley_box_3 = gtk_toolbar_new(); + smiley_box_4 = gtk_toolbar_new(); =================================================================== RCS file: /cvsroot/gaim/gaim/src/gaim.h,v
retrieving revision 1.230
--- src/gaim.h 2001/06/01 23:56:52 1.230 +++ src/gaim.h 2001/06/06 23:32:36 +#ifndef GTK_WINDOW_DIALOG +#define GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL +#define GTK_EDITABLE GTK_OLD_EDITABLE =================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkimhtml.c,v
diff -u -r1.32 gtkimhtml.c --- src/gtkimhtml.c 2001/06/05 17:47:39 1.32 +++ src/gtkimhtml.c 2001/06/06 23:32:37 gtk_signal_new ("url_clicked",
+ GTK_CLASS_TYPE (object_class), GTK_SIGNAL_OFFSET (GtkIMHtmlClass, url_clicked),
gtk_marshal_NONE__POINTER,
- gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL); + /*gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL);*/ object_class->destroy = gtk_imhtml_destroy;
widget_class->realize = gtk_imhtml_realize;
- widget_class->draw = gtk_imhtml_draw; + /*widget_class->draw = gtk_imhtml_draw;*/ widget_class->style_set = gtk_imhtml_style_set;
widget_class->expose_event = gtk_imhtml_expose_event;
widget_class->size_allocate = gtk_imhtml_size_allocate;
=================================================================== RCS file: /cvsroot/gaim/gaim/src/gtkticker.c,v
diff -u -r1.2 gtkticker.c --- src/gtkticker.c 2000/11/21 01:00:45 1.2 +++ src/gtkticker.c 2001/06/06 23:32:37 widget_class->realize = gtk_ticker_realize;
widget_class->size_request = gtk_ticker_size_request;
widget_class->size_allocate = gtk_ticker_size_allocate;
- widget_class->draw = gtk_ticker_draw; + /*widget_class->draw = gtk_ticker_draw;*/ widget_class->expose_event = gtk_ticker_expose;
container_class->add = gtk_ticker_add_real;
=================================================================== RCS file: /cvsroot/gaim/gaim/src/oscar.c,v
retrieving revision 1.214
--- src/oscar.c 2001/06/04 20:13:34 1.214 +++ src/oscar.c 2001/06/06 23:32:39 #include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk-pixbuf/gdk-pixbuf-loader.h>
/*#include "pixmaps/cancel.xpm"*/
#include "pixmaps/admin_icon.xpm"
#define AIMHASHDATA "http://gaim.sourceforge.net/aim_data.php3"
static int gaim_caps = AIM_CAPS_CHAT |
- GdkPixbufAnimation *anim; struct conversation *cnv;
static struct direct_im *find_direct_im(struct oscar_data *od, char *who) {
GSList *d = od->direct_ims;
odata->direct_ims = g_slist_remove(odata->direct_ims, n);
while (odata->hasicons) {
struct icon_req *n = odata->hasicons->data;
- gdk_pixbuf_animation_unref(n->anim); - gdk_pixbuf_unref(n->unanim); - gtk_timeout_remove(n->timer); - gtk_container_remove(GTK_CONTAINER(n->cnv->bbox), n->pix); + gtk_container_remove(GTK_CONTAINER(n->cnv->bbox), n->img); odata->hasicons = g_slist_remove(odata->hasicons, n);
gdk_input_remove(gc->inpa);
-static gboolean redraw_anim(gpointer data) - struct icon_req *ir = data; - GdkPixmap *pm; GdkBitmap *bm; - if (!ir->cnv || !g_list_find(conversations, ir->cnv)) { - debug_printf("I think this is a bug.\n"); - frames = gdk_pixbuf_animation_get_frames(ir->anim); - frame = g_list_nth_data(frames, ir->curframe); - buf = gdk_pixbuf_frame_get_pixbuf(frame); - switch (gdk_pixbuf_frame_get_action(frame)) { - case GDK_PIXBUF_FRAME_RETAIN: - gdk_pixbuf_render_pixmap_and_mask(buf, &src, NULL, 0); - gtk_pixmap_get(GTK_PIXMAP(ir->pix), &pm, &bm); - gdk_draw_pixmap(pm, gc, src, 0, 0, - gdk_pixbuf_frame_get_x_offset(frame), - gdk_pixbuf_frame_get_y_offset(frame), - gtk_widget_queue_draw(ir->pix); - case GDK_PIXBUF_FRAME_DISPOSE: - gdk_pixbuf_render_pixmap_and_mask(buf, &pm, &bm, 0); - gtk_pixmap_set(GTK_PIXMAP(ir->pix), pm, bm); - case GDK_PIXBUF_FRAME_REVERT: - buf = gdk_pixbuf_frame_get_pixbuf(frame); - gdk_pixbuf_render_pixmap_and_mask(buf, &pm, &bm, 0); - gtk_pixmap_set(GTK_PIXMAP(ir->pix), pm, bm); - ir->curframe = (ir->curframe + 1) % g_list_length(frames); - delay = gdk_pixbuf_frame_get_delay_time(frame); - ir->timer = gtk_timeout_add(delay * 10, redraw_anim, ir); int gaim_parse_incoming_im(struct aim_session_t *sess,
struct command_rx_struct *command, ...) {
args = va_arg(ap, struct aim_incomingim_ch1_args *);
if (args->icbmflags & AIM_IMFLAGS_HASICON) {
struct oscar_data *od = gc->proto_data;
ir->timestamp = args->iconstamp;
g_snprintf(tmp, BUF_LONG, "%s", args->msg);
serv_got_im(gc, userinfo->sn, tmp, args->icbmflags & AIM_IMFLAGS_AWAY, time(NULL));
} else if (args->reqclass & AIM_CAPS_VOICE) {
} else if (args->reqclass & AIM_CAPS_BUDDYICON) {
struct oscar_data *od = gc->proto_data;
GSList *h = od->hasicons;
struct icon_req *ir = NULL;
+ GdkPixbufAnimation *anim; who = normalize(userinfo->sn);
- if (ir->pix && ir->cnv) - gtk_container_remove(GTK_CONTAINER(ir->cnv->bbox), ir->pix); + if (ir->img && ir->cnv) + gtk_container_remove(GTK_CONTAINER(ir->cnv->bbox), ir->img); - gdk_pixbuf_animation_unref(ir->anim); - gdk_pixbuf_unref(ir->unanim); - gtk_timeout_remove(ir->timer); ir->length = args->info.icon.length;
ir->data = g_memdup(args->info.icon.icon, args->info.icon.length);
load = gdk_pixbuf_loader_new();
- gdk_pixbuf_loader_write(load, ir->data, ir->length); - ir->anim = gdk_pixbuf_loader_get_animation(load); + gdk_pixbuf_loader_write(load, ir->data, ir->length, NULL); + anim = gdk_pixbuf_loader_get_animation(load); - frames = gdk_pixbuf_animation_get_frames(ir->anim); - buf = gdk_pixbuf_frame_get_pixbuf(frames->data); - gdk_pixbuf_render_pixmap_and_mask(buf, &pm, &bm, 0); - if (gdk_pixbuf_animation_get_num_frames(ir->anim) > 1) { - int delay = gdk_pixbuf_frame_get_delay_time(frames->data); - ir->timer = gtk_timeout_add(delay * 10, redraw_anim, ir); + ir->img = gtk_image_new_from_animation(anim); + gdk_pixbuf_animation_unref(anim); - ir->unanim = gdk_pixbuf_loader_get_pixbuf(load); - gdk_pixbuf_loader_close(load); + unanim = gdk_pixbuf_loader_get_pixbuf(load); + gdk_pixbuf_loader_close(load, NULL); - gdk_pixbuf_render_pixmap_and_mask(ir->unanim, &pm, &bm, 0); + ir->img = gtk_image_new_from_animation(anim); + gdk_pixbuf_unref(unanim); - ir->pix = gtk_pixmap_new(pm, bm); - gtk_box_pack_start(GTK_BOX(c->bbox), ir->pix, FALSE, FALSE, 5); - if (ir->anim && (gdk_pixbuf_animation_get_num_frames(ir->anim) > 1)) - gtk_widget_set_usize(ir->pix, gdk_pixbuf_animation_get_width(ir->anim), - gdk_pixbuf_animation_get_height(ir->anim)); - gtk_widget_show(ir->pix); + gtk_box_pack_start(GTK_BOX(c->bbox), ir->img, FALSE, FALSE, 5); + gtk_widget_show(ir->img); - gdk_pixbuf_loader_close(load); + gdk_pixbuf_loader_close(load, NULL); } else if (args->reqclass & AIM_CAPS_IMIMAGE) {
struct ask_direct *d = g_new0(struct ask_direct, 1);
aim_send_im(odata->sess, odata->conn, name, AIM_IMFLAGS_AWAY, message);
int flags = AIM_IMFLAGS_ACK;
GSList *h = odata->hasicons;
char *who = normalize(name);
flags |= AIM_IMFLAGS_BUDDYREQ;
debug_printf("sending buddy icon request with message\n");
aim_send_im(odata->sess, odata->conn, name, flags, message);
if (!join_chat_entry || !join_chat_spin)
- name = gtk_entry_get_text(GTK_ENTRY(join_chat_entry)); + name = (char *)gtk_entry_get_text(GTK_ENTRY(join_chat_entry)); exchange = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(join_chat_spin));
if (!name || !strlen(name))
gtk_signal_connect(GTK_OBJECT(button), "activate",
GTK_SIGNAL_FUNC(oscar_info), who);
gtk_object_set_user_data(GTK_OBJECT(button), gc);
- gtk_menu_append(GTK_MENU(menu), button); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), button); button = gtk_menu_item_new_with_label(_("Get Away Msg"));
gtk_signal_connect(GTK_OBJECT(button), "activate",
GTK_SIGNAL_FUNC(oscar_away_msg), who);
gtk_object_set_user_data(GTK_OBJECT(button), gc);
- gtk_menu_append(GTK_MENU(menu), button); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), button); if (strcmp(n, normalize(who))) {
gtk_signal_connect(GTK_OBJECT(button), "activate",
GTK_SIGNAL_FUNC(oscar_ask_direct_im), who);
gtk_object_set_user_data(GTK_OBJECT(button), gc);
- gtk_menu_append(GTK_MENU(menu), button); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), button); static void oscar_insert_convo(struct gaim_connection *gc, struct conversation *c)
struct oscar_data *od = gc->proto_data;
GSList *h = od->hasicons;
struct icon_req *ir = NULL;
char *who = normalize(c->name);
+ GdkPixbufAnimation *anim; load = gdk_pixbuf_loader_new();
- gdk_pixbuf_loader_write(load, ir->data, ir->length); - ir->anim = gdk_pixbuf_loader_get_animation(load); + gdk_pixbuf_loader_write(load, ir->data, ir->length, NULL); + anim = gdk_pixbuf_loader_get_animation(load); - frames = gdk_pixbuf_animation_get_frames(ir->anim); - buf = gdk_pixbuf_frame_get_pixbuf(frames->data); - gdk_pixbuf_render_pixmap_and_mask(buf, &pm, &bm, 0); - if (gdk_pixbuf_animation_get_num_frames(ir->anim) > 1) { - int delay = gdk_pixbuf_frame_get_delay_time(frames->data); - ir->timer = gtk_timeout_add(delay * 10, redraw_anim, ir); + ir->img = gtk_image_new_from_animation(anim); + gdk_pixbuf_animation_unref(anim); - ir->unanim = gdk_pixbuf_loader_get_pixbuf(load); - gdk_pixbuf_loader_close(load); + unanim = gdk_pixbuf_loader_get_pixbuf(load); + gdk_pixbuf_loader_close(load, NULL); - gdk_pixbuf_render_pixmap_and_mask(ir->unanim, &pm, &bm, 0); + ir->img = gtk_image_new_from_pixbuf(unanim); + gdk_pixbuf_unref(unanim); - ir->pix = gtk_pixmap_new(pm, bm); - gtk_box_pack_start(GTK_BOX(c->bbox), ir->pix, FALSE, FALSE, 5); - if (ir->anim && (gdk_pixbuf_animation_get_num_frames(ir->anim) > 1)) - gtk_widget_set_usize(ir->pix, gdk_pixbuf_animation_get_width(ir->anim), - gdk_pixbuf_animation_get_height(ir->anim)); - gtk_widget_show(ir->pix); + gtk_box_pack_start(GTK_BOX(c->bbox), ir->img, FALSE, FALSE, 5); + gtk_widget_show(ir->img); - gdk_pixbuf_loader_close(load); + gdk_pixbuf_loader_close(load, NULL); static void oscar_remove_convo(struct gaim_connection *gc, struct conversation *c)
struct oscar_data *od = gc->proto_data;
GSList *h = od->hasicons;
struct icon_req *ir = NULL;
- gtk_container_remove(GTK_CONTAINER(ir->cnv->bbox), ir->pix); + gtk_container_remove(GTK_CONTAINER(ir->cnv->bbox), ir->img); - gdk_pixbuf_animation_unref(ir->anim); - } else if (ir->unanim) { - gdk_pixbuf_unref(ir->unanim); - gtk_timeout_remove(ir->timer); void oscar_init(struct prpl *ret) {