+
+static void key_pressed(GtkWidget *widget, GdkEventKey *event, gpointer data)
+{
+ MainWindow *mainwin = (MainWindow *)data;
+
+ if (!mainwin) return;
+ if (event && (event->keyval == GDK_Control_L) || (event->keyval == GDK_Control_R)) {
+ main_window_set_toolbar_reply_buttons(mainwin, TRUE);
+ }
+}
+
+static void key_released(GtkWidget *widget, GdkEventKey *event, gpointer data)
+{
+ MainWindow *mainwin = (MainWindow *)data;
+
+ if (!mainwin) return;
+ if (event && (event->keyval == GDK_Control_L) || (event->keyval == GDK_Control_R)) {
+ main_window_set_toolbar_reply_buttons(mainwin, FALSE);
+ }
+}
+
+void main_window_set_toolbar_reply_buttons(MainWindow *mainwin, gboolean keymod)
+{
+ gboolean quote = (prefs_common.reply_with_quote ^ keymod);
+
+ gtk_widget_hide(quote ? mainwin->reply_btn : mainwin->reply_quote_btn);
+ gtk_widget_show(!quote ? mainwin->reply_btn : mainwin->reply_quote_btn);
+ gtk_widget_hide(quote ? mainwin->replyall_btn : mainwin->replyall_quote_btn);
+ gtk_widget_show(!quote ? mainwin->replyall_btn : mainwin->replyall_quote_btn);
+ gtk_widget_hide(quote ? mainwin->replysender_btn : mainwin->replysender_quote_btn);
+ gtk_widget_show(!quote ? mainwin->replysender_btn : mainwin->replysender_quote_btn);
+}
+
+static void focus_out (GtkWidget *widget, GdkEventFocus *event, gpointer data)
+{
+ MainWindow *mainwin = (MainWindow *)data;
+
+ main_window_set_toolbar_reply_buttons(mainwin, FALSE);
+
+}