Commit graph

1537 commits

Author SHA1 Message Date
Evan Morikawa
e83c16ec21 fix(spellcheck): let win < 8 fallback to hunspell 2015-12-11 16:41:41 -05:00
Evan Morikawa
546248782f docs(tests): add docs about integration testing 2015-12-11 16:25:25 -05:00
Juan Tejada
e8fb26ab88 fix(editable-list): Refocus list after editing or creating 2015-12-11 12:43:01 -08:00
Evan Morikawa
ed805869f2 fix(spellcheck): add tests and merge in Linux changes 2015-12-11 15:36:13 -05:00
mbilker
3d4b86dc5d spec(spellchecker): handle some weird Linux cases
Linux returns ['asked', 'acidify', 'Assad'] for the string "asdfk"
which seems normal to me. Why do OS X and/or Windows return [] for
that string? That seems weird, so I just broke the spec to run different
specs on different platforms.
2015-12-11 15:36:12 -05:00
mbilker
755f6024a3 fix(spellchecker): confine the linux changes to only 3 methods
The "it provides options for misspelled words" still fails with
"asdfk" supposed to supply no corrections, which I find unlikely in
the real world, and Hunspell provides corrections.
2015-12-11 15:36:12 -05:00
mbilker
699d6369cc lint(spellchecker): remove trailing semicolons 2015-12-11 15:36:12 -05:00
mbilker
44fccfb54f fix(spellchecker): Preliminary Linux support
The Linux component of Atom's spellchecker depends on Hunspell for
corrections. It requires a dictionary to be set, unlike Mac OS X
and Windows that have spellcheckers built in to the OS, and they
have the dictionaries built-in as well. This commit uses Atom's
spellchecker default dictionary method (which I wish was a public
API) to reset the dictionary to its default setting. It also ignores
the dictionaries available command for the Linux platform, which
seems to always return an empty Array.
2015-12-11 15:36:12 -05:00
Ben Gotow
fedb4197f8 fix(editablelist): Remove spec warning 2015-12-11 12:16:55 -08:00
Ben Gotow
9eb3eb3297 fix(thread-list): Initialize database view immediately 2015-12-11 12:15:38 -08:00
Juan Tejada
416f7e298d fix(onboarding): AccountStore only listens to changes to account obj when window
type is composer

- AccountStore was listening to changes to account object (config file)
when it was a window different from the main window in order to update
the alias list on composer windows.
- This caused the onboarding window to also listen for changes and
caused it to incorrectly add an account twice
2015-12-11 12:01:25 -08:00
Ben Gotow
7ba1e0c4a6 fix(bluebird): setImmediate > MutationObserver
We were somehow falling into a bluebird case where it uses a DOMMutationObserver instead of nextTick. We should probably report this to them.
2015-12-11 11:56:22 -08:00
Ben Gotow
60fad2822c fix(contextualmenu): Disable for non-selectable inputs
Fixes #664
2015-12-11 11:55:31 -08:00
Juan Tejada
6697372c92 update(specs): Add more test coverage to EditableList + refactors 2015-12-11 11:03:59 -08:00
Juan Tejada
80be13410d fix(docs): Update ES6 comment docs to use JSDoc 3 format 2015-12-11 10:01:13 -08:00
Evan Morikawa
35f6273d52 fix(hot-api): remove react-hot-api 2015-12-11 11:22:22 -05:00
Juan Tejada
14f0086a02 fix(warning): Remove implicit return from event handler to remove react
warning
2015-12-10 18:19:13 -08:00
Juan Tejada
0073f21982 add(docs):Add documentation to EditableList and PreferencesAccountDetails 2015-12-10 17:59:16 -08:00
Juan Tejada
281e458d39 feat(account-prefs): Adds new page for Account in preferences
Summary:
Adds the new Account preferences page. This consists of two major React components,
PreferencesAccountList and PreferencesAccountDetails, both of which use EditableList.

I added a bunch of fixes and updated the API for EditableList, plus a bit of
refactoring for PreferencesAccount component, and a bunch of CSS so its a big diff.

The detailed changelog:

Updates to EditableList:
  - Fix bug updating selection state when arrows pressed to move selection
  - Add new props:
    - allowEmptySelection to allow the list to have no selection
    - createInputProps to pass aditional props to the createInput
  - Add scroll region for list items
  - Update styles and refactor render methods

Other Updates:
- Updates Account model to hold aliases and a label
  - Adds getter for label to default to email
- Update accountswitcher to display label, update styles and spec

- Refactor PreferencesAccounts component:
  - Splits it into smaller components,
  - Removes unused code
- Splits preferences styelsheets into smaller separate stylesheet for
  account page. Adds some updates and fixes (scroll-region padding)
- Update AccountStore to be able to perform updates on an account.
- Adds new Action to update account, and an action to remove account to
  be consistent with Action usage
- Adds components for Account list and Aliases list using EditableList

Test Plan: - All specs pass, but need to write new tests!

Reviewers: bengotow, evan

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2332
2015-12-10 15:27:29 -08:00
Ben Gotow
d2db9e1a5d fix(*): Fix for "apply is not a function" lost in revert of e275f35 2015-12-10 14:12:16 -08:00
Evan Morikawa
35e45032ec fix(composer): focus on text box when clicking in margins 2015-12-10 16:52:18 -05:00
Ben Gotow
03908fbd84 fix(drafts): Refresh view when draft becomes message 2015-12-10 13:43:27 -08:00
Evan Morikawa
49925ee404 feat(ci): add build/node_modules to cache 2015-12-10 14:22:05 -05:00
Evan Morikawa
e90708aceb fix(ci): add caching and fix ssh issue 2015-12-10 14:16:55 -05:00
Evan Morikawa
e4ca1b49c2 fix(win): remove winattr 2015-12-10 14:04:16 -05:00
Evan Morikawa
d1d34963e2 fix(win): repalce fswin with winattr 2015-12-10 12:44:44 -05:00
mbilker
a3686e3f83 fix(travis): include GitHub OAuth token to preven Electron download error 2015-12-10 11:59:32 -05:00
mbilker
644c118d08 fix(travis): use the private assets only when building branches from main repository 2015-12-10 11:59:32 -05:00
mbilker
4f6f25044e fix(travis): use the ssh_known_hosts addon to run ssh-keyscan
Travis provides a wonderful helper addon documented at
https://docs.travis-ci.com/user/ssh-known-hosts/.

The behavior changed moves the ssh-keyscan from the before_install
stage to the addons stage.
2015-12-10 11:59:32 -05:00
mbilker
fbcab54642 fix(travis): readd whitespace, reorder according to build Travis build process
Found the order at https://docs.travis-ci.com/user/customizing-the-build/.

In nylas/N1@989f38ca77 the entire build script
was merged from Evan Morikawa, which reordered the whole Travis build script.
athis commit reorders the to have the Travis build environment config at the
beginning of the script and the build process at the end and the Travis
secure variables at the end of the script.
2015-12-10 11:59:32 -05:00
Evan Morikawa
4014b4e187 feat(spec): add config dir to integration specs
Summary:
- You can now pass `--config-dir-path=/some/custom/path` to `./N1.sh`
- `main.coffee` cleaned up a bit. A lot of unused params from legacy Atom
  stuff were still being used
- Integration specs now set the config dir before booting.
- New spec to check for the autoupdater in the app and make sure it's
  pointing at the right place.

Test Plan: script/grunt run-integration-tests

Reviewers: juan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2331
2015-12-10 10:52:20 -05:00
Michael Grinich
7000a1c71b Merge pull request #652 from sriraman/patch-1
Update README.md
2015-12-09 23:53:21 -08:00
sriraman
74a7e09066 Update README.md
Fix typo
2015-12-10 12:33:10 +05:30
Ben Gotow
1904c6f80b perf(travis): Fewer mac builds—Travis has fixed OS X bandwidth 2015-12-09 19:38:44 -08:00
Ben Gotow
fe5d78cc51 fix(downloads): Download.run must resolve with self 2015-12-09 17:02:53 -08:00
Drew Regitsky
a3e986d94a fix(quickschedule): Several UI fixes
Summary:
Fixes a number of smaller UI issues. Fixes T6173, T6207
Full list of changes:
 - Ensure time slots / days display in order
 - Allow time blocks of any size to be set on half hour intervals
 - Don't reset calendar when changing event length
 - Expand calendar on window resize
 - Change window title from "Electron"
 - Add delete button to cancel individual calendar events
 - Move event details box to the left side
 - Prevent addition of duplicate time slots

Test Plan: manual

Reviewers: bengotow

Reviewed By: bengotow

Maniphest Tasks: T6173, T6207

Differential Revision: https://phab.nylas.com/D2333
2015-12-09 16:41:30 -08:00
Ben Gotow
2dc43d141b fix(menu): Toggle Menu Bar doesn't do anything #606 2015-12-09 16:27:47 -08:00
Ben Gotow
193bd0c06e Merge pull request #628 from mbilker/task-helper-undefined-process-env
Replace function accessor with property accessor in Grunt's task-helper script
2015-12-09 16:02:09 -08:00
Ben Gotow
9ba157aadf Merge pull request #629 from mbilker/classnames-require-case-sensitive
Require `classNames` throws error under Linux
2015-12-09 15:57:40 -08:00
Ben Gotow
1a62cd8c59 bump(changelog): Update for 0.3.29 2015-12-09 15:47:51 -08:00
Ben Gotow
838646b7e4 fix(spinner): Improve loading indicator style / tweening 2015-12-09 15:47:51 -08:00
Evan Morikawa
7d56b6828a fix(spellcheck): add test for null navigator.language 2015-12-09 18:32:54 -05:00
Evan Morikawa
cbd4060edf bump(internal): update submodule reference 2015-12-09 18:14:01 -05:00
Evan Morikawa
9af40833ac fix(spellcheck): check for existing languages and add tests 2015-12-09 18:10:55 -05:00
Evan Morikawa
e18a272803 fix(language): default to english if language doesn't exist 2015-12-09 16:47:49 -05:00
Ben Gotow
bdbeb31049 bump(electron): 0.35.4 2015-12-09 12:29:42 -08:00
Ben Gotow
e19a69c4a8 polish(quick-schedule): Use calendar icon in the composer 2015-12-09 10:55:08 -08:00
Ben Gotow
c993a1f51a bump(version): 0.3.29 2015-12-08 17:56:58 -08:00
Ben Gotow
af75a5170c fix(translate): Use an icon for the translate button 2015-12-08 17:56:42 -08:00
Ben Gotow
ee78090ce0 fix(composer): Change state.focusedField when clicking fields—see details
Clicking participant fields to type in them did not cause state.focusedField to change, because no onFocus events were bound to the ParticipantTextFields. Since setState was not called, the focus would appear to change but revert as soon as you touched state.

This diff also renames `onChangeEnabledFields` to `onAdjustEnabledFields` making it more clear that unlike the other handlers, it does not take a new value, it takes a set of changes. I also noticed that we /always/ focus fields when showing them, so I removed the separate focus param from it and made it adjust focus at the composer-view level only.

I also consolidated everywhere that touches `state.focusedField` so that we can keep the `_lastFocusedParticipantField` value in sync with it more easily.
2015-12-08 17:44:20 -08:00