Commit graph

2550 commits

Author SHA1 Message Date
Ben Gotow 52e8e57e4a perf(autolinker): Use requestIdleCallback to fix hanging on large bodies 2016-03-23 19:03:21 -07:00
Juan Tejada b82fccffe5 fix(date-utils): Fix isPastDate using moment 2016-03-23 18:44:23 -07:00
Juan Tejada 2e860f97ec fix(specs): Fix specs for account store token initialization 2016-03-23 18:10:15 -07:00
Juan Tejada e40f4c58fd fix(snooze): Correctly display snoozed until label 2016-03-23 18:00:46 -07:00
Juan Tejada 3b3f0c0c81 fix(send-later): Close popover in inline composer when msg scheduled 2016-03-23 17:46:24 -07:00
Juan Tejada d93178893e fix(popover): Reduce animation length to 100ms 2016-03-23 17:43:43 -07:00
Juan Tejada 9a800bf4ef fix(styles): Fix styles for attachment and upload items 2016-03-23 17:16:25 -07:00
Jackie Luo be9c616840 fix(composer-emoji): Return null if no matching node is found 2016-03-23 17:01:14 -07:00
Jackie Luo a8e5d9948e fix(composer-emoji): Fix setBaseAndExtent bug 2016-03-23 16:48:35 -07:00
Ben Gotow 412a228ba1 fix(mixpanel): Consolidate reply / replyAll actions 2016-03-23 16:02:30 -07:00
Ben Gotow 866de90f74 fix(tokens): Don't assume that keytar is sync, don't wipe until next save 2016-03-23 15:56:34 -07:00
Juan Tejada 5f559d596c fix(signatures): Fix signature switching between accounts in composer 2016-03-23 15:23:13 -07:00
Ben Gotow 4a8a22e588 fix(qs): Handle query subscription errors, => ES6 2016-03-23 11:49:47 -07:00
Juan Tejada ed1f12d916 fix(attachments): Fix error handling when saving uploads to disk
- Fixes sentry 11705
2016-03-22 18:57:56 -07:00
Dakota Nelson c9c81782c3 Add extensibility in composer recipient chips
Summary:
Allow for injection into the composer's list of recipients to indicate
something about each recipient (i.e. for the PGP plugin, allow an
indicator as to whether or not each recipient has a PGP key
available)

Test Plan: Tested locally

Reviewers: juan

Reviewed By: juan

Subscribers: bengotow

Differential Revision: https://phab.nylas.com/D2761
2016-03-22 17:08:54 -07:00
Ben Gotow 2007ddf0ba fix(attachments): Add warning for ENOSPC as well 2016-03-22 16:37:24 -07:00
Ben Gotow 1e0717b801 fix(attachments): Present filesystem access errors 2016-03-22 16:28:36 -07:00
Ben Gotow c265cf0dfa fix(drafts): Formalize draft factory, add reply "behaviors" #1722
Summary:
This diff implements a behavior change described in https://github.com/nylas/N1/issues/1722.

Reply buttons should prefer to focus an existing draft in reply to the same message, if one is pristine, altering it as necessary to switch between reply / reply-all. If no pristine reply is already there, it creates one.

Reply keyboard shortcuts should do the same, but more strictly - the shortcuts should switch between reply / reply-all for an existing draft regardless of whether it's pristine.

This diff also cleans up the DraftStore and moves all the draft creation itself to a new DraftFactory object. This makes it much easier to see what's going on in the DraftStore, and I also refactored away the "newMessageWithContext" method, which was breaking the logic for Reply vs Forward between a bunch of different helper methods and was hard to follow.

Test Plan: They're all wrecked. Will fix after concept is greenlighted

Reviewers: evan, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D2776
2016-03-22 15:47:51 -07:00
Juan Tejada 7e6141fb47 🎨(composer): Reduce contenteditable min height 2016-03-22 14:51:38 -07:00
Juan Tejada 0f9e70cde7 fix(tasks): Properly handle DraftNotFoundError in DestroyDraftTask
- Fix reference to actual DestroyDraftTask class inside
  syncback-draft-task
2016-03-22 14:34:09 -07:00
Juan Tejada 1d4e4612d5 feat(popover): Add subtle ease-in animation when opening popover
- Closes popover on window resize:
  - Re rendering popover on window resize will be a bit more tricky because
    the FixedPopover only receives an origin rect. The one who
    dispatches the action has the responsability of re dispatching when
    the window resizes
- Fixes tiny behavior in send later popover
2016-03-22 13:45:07 -07:00
Ben Gotow df354aa50e fix(readme): Add --enable-logging flag 2016-03-22 12:21:25 -07:00
Juan Tejada 5aa2b24d72 fix(message-list-toolbar): Fix observable for selection & focused thread 2016-03-22 11:28:55 -07:00
Juan Tejada 8f864e76e3 fix(attachments): Update fn name in ImageAttachmentComponent 2016-03-22 11:28:55 -07:00
Ben Gotow 8ff89dbf48 Merge pull request #1790 from mbilker/fix-mistake
Fix my mistake with AutoUpdateManager
2016-03-22 00:56:06 -07:00
Jackie Luo 4afcc0501f 🎨(theme-picker): Fix styling for non-Retina displays 2016-03-21 19:35:47 -07:00
Ben Gotow 9e3dbd3873 fix(template): Rewrite in ES6, add missing windowTypes 2016-03-21 18:25:50 -07:00
Juan Tejada fce1673aac feat(download-all): Adds download-all button + style updates, more ES6
Summary:
- Adds initial version of download all button
- Converts attachments plugin to ES6 and adds updated styling
- Updates quoted text button
- #905, #1712

Test Plan: - Unit + manual

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2769
2016-03-21 18:23:26 -07:00
Ben Gotow 510e417cb3 fix(tray): Use total count, not unread count, for tray icon 2016-03-21 17:36:18 -07:00
Ben Gotow 4ddbf1faae es6(tasks): Convert all remaining tasks to ES6
Summary: after refactoring some things last week and spending time futsing with coffeescript, I’m pretty convinced it’s worth moving important parts of the app to ES6 to be able to use ESLint as part of our dev workflow

Test Plan: Run existing tests, tested manually. Did not convert the tests in this diff, breaking one part at a time!

Reviewers: evan, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D2768
2016-03-21 16:50:10 -07:00
Juan Tejada 687597134d feat(selection): Add new display for selection count + update toolbar
Summary:
- New behavior is that the in split mode, you will perform actions on
  the selection via the MessageListToolbar (the toolbar positioned above
  the message list)
- Refactored and moved around a bunch of code to achieve this:
  - Mostly renaming stuff and moving stuff around and removing some
    duplication
  - Update naming of toolbar role to a single role, and update relevant code
  - Converted and refactored a bunch of code into ES6, specifically to reuse the code for the ThreadActionsToolbar at the 2 locations
  - Deprecated MultiselectActionBar in favor of MultiselectToolbar
  - Deprecated old roles
- Punted the animation for the stackable cards in the selection display for now.
- #370

Test Plan: - Manual and unit tests

Reviewers: evan, drew, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2756
2016-03-21 12:20:11 -07:00
Ben Gotow cc7317d3f7 fix(composer): Refactor header actions, clean up layout
Summary:
WIP

Remove the mode prop from everywhere, use NylasEnv.isComposerWindow() instead

Test Plan: Run updated tests

Reviewers: drew, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2766
2016-03-21 11:32:48 -07:00
mbilker 6c36f54a60 fix(auto-update): mistakenly used remote.dialog
I forgot that the `AutoUpdateManager` is run from the main process
2016-03-18 22:56:08 -04:00
Jackie Luo 38d9c41c0b fix(theme-picker): Add tabIndex to click to dismiss 2016-03-18 18:12:55 -07:00
Ben Gotow a88c7db3a5 Merge pull request #1783 from mbilker/change-dialog-call
Use `remote` exports instead of `remote.require` for dialog
2016-03-18 17:42:31 -07:00
Ben Gotow 8626b006eb bump(version): Notes for 0.4.16 patch, master to 0.4.17 2016-03-18 17:03:27 -07:00
Ben Gotow c849212250 log(sync-state): Send Account State Delta to mixpanel 2016-03-18 15:09:00 -07:00
Juan Tejada ea48721a85 🎨(query-subscription): Update query subscription
Summary:
- Applies code changes that we discussed with @bengotow when debugging
  #1327
- Minor refactoring and reorganization + update specs

Test Plan: - Unit tests

Reviewers: evan, bengotow

Reviewed By: bengotow

Subscribers: bengotow

Differential Revision: https://phab.nylas.com/D2612
2016-03-18 14:33:18 -07:00
Ben Gotow 9aba847a92 fix(onboarding): Focus first field when showing settings #1696 2016-03-18 14:03:37 -07:00
Jackie Luo 815dc58e3a fix(ui-taiga): Remove border-bottom in two-pane mode 2016-03-18 13:48:14 -07:00
Jackie Luo 96186631cd fix(ui-taiga): Show active list item in single-pane mode (#1751) 2016-03-18 13:42:32 -07:00
Ben Gotow d780740187 fix(build): Fix failing linter and account tests 2016-03-18 13:26:03 -07:00
Ben Gotow 47a8823242 fix(queue): Delay retries up to 30s when tasks request a retry
Summary:
This is a critical patch that fixes two problems with the task queue:

1. Tasks in Status: Retry are retried the next time processQueue is run,
   which could be pretty much immediately. Certain scenarios lead to tasks
   running in a hard loop forever.

2. Returning Task.Status.Retry set the retry flags on the task but did not
   schedule the queue to be processed again. So if only a single item in the
   queue was present, it might never be retried again until the user performed
   another action.

Test Plan: Where did the specs for TaskQueue go? There aren't many... need to write more.

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2762
2016-03-18 13:25:30 -07:00
Ben Gotow 26c752ba66 typo(counts): Fix duration computation 2016-03-18 10:43:43 -07:00
Ben Gotow 5bc00bd55e fix(quick-schedule): Update to use new APIs, remove leftover docs 2016-03-18 10:43:43 -07:00
Drew Regitsky 3240635b4c fix(sync-state): ignore Account.syncState=="stopped" for now
Valid accounts that are syncing properly can reviece a delta for
Account.syncState==stopped currently, due to some quirks in the backend.
Ignore "stopped" until it unabiguously represents an error state.
2016-03-18 10:41:08 -07:00
Jackie Luo 2575cecd59 bump(node-emoji): Use 1.2.1 with merged PR 2016-03-18 10:07:56 -07:00
Ben Gotow 1f7716baa6 Merge pull request #1764 from mbilker/expose-keytar
Add atom-keytar for use in extensions
2016-03-18 10:03:05 -07:00
mbilker ea540ebf18 fix(specs): change to use electron.remote.dialog 2016-03-18 01:27:13 -04:00
mbilker 758b1ccd4e fix(require): use the remote common exports to avoid function call 2016-03-18 01:27:05 -04:00