Closed Bug 760644 Opened 12 years ago Closed 12 years ago

E-mail composition should have a "Delivery Status Notification" option, like Thunderbird does

Categories

(SeaMonkey :: MailNews: Composition, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
seamonkey2.13

People

(Reporter: gizmobro, Assigned: ewong)

References

Details

Attachments

(1 file, 4 obsolete files)

User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120429 Firefox/12.0 SeaMonkey/2.9.1
Build ID: 20120429011004

Steps to reproduce:

I opened e-mail, clicked on "Compose," and selected Options from the menu bar.



Actual results:

There was a "Return Receipt" option, but no "Delivery Status Notification" option.



Expected results:

There should be a "Delivery Status Notification" option under the "Return Receipt" option. Thunderbird has that option, and it is very useful for tracking mail delivery with several ISP's. So, why doesn't SeaMonkey have that option?
OS: Windows 7 → All
Hardware: x86_64 → All
That's basically bug 93085 for which the partial check-in with attachment 281195 [details] [diff] [review] created both the backend as well as the additional menu item in Thunderbird (but not SeaMonkey):

(Quoting David :Bienvenu from bug 93085 comment #61)
> The Seamonkey folks will need to decide if they want to add this to their UI
> - right now, it's just in TB.

Changes in mail/ affected MsgComposeCommands.js, messengercompose.xul, and for the strings messengercompose.dtd, as well as installer additions.

There is ongoing discussion for further changes, thus it's not quite clear to me what the remaining purpose of that bug is. Anyway, this bug here could be used for SM parity with Thunderbird to the current implementation, thus I'd tend to confirm it rather than to dupe it against bug 93085.

[On a side note: Early versions of the suite still had a global setting for requesting return receipts and/or delivery status notifications, which were removed per bug 38308.]
Depends on: 93085
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: 4xp
Version: SeaMonkey 2.9 Branch → Trunk
Assignee: nobody → ewong
Status: NEW → ASSIGNED
Attachment #632985 - Flags: review?(neil)
Comment on attachment 632985 [details] [diff] [review]
Add DSN option to compose Option menu (v1)

> +<!ENTITY dsnMenu.label           "Delivery Status Notification">
> +<!ENTITY dsnMenu.accesskey       "D">

Edmund, that accesskey definition collides later with: 

<!ENTITY fileCarbonCopyCmd.label "Send a Copy To">
<!ENTITY fileCarbonCopyCmd.accesskey "d">

Both are in the "Options" menu.
Unless I'm missing something, you should be able to change fileCarbonCopyCmd to "S" and then free up "D" for dsnMenu, or is there any other conflict?
Changed D to l as the accesskey for the DSN
Attachment #632985 - Attachment is obsolete: true
Attachment #632985 - Flags: review?(neil)
Attachment #633007 - Flags: review?(neil)
Comment on attachment 633007 [details] [diff] [review]
Add DSN option to compose Option menu (v2)

> <!ENTITY returnReceiptMenu.label "Return Receipt">
> <!ENTITY returnReceiptMenu.accesskey "t">
>+
>+<!ENTITY dsnMenu.label           "Delivery Status Notification">
>+<!ENTITY dsnMenu.accesskey       "l">
Nit: Could add blank line after the dnsMenu options, but it doesn't make sense to add a blank line before them.
Perhaps "N" or "S" would be a better accesskey?
(I wonder why Return Receipt doesn't use "R"...)

>+	var msgCompFields = gMsgCompose.compFields;
Tab character crept in here.

>+    msgCompFields.DSN = ! msgCompFields.DSN;
Nit: no space after !

>+    gDSNOptionChanged = true;
You seem to be missing the rest of the gDSNOptionChanged code.
Attachment #633007 - Flags: review?(neil) → review-
For comparison, Thunderbird uses "N" for dsnMenu.accesskey (others are identical).
(In reply to neil@parkwaycc.co.uk from comment #6)
> Comment on attachment 633007 [details] [diff] [review]
> Add DSN option to compose Option menu (v2)
> 
> > <!ENTITY returnReceiptMenu.label "Return Receipt">
> > <!ENTITY returnReceiptMenu.accesskey "t">
> >+
> >+<!ENTITY dsnMenu.label           "Delivery Status Notification">
> >+<!ENTITY dsnMenu.accesskey       "l">
> Nit: Could add blank line after the dnsMenu options, but it doesn't make
> sense to add a blank line before them.
> Perhaps "N" or "S" would be a better accesskey?
> (I wonder why Return Receipt doesn't use "R"...)
Well "S" used to be used by "Spellcheck As You Type" before it moved out of the Options menu.
Attachment #633007 - Attachment is obsolete: true
Attachment #633386 - Flags: review?(neil)
> +var gDSNOptionChanged;
Any reason why you aren't positioning this together with gReceiptOptionChanged;
.....
> +  gDSNOptionChanged = false;
Any reason why you aren't positioning this together with gReceiptOptionChanged = false;

> You seem to be missing the rest of the gDSNOptionChanged code.
You're still missing several bits like this chunk here:
https://bugzilla.mozilla.org/attachment.cgi?id=281195&action=diff#mozilla/mail/components/compose/content/MsgComposeCommands.js_sec6
Comment on attachment 633386 [details] [diff] [review]
Add DSN option to compose Option menu (v3)

> <!ENTITY returnReceiptMenu.label "Return Receipt">
> <!ENTITY returnReceiptMenu.accesskey "t">
>+<!ENTITY dsnMenu.label           "Delivery Status Notification">
[Don't need to line these up, it's not file style.]

>+<!ENTITY dsnMenu.accesskey       "l">
[Access key hasn't changed :-( ]

>+function ToggleDSN(aTarget)
In addition to what Ratty said, this belongs after ToggleReturnReceipt.
Attachment #633386 - Flags: review?(neil)
(In reply to neil@parkwaycc.co.uk from comment #11)

> >+<!ENTITY dsnMenu.accesskey       "l">
> [Access key hasn't changed :-( ]

Someone forgot to qrefresh the patch.  ;/
Attachment #633386 - Attachment is obsolete: true
Attachment #633759 - Flags: review?(neil)
Comment on attachment 633759 [details] [diff] [review]
Add DSN option to compose Option menu (v4)

>+          var prevDSN = prevIdentity.DSN;
>           var prevAttachVCard = prevIdentity.attachVCard;
> 
>           if (prevIdentity.doCc)
>             prevCc += prevIdentity.doCcList;
> 
>           if (prevIdentity.doBcc)
>             prevBcc += prevIdentity.doBccList;
> 
>           var newReplyTo = gCurrentIdentity.replyTo;
>           var newCc = "";
>           var newBcc = "";
>           var newReceipt = gCurrentIdentity.requestReturnReceipt;
>+          var newDSN = gCurrentIdentity.DSN;
The Thunderbird code has a bug; these two should be .requestDSN (but msgCompFields.DSN is correct). r=me with that fixed.

>@@ -3392,8 +3418,9 @@ function getPref(aPrefName, aIsComplex)
>     case Components.interfaces.nsIPrefBranch.PREF_INT:
>       return Services.prefs.getIntPref(aPrefName);
>     case Components.interfaces.nsIPrefBranch.PREF_STRING:
>       return Services.prefs.getCharPref(aPrefName);
>     default: // includes nsIPrefBranch.PREF_INVALID
>       return null;
>   }
> }
>+
Oops ;-)
Attachment #633759 - Flags: review?(neil) → review+
Fixed nits.
Attachment #633759 - Attachment is obsolete: true
Attachment #633897 - Flags: review+
Pushed to comm-central:
http://hg.mozilla.org/comm-central/rev/d4e85c946f4c
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
No longer blocks: TB2SM
Target Milestone: --- → seamonkey2.13
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: