Mercurial > pidgin
diff src/conversation.c @ 1587:69a004b5820a
[gaim-migrate @ 1597]
requested keybindings, and also handle nick format changes better
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Fri, 16 Mar 2001 07:30:14 +0000 |
parents | 78effb5b2e4b |
children | b4e54a752676 |
line wrap: on
line diff
--- a/src/conversation.c Fri Mar 16 02:59:54 2001 +0000 +++ b/src/conversation.c Fri Mar 16 07:30:14 2001 +0000 @@ -644,10 +644,33 @@ gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); } } + if (display_options & OPT_DISP_ONE_WINDOW) { + if (event->keyval == GDK_Left) { + gtk_notebook_prev_page(GTK_NOTEBOOK(convo_notebook)); + gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); + } else if (event->keyval == GDK_Right) { + gtk_notebook_next_page(GTK_NOTEBOOK(convo_notebook)); + gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); + } else if (event->keyval == GDK_Tab) { + GList *cnv = conversations; + struct conversation *c; + while (cnv) { + c = cnv->data; + if (c->unseen) + break; + cnv = cnv->next; + c = NULL; + } + if (c) { + gtk_notebook_set_page(GTK_NOTEBOOK(convo_notebook), + g_list_index(conversations, c)); + } + gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); + } + } } return TRUE; - } @@ -1403,13 +1426,13 @@ if (!GTK_WIDGET_REALIZED(label)) gtk_widget_realize(label); gdk_font_unref(style->font); - style->font = label->style->font; - gdk_font_ref(style->font); + style->font = gdk_font_ref(label->style->font); style->fg[0].red = 0xcccc; style->fg[0].green = 0x0000; style->fg[0].blue = 0x0000; gtk_widget_set_style(label, style); gtk_style_unref(style); + c->unseen = TRUE; } g_free(smiley); @@ -1815,10 +1838,10 @@ return; style = gtk_style_new(); gdk_font_unref(style->font); - style->font = label->style->font; - gdk_font_ref(style->font); + style->font = gdk_font_ref(label->style->font); gtk_widget_set_style(label, style); gtk_style_unref(style); + c->unseen = FALSE; } @@ -2169,3 +2192,10 @@ conversations = m; } } + +void set_convo_tab_label(struct conversation *c, char *text) +{ + gtk_label_set_text(GTK_LABEL(gtk_notebook_get_tab_label(GTK_NOTEBOOK(convo_notebook), + gtk_notebook_get_nth_page(GTK_NOTEBOOK(convo_notebook), + g_list_index(conversations, c)))), text); +}