From: <rl...@us...> - 2006-04-25 17:15:10
|
Revision: 16093 Author: rlaager Date: 2006-04-25 10:15:00 -0700 (Tue, 25 Apr 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16093&view=rev Log Message: ----------- SF Patch #1472156 from miguelrp "Current betas of gaim render the buddy icon to a pifmap with a 1-bit alpha mask before displaying them in the conversation window. This patch eliminates the transformation from a pixbuf to a pixmap and, at the same time, preserves the full alpha contents of the original buddy icon." Perhaps I'm missing something, but the conversion doesn't seem necessary. Icons still display properly for me. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-04-24 20:51:45 UTC (rev 16092) +++ trunk/src/gtkconv.c 2006-04-25 17:15:00 UTC (rev 16093) @@ -2275,8 +2275,6 @@ GdkPixbuf *buf; GdkPixbuf *scale; - GdkPixmap *pm; - GdkBitmap *bm; gint delay; int scale_width, scale_height; @@ -2299,15 +2297,10 @@ gdk_pixbuf_animation_get_height(gtkconv->u.im->anim), 1), GDK_INTERP_BILINEAR); - gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100); + gtk_image_set_from_pixbuf(GTK_IMAGE(gtkconv->u.im->icon), scale); g_object_unref(G_OBJECT(scale)); - gtk_image_set_from_pixmap(GTK_IMAGE(gtkconv->u.im->icon), pm, bm); - g_object_unref(G_OBJECT(pm)); gtk_widget_queue_draw(gtkconv->u.im->icon); - if (bm) - g_object_unref(G_OBJECT(bm)); - delay = gdk_pixbuf_animation_iter_get_delay_time(gtkconv->u.im->iter); if (delay < 100) @@ -5758,8 +5751,6 @@ GtkWidget *event; GtkWidget *frame; GdkPixbuf *scale; - GdkPixmap *pm; - GdkBitmap *bm; int scale_width, scale_height; GaimAccount *account; @@ -5857,14 +5848,10 @@ gdk_pixbuf_animation_get_height(gtkconv->u.im->anim), 1), GDK_INTERP_BILINEAR); - gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100); - g_object_unref(G_OBJECT(scale)); - gtkconv->u.im->icon_container = gtk_vbox_new(FALSE, 0); frame = gtk_frame_new(NULL); - gtk_frame_set_shadow_type(GTK_FRAME(frame), - (bm ? GTK_SHADOW_NONE : GTK_SHADOW_IN)); + gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_NONE); gtk_box_pack_start(GTK_BOX(gtkconv->u.im->icon_container), frame, FALSE, FALSE, 0); @@ -5874,16 +5861,13 @@ G_CALLBACK(icon_menu), gtkconv); gtk_widget_show(event); - gtkconv->u.im->icon = gtk_image_new_from_pixmap(pm, bm); + gtkconv->u.im->icon = gtk_image_new_from_pixbuf(scale); gtk_widget_set_size_request(gtkconv->u.im->icon, scale_width, scale_height); gtk_container_add(GTK_CONTAINER(event), gtkconv->u.im->icon); gtk_widget_show(gtkconv->u.im->icon); - g_object_unref(G_OBJECT(pm)); + g_object_unref(G_OBJECT(scale)); - if (bm) - g_object_unref(G_OBJECT(bm)); - gtk_box_pack_start(GTK_BOX(gtkconv->lower_hbox), gtkconv->u.im->icon_container, FALSE, FALSE, 0); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-05-02 01:44:22
|
Revision: 16122 Author: rlaager Date: 2006-05-01 18:44:14 -0700 (Mon, 01 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16122&view=rev Log Message: ----------- SF Patch #1479292 from resiak This cleans up the Ctrl-Tab and Ctrl-Shift-Tab handling so it's easier to understand. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-01 21:45:57 UTC (rev 16121) +++ trunk/src/gtkconv.c 2006-05-02 01:44:14 UTC (rev 16122) @@ -1732,46 +1732,27 @@ { GaimGtkConversation *next_gtkconv = NULL; GaimGtkWindow *win; - int index, i, total, found = 0; + int initial, i, total, diff; win = gtkconv->win; - index = gtk_notebook_page_num(GTK_NOTEBOOK(win->notebook), gtkconv->tab_cont); + initial = gtk_notebook_page_num(GTK_NOTEBOOK(win->notebook), + gtkconv->tab_cont); total = gaim_gtk_conv_window_get_gtkconv_count(win); + /* By adding total here, the moduli calculated later will always have two + * positive arguments. x % y where x < 0 is not guaranteed to return a + * positive number. + */ + diff = (forward ? 1 : -1) + total; - /* First check the tabs after (forward) or before (!forward) this position. */ - for (i = forward ? index + 1 : index - 1; - !found && (next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i)); - forward ? i++ : i--) { - if (i == -1) { - break; - } - + for (i = (initial + diff) % total; i != initial; i = (i + diff) % total) { + next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i); if (next_gtkconv->unseen_state > 0) - found = 1; + break; } - if (!found) { - /* Now check from the beginning up to (forward) or end back to (!forward) this position. */ - for (i = forward ? 0 : total - 1; - !found && (forward ? i < index : i >= 0) && - (next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i)); - forward ? i++ : i--) { - - if (next_gtkconv->unseen_state > 0) - found = 1; - } - - if (!found) { - /* Okay, just grab the next (forward) or previous (!forward) conversation tab. */ - if (forward) { - index++; - } - else { - index = (index == 0) ? total - 1 : index - 1; - } - if (!(next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, index))) - next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, 0); - } + if (i == initial) { /* no new messages */ + i = (i + diff) % total; + next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i); } if (next_gtkconv != NULL && next_gtkconv != gtkconv) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-05-03 04:12:41
|
Revision: 16130 Author: rlaager Date: 2006-05-02 21:12:35 -0700 (Tue, 02 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16130&view=rev Log Message: ----------- SF Patch #1480718 Fixes SF Bug #1473246 Close the search window when a conversation is closed, to prevent crashes. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-03 03:04:26 UTC (rev 16129) +++ trunk/src/gtkconv.c 2006-05-03 04:12:35 UTC (rev 16130) @@ -4424,6 +4424,10 @@ gaim_request_close_with_handle(gtkconv); gaim_notify_close_with_handle(gtkconv); + /* Close the "Find" dialog if it's open */ + if (gtkconv->dialogs.search) + gtk_widget_destroy(gtkconv->dialogs.search); + gtk_widget_destroy(gtkconv->tab_cont); g_object_unref(gtkconv->tab_cont); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2006-05-08 17:58:19
|
Revision: 16153 Author: thekingant Date: 2006-05-07 20:03:18 -0700 (Sun, 07 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16153&view=rev Log Message: ----------- 1. We were calling gtk_window_present() twice in a row when presenting conversation windows. 2. A function called "gaim_gtk_conv_window_raise()" should actually raise the window. This fixes a bug report somewhere complaining about how the message notification plugin was presenting the window and stealing focus when the "raise on new IM" pref was enabled. It MIGHT be prudent to add a "steal focus?" preference to the message notification plugin, but I bet we'd be fine without it. I don't really care either way. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-08 02:26:40 UTC (rev 16152) +++ trunk/src/gtkconv.c 2006-05-08 03:03:18 UTC (rev 16153) @@ -2497,7 +2497,6 @@ gaim_gtkconv_switch_active_conversation(conv); gaim_gtk_conv_window_switch_gtkconv(gtkconv->win, gtkconv); - gaim_gtk_conv_window_raise(gtkconv->win); gtk_window_present(GTK_WINDOW(gtkconv->win->window)); } @@ -7443,7 +7442,7 @@ void gaim_gtk_conv_window_raise(GaimGtkWindow *win) { - gtk_window_present(GTK_WINDOW(win->window)); + gdk_window_raise(GDK_WINDOW(win->window)); } void This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2006-05-09 00:24:48
|
Revision: 16161 Author: thekingant Date: 2006-05-08 17:24:39 -0700 (Mon, 08 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16161&view=rev Log Message: ----------- Make the gtk conv window raise thing work correctly. My bad. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-09 00:18:46 UTC (rev 16160) +++ trunk/src/gtkconv.c 2006-05-09 00:24:39 UTC (rev 16161) @@ -7442,7 +7442,7 @@ void gaim_gtk_conv_window_raise(GaimGtkWindow *win) { - gdk_window_raise(GDK_WINDOW(win->window)); + gdk_window_raise(GDK_WINDOW(win->window->window)); } void This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-05-12 20:21:44
|
Revision: 16181 Author: rlaager Date: 2006-05-12 13:21:35 -0700 (Fri, 12 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16181&view=rev Log Message: ----------- SF Patch #1475297 points out that the side tab width is too much for people with lower resolutions. We've had a couple complaints. I e-mailed gaim-devel and I don't remember any responses (nor do I see any in my e-mail archive). I'm changing the side tab with from 18 to 12. The submitter of that patch item suggested 10, but I compromised a bit. If you object to this, let me know (or commit something else). Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-12 03:45:47 UTC (rev 16180) +++ trunk/src/gtkconv.c 2006-05-12 20:21:35 UTC (rev 16181) @@ -7535,7 +7535,7 @@ g_object_set(G_OBJECT(gtkconv->tab_label), "ellipsize", PANGO_ELLIPSIZE_END, NULL); gtk_label_set_width_chars(GTK_LABEL(gtkconv->tab_label), 6); if (tabs_side) { - gtk_label_set_width_chars(GTK_LABEL(gtkconv->tab_label), MIN(g_utf8_strlen(tmp_lab, -1), 18)); + gtk_label_set_width_chars(GTK_LABEL(gtkconv->tab_label), MIN(g_utf8_strlen(tmp_lab, -1), 12)); } if (angle) gtk_label_set_angle(GTK_LABEL(gtkconv->tab_label), angle); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-05-21 02:58:12
|
Revision: 16194 Author: rlaager Date: 2006-05-20 19:58:03 -0700 (Sat, 20 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16194&view=rev Log Message: ----------- Part of SF Patch #1492122 from Sadrul Fix a small memory leak. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-18 20:53:03 UTC (rev 16193) +++ trunk/src/gtkconv.c 2006-05-21 02:58:03 UTC (rev 16194) @@ -544,6 +544,7 @@ gtk_widget_grab_focus(gtkconv->entry); if (strlen(clean) == 0) { + g_free(buf); g_free(clean); return; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-05-27 06:38:13
|
Revision: 16199 Author: rlaager Date: 2006-05-26 23:38:06 -0700 (Fri, 26 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16199&view=rev Log Message: ----------- Fix Launchpad Bug #46863 https://launchpad.net/bugs/46863 Ubuntu's default theme has a larger close icon than GNOME. This causes the tab close button to cut off part of the icon. This resolves it. It's from Epiphany, so I didn't test it extensively. I don't know how it behaves on older GTK+ versions. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-26 03:26:03 UTC (rev 16198) +++ trunk/src/gtkconv.c 2006-05-27 06:38:06 UTC (rev 16199) @@ -7533,7 +7533,7 @@ GtkWidget *close_image; GaimConversationType conv_type; const gchar *tmp_lab; - gint close_button_width, close_button_height, focus_width, focus_pad; + GtkRcStyle *rcstyle; gboolean tabs_side = FALSE; gint angle = 0; @@ -7559,20 +7559,15 @@ /* Close button. */ gtkconv->close = gtk_button_new(); - gtk_icon_size_lookup(GTK_ICON_SIZE_MENU, &close_button_width, &close_button_height); - if (gtk_check_version(2, 4, 2) == NULL) { - /* Need to account for extra padding around the gtkbutton */ - gtk_widget_style_get(GTK_WIDGET(gtkconv->close), - "focus-line-width", &focus_width, - "focus-padding", &focus_pad, - NULL); - close_button_width += (focus_width + focus_pad) * 2; - close_button_height += (focus_width + focus_pad) * 2; - } - gtk_widget_set_size_request(GTK_WIDGET(gtkconv->close), - close_button_width, close_button_height); + gtk_button_set_focus_on_click(GTK_BUTTON(gtkconv->close), FALSE); gtk_button_set_relief(GTK_BUTTON(gtkconv->close), GTK_RELIEF_NONE); + + rcstyle = gtk_rc_style_new (); + rcstyle->xthickness = rcstyle->ythickness = 0; + gtk_widget_modify_style(gtkconv->close, rcstyle); + gtk_rc_style_unref(rcstyle); + close_image = gtk_image_new_from_stock(GTK_STOCK_CLOSE, GTK_ICON_SIZE_MENU); gtk_widget_show(close_image); gtk_container_add(GTK_CONTAINER(gtkconv->close), close_image); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-05-29 17:12:10
|
Revision: 16200 Author: rlaager Date: 2006-05-29 10:11:53 -0700 (Mon, 29 May 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16200&view=rev Log Message: ----------- Reverting the tab close button code from Epiphany. It clearly isn't working properly either, though I thought it was before. Perhaps the Ubuntu folks changed the icon again? Anyway, clearly this code isn't any better, so, out it goes. It's sounding like the Ubuntu folks might revert the change and then figure out how to fix these things for real for the next release. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-05-27 06:38:06 UTC (rev 16199) +++ trunk/src/gtkconv.c 2006-05-29 17:11:53 UTC (rev 16200) @@ -7533,7 +7533,7 @@ GtkWidget *close_image; GaimConversationType conv_type; const gchar *tmp_lab; - GtkRcStyle *rcstyle; + gint close_button_width, close_button_height, focus_width, focus_pad; gboolean tabs_side = FALSE; gint angle = 0; @@ -7559,15 +7559,20 @@ /* Close button. */ gtkconv->close = gtk_button_new(); + gtk_icon_size_lookup(GTK_ICON_SIZE_MENU, &close_button_width, &close_button_height); + if (gtk_check_version(2, 4, 2) == NULL) { + /* Need to account for extra padding around the gtkbutton */ + gtk_widget_style_get(GTK_WIDGET(gtkconv->close), + "focus-line-width", &focus_width, + "focus-padding", &focus_pad, + NULL); + close_button_width += (focus_width + focus_pad) * 2; + close_button_height += (focus_width + focus_pad) * 2; + } + gtk_widget_set_size_request(GTK_WIDGET(gtkconv->close), + close_button_width, close_button_height); - gtk_button_set_focus_on_click(GTK_BUTTON(gtkconv->close), FALSE); gtk_button_set_relief(GTK_BUTTON(gtkconv->close), GTK_RELIEF_NONE); - - rcstyle = gtk_rc_style_new (); - rcstyle->xthickness = rcstyle->ythickness = 0; - gtk_widget_modify_style(gtkconv->close, rcstyle); - gtk_rc_style_unref(rcstyle); - close_image = gtk_image_new_from_stock(GTK_STOCK_CLOSE, GTK_ICON_SIZE_MENU); gtk_widget_show(close_image); gtk_container_add(GTK_CONTAINER(gtkconv->close), close_image); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sa...@us...> - 2006-07-20 17:54:21
|
Revision: 16530 Author: sadrul Date: 2006-07-20 10:54:08 -0700 (Thu, 20 Jul 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16530&view=rev Log Message: ----------- Memleak. Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-07-20 17:38:09 UTC (rev 16529) +++ trunk/src/gtkconv.c 2006-07-20 17:54:08 UTC (rev 16530) @@ -417,6 +417,7 @@ g_string_append_printf(s, "%s, ", (char *)l->data); else g_string_append_printf(s, "%s.", (char *)l->data); + g_list_free(text); } gaim_conversation_write(conv, NULL, s->str, GAIM_MESSAGE_NO_LOG, time(NULL)); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <rl...@us...> - 2006-07-28 12:20:03
|
Revision: 16590 Author: rlaager Date: 2006-07-28 05:19:56 -0700 (Fri, 28 Jul 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16590&view=rev Log Message: ----------- (03:00:12) chaosite: SIZE_OF_TIME_T in gtkconv.c:6533 as well (03:08:48) chaosite: rlaager: ping (03:09:22) chaosite: rlaager: svn says that SIZE_OF_TIME_T in log.c:609 is your commit (03:09:31) chaosite: rlaager: it should be SIZEOF_TIME_T Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-07-28 04:47:19 UTC (rev 16589) +++ trunk/src/gtkconv.c 2006-07-28 12:19:56 UTC (rev 16590) @@ -6530,7 +6530,7 @@ GAIM_SUBTYPE_LOG), #if SIZEOF_TIME_T == 4 gaim_value_new(GAIM_TYPE_INT)); -#elif SIZE_OF_TIME_T == 8 +#elif SIZEOF_TIME_T == 8 gaim_value_new(GAIM_TYPE_INT64)); #else # error Unknown size of time_t This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2006-08-17 04:45:15
|
Revision: 16807 Author: thekingant Date: 2006-08-16 21:45:11 -0700 (Wed, 16 Aug 2006) ViewCVS: http://svn.sourceforge.net/gaim/?rev=16807&view=rev Log Message: ----------- This function was used by the chat userlist buttons, which are gone Modified Paths: -------------- trunk/src/gtkconv.c Modified: trunk/src/gtkconv.c =================================================================== --- trunk/src/gtkconv.c 2006-08-17 03:50:32 UTC (rev 16806) +++ trunk/src/gtkconv.c 2006-08-17 04:45:11 UTC (rev 16807) @@ -1360,29 +1360,6 @@ } static void -chat_im_button_cb(GtkWidget *widget, GaimGtkConversation *gtkconv) -{ - GaimGtkChatPane *gtkchat; - GtkTreeIter iter; - GtkTreeModel *model; - GtkTreeSelection *sel; - char *name; - - gtkchat = gtkconv->u.chat; - - model = gtk_tree_view_get_model(GTK_TREE_VIEW(gtkchat->list)); - sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(gtkchat->list)); - - if (gtk_tree_selection_get_selected(sel, NULL, &iter)) - gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, CHAT_USERS_NAME_COLUMN, &name, -1); - else - return; - - chat_do_im(gtkconv, name); - g_free(name); -} - -static void ignore_cb(GtkWidget *w, GaimGtkConversation *gtkconv) { GaimConversation *conv = gtkconv->active_conv; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |