[geary] Allow select-reply through message menu
- From: Robert Schroll <rschroll src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [geary] Allow select-reply through message menu
- Date: Fri, 24 Oct 2014 12:41:28 +0000 (UTC)
commit da881c3262793855f2a39cf65c63057de40a1702
Author: Robert Schroll <rschroll gmail com>
Date: Sun Oct 19 23:24:23 2014 -0400
Allow select-reply through message menu
Only use selection as quote if it is in the message whose message menu
was used.
https://bugzilla.gnome.org/show_bug.cgi?id=738187
src/client/application/geary-controller.vala | 34 ++++++++++++++-----------
1 files changed, 19 insertions(+), 15 deletions(-)
---
diff --git a/src/client/application/geary-controller.vala b/src/client/application/geary-controller.vala
index c621668..8d8910c 100644
--- a/src/client/application/geary-controller.vala
+++ b/src/client/application/geary-controller.vala
@@ -2062,6 +2062,19 @@ public class GearyController : Geary.BaseObject {
return true;
}
+ // message is the email from whose menu this reply or forward was triggered. If null,
+ // this was triggered from the headerbar or shortcut.
+ private void create_reply_forward_widget(ComposerWidget.ComposeType compose_type,
+ Geary.Email? message) {
+ string? quote;
+ Geary.Email? quote_message = main_window.conversation_viewer.get_selected_message(out quote);
+ if (message == null)
+ message = quote_message;
+ if (quote_message != message)
+ quote = null;
+ create_compose_widget(compose_type, message, quote);
+ }
+
private void create_compose_widget(ComposerWidget.ComposeType compose_type,
Geary.Email? referred = null, string? quote = null, string? mailto = null,
bool is_draft = false) {
@@ -2194,36 +2207,27 @@ public class GearyController : Geary.BaseObject {
}
private void on_reply_to_message(Geary.Email message) {
- create_compose_widget(ComposerWidget.ComposeType.REPLY, message);
+ create_reply_forward_widget(ComposerWidget.ComposeType.REPLY, message);
}
private void on_reply_to_message_action() {
- string? quote;
- Geary.Email? message = main_window.conversation_viewer.get_selected_message(out quote);
- if (message != null)
- create_compose_widget(ComposerWidget.ComposeType.REPLY, message, quote);
+ create_reply_forward_widget(ComposerWidget.ComposeType.REPLY, null);
}
private void on_reply_all_message(Geary.Email message) {
- create_compose_widget(ComposerWidget.ComposeType.REPLY_ALL, message);
+ create_reply_forward_widget(ComposerWidget.ComposeType.REPLY_ALL, message);
}
private void on_reply_all_message_action() {
- string? quote;
- Geary.Email? message = main_window.conversation_viewer.get_selected_message(out quote);
- if (message != null)
- create_compose_widget(ComposerWidget.ComposeType.REPLY_ALL, message, quote);
+ create_reply_forward_widget(ComposerWidget.ComposeType.REPLY_ALL, null);
}
private void on_forward_message(Geary.Email message) {
- create_compose_widget(ComposerWidget.ComposeType.FORWARD, message);
+ create_reply_forward_widget(ComposerWidget.ComposeType.FORWARD, message);
}
private void on_forward_message_action() {
- string? quote;
- Geary.Email? message = main_window.conversation_viewer.get_selected_message(out quote);
- if (message != null)
- create_compose_widget(ComposerWidget.ComposeType.FORWARD, message, quote);
+ create_reply_forward_widget(ComposerWidget.ComposeType.FORWARD, null);
}
private void on_find_in_conversation_action() {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]