Mercurial > pidgin
changeset 24084:3ab88169a2c2
Provide a preference to allow users to keep their status message when
changing their status. Thus, users who want Twitter/Facebook/"MSN"-style
"personal messages" can get the right functionality, while those who want
messages related to their current status can get the right functionality.
Fixes #7033
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Wed, 10 Sep 2008 19:20:30 +0000 |
parents | fffcfbcc5792 |
children | f869a6e43a12 1c45897c79fc |
files | pidgin/gtkprefs.c pidgin/gtksavedstatuses.c pidgin/gtkstatusbox.c |
diffstat | 3 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/pidgin/gtkprefs.c Wed Sep 10 04:12:59 2008 +0000 +++ b/pidgin/gtkprefs.c Wed Sep 10 19:20:30 2008 +0000 @@ -1005,6 +1005,12 @@ keyboard_shortcuts(ret); + /* Status selector options */ + vbox = pidgin_make_frame(ret, _("Status Selector")); + pidgin_prefs_checkbox(_("Keep the status message when the status is changed"), + PIDGIN_PREFS_ROOT "/status/keep_status_message", vbox); + + gtk_widget_show_all(ret); g_object_unref(sg); return ret;
--- a/pidgin/gtksavedstatuses.c Wed Sep 10 04:12:59 2008 +0000 +++ b/pidgin/gtksavedstatuses.c Wed Sep 10 19:20:30 2008 +0000 @@ -1913,6 +1913,7 @@ purple_prefs_add_none(PIDGIN_PREFS_ROOT "/status/dialog"); purple_prefs_add_int(PIDGIN_PREFS_ROOT "/status/dialog/width", 550); purple_prefs_add_int(PIDGIN_PREFS_ROOT "/status/dialog/height", 250); + purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/status/keep_status_message", FALSE); } void
--- a/pidgin/gtkstatusbox.c Wed Sep 10 04:12:59 2008 +0000 +++ b/pidgin/gtkstatusbox.c Wed Sep 10 19:20:30 2008 +0000 @@ -2715,7 +2715,8 @@ gtk_widget_show_all(status_box->vbox); status_box->typing = g_timeout_add(TYPING_TIMEOUT, (GSourceFunc)remove_typing_cb, status_box); gtk_widget_grab_focus(status_box->imhtml); - gtk_imhtml_clear(GTK_IMHTML(status_box->imhtml)); + if (!purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/status/keep_status_message")) + gtk_imhtml_clear(GTK_IMHTML(status_box->imhtml)); } else {