This modifies the behavious when pasting into the to, cc or bcc fields of a new draft.
Any text already in the input field is not automatically deleted. Rather the pasted
text is added to the already existing text. If the new contents of the email field now
matches as an email address (based on RegExpUtils.emailRegex().test()), then the address
is immediately tokenized. If the new input text doesn't match as an email, just append
the new text and wait for further input.
When APIRoot is using https, the port will forced to be 443 even when APIRoot
indicates another port. This is because of the line options.port = 443
overwriting the correct options.port extracted by url.parse. This is fixed by
removing the problematic line. The default port is still 443 if you look into
https.js. In case we want a different default port in the future, we can do
options.port = options.port || 443.
Summary:
Refactored signature preferences page to allow more signatures than the previous 1-1 mapping for signatures and accounts. Created a multi select dropdown of the accounts for which a certain signature is set as default for. Added a button into the draft header From field to toggle between saved signatures.
refactor(signatures): Add basic add/remove capabilities to static
refactor(signatures): Hooked up signature actions and signature store for basic functionality
fix(signatures): Cleaned up signature store and started on multiselectdropdown
fix(signatures): Add multi signature toggle select to multiselect dropdown
build(signatures): Built framework for multiselect dropdown
build(signatures): Toggle button functionality for dropdown
build(signatures): Build multi select from components and add debounce
refactor(signatures): Move signature actions and signature store into flux
fix(signatures): Styled composer signatures button/dropdown and fixed preferences checkmarks
build(signatures): Finish main functionality, about to refactor composer signature button into injected component
fix(signatures): Changed position styles
fix(signatures): Fixed background color for dropdown button when blurred
build(signatures): Began to write tests for signatures store, preferences and dropdown
Test Plan: Wrote tests for preferences signatures, signature store, signature composer dropdown and refactored tests for signature composer extension. For signature composer extension I removed applyTransformsToDraft and unapplyTransformsToDraft and tested by sending emails with signatures to different providers to make sure the <signature> tag caused problems.
Reviewers: bengotow, juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3073
Fixes#1393
The objects returned by `new Notification()` have a `.close()` method.
So we can just keep a list of notifications that have been sent, and
close them when that message has been read.
Conflicts:
internal_packages/unread-notifications/lib/main.es6
* Remove double negative from test label
It always takes me a second to read a double negative, and be sure I
understood correctly. It's also particularly troublesome for non-native
English speakers.
* Change pending unread notification stack to be a queue
Consider the case where a user launches N1, and has 3 unreads since
their last launch. Additionally, after N1 has launched, they begin
receiving a new mail every 2 seconds.
Current behavior would be a notification for 1 of the 3 unread emails,
then every 2 seconds a notification for the most recently received mail.
They would only finally receive notifications for the other 2 original
messages once they stopped getting new mail.
* Fix private key email-adder, add "no private key" error
The decrypt UI is seriously confusing some people. This commit
adds an error message that should at least stop them from trying
to decrypt a message without a private key to speak of. Also,
there was a dumb hardcoded true in validAddress.
* Adds incorrect passphrase notification; enables carriage return for popover
The passphrase popover was woefully inadequate. It didn't tell users
when they had the wrong password - it just closed without saying anything -
and you couldn't even use carriage return to submit the password.
This commit fixes those mistakes by buffing out passphrase-popover.cjsx.
* Adds private key popover to decrypt button
The decrypt UI was confusing and didn't provide the user with
an option to get a key imported from the message view. This
mondo commit adds an entirely new popover so that the user
never again will be forced to go to the preferences page.
* Adds more forgiving encrypted block parsing
* Overhauls decryption error handling
The decrypt UI didn't clearly communicate error messages from the
failure in PGPKeyStore.decrypt up to the user. This commit adds
nice error surfacing as well as some pretty colors.
* Fix encrypt modal key miscount error via getKeyContents coercion
On Linux and Windows, fs.watch double-triggers on some actions in
the key folder, for reasons that aren't super clear. This was causing
issues where the encrypt modal would report not having a key loaded
even though the key was totally loaded and saved. This commit sort
of kludgily forces the modal to run getKeyContents for every key
it has saved right before it returns them all. This would probably
be better fixed with a refactor the the PGP Keystore.
* remember to close popover, d'oh
* patch key picker modal styling for Linux and Windows
* response to review
When running against a custom Sync Engine, viewing the onboarding page
on startup does not make much sense. This here adds code that checks for
the `env` of the Nylas config and skips the onboarding if it is `local`
or `custom`.
The clean script fails since productName is "Nylas N1" which contains a
space and it appears to pkill 2 patterns. This is causing the script to
stop in my linux machine. Now the productName is wrapped with quotes to
prevent this from happening.
Summary:
when renaming nested labels, maintain nested path
fixes#2402
Test Plan: created nested labels and successfully tested in dev
Reviewers: juan
Reviewed By: juan
Subscribers: evan
Differential Revision: https://phab.nylas.com/D3028
Summary: Specs were failing on Linux, this diff fixes them.
Test Plan: Unit tests
Reviewers: evan, juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3029
* update icons
* style commit
* Debugs export function
The key Export function used to not successfully show items in
their directories and also depend on the most recent attachment
download location. This commit adds a new savedState attribute
just for Keybase keys and also handles the case where that value
is null.
* Forces delete to populate
fs.watch() was acting up and not triggering populates on deletes.
Now deleteKey() just triggers a populate.
* Re-enables decryption of attachments from Enigmail
Decryption of attachments was disabled in the Great Password Popover
Refactor of Early June 2016. This commit adds that feature back
(and makes some changes to getKeyContents to facilitate that
change).