Closed
Bug 1053774
Opened 10 years ago
Closed 10 years ago
The Email button in the Loop UI on desktop opens gmail inside the popup if gmail is registered to handle mailto:
Categories
(Hello (Loop) :: Client, defect)
Hello (Loop)
Client
Tracking
(firefox32 unaffected, firefox33 unaffected, firefox34+ verified, firefox35+ verified)
Tracking | Status | |
---|---|---|
firefox32 | --- | unaffected |
firefox33 | --- | unaffected |
firefox34 | + | verified |
firefox35 | + | verified |
People
(Reporter: pauly, Assigned: mikedeboer)
References
Details
(Whiteboard: [investigation][loop-uplift][fig:verified])
Attachments
(3 files, 1 obsolete file)
117.96 KB,
image/png
|
Details | |
457.03 KB,
image/png
|
Details | |
9.08 KB,
patch
|
MattN
:
review+
lmandel
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
STR:
1. Go to Tools/Options/Applications in Firefox and set 'mailto'='always ask'
2. Click on the Loop icon/Email
3. Choose gmail or yahoo
4. Click again on the Loop icon --> you're asked to login
5. Login with your account --> compose message window appeared having the title and the body auto completed
6. Enter the receiver's address and send the mail with the invitation
7. Click again on the Loop icon
Actual results:
See attached
Reporter | ||
Comment 1•10 years ago
|
||
Reporter | ||
Comment 2•10 years ago
|
||
Tested on 34.0a1 (2014-08-14), Win 7 x64.
Note: everything's fine if using Thunderbird as the mail client
Reporter | ||
Comment 3•10 years ago
|
||
The URLs are generated again after restarting the browser.
Comment 4•10 years ago
|
||
Updating title to reflect what this is really about.
Summary: Unable to generate new urls after sending invitations via email → The Email button in the Loop UI on desktop opens gmail inside the popup if gmail is registered to handle mailto:
Comment 6•10 years ago
|
||
So the code currently use a button and changes window.location by a click handler.
We tried to see if replacing that by an link with target="_blank" would solve the problem but it seems the behavior here is unexpected.
When using a target="_blank" link to open a webmail, the webmail page loads in the current tab.
We probably want to fix that problem first.
Comment 7•10 years ago
|
||
I think we either need to get bug 1054290 fixed, or we need to punch through a whole to gecko, and interrogate the external app handlers (?) to see where they are going to open a page or app. Maybe just interrogating them is enough.
Updated•10 years ago
|
Target Milestone: --- → mozilla34
Updated•10 years ago
|
Whiteboard: [investigation]
Comment 8•10 years ago
|
||
(In reply to Mark Banner (:standard8) from comment #7)
> I think we either need to get bug 1054290 fixed, or we need to punch through
> a whole to gecko, and interrogate the external app handlers (?) to see where
> they are going to open a page or app. Maybe just interrogating them is
> enough.
What about calling window.open("mailto:whatever")?
Flags: needinfo?(standard8)
Comment 9•10 years ago
|
||
(In reply to :Gavin Sharp [email: gavin@gavinsharp.com] from comment #8)
> (In reply to Mark Banner (:standard8) from comment #7)
> > I think we either need to get bug 1054290 fixed, or we need to punch through
> > a whole to gecko, and interrogate the external app handlers (?) to see where
> > they are going to open a page or app. Maybe just interrogating them is
> > enough.
>
> What about calling window.open("mailto:whatever")?
That works for the gmail case, but opens a new blank tab when opening the email in Thunderbird.
Flags: needinfo?(standard8)
Comment 10•10 years ago
|
||
I thought that would have been addressed by bug 241972 / bug 343921, but I suppose this path doesn't go through nsExternalAppHandler?
Updated•10 years ago
|
Target Milestone: mozilla34 → mozilla35
Comment 12•10 years ago
|
||
From bug 1065540:
[Tracking Requested - why for this release]:
This appears to be a pretty severe problem for people who have webmail configured as their default mail application. Loop is scheduled to ship with 34, so it is important that we don't have this usability issue.
tracking-firefox34:
--- → ?
Whiteboard: [investigation] → [investigation][loop-uplift]
Updated•10 years ago
|
status-firefox32:
--- → unaffected
status-firefox33:
--- → unaffected
status-firefox34:
--- → affected
status-firefox35:
--- → affected
tracking-firefox35:
--- → +
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → mdeboer
OS: Windows 7 → All
Hardware: x86_64 → All
Assignee | ||
Updated•10 years ago
|
Status: NEW → ASSIGNED
Assignee | ||
Comment 13•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Attachment #8490817 -
Flags: review?(MattN+bmo)
Assignee | ||
Comment 14•10 years ago
|
||
Now without ui-showcase changes
Attachment #8490817 -
Attachment is obsolete: true
Attachment #8490817 -
Flags: review?(MattN+bmo)
Attachment #8490823 -
Flags: review?(MattN+bmo)
Assignee | ||
Updated•10 years ago
|
Iteration: --- → 35.2
Points: --- → 1
Flags: firefox-backlog+
Whiteboard: [investigation][loop-uplift] → [investigation][loop-uplift] [qa+]
Assignee | ||
Comment 15•10 years ago
|
||
Marco, can you add this bug to the current iteration?
Flags: needinfo?(mmucci)
Comment 17•10 years ago
|
||
Comment on attachment 8490823 [details] [diff] [review]
Patch v1: use nsIExternalProtocolService to send emails
Review of attachment 8490823 [details] [diff] [review]:
-----------------------------------------------------------------
r+ if you rename sendEmail and switch to loadURI and re-test. An automated test would be good but since I think using mailto is temporary (or at least should be IMO due to lack of use by many webmail services) it's probably okay without it.
Note that I didn't test this so I trust that nsIExternalProtocolService actually uses Firefox's mailto dialog and therefore supports webmail.
::: browser/components/loop/MozLoopAPI.jsm
@@ +465,5 @@
> + *
> + * @param {String} subject Subject of the email to send
> + * @param {String} body Body message of the email to send
> + */
> + sendEmail: {
I think the method name implies actually sending an email (as opposed to mailto's action of composing an email). Perhaps "composeEmail" would be better?
@@ +469,5 @@
> + sendEmail: {
> + enumerable: true,
> + writable: true,
> + value: function(subject, body) {
> + let mailtoUrl = "mailto:?subject=" + encodeURIComponent(subject) + "&" +
s/mailtoUrl/mailtoURL/ to match Firefox conventions
@@ +471,5 @@
> + writable: true,
> + value: function(subject, body) {
> + let mailtoUrl = "mailto:?subject=" + encodeURIComponent(subject) + "&" +
> + "body=" + encodeURIComponent(body);
> + extProtocolSvc.loadUrl(CommonUtils.makeURI(mailtoUrl));
loadUrl is deprecated so you should use loadURI but then after reading https://mxr.mozilla.org/mozilla-central/source/uriloader/exthandler/nsIExternalProtocolService.idl#100 , I'm not sure about the second argument but if you tested loadUrl then it seems like null would work since that's basically what it passes to loadURI.
::: browser/components/loop/content/js/panel.jsx
@@ +364,5 @@
> handleEmailButtonClick: function(event) {
> this.handleLinkExfiltration(event);
> +
> + navigator.mozLoop.sendEmail(__("share_email_subject3"),
> + __("share_email_body3", {callUrl: this.state.callUrl}));
add spaces inside curly braces for readability like the example at https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Methods
Attachment #8490823 -
Flags: review?(MattN+bmo) → review+
Updated•10 years ago
|
Flags: qe-verify+
Whiteboard: [investigation][loop-uplift] [qa+] → [investigation][loop-uplift]
Assignee | ||
Comment 18•10 years ago
|
||
Pushed to fx-team with comments addressed and properly generated ui-showcase.js: https://hg.mozilla.org/integration/fx-team/rev/40b16e2d0fa7
Assignee | ||
Comment 19•10 years ago
|
||
Pushed a follow-up bustage fix: https://hg.mozilla.org/integration/fx-team/rev/dae5e0f456d2
Updated•10 years ago
|
QA Contact: anthony.s.hughes
https://hg.mozilla.org/mozilla-central/rev/40b16e2d0fa7
https://hg.mozilla.org/mozilla-central/rev/dae5e0f456d2
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Comment 21•10 years ago
|
||
Paul, please verify that this is fixed is the latest Nightly.
QA Contact: anthony.s.hughes → paul.silaghi
Reporter | ||
Comment 22•10 years ago
|
||
Now the email clients are opened outside of the Loop popup.
Verified fixed 35.0a1 (2014-09-21) Win 7, OS X 10.9.5, Ubuntu 12.10.
Filed bug 1070965 for remaining issues.
Status: RESOLVED → VERIFIED
Comment 23•10 years ago
|
||
Mike - Now that this has been verified on m-c, can you please request approval to uplift to Aurora?
Flags: needinfo?(mdeboer)
Reporter | ||
Comment 24•10 years ago
|
||
(In reply to Lawrence Mandel [:lmandel] from comment #23)
> Mike - Now that this has been verified on m-c, can you please request
> approval to uplift to Aurora?
gmail is still not working properly, see the followup bug
Assignee | ||
Comment 25•10 years ago
|
||
Comment on attachment 8490823 [details] [diff] [review]
Patch v1: use nsIExternalProtocolService to send emails
Approval Request Comment
[Feature/regressing bug #]: Loop
[User impact if declined]: When the user chooses to share a Loop URL by clicking the 'Email' button and uses a webmail client to send emails, the webmail mail compose page is loaded inside the panel, which is jarring UX. This patch solves that.
[Describe test coverage new/current, TBPL]: Baked a couple of days on m-c, verified by QA
[Risks and why]: minor
[String/UUID change made/needed]: n/a
Attachment #8490823 -
Flags: approval-mozilla-aurora?
Flags: needinfo?(mdeboer)
Comment 26•10 years ago
|
||
Comment on attachment 8490823 [details] [diff] [review]
Patch v1: use nsIExternalProtocolService to send emails
Aurora+
Attachment #8490823 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 27•10 years ago
|
||
Needs rebasing for Aurora uplift.
Flags: needinfo?(mdeboer)
Keywords: branch-patch-needed
Comment 28•10 years ago
|
||
This should probably wait to get uplifted with the rest of the [loop-uplift] bugs in batch to avoid rebasing hell if this gets rebased.
Comment 29•10 years ago
|
||
Paul can you please test this again across platforms using the following Try-server build?
http://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/rjesup@wgate.com-f9eb2cbac352
Flags: needinfo?(paul.silaghi)
Whiteboard: [investigation][loop-uplift] → [investigation][loop-uplift][fig:verifyme]
Reporter | ||
Comment 30•10 years ago
|
||
(In reply to Anthony Hughes, QA Mentor (:ashughes) from comment #29)
> Paul can you please test this again across platforms using the following
> Try-server build?
> http://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/rjesup@wgate.com-
> f9eb2cbac352
Verified fixed Win 7, OS X 10.9.5, Ubuntu 13.04
Flags: needinfo?(paul.silaghi)
Whiteboard: [investigation][loop-uplift][fig:verifyme] → [investigation][loop-uplift][fig:verified]
Assignee | ||
Comment 31•10 years ago
|
||
We'll uplift all the contacts patches in one go. Thanks for taking a look at this, Ryan!
Assignee | ||
Updated•10 years ago
|
Flags: needinfo?(mdeboer)
Updated•10 years ago
|
Keywords: branch-patch-needed
Comment 32•10 years ago
|
||
Updated•10 years ago
|
Reporter | ||
Comment 33•10 years ago
|
||
Don't know what's wrong, but the yahoo emails are no longer pre-populated. Everything's fine with gmail, thunderbird. 36.0a1 (2014-10-20)
Flags: needinfo?(mdeboer)
Comment 34•10 years ago
|
||
(In reply to Paul Silaghi, QA [:pauly] from comment #33)
> Don't know what's wrong, but the yahoo emails are no longer pre-populated.
> Everything's fine with gmail, thunderbird. 36.0a1 (2014-10-20)
Hi Pauly -- This does not appear to be a recent regression, and there's a good chance it's not due to a change in our code. Since yahoo is a web app, yahoo likely changed their site. I tested Nightly from 9/30 (which I believe you used to verify this as fixed), and I see the same problem (yahoo emails aren't pre-populated). Can you open a new bug to track down what we need to do to get this working again? Thanks.
Flags: needinfo?(paul.silaghi)
Reporter | ||
Comment 35•10 years ago
|
||
Flags: needinfo?(paul.silaghi)
Assignee | ||
Updated•10 years ago
|
Flags: needinfo?(mdeboer)
You need to log in
before you can comment on or make changes to this bug.
Description
•