Commit graph

540 commits

Author SHA1 Message Date
Ben Gotow 8151e6a8a3 feat(feedback): Add blue feedback button in bottom left, remove dead code from DeveloperBarStore
Summary: Adds a prominent blue button to email us feedback

Test Plan: Run tests

Reviewers: dillon, evan

Reviewed By: dillon, evan

Differential Revision: https://phab.nylas.com/D2081
2015-09-29 23:20:23 -07:00
Ben Gotow aa58743b38 fix(drafts): Fix syncback issue caused by bad Account database query 2015-09-29 12:14:11 -07:00
Ben Gotow 78e7f06e14 fix(db): Disable verbose warnings from DatabaseView 2015-09-29 09:46:32 -07:00
Ben Gotow 9a3356c5e9 fix(docs): Replace docs references to Edgehill with N1 2015-09-29 09:45:02 -07:00
Ben Gotow 3ccc5e3d99 rename(Nylas Mail): Replace Nylas Mail > N1 2015-09-29 09:44:30 -07:00
Evan Morikawa e9ce962aae fix(composer): fix to tabbing field with test
Summary: Fixes in tabbing and css updates in composer

Test Plan: new tests

Reviewers: bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2075
2015-09-28 12:55:45 -04:00
Ben Gotow c59e2f2438 fix(message-store): Additional spec for double-focus, fix Menu warning 2015-09-28 02:26:26 -07:00
Ben Gotow f2418be462 fix(onboarding): Cleanup for recent commits to onboarding workflow. See description
- rm dead addAccount code that came back in a merge

- use command everywhere to open onboarding

- centralize close vs. quit logic in an OnboardingAction

- fix issue where the window size is calculated improperly because we have a padding value which is a fraction of height. In fact, remove no-top / padding-top 10% for good.
2015-09-28 02:12:35 -07:00
Ben Gotow 3b0a7910e0 fix(focused-content): Better test fixtures for previous fix 2015-09-28 01:32:20 -07:00
Ben Gotow 705200a138 fix(focused-content): Prevent keydowns from outpacing animation frames, improves keyboard move speed through thread list
To reproduce previous issue, turn key rpeat speed all the way up and then hold an arrow key.
2015-09-28 01:16:52 -07:00
Ben Gotow 65bf4f7763 fix(popover): Popover had double-nested scrolling, no longer supported centering over button 2015-09-27 23:46:07 -07:00
Ben Gotow 5f1b909cae fix(change-mail-task): Limit the parallelism of API requests via change mail task
No you can't make 1,100 API requests at the same time. Thanks. New specs to make sure there aren't any regressions in this behavior.
2015-09-27 23:42:43 -07:00
Ben Gotow 2634126535 fix(db): Additional assertions for common databas mistakes 2015-09-27 21:08:35 -04:00
Evan Morikawa e74981502e feat(onboarding): improve onboarding flow
Summary:
Now with more CSS

Also fixed flow for when you're just adding an account

Fixes T3805

Test Plan: manual :(

Reviewers: drew, bengotow

Reviewed By: bengotow

Maniphest Tasks: T3805

Differential Revision: https://phab.nylas.com/D2071
2015-09-25 20:43:36 -04:00
Evan Morikawa aa019360b9 fix(participants): properly handle tab and comma in participant field
Summary:
Fixes T3797
Fixes T3796

linter

Test Plan: new tests

Reviewers: dillon, bengotow

Reviewed By: bengotow

Maniphest Tasks: T3796, T3797

Differential Revision: https://phab.nylas.com/D2072
2015-09-25 16:21:39 -04:00
Evan Morikawa 02c4d82f01 fix(draft): recover if draft is destroyed during access
Summary: Plus tests

Test Plan: new tests

Reviewers: bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2067
2015-09-25 16:16:54 -04:00
Evan Morikawa 593e4fb78d fix(composer): don't blur when adding a link
Summary:
Refactor focusing behavior in floating toolbar controller

Fixes T3781
Fixes T3791

Test Plan: manual

Reviewers: bengotow

Reviewed By: bengotow

Maniphest Tasks: T3791, T3781

Differential Revision: https://phab.nylas.com/D2073
2015-09-25 16:14:01 -04:00
Ben Gotow d5f4aa4ac0 fix(message-sidebar): New ContactCard injectable role, updated FocusedContactStore
- The FocusedContactStore was triggering too often, and leaving it up to the FullcontactStore to fetch the full Contact model for the focused contact (pulled from thread.)

The FocusedContactStore triggers more responsibly, and registering for the role "MessageListSidebar:ContactCard" now gives you the focused contact as a full database model. The whole ContactCard region also fades in and out.
2015-09-24 18:58:53 -07:00
Ben Gotow 9f3600b9eb fix(react-remote): Do not cancel key events, check for floating point bounding sizes 2015-09-24 15:21:58 -07:00
Ben Gotow 66d3d89979 fix(onboarding): Lots of changes to account management, dead code cleanup
Summary:
Better error handling in the account settings page and a loading spinner

Add Account... replaces "Link External Account", and it works

Clean dead code from onboarding pages, remove base class component

Always show the account switcher

rm dead EdgehillAPI code, AccountStore now manages accounts and credentials in config, not in database

Fix specs

Test Plan: Run tests

Reviewers: dillon, evan

Reviewed By: evan

Projects: #edgehill

Differential Revision: https://phab.nylas.com/D2059
2015-09-24 14:51:15 -07:00
Evan Morikawa d73ff30510 feat(sync): expanded details on sync status
Summary: Fixes T3574

Test Plan: manual

Reviewers: dillon, bengotow

Reviewed By: dillon, bengotow

Maniphest Tasks: T3574

Differential Revision: https://phab.nylas.com/D2058
2015-09-24 11:03:11 -07:00
Ben Gotow a37e567888 fix(window-serialization): Restore window size, remove cruft from atom.coffee
Summary: Simplify the default window size, restore window size when the main window is loaded, fix serialization of packages in beforeunload.

Test Plan: Run tests

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2061
2015-09-24 10:40:38 -07:00
Evan Morikawa 10d90ea718 feat(loading): new loading screen
Summary: New loading screen

Test Plan: manual

Reviewers: dillon, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2057
2015-09-23 17:33:15 -07:00
Ben Gotow 3a5a6ce7b9 fix(thread-list): Use hasAttachments flag, fix bug where attachments icon did not appear in search results 2015-09-23 15:48:03 -07:00
Evan Morikawa a7323cdc72 fix(bootup): don't show unresponsive dialog until main window loaded
Summary:
Fixes T3496
This is a patch just so that simple modal doesn't show.

Test Plan: manual

Reviewers: bengotow

Reviewed By: bengotow

Maniphest Tasks: T3496

Differential Revision: https://phab.nylas.com/D2053
2015-09-23 10:50:42 -07:00
Ben Gotow 91998d3b36 fix(onboarding): Tweaks, styles, etc. for new onboarding experience
Summary:
Remove logout menu item and buttons, turn Link External Account to Add Account

Onboarding window starts hidden, is shown when react component is mounted and sized

Use get/setBounds to animate position and size at the same time smoothly

Fix specs, change 401 notice

Delay bouncing to Gmail to show users the Gmail screen momentarily

Make the animated resizing code defer so it doesn't run in a hard loop, and other animations can run at the same time

Bring back crossfade between screens, remove left/right shift on welcome screens

Test Plan: Run tests

Reviewers: drew, evan

Reviewed By: evan

Maniphest Tasks: T3529

Differential Revision: https://phab.nylas.com/D2054
2015-09-23 09:59:34 -07:00
Evan Morikawa 0d1c0afc70 fix(db): add index on thread id 2015-09-23 09:54:03 -07:00
Drew Regitsky d40f3e3fdb New onboarding flow, uses new Nylas auth
Summary:
Depends on D2049
This change replaces the onboarding flow to include new graphics, copy, and
support for the new Nylas auth flow. New account choosing UI presents a list
of account types, rather than guessing based on an entered email. Pages before
and after introduce the user to different features of the client.

Known issue: Polling for gmail account connection works, but continues even if
you leave the page.

Test Plan: Manual testing.

Reviewers: evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2050
2015-09-22 20:11:51 -07:00
Ben Gotow 42f65798d6 fix(db): Atomically was not resolving with a value, fixes mail notifications 2015-09-22 17:33:05 -07:00
Evan Morikawa b50d488f2e refactor(composer): update contenteditable functionality
Summary:
Fixes T3510
Fixes T3509
Fixes T3508
Fixes T3549

Extracted clipboard service

Remove unused style prop

Begin extracting quoted text from composer. Spec for clipboard service

Fix contenteditable specs

Begin to extract floating toolbar

Extract out DOMUtils and further extract floating toolbar

Further extracting domutils and floating toolbar

composer floating toolbar extracted

Fixes to hover and link states

Collapse adjacent ul lists

Fix outdent when deleting on a bulleted list

Fix bullet controls

Fixes to list creation and deletion

Add underline keyboard shortcut

Test Plan: manual :(

Reviewers: dillon, bengotow

Reviewed By: bengotow

Maniphest Tasks: T3508, T3509, T3510, T3549

Differential Revision: https://phab.nylas.com/D2036
2015-09-22 16:02:44 -07:00
Evan Morikawa 98ca7f15bd fix(contact): fix contacts completion in popout composers
Summary:
Fixes T3568

The composer windows had the wrong cache in their `ContactStore`s. Since
it's VERY expensive to repopulate a ContactStore's cache, we now have a
`WindowBridge` that allow you to, with a Promise, invoke methods on the
main window instead.

(Still need to fix some tests)

Test Plan: Fixed tests

Reviewers: dillon, bengotow

Reviewed By: dillon, bengotow

Maniphest Tasks: T3568

Differential Revision: https://phab.nylas.com/D2045
2015-09-22 15:32:27 -07:00
Ben Gotow 4bdc650aaa feat(account-sidebar): Ability to add custom items to the sidebar 2015-09-22 14:43:17 -07:00
Ben Gotow 74894e91ff feat(thread-list): Create custom icon components via role: ThreadListIcon 2015-09-21 16:21:57 -07:00
dillon ff5c88ed69 fix(NUX): show when initial sync is taking place
Summary:
fixes T3563

todo
[x] check with @bengotow and @evan -- does this solution make sense to you?
[x] decide on the actual visual cue to the user -- @bengotow you suggested a loader or spinner, but i was thinking that actual copy should be used so it doesn't look like an unhelpful spinner which goes indefinitely. what do you think of the copy here?
[ ] implement spinner similar to sending a draft
[ ] write tests
[ ] verify that we're showing progress in a helpful way

problem
- new users would see nothing in edgehill after they log in, with no indication on why they can't see any of their mail
- in actuality, our backend is actively pulling all their mail to serve it to edgehill
- new users think edgehill is broken because they're unaware of the work that our backend was doing

solution
- when the backend sends deltas to edgehill, we show a message in the activity bar saying that we're trying to get their mail
- we'll show the sync progress

Test Plan: still need to add tests. all previous tests still green.

Reviewers: bengotow, evan

Subscribers: sdw, bengotow, evan

Maniphest Tasks: T3563

Differential Revision: https://phab.nylas.com/D2032
2015-09-18 16:15:15 -07:00
Ben Gotow d771bb273c fix(networking): Don't include entire response body in didMakeAPIRequest
Summary: Fixes T3625

Test Plan: Easy to test by opening/closing reply options dropdown as a large image attachment is downloaded

Reviewers: evan, dillon

Reviewed By: dillon

Maniphest Tasks: T3625

Differential Revision: https://phab.nylas.com/D2034
2015-09-18 11:18:26 -07:00
dillon 89e507fe76 fix capitalization of JavaScript and CoffeeScript
Summary: i accidentally messed up phab and arcanist locally, so this diff is to fix these mistakes i made. it's the combination of D2037 and D2028.

Test Plan: tested manually

Reviewers: bengotow, evan

Differential Revision: https://phab.nylas.com/D2043
2015-09-18 11:10:14 -07:00
Ben Gotow 4d2ea63be7 fix(modelify): Five new specs and fixes for Sentry 2973, others
Fixes T3613 as well.

Pushing directly to master because it's mostly specs and resolves an "Unbreak Now!" ticket
2015-09-15 18:08:05 -07:00
Evan Morikawa 61eec6b21a fix(database): add DatabaseStore.atomically to handle read/write issues
Summary:
Fixes T3566
Fixes T3567

Test Plan: new tests

Reviewers: dillon, bengotow

Reviewed By: bengotow

Maniphest Tasks: T3566, T3567

Differential Revision: https://phab.nylas.com/D2025
2015-09-15 20:27:52 -04:00
dillon fc770a85cd feat(toggle-unread): threads can now toggle their unread status. fixes T3483.
Summary:
still WIP, but functionality is there.

TODO:
[x] write tests
[x] swap out the current markasread icon for the correct markasread icon that @sdw is making
[x] figure out how to address this point by @bengotow: https://phab.nylas.com/D2024?id=19139#inline-12168

Test Plan: tested manually. still need to write tests though.

Reviewers: evan, bengotow

Reviewed By: bengotow

Subscribers: sdw

Maniphest Tasks: T3483

Differential Revision: https://phab.nylas.com/D2024
2015-09-15 16:49:16 -07:00
Ben Gotow 2384f5bd09 fix(message-list): Optimize draft deletion along with draft creation
Summary:
I honestly can't wait until we refactor this logic into a sort of "LiveQuery" class so that it can apply to all of the queries in the whole app. These optimizations make deleting / creating drafts quite a bit more responsive because there's no delay between the database store emitting an event and the view updating.

Fixes T3456

No explicit tests for now because we'll pull this into a nice class soon

Test Plan: Run tests

Reviewers: dillon, evan

Reviewed By: evan

Maniphest Tasks: T3456

Differential Revision: https://phab.nylas.com/D2019
2015-09-15 14:27:18 -07:00
Ben Gotow 05af501721 fix(mailto): Linux support for mailto links
Summary: Mailto link handling for ubuntu and other linux platforms

Test Plan: A few new tests

Reviewers: dillon, evan

Reviewed By: dillon, evan

Differential Revision: https://phab.nylas.com/D2023
2015-09-15 14:26:47 -07:00
dillon f4e3a941e7 feat(account-sidebar): move account switcher from the side to the top of the account sidebar. fixes T3546.
Summary: ready for final code review! @evan @bengotow

Test Plan: added some tests for the account switcher

Reviewers: evan, bengotow

Reviewed By: evan, bengotow

Maniphest Tasks: T3546

Differential Revision: https://phab.nylas.com/D2016
2015-09-14 15:05:33 -07:00
Ben Gotow 68827c041b fix(analytics): Submit account provider type, org unit and version string without commit hash to mixpanel 2015-09-14 14:26:18 -07:00
Evan Morikawa 345dd941a3 fix(reply): better coverge for reply-all participants
Summary:
Fixes: T3550
Fixes: T3504

Test Plan: many of them

Reviewers: dillon, bengotow

Reviewed By: dillon, bengotow

Subscribers: mg

Differential Revision: https://phab.nylas.com/D2017
2015-09-14 16:18:55 -04:00
Ben Gotow 1147c8a7f5 fix(atom-window): The worker window should also auto-reload on crash
Neverclose applies to both the main window and the worker window

T1640
2015-09-14 11:43:24 -07:00
Ben Gotow fd8b49ea9e fix(drafts): If a draft disappears during editing, re-save instead of blowing up (Sentry 2844, more.)
Summary:
Previously, if a draft was deleted while a DraftChangeSet had uncommitted changes, it would blow up trying to find the draft.

This is bad, and can happen in normal scenarios. There are several changes in this diff:

- The DraftChangeSet no longer retrieves the draft from the database before saving changes. Instead, the save logic is in the DraftStoreProxy which already has a version of the draft kept fresh by a subscription to the DraftStore.

- The SyncbackDraftTask already had logic for POSTing when a PUT to a draft returns a 404, so no new logic was necessary there. THe new "commit" logic causes us to put back the draft that was lost, and then when we save it we detatch it from it's serverId and re-save.

In manual testing, this transparently handles the case where you delete a draft from Gmail while editing it.

Test Plan: I've added 22 tests for the DraftChangeSet and DraftStoreProxy

Reviewers: dillon, evan

Reviewed By: dillon, evan

Differential Revision: https://phab.nylas.com/D2012
2015-09-14 11:30:16 -07:00
Ben Gotow 2709f2867e fix(offline): /Generally/ a timeout is a temporary error code. Only SendDraftTask should bail and tell the user the draft failed to send 2015-09-11 15:14:52 -07:00
Ben Gotow 08db0d61a9 cleanup(atom): Get rid of core.autoHideMenuBar option—we'll never show a menu bar on windows 2015-09-11 14:56:21 -07:00
Ben Gotow ece7f2e649 tweak(win32): Hide the app menu on Windows, show in a right-side button instead 2015-09-11 14:49:26 -07:00
Ben Gotow c7f38cc851 fix(spellcheck): Remove premature optimizations and avoid spellcheck on word being typed
Fixes T3537
2015-09-11 11:12:25 -07:00