Commit graph

1636 commits

Author SHA1 Message Date
Evan Morikawa
822da1c0de feat(build): new rpm builds
Summary: Now builds RPM on Travis

Test Plan: manual

Reviewers: juan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2391
2016-01-04 09:56:14 -08:00
Evan Morikawa
d3d2bd35ec fix(date): copyright year auto-updates 2016-01-04 09:41:28 -08:00
Juan Tejada
141b2e73c9 fix(extensions):Add missing api adapters for ComposerExtension methods 2016-01-04 10:52:39 -05:00
Ben Gotow
5030787d88 Merge pull request #876 from nylas/Inbox-Shortcuts
Inbox shortcuts
2015-12-31 14:46:48 -08:00
GMPolyakov
96b68c0aa7 fix
removed shortcuts not shown on Inbox shortcuts page
2015-12-31 14:30:16 -08:00
GMPolyakov
ca48d3c216 Add Inbox Shortcuts
Added keyboard shortcuts for Google Inbox (different from Gmail).
2015-12-31 14:09:18 -08:00
Drew Regitsky
dffc307b3c fix(templates): Fix a few leftover bugs in templates plugin 2015-12-30 18:14:26 -08:00
Ben Gotow
0e41c53efb fix(spec): Participant tests breaking on Travis 2015-12-30 18:09:16 -08:00
Drew Regitsky
a02051bd95 fix(templates): Fix method calls that weren't passing args hash 2015-12-30 16:51:23 -08:00
Drew Regitsky
77cf91f292 fix(quickschedule): properly handle errors from QuickSchedule server 2015-12-30 16:46:19 -08:00
Juan Tejada
067a12dc17 fix(extensions):Fix extension method calls that weren't passing args hash 2015-12-30 19:05:27 -05:00
Juan Tejada
72ae4228c0 fix(specs): Fix extension test 2015-12-30 18:08:33 -05:00
Evan Morikawa
116d375ff7 feat(extension): async extensions
Summary:
WIP:

This is a quick patch for Drew to make extensions async

We'll need to think through the upgrade/deprecation plan to roll out async
extensions across all of our APIs.

Test Plan: TODO

Reviewers: drew, evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2392
2015-12-30 18:04:52 -05:00
Juan Tejada
eacf7e751c fix(specs): Remove fdescribe 2015-12-30 15:24:50 -05:00
Juan Tejada
e9896039aa fix(contenteditable): Fix nested list behavior:
Summary:
- Fixes #862
- Makes it behave like hackpad -- adding nested lists will indent the
  current list item
- Fix lint errors

Test Plan: - Integration tests

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2402
2015-12-30 15:21:05 -05:00
Juan Tejada
27cc46ed1f feat(column-width): Store column width state in the app
Summary:
- Fixes #833
- Allows column widths to be persisted between sessions

Test Plan: - Manual

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2401
2015-12-30 15:18:38 -05:00
Juan Tejada
cd1ee3f672 fix(extension-adapter): Update adapter to support all versions of extension api we've used
Summary:
- Rewrites composer extension adpater to support all versions of the
  ComposerExtension API we've ever declared. This will allow old plugins (or
  plugins that haven't been reinstalled after update) to keep functioning
  without breaking N1
- Adds specs

Test Plan: - Unit tests

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2399
2015-12-30 15:11:37 -05:00
Drew Regitsky
b94122b0b2 fix(signatures-tests): actually fix the signatures tests 2015-12-29 18:31:10 -08:00
Juan Tejada
56258991fb fix(composer-focus): Fix focus behavior + update InjectedComponent props
Summary:
- Fixes bug with Composer focus caused by injected component. The composer body
  was being focused, but the cursor remained at the beginning of the content
  instead of at the end. This was caused because the focus method was being
  called before the content had actually been rendered to the dom.
  - Adds a callback to check when injected comp was actually rendered, and uses
    that to focus the body at the correct time.
  - Updates specs
- Updates behavior of focusing composer body when selecting threads in split
  mode --  resolves #T3444
  - It will focus the body when a thread is selcted via a click
  - It wont focus the body when a thread is selected via arrow keys
  - It will focus the body when a new inline reply is created
  - Updates specs

Test Plan: - Unit tests

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2393
2015-12-29 21:28:15 -05:00
Drew Regitsky
93e0ba06d4 fix(signatures-tests): update tests for new signatures code 2015-12-29 18:00:18 -08:00
Drew Regitsky
4528734a33 fix(signatures): Wrap signature in a nylas-n1-signature div to allow easy detection
Summary:
Changes the internal signatures plugin to wrap the signature in a
`<div class="nylas-n1-signature">` block, to make it easier to detect and handle
signatures from within other plugins.

Also:
- Fixes the QuickSchedule plugin to place the scheduling block above the signature.
- Fixes a small syntax error in Translate plugin

Test Plan: manual

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2383
2015-12-29 15:33:49 -08:00
Drew Regitsky
2e1056f49e refactor(templates): major additions and refactoring for the Templates plugin.
Summary:
Adds several new features to the templates plugin, fixes some existing bugs, and
refactors existing code.

New Plugin Features/Fixes:
- Changes the templates editor in preferences to allow variables to be entered with
 `{{brackets}}`. Handles many contenteditable complexities to implement.
- Better interaction for renaming and deleting of templates in the editor.
- Changes tabbing behavior when using templates. Tabbing between variables now wraps
  around, and typing tab from outside a variable region highlights the closest region.
- Prevents "Enter" key in the composer when inside a variable region, and strips all
  formatting/tags from within the region - this prevents major contenteditable issues
  that can result in inline CSS in the style of our variable regions, which will not be
  removed when sending.
- Shows a warning when choosing a template if it will replace existing text in a draft.
- Prevents invalid characters in template names (due to filenames, esp. on Windows),
  and shows an error message. Strips these characters from draft titles when making a
  template.
- Fixes a bug where TemplateStore's initialization code was being called multiple times.

New N1 code:
- Several new methods in `DOMUtils` useful for working with contenteditable.
- Implement some missing methods in `Editor`

Refactor:
- Major refactor/rewrite of template composer extension to use new DOMUtils methods
  and simplify the logic (while adding new functionality).

Remaining issues:
- `preferences-tempaltes.cjsx` and `template-editor.coffee` should be rewritten in ES6
  for consistency
- Need tests for new DOMUtils functions and for new Templates plugin code.

Test Plan: manual, need to update specs

Reviewers: evan, bengotow

Reviewed By: evan, bengotow

Subscribers: juan

Differential Revision: https://phab.nylas.com/D2382
2015-12-29 15:11:04 -08:00
Drew Regitsky
1b5d660eaf fix(contenteditable): revert 36b4f3, call onClick in mouse-service 2015-12-29 14:57:07 -08:00
Ben Gotow
a2781be17c lint(mail-rules): Fix build failure from linter issue 2015-12-29 14:41:30 -08:00
Drew Regitsky
36b4f3f456 fix(contenteditable): hook up onClick handler for extensions
Summary: Add missing code to make onClick work in contenteditable extensions.

Test Plan: manual

Reviewers: juan, evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2395
2015-12-29 14:41:00 -08:00
Ben Gotow
30c5e20e88 fix(mail-rules): Bail if a message is missing a thread 2015-12-29 14:21:42 -08:00
Ben Gotow
5e777fe1f4 fix(uploads): Cancel uploads when offline (#365), mark for refactor 2015-12-29 14:21:42 -08:00
Ben Gotow
55b2d588bc fix(uploads): Don't allow dragging of uploading images (Fixes #366) 2015-12-29 14:21:42 -08:00
Ben Gotow
ba18753061 Merge pull request #798 from mbilker/appveyor-pr-no-secure
AppVeyor Use no secure variables in Pull Requests
2015-12-29 12:33:31 -08:00
Ben Gotow
7233decbe8 Merge pull request #792 from Sumukh/at-character-parse
Names with @ are included in the contact name.
2015-12-29 12:20:00 -08:00
Ben Gotow
f900cb497f bump(version): 0.3.34 beta 2015-12-28 18:39:27 -08:00
Ben Gotow
0a5c66f4cc fix(regex): Chop leading '/" off emails if they are wrapped in quotes 2015-12-28 18:39:06 -08:00
Ben Gotow
d911793bef fix(mail-rules): Catch and disable mail rules building bad actions 2015-12-28 18:39:06 -08:00
Drew Regitsky
8dc3e009d4 fix(contenteditable): add default prop for onSelectionChanged 2015-12-28 17:34:18 -08:00
Ben Gotow
6da6bb5246 fix(autoload-images): Watch for images declared in more attrs
Fixes #739
2015-12-28 14:59:07 -08:00
Ben Gotow
bb268d3be6 fix(regex): Allow ', !, ?, ^, {, }, | in email addresses (Fixes #754) 2015-12-28 14:35:47 -08:00
Ben Gotow
8e54ff8069 fix(markAsRead): Option to mark read manually only (Fixes #804) 2015-12-28 14:23:34 -08:00
Ben Gotow
47b0ab5c97 fix(mailto): Parse query string manually to account for unencoded body (Fixes #815) 2015-12-28 13:58:24 -08:00
Ben Gotow
608060ed6d fix(search): Switching accounts while searching no longer breaks app
Fixes #850
2015-12-28 12:16:56 -08:00
Ben Gotow
8c965e4d7b fix(aliases): Recognize that email sent to alias is to "me" 2015-12-28 12:13:05 -08:00
Ben Gotow
acd960d611 fix(styles): Allow css from any domain (for web fonts) 2015-12-28 11:25:58 -08:00
Juan Tejada
3aa77a3d05 fix(styles): Fix border styles for subject input in composer
- Fixes #825
2015-12-23 22:05:43 -08:00
Evan Morikawa
a9be427c42 fix(tab): fix import error 2015-12-23 15:48:41 -08:00
Ben Gotow
4e778e6ef5 bump(version): 0.3.33 Beta 🎄 2015-12-23 02:20:13 -05:00
Ben Gotow
606909e256 feat(mail-rules): Per-account mail rules filter incoming, existing mail
Summary:
Originally, this was going to be a totally independent package, but
I wasn't able to isolate the functionality and get it tied in to
the delta-stream consumption. Here's how it currently works:

- The preferences package has a new tab which allows you to edit
  mail filters. Filters are saved in a new core store, and a new
  stock component (ScenarioEditor) renders the editor. The editor
  takes a set of templates that define a value space, and outputs
  a valid set of values.

- A new MailFilterProcessor takes messages and creates tasks to
  apply the actions from the MailFiltersStore.

- The worker-sync package now uses the MailFilterProcessor to
  apply filters /before/ it calls didPassivelyReceiveNewModels,
  so filtrs are applied before any notifications are created.

- A new task, ReprocessMailFiltersTask allows you to run filters
  on all of your existing mail. It leverages the existing TaskQueue
  architecture to: a) resume where it left off if you quit midway,
  b) be queryable (for status) from all windows and c) cancelable.
  The TaskQueue is a bit strange because it runs performLocal and
  performRemote very differently, and I had to use `performRemote`.
  (todo refactor soon.)

This diff also changes the EditableList a bit to behave like a
controlled component and render focused / unfocused states.

Test Plan: Run tests, only for actual filter processing atm.

Reviewers: juan, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2379
2015-12-23 02:19:32 -05:00
Juan Tejada
e5213eae6f fix(specs): Fix and update QuerySubscription specs
- Updates test scenario to test for when the new item already exists in
the set with the same clientId but a new serverId
2015-12-22 14:30:28 -08:00
Juan Tejada
99560a35cf fix(observables): Fix QuerySubscription to check for clientId's in result set
- See TODO comments
- Fixes #680
- Fixes #681
2015-12-22 13:42:25 -08:00
Evan Morikawa
3dbdd5cfd6 fix(spec): fix send-draft spec to test for include 2015-12-22 10:36:25 -08:00
Juan Tejada
2145627547 fix(send-draft): Include body when sending message in new send draft
logic
2015-12-22 10:06:58 -08:00
Juan Tejada
5675f24407 fix(prefs): Prevent main key commands from being fired to thread list while on prefs page
Summary:
- When the preferences sheet is open, any commands triggered through key presses were being received by the thread-list, producing unexpected
(and unseen) results
- This is a partial/temporary solution and should go away when we do the Keymap/Commands/Menu refactor

Test Plan: - Manaul

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2380
2015-12-22 09:38:56 -08:00