Mercurial > pidgin
diff src/gtkconv.c @ 9188:b6e3dcb23de0
[gaim-migrate @ 9983]
" This patch adds "Show Timestamps" to the Options menu
in the conversation window, and makes both the menu
option and the F2 shortcut per-conversation in-line
with the other options in the Options menu.
This adds translateable strings so should not be
applied during string freeze :)" --Stu Tomlinson
for the record, Mark objects to this:
"For the record, I don't think this pref should be
per-conversation. But I also don't think Enable Logging,
Enable Sounds and the toolbar thing should be
per-conversation, either." --Mark Doliner
I however think that while his arguement may have merit, rfe 967008 lends
credence to it, that the 4 options should be handled consistently, ie
either all should have both a global and a per-conversation or none of them
should. This makes thinks consistent, and so i think it should go in while
Mark's point should get further discussion.
committer: Tailor Script <tailor@pidgin.im>
| author | Luke Schierer <lschiere@pidgin.im> |
|---|---|
| date | Sun, 06 Jun 2004 01:42:21 +0000 |
| parents | 3e2ea5b69605 |
| children | a10359a27789 |
line wrap: on
line diff
--- a/src/gtkconv.c Sun Jun 06 01:24:56 2004 +0000 +++ b/src/gtkconv.c Sun Jun 06 01:42:21 2004 +0000 @@ -1045,6 +1045,26 @@ } static void +menu_timestamps_cb(gpointer data, guint action, GtkWidget *widget) +{ + GaimConvWindow *win = (GaimConvWindow *)data; + GaimConversation *conv; + GaimGtkConversation *gtkconv; + + conv = gaim_conv_window_get_active_conversation(win); + + if (!conv) + return; + + gtkconv = GAIM_GTK_CONVERSATION(conv); + + gtkconv->show_timestamps = + gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)); + gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml), + gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget))); +} + +static void chat_do_im(GaimConversation *conv, const char *who) { GaimPluginProtocolInfo *prpl_info = NULL; @@ -1584,12 +1604,6 @@ return TRUE; break; - case GDK_F2: - gaim_prefs_set_bool("/gaim/gtk/conversations/show_timestamps", - !gaim_prefs_get_bool("/gaim/gtk/conversations/show_timestamps")); - return TRUE; - break; - } } @@ -2645,6 +2659,9 @@ GTK_CHECK_MENU_ITEM(gtkwin->menu.show_formatting_toolbar), gtkconv->show_formatting_toolbar); + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkwin->menu.show_timestamps), + gtkconv->show_timestamps); + /* * We pause icons when they are not visible. If this icon should * be animated then start it back up again.lll @@ -3275,6 +3292,7 @@ { N_("/Options/Enable _Logging"), NULL, menu_logging_cb, 0, "<CheckItem>" }, { N_("/Options/Enable _Sounds"), NULL, menu_sounds_cb, 0, "<CheckItem>" }, { N_("/Options/Show Formatting _Toolbar"), NULL, menu_toolbar_cb, 0, "<CheckItem>" }, + { N_("/Options/Show T_imestamps"), "F2", menu_timestamps_cb, 0, "<CheckItem>" }, }; static const int menu_item_count = @@ -3376,6 +3394,9 @@ gtkwin->menu.show_formatting_toolbar = gtk_item_factory_get_widget(gtkwin->menu.item_factory, N_("/Options/Show Formatting Toolbar")); + gtkwin->menu.show_timestamps = + gtk_item_factory_get_widget(gtkwin->menu.item_factory, + N_("/Options/Show Timestamps")); generate_send_as_items(win, NULL); @@ -4330,6 +4351,12 @@ if (gtkconv->show_formatting_toolbar) gtk_widget_show(gtkconv->toolbar); + gtkconv->show_timestamps = gaim_prefs_get_bool( + "/gaim/gtk/conversations/show_timestamps"); + + gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml), + gtkconv->show_timestamps); + g_signal_connect_swapped(G_OBJECT(pane), "focus", G_CALLBACK(gtk_widget_grab_focus), gtkconv->entry);
