mail
mail copied to clipboard
Email account signature
What Happened
Cannot find where to set email account signature
Expected Behavior
Should be able to set an email signature for each email account setup
Steps to Reproduce
Hard to try explain how to reproduce, as I don't know what to click on in order to find where to set the signature ;-)
Logs
No logs available
Platform Information
Elementary OS 6 Daily Builds with latest updates
In Mail > Settings > Account Settings, there's no options to make any account changes. Presumably, this is where the signature field would go.
Would love to see this too!
Do I understand correctly currently there is no possibility of setting email signatures?
100% correct I cannot see any way of adding any signatures. loads of fundamentals are still missing here
+1 for adding signature to email account. I want to move from evolution to elementary mail if that's possible..
In Mail > Settings > Account Settings, there's no options to make any account changes. Presumably, this is where the signature field would go.
This is where the option appeared in the older version, and also where it still appears in Geary (the original source of the elementary fork).
So this is one of those (many) features that are still missing after the recent change of email backend.
This is crucial for me to be able to switch to elementary Mail, as a signature is required for my work. If this were a sack exchange type thing, I'd 1up this. :)
@mhosannah This, and many other reasons, is why I use Geary - it has a feature set very similar to old Mail, including signatures, while being stable and reliable. It has a few limitations too, since it is developed for GNOME (e.g. automatic dark theme switching does not work for me, or manual resizing of panes, as it's designed to work on phones and tablets too).
If this were a sack exchange type thing, I'd 1up this. :)
This is what the thumbs-up emoji (:+1: ) is used for on the first post :wink:
Can someone confirm this still doesn't work? For me autocompletion works when I add contacts to the local address book using GNOME Contacts installed from Flathub. Maybe it's an issue when using online accounts? Although I currently can't see a way of adding contacts from online accounts without importing from a file.
@leolost2605 I still have both issues on OS 7 (recent fresh install) - neither autocompletion nor signatures (this issue) don't work with just elementary software (I did not try to install GNOME Contacts).
@janxkoci Oh sorry for the confusion I wanted to comment on #743. No idea how i managed to write this here instead 😅
I've started work on adding signature support but I have some design questions regarding how to add signatures. Now I thought of two possible ways:
- In the mail client -> right click the respective account in the left most pane -> context menu with a "Manage Signature" entry -> will open a dialog where you can set/remove/edit the signature. This would have the advantage to keep the signature which is only relevant for mails in the mail client and also without adding a whole new preferences page.
- In the online accounts settings -> click on edit account -> instead of getting right away to the server settings add a page with the option to go to server settings or signature settings -> click on signature settings and here you can set/remove/edit the signature. This would have the advantage that it could be expanded upon in the future with some more settings.
Thoughts on these ideas, which would you prefer or any new ideas? Also @danirabbit what are your thoughts on this?
so just my 2c worth, as much as I would prefer it to be in the online accounts section so that all configurations happen in once localized place and the email client simply just handles email. This make logical sense to me. However, also knowing that when there is a new version of eOS I have to reinstall form scratch (Which I love) I will need to backup these settings as I would hate to have to setup my signature every time I re-install my OS.
With that in mind it makes more sense to then have it inside the app, as I can then backup the entire mail folder and have all my signatures in tact.
Which ever way you choose, can I at least request that the signature be able to handle both text and images? ;-)
Really excited about this.
I think in the client makes sense here. Adding an account is probably something you want to do once and forget whereas a signature may be something you change periodically. So it makes more sense to me that this is more of a client setting than an account setting
@leolost2605 so I looked at a couple other mail clients and both Apple Mail and Mailspring let you create as many signatures as you want and then you can select which signature you'd like to use by default for each account. In both, signatures are available from the Compose window as well as settings which seems handy and discoverable. So in terms of UI, I think:
- [ ] Adding a signatures menubutton to the toolbar in the compose window with menuitems for "None", titles for any pre-saved signatures, and an item "Edit Signatures…" that opens the dialog to manage signatures
- [ ] A menuitem added to the main app menu, "Edit Signatures…" that opens the dialog to manage signatures. This probably implies that we want an app Action for opening the signatures dialog since it would be available from multiple places in the UI
- [ ] A dialog window for editing signatures
What do you think about this as a prototype?
var start_header = new Gtk.HeaderBar () {
show_title_buttons = false,
title_widget = new Gtk.Label ("")
};
start_header.add_css_class (Granite.STYLE_CLASS_FLAT);
start_header.add_css_class (Granite.STYLE_CLASS_DEFAULT_DECORATION);
start_header.pack_start (new Gtk.WindowControls (START));
var personal_label = new Gtk.Label ("Personal") {
halign = Gtk.Align.START
};
var professional_label = new Gtk.Label ("Professional") {
halign = Gtk.Align.START
};
var signature_list = new Gtk.ListBox () {
vexpand = true
};
signature_list.append (personal_label);
signature_list.append (professional_label);
var add_box = new Gtk.Box (HORIZONTAL, 0);
add_box.append (new Gtk.Image.from_icon_name ("list-add-symbolic"));
add_box.append (new Gtk.Label ("Create Signature"));
var add_button = new Gtk.Button () {
child = add_box
};
add_button.add_css_class (Granite.STYLE_CLASS_FLAT);
var start_actionbar = new Gtk.ActionBar ();
start_actionbar.add_css_class (Granite.STYLE_CLASS_FLAT);
start_actionbar.pack_start (add_button);
var start_box = new Gtk.Box (VERTICAL, 0);
start_box.add_css_class (Granite.STYLE_CLASS_SIDEBAR);
start_box.append (start_header);
start_box.append (signature_list);
start_box.append (start_actionbar);
var title_label = new Gtk.Label ("Title") {
halign = Gtk.Align.START,
margin_start = 9
};
title_label.add_css_class (Granite.STYLE_CLASS_TITLE_LABEL);
var end_header = new Gtk.HeaderBar () {
show_title_buttons = false,
title_widget = new Gtk.Label ("")
};
end_header.add_css_class (Granite.STYLE_CLASS_FLAT);
end_header.add_css_class (Granite.STYLE_CLASS_DEFAULT_DECORATION);
end_header.pack_start (title_label);
end_header.pack_end (new Gtk.WindowControls (END));
var entry = new Gtk.Entry () {
margin_start = 12,
margin_end = 12,
placeholder_text = "For example “Work” or “Personal”"
};
var text_view = new Gtk.TextView () {
top_margin = 3,
left_margin = 3,
right_margin = 3,
margin_top = 9,
margin_start = 12,
margin_end = 12,
margin_bottom = 12,
vexpand = true
};
text_view.add_css_class (Granite.STYLE_CLASS_FRAME);
var delete_button = new Gtk.Button.from_icon_name ("edit-delete-symbolic") {
tooltip_text = "Delete"
};
delete_button.add_css_class (Granite.STYLE_CLASS_ERROR);
var default_menubutton = new Gtk.MenuButton () {
always_show_arrow = true,
has_frame = false,
label = ("Set Default For…")
};
var end_actionbar = new Gtk.ActionBar ();
end_actionbar.add_css_class (Granite.STYLE_CLASS_FLAT);
end_actionbar.pack_start (delete_button);
end_actionbar.pack_end (default_menubutton);
var end_box = new Gtk.Box (VERTICAL, 0);
end_box.add_css_class (Granite.STYLE_CLASS_VIEW);
end_box.append (end_header);
end_box.append (entry);
end_box.append (new Granite.HeaderLabel ("Signature") { margin_start = 12 });
end_box.append (text_view);
end_box.append (end_actionbar);
var action_sizegroup = new Gtk.SizeGroup (VERTICAL);
action_sizegroup.add_widget (start_actionbar);
action_sizegroup.add_widget (end_actionbar);
var paned = new Gtk.Paned (HORIZONTAL) {
start_child = start_box,
end_child = end_box,
resize_start_child = false,
shrink_end_child = false,
shrink_start_child = false
};
var main_window = new Gtk.ApplicationWindow (this) {
child = paned,
default_height = 300,
default_width = 500,
title = "MyApp",
titlebar = new Gtk.Grid () { visible = false }
};
main_window.present ();
Edit: updated because I forgot to put a way to edit the title
@danirabbit That looks like the way to go! I really like the design and thanks for the protoype :)
@selwynorren first of all thanks for the feedback! Secondly unfortunately I have to warn you to get your hopes up too high (yet). We currently aren't even able to add inline images to messages and as I plan to use the same editor, the first iteration will probably be without images :( However in theory support is there so one just has to implement it which (again in theory) should be possible to get done without lots of changes. I guess I'll work on that next then :)
Its all good, just really excited that this is being worked on at the moment
~I think a user should be able to set the same signature as default for multiple accounts. However I didn't find a good way to make this work and show for what accounts a signature is set as default by using only a combobox/menu. @danirabbit any ideas on this?~ Nvm found a way