Bug 1093366 - Properly destroy apps with "chrome" property but no navigation.
Bug 1084216 - [Email] v2.0-specific quoting fixes

In bug 1084216 on v2.0 email we are seeing a problem where mailcomposer
generates encoded MIME words inside quotes and the yahoo.co.jp server
is performing a rewrite that adds backslashes in very specific
circumstances.  (Specifically, when a sufficiently large attachment
is attached.)

This fix consists of upstream fixes directly applied to the GELAM built
libraries.  Specifically, we are taking the core of the following
commits.  And note that the mechanism I used was just to copy and paste
the modified functions wholesale from a coherent commit; I did not
attempt to do clever processing.  Specifically, we're talking about the
state at:
https://raw.githubusercontent.com/andris9/mailcomposer/f0d4edba3a7735e8ef1b31f531abfd55633ff2fd/lib/mailcomposer.js

But the individual conceptual commits are:

- a commit on the way to _encodePartialMime word in the next comit:
https://github.com/andris9/mailcomposer/commit/6c6b5210e5ed406e1c8843d0b4c9bf2afbbed782#diff-17e37864e5d9b9e5ff32cb7ac29abd65R561

- _encodePartialMimeWord which adds smarts on top of encodeMimeWord by
detecting space delimiting and encoding on a per word basis.  So it
encodes "foo bar baz" as three separate words rather than a single big
word:
https://github.com/andris9/mailcomposer/commit/f0d4edba3a7735e8ef1b31f531abfd55633ff2fd

- don't put the name in quotes if we're doing MIME word encoding:
https://github.com/andris9/mailcomposer/commit/c723d3f882031b4633d0707c8ec94a22b83bd647

- group support/refactoring.  We don't actually use this logic at all,
it was just safer/saner to copy-and-paste the refactoring that included
convertAddress.  The transform is relative straightforward and mechanical:
https://github.com/andris9/mailcomposer/commit/1dabfee6435a76dae9e3cf2a9095f90f09946ac2#diff-17e37864e5d9b9e5ff32cb7ac29abd65R407

Note that this patch does include some extra whitespace changes.  I used
emacs to do the change and my settings nuked the trailing whitespace.  I
tried fairly diligently to undo the whitespace changes but it became a
nightmare and since this is not the first time I've run into this, I've
decided we're just keeping the whitespace changes since it makes things
easier in the future too.
Bug 1099374 - Add the target attribute to links
Revert "Merge pull request #26125 from nullaus/bug1077595"

This reverts commit a2d1cbfa62f3880c15c84215bdc5fdad4e537486.
bug 1077595 -- With fixed unit test. a=testonly
Merge pull request #26423 from nullaus/v2.0

bug 1077595 -- With fixed unit test. a=testonly
Merge pull request #26272 from crh0716/1099374_v2.0

Bug 1099374 - Add the target attribute to links r=eragonj
Merge pull request #26172 from asutherland/email2.0-quoting-fixes

Bug 1084216 - [Email] v2.0-specific quoting fixes. r=jrburke, a=bajaj
Merge pull request #26150 from etiennesegonzac/bug-1093366

Bug 1093366 - Properly destroy apps with "chrome" property but no navigation
Bug 1095818 v2.1 - [email] app startup by notification goes to message list instead of message reader
Bug 834530 - Make the TonePlayer handle the channel sounds will be played on r=drs

(cherry picked from commit 20a56c3cf6ea6b730d05d7a8cfa06e178cd5717c)

Conflicts:
        apps/callscreen/js/calls_handler.js
        apps/callscreen/js/index.js
        apps/callscreen/test/unit/calls_handler_test.js
        apps/communications/dialer/js/dialer.js
        apps/communications/dialer/js/dialer.js
        apps/communications/dialer/test/unit/keypad_test.js
        apps/communications/dialer/test/unit/tone_player_test.js
        apps/emergency-call/index.html
        apps/emergency-call/js/dialer.js
        apps/emergency-call/js/keypad.js
        apps/emergency-call/manifest.webapp
        apps/emergency-call/test/unit/keypad_test.js
        apps/sharedtest/test/unit/dialer/telephony_messages_test.js
        build/jshint/xfail.list
        shared/js/dialer/keypad.js
        shared/js/dialer/telephony_messages.js
        shared/js/dialer/tone_player.js
        shared/test/unit/mocks/dialer/mock_calls_handler.js
        shared/test/unit/mocks/mock_audio.js
Bug 1092362 - Use the default audio channel when playing audible tones outside of calls r=drs,francisco

(cherry picked from commit e327daf01fac1e5fbe2ba732c26e3a21db32443a)