commit 6216b7e249699bea8074e11fefdb9884a9762ba8 from: Oliver Lowe date: Sun Dec 28 08:09:25 2025 UTC Drop Organization header support Only valid in usenet which is practically no more While here delete dead GTK utility code commit - 5470555b5a6f5f52231b028509f6149ed9dd6378 commit + 6216b7e249699bea8074e11fefdb9884a9762ba8 blob - 935e6dfcb83b5786d245bd4e8d35026b69d7f4cc blob + 2498eb5601a81c84e0e17d5dbb77f48068fa31c6 --- src/compose.c +++ src/compose.c @@ -5262,13 +5262,10 @@ static gchar *compose_get_header(Compose *compose) g_free(from_name); g_free(from_address); - /* To */ compose_add_headerfield_from_headerlist(compose, header, "To", ", "); - /* Cc */ compose_add_headerfield_from_headerlist(compose, header, "Cc", ", "); - /* Subject */ str = gtk_editable_get_chars(GTK_EDITABLE(compose->subject_entry), 0, -1); if (*str != '\0' && !IS_IN_CUSTOM_HEADER("Subject")) { @@ -5281,38 +5278,21 @@ static gchar *compose_get_header(Compose *compose) } g_free(str); - /* Message-ID */ if (compose->msgid != NULL && strlen(compose->msgid) > 0) { g_string_append_printf(header, "Message-ID: <%s>\n", compose->msgid); } if (compose->remove_references == FALSE) { - /* In-Reply-To */ if (compose->inreplyto && compose->to_list) g_string_append_printf(header, "In-Reply-To: <%s>\n", compose->inreplyto); - - /* References */ if (compose->references) g_string_append_printf(header, "References: %s\n", compose->references); } - /* Followup-To */ compose_add_headerfield_from_headerlist(compose, header, "Followup-To", ","); - - /* Reply-To */ compose_add_headerfield_from_headerlist(compose, header, "Reply-To", ", "); - /* Organization */ - if (compose->account->organization && - strlen(compose->account->organization) && - !IS_IN_CUSTOM_HEADER("Organization")) { - compose_convert_header(compose, buf, sizeof(buf), - compose->account->organization, - strlen("Organization: "), FALSE); - g_string_append_printf(header, "Organization: %s\n", buf); - } - /* Program version and system info */ if (compose->account->gen_xmailer && g_slist_length(compose->to_list) && !IS_IN_CUSTOM_HEADER("X-Mailer")) { blob - 7764c94b04c1f5ed5dcce7a3310b1cc554a97a70 blob + 37d1786a69dfb9b611b0c3e404562540ccd96a44 --- src/gtk/combobox.c +++ src/gtk/combobox.c @@ -177,64 +177,6 @@ void combobox_set_popdown_strings(GtkComboBoxText *com (const gchar*) cur->data); } -gboolean combobox_set_value_from_arrow_key(GtkComboBox *combobox, - guint keyval) -/* used from key_press events upon gtk_combo_box_entry with one text column - (gtk_combo_box_text_new() and with GtkComboBoxEntry's for instance), - make sure that up and down arrow keys behave the same as old with old - gtk_combo widgets: - when pressing Up: - if the current text in entry widget is not found in combo list, - get last value from combo list - if the current text in entry widget exists in combo list, - get prev value from combo list - when pressing Down: - if the current text in entry widget is not found in combo list, - get first value from combo list - if the current text in entry widget exists in combo list, - get next value from combo list -*/ -{ - gboolean valid = FALSE; - - cm_return_val_if_fail(combobox != NULL, FALSE); - - /* reproduce the behaviour of old gtk_combo_box */ - GtkTreeModel *model = gtk_combo_box_get_model(combobox); - GtkTreeIter iter; - - if (gtk_combo_box_get_active_iter(combobox, &iter)) { - /* if current text is in list, get prev or next one */ - - if (keyval == GDK_KEY_Up) { - gchar *text = NULL; - gtk_tree_model_get(model, &iter, 0, &text, -1); - valid = gtkut_tree_model_text_iter_prev(model, &iter, text); - g_free(text); - } else - if (keyval == GDK_KEY_Down) - valid = gtk_tree_model_iter_next(model, &iter); - - if (valid) - gtk_combo_box_set_active_iter(combobox, &iter); - - } else { - /* current text is not in list, get first or next one */ - - if (keyval == GDK_KEY_Up) - valid = gtkut_tree_model_get_iter_last(model, &iter); - else - if (keyval == GDK_KEY_Down) - valid = gtk_tree_model_get_iter_first(model, &iter); - - if (valid) - gtk_combo_box_set_active_iter(combobox, &iter); - } - - /* return TRUE if value could be set */ - return valid; -} - static void store_set_sensitive(GtkTreeModel *model, GtkTreeIter *iter, const gboolean sensitive) { blob - 39b57da17758370f0d50748cd6fb68a97715a14e blob + 64d5b72eff18953cfcae0fa2675b806256fac211 --- src/gtk/combobox.h +++ src/gtk/combobox.h @@ -14,7 +14,7 @@ * * You should have received a copy of the GNU General Public License * along with this program. If not, see . - * + * */ #ifndef __COMBOBOX_H__ @@ -66,8 +66,6 @@ void combobox_unset_popdown_strings(GtkComboBoxText *c void combobox_set_popdown_strings(GtkComboBoxText *combobox, GList *list); -gboolean combobox_set_value_from_arrow_key(GtkComboBox *combobox, - guint keyval); void combobox_set_sensitive (GtkComboBox *combobox, const guint index, const gboolean sensitive); blob - 47cf181ea76416503d8c7c175f7ce55b59dedb34 blob + 9458d540e861137e33c3ee5d8c58e1261bd60ffa --- src/gtk/gtkutils.c +++ src/gtk/gtkutils.c @@ -760,44 +760,6 @@ void label_window_destroy(GtkWidget *window) gtk_widget_destroy(window); } -GtkWidget *gtkut_account_menu_new(GList *ac_list, - GCallback callback, - gpointer data) -{ - GList *cur_ac; - GtkWidget *optmenu; - GtkListStore *menu; - GtkTreeIter iter; - PrefsAccount *account; - gchar *name; - - cm_return_val_if_fail(ac_list != NULL, NULL); - - optmenu = gtkut_sc_combobox_create(NULL, FALSE); - menu = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(optmenu))); - - for (cur_ac = ac_list; cur_ac != NULL; cur_ac = cur_ac->next) { - account = (PrefsAccount *) cur_ac->data; - if (account->name) - name = g_strdup_printf("%s: %s <%s>", - account->account_name, - account->name, - account->address); - else - name = g_strdup_printf("%s: %s", - account->account_name, - account->address); - COMBOBOX_ADD_ESCAPED(menu, name, account->account_id); - g_free(name); - } - gtk_combo_box_set_active(GTK_COMBO_BOX(optmenu), 0); - - if( callback != NULL ) - g_signal_connect(G_OBJECT(optmenu), "changed", callback, data); - - return optmenu; -} - /*! *\brief Tries to find a focused child using a lame strategy */ @@ -962,51 +924,6 @@ gboolean get_tag_range(GtkTextIter *iter, return TRUE; } -GtkWidget *face_get_from_header(const gchar *o_face) -{ - gchar face[2048]; - gchar *face_png; - gsize pngsize; - GdkPixbuf *pixbuf; - GError *error = NULL; - GdkPixbufLoader *loader = gdk_pixbuf_loader_new (); - GtkWidget *image; - - if (o_face == NULL || strlen(o_face) == 0) - return NULL; - - strncpy2(face, o_face, sizeof(face)); - - unfold_line(face); /* strip all whitespace and linebreaks */ - remove_space(face); - - face_png = g_base64_decode(face, &pngsize); - debug_print("---------------------- loaded face png\n"); - - if (!gdk_pixbuf_loader_write (loader, face_png, pngsize, &error) || - !gdk_pixbuf_loader_close (loader, &error)) { - g_warning("loading face failed"); - g_object_unref(loader); - g_free(face_png); - return NULL; - } - g_free(face_png); - - pixbuf = g_object_ref(gdk_pixbuf_loader_get_pixbuf(loader)); - - g_object_unref(loader); - - if ((gdk_pixbuf_get_width(pixbuf) != 48) || (gdk_pixbuf_get_height(pixbuf) != 48)) { - g_object_unref(pixbuf); - g_warning("wrong_size"); - return NULL; - } - - image = gtk_image_new_from_pixbuf(pixbuf); - g_object_unref(pixbuf); - return image; -} - static gboolean _combobox_separator_func(GtkTreeModel *model, GtkTreeIter *iter, gpointer data) { blob - 66a70f2a745d207117a2ea576a9d4fae310d0d22 blob + d510a5432e155767b77e27ebdb980d8357c3a9e4 --- src/gtk/gtkutils.h +++ src/gtk/gtkutils.h @@ -152,10 +152,6 @@ void gtkut_widget_init (void); void gtkut_widget_set_app_icon (GtkWidget *widget); void gtkut_widget_set_composer_icon (GtkWidget *widget); -GtkWidget *gtkut_account_menu_new (GList *ac_list, - GCallback callback, - gpointer data); - PangoFontDescription *default_font(void); void gtkut_widget_set_small_font_size(GtkWidget *widget); GtkWidget *gtkut_get_focused_child (GtkContainer *parent); @@ -170,8 +166,6 @@ gboolean get_tag_range(GtkTextIter *iter, GtkTextIter *start_iter, GtkTextIter *end_iter); -GtkWidget *face_get_from_header(const gchar *o_face); - GtkWidget *gtkut_sc_combobox_create(GtkWidget *eventbox, gboolean focus_on_click); gboolean gtkut_tree_model_text_iter_prev(GtkTreeModel *model, blob - 67e322cb0e51c37b47816a90e2281d560c019eac blob + cc6abf18334f9a5bbed1b88e9f75f6e7b90a12ef --- src/message_search.c +++ src/message_search.c @@ -379,16 +379,6 @@ static gboolean key_pressed(GtkWidget *widget, GdkEven if (event && (event->keyval == GDK_KEY_Return || event->keyval == GDK_KEY_KP_Enter)) { message_search_execute(FALSE); } - - if (event && (event->keyval == GDK_KEY_Down || event->keyval == GDK_KEY_Up)) { - if (search_window.body_entry_has_focus) { - combobox_set_value_from_arrow_key( - GTK_COMBO_BOX(search_window.body_entry), - event->keyval); - return TRUE; - } - } - return FALSE; } blob - 2c449acb282f331a646f5544b34041fd89e85d49 blob + c3f1faba918bd0ad7c2ad5e81f6b98e768ff3eb7 --- src/prefs_account.c +++ src/prefs_account.c @@ -90,7 +90,6 @@ typedef struct BasicPage GtkWidget *name_entry; GtkWidget *addr_entry; - GtkWidget *org_entry; GtkWidget *serv_frame; GtkWidget *serv_table; @@ -298,9 +297,6 @@ static PrefParam basic_param[] = { {"address", NULL, &tmp_ac_prefs.address, P_STRING, &basic_page.addr_entry, prefs_set_data_from_entry, prefs_set_entry}, - {"organization", NULL, &tmp_ac_prefs.organization, P_STRING, - &basic_page.org_entry, prefs_set_data_from_entry, prefs_set_entry}, - {"protocol", NULL, &tmp_ac_prefs.protocol, P_ENUM, (GtkWidget **)&basic_page.protocol_optmenu, prefs_account_protocol_set_data_from_optmenu, @@ -610,7 +606,6 @@ static void basic_create_widget_func(PrefsPage * _page GtkWidget *table1; GtkWidget *name_entry; GtkWidget *addr_entry; - GtkWidget *org_entry; GtkWidget *serv_frame; GtkWidget *vbox2; @@ -682,11 +677,6 @@ static void basic_create_widget_func(PrefsPage * _page gtk_label_set_xalign(GTK_LABEL (label), 1.0); gtk_grid_attach(GTK_GRID(table1), label, 0, 1, 1, 1); - label = gtk_label_new (_("Organization")); - gtk_widget_show (label); - gtk_label_set_xalign(GTK_LABEL (label), 1.0); - gtk_grid_attach(GTK_GRID(table1), label, 0, 2, 1, 1); - name_entry = gtk_entry_new (); gtk_widget_show (name_entry); gtk_grid_attach(GTK_GRID(table1), name_entry, 1, 0, 1, 1); @@ -699,12 +689,6 @@ static void basic_create_widget_func(PrefsPage * _page gtk_widget_set_hexpand(addr_entry, TRUE); gtk_widget_set_halign(addr_entry, GTK_ALIGN_FILL); - org_entry = gtk_entry_new (); - gtk_widget_show (org_entry); - gtk_grid_attach(GTK_GRID(table1), org_entry, 1, 2, 1, 1); - gtk_widget_set_hexpand(org_entry, TRUE); - gtk_widget_set_halign(org_entry, GTK_ALIGN_FILL); - vbox2 = gtkut_get_options_frame(vbox1, &serv_frame, _("Server information")); hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 8); @@ -867,7 +851,6 @@ static void basic_create_widget_func(PrefsPage * _page page->name_entry = name_entry; page->addr_entry = addr_entry; - page->org_entry = org_entry; page->serv_frame = serv_frame; page->serv_table = serv_table; blob - c80726d9346cffbc22be9100f822a69cc2d7d6f7 blob + e80527ed7024734e1db8706f3ece21865ce28b63 --- src/prefs_account.h +++ src/prefs_account.h @@ -51,7 +51,6 @@ struct _PrefsAccount /* Personal info */ gchar *name; gchar *address; - gchar *organization; /* Server info */ RecvProtocol protocol;