Commit graph

442 commits

Author SHA1 Message Date
Ben Gotow
0405cfc31c Sentry fix: Handle null in a few strange places / rare cases 2019-06-16 14:40:53 -05:00
Ben Gotow
a4eb7d6ee2 Sentry fix: guard more aggressively against creating tasks when folders are missing 2019-06-16 14:25:55 -05:00
Ben Gotow
b70e27a66a Sentry fix: when the web contents have crashed, we can’t mount a dialog to the window reliably 2019-06-16 13:55:03 -05:00
Ben Gotow
7db9258f5a Sentry fix: Crash when popping out a draft before it’s loaded 2019-06-16 13:51:53 -05:00
Ben Gotow
31a9f7e257 Sentry fix: Fix undefined reference in IdentityStore 2019-06-16 13:43:40 -05:00
Ben Gotow
808f516a09 Sentry fix: Linux theme config can reference a theme that cannot be found
Error: Cannot read property 'data' of null
  File "/tmp/nylas-build/electron-packager/linux-x64/mailspring-linux-x64/resources/app/src/linux-theme-utils.ts", line 175, col 61, in __getAllIconPaths
  File "/tmp/nylas-build/electron-packager/linux-x64/mailspring-linux-x64/resources/app/src/linux-theme-utils.ts", line 212, col 17, in getIconFromTheme
  File "/tmp/nylas-build/electron-packager/linux-x64/mailspring-linux-x64/resources/app/src/linux-theme-utils.ts", line 245, col 14, in getIconPath
  File "/tmp/nylas-build/electron-packager/linux-x64/mailspring-linux-x64/resources/app/src/linux-theme-utils.ts", line 269, col 10, in Object.getIcon
  File "/tmp/nylas-build/electron-packager/linux-x64/mailspring-linux-x64/resources/app/src/native-notifications.ts", line 111, col 30, in NativeNotifications.getIcon
2019-06-16 13:37:45 -05:00
Ben Gotow
acfe38e485 Sentry fix: race condition can cause finalize to be called after captureWindow destroyed 2019-06-16 13:34:54 -05:00
Ben Gotow
3994c6e67f Sentry fix: Don’t report completely empty error payloads to Sentry 2019-06-16 13:33:31 -05:00
Ben Gotow
88dc7bb6b9 Sentry fix: “Cannot read property 'split' of undefined” in linux theme resolution 2019-06-16 13:24:46 -05:00
Ben Gotow
62d2c700b8 Handle changes in same ms as lastCommitTime, committed but not finished, when sending 2019-06-14 11:38:43 -05:00
Ben Gotow
ad13cab209 Fix support for select-all + copy of email message contents 2019-06-14 02:16:56 -05:00
Ben Gotow
e549d48299 Copy-pasting out and back in to the editor uses Slate’s representation, not HTML 2019-06-14 02:12:30 -05:00
Ben Gotow
6167938af2 Allow copy-paste of void nodes (images) in Slate by changing fix to #787 2019-06-14 02:11:48 -05:00
Ben Gotow
4d06593b93 Add a small hack to allow copy-pasting just an image in the composer 2019-06-14 01:53:30 -05:00
Ben Gotow
33048e3388 Allow Slate’s default drag-and-drop behavior to pass through the file dropzone 2019-06-14 01:45:38 -05:00
Ben Gotow
ee909d5ceb Improve the styling of inline image attachments in the composer 2019-06-14 01:45:00 -05:00
Ben Gotow
c02a3b33f1 window.onerror is not always calleed with an error object (resizeobserver issue) 2019-06-13 22:51:10 -05:00
Ben Gotow
9e31412654 Profile and improve resize performance, fix “resize observer loop” error 2019-06-13 22:50:32 -05:00
Ben Gotow
5ad85ff7cb Semver caret syntax is patch-only for 0.x.x, fork to update slate-edit-list peerDep 2019-06-11 01:48:25 -05:00
Ben Gotow
5c31fea79f Spring cleaning: Drop the -webkit css prefix where possible 2019-06-11 00:53:19 -05:00
Ben Gotow
dee76b0f56 Spring cleaning: codemod spread syntax in place of Object.assign({}, [].concat( 2019-06-11 00:46:17 -05:00
Ben Gotow
cfd99a8448 In copied text, do not consider default color a meaningful style #1053, #1309, #641, #1290 2019-06-10 23:15:47 -05:00
Ben Gotow
2661b2134d Fix issue with copy-paste not working if the last element is uneditable #803 2019-06-10 20:55:08 -05:00
Ben Gotow
66d3336aef Use slate-plain-serializer to preserve linefeed when copying out of composer #1457 2019-06-10 19:37:07 -05:00
Ben Gotow
0da398e631 Add a border around the composer color picker to resolve #645 2019-06-10 19:22:06 -05:00
Ben Gotow
21bc2ef398
Upgrade to Slate 0.45.1 for better composer perf and "setStart on Range" error fix (#1518)
* Move to Slate 44, start using types more extensively in Composer

* More types and cleanup

* Expose the editor object to the draft session, try exposing editor to session

* Bump to Slate 45 for https://github.com/ianstormtaylor/slate/pull/2225/files

* How did the unsubscribe plugin get in here

* Bump Slate types, fix TS errors, start testing

* Polish

* Fix issue with emails not shrinking when you close quoted text

* Fix the “remove quoted text” button

* More polish

* Fix issues with PR, improve typings

* Remove spurious log
2019-06-10 19:15:07 -05:00
Matt Lyons
f20e9c3f39 Add setting to disable email content max width (#251)
commit 84d0997cdca895d321ed6e70f1ab40cf03b14aa0
Author: Ben Gotow <ben@foundry376.com>
Date:   Sun Jun 9 17:36:38 2019 -0500

    A bit of polish

commit 066963a8111d510cab2d87caaa547bdabe581461
Merge: 06d2e4546 8ed229a7c
Author: Ben Gotow <ben@foundry376.com>
Date:   Sun Jun 9 17:07:20 2019 -0500

    Merge branch 'emailWidthFix' of https://github.com/mattlyons0/Mailspring into mattlyons0-emailWidthFix

    # Conflicts:
    #	app/internal_packages/message-list/lib/message-list.tsx
    #	app/internal_packages/message-list/styles/message-list.less
    #	app/src/config-schema.es6

commit 8ed229a7c7
Author: Matt Lyons <matt@mattlyons.net>
Date:   Wed Oct 25 03:02:03 2017 -0700

    Add setting to disable email content max width

    Closes #228
2019-06-09 17:38:57 -05:00
Ben Gotow
11e2c404f1 RSVP to attached calendar events and view RSVP responses from a message 2019-05-27 23:48:20 -05:00
Ben Gotow
488cc27c34 Support hyphenated names during sender name validation #1445 2019-05-26 18:59:48 -05:00
Ben Gotow
3c6802b84e Add missing implementation of isMatchCompatible for HasAttachment query #1480 2019-05-26 18:41:14 -05:00
Ben Gotow
c9b86cc217 Expose firstMessageTimestamp, implement menu item to copy “mailbox permalink” #1473 2019-05-26 18:08:29 -05:00
Ben Gotow
d11fa8ced2 Properly handle linux icon themes without Context keys #1467 2019-05-26 17:14:53 -05:00
Ben Gotow
a38445c723 Prefix draft header message IDs with the account ID to fix filtering of open tracking #1494 2019-05-26 17:14:53 -05:00
Ben Gotow
4dfe0a3f13 Display an error message when Mailspring is unable to edit it’s launchAgent file #1493 2019-05-26 17:14:53 -05:00
Ben Gotow
74d2b5a65a In the composer, allow the user to delete a selection from the first character forward 2019-03-27 01:31:00 -07:00
Ben Gotow
16ab68d895 Improve spellcheck performance on long emails [electron-spellchecker/issues/136] 2019-03-26 22:38:53 -07:00
Ben Gotow
4351084fe8 Threshold diagonal swipe movements, reduce accidental swipe-to-archive #690 2019-03-24 23:35:41 -07:00
Ben Gotow
51125ab11f Avoid flawed version check, run mail rules only once message body is received #605, #513 2019-03-24 17:48:46 -07:00
Ben Gotow
590a746b1a Fix autoupdate crash (nativeImage => NativeImage) #1425 2019-03-21 17:20:50 -07:00
Ben Gotow
8208850439 Handle double-clicking on the sheet toolbar on macOS #1388 2019-03-16 13:37:53 -07:00
Ben Gotow
b253d49c7a Properly strip surrounding quotes from displayed contact names #1397 2019-03-16 13:06:14 -07:00
Ben Gotow
96c95eef18 Move default icon to a path preserved in packaged app 2019-03-12 23:30:36 -07:00
Artur Kraft
0f52f13618 Add icon to notifications (#1405)
* adds icon to the notifications

on windows and mac the default icon is used (from resources), on linux
the one set in the .desktop file is searched and used

* add budgie gnome to supported desktop environments

* converted to typescript and removed cache, icon is now loaded once at the beginning

* don't execute the gsettings command if the path is null
2019-03-12 21:16:57 -07:00
Ben Gotow
33da5465c4 When clicking in a scrollbar, move up/down by a single page (mimic native behavior) 2019-03-05 22:55:10 -08:00
Ben Gotow
149b389508
Replace Babel with TypeScript compiler, switch entire app to TypeScript 🎉 (#1404)
* Switch to using Typescript instead of Babel

* Switch all es6 / jsx file extensions to ts / tsx

* Convert Utils to a TS module from module.exports style module

* Move everything from module.exports to typescript exports

* Define .d.ts files for mailspring-exports and component kit… Yes it seems this is the best option :(

* Load up on those @types

* Synthesize TS types from PropTypes for standard components

* Add types to Model classes and move constructor constants to instance vars

* 9800 => 7700 TS errors

* 7700 => 5600 TS errors

* 5600 => 5330 TS errors

* 5330 => 4866 TS errors

* 4866 => 4426 TS errors

* 4426 => 2411 TS errors

* 2411 > 1598 TS errors

* 1598 > 769 TS errors

* 769 > 129 TS errors

* 129 > 22 TS errors

* Fix runtime errors

* More runtime error fixes

* Remove support for custom .es6 file extension

* Remove a few odd remaining references to Nylas

* Don’t ship Typescript support in the compiled app for now

* Fix issues in compiled app - module resolution in TS is case sensitive?

* README updates

* Fix a few more TS errors

* Make “No Signature” option clickable + selectable

* Remove flicker when saving file and reloading keymaps

* Fix mail rule item height in preferences

* Fix missing spacing in thread sharing popover

* Fix scrollbar ticks being nested incorrectly

* Add Japanese as a manually reviewed language

* Prevent the thread list from “sticking”

* Re-use Sheet when switching root tabs, prevent sidebar from resetting

* Ensure specs run

* Update package configuration to avoid shpping types

* Turn eslint back on - we will opt-in to the TS rules one by one
2019-03-04 11:03:12 -08:00
Ben Gotow
2057ca3023 Switch to 39-character message IDs to fix iCloud “SMTP black hole” issues
Detailed writeup of this found here: https://medium.com/follow-up-boss-dev/when-icloud-emails-go-into-a-black-hole-76991abd87a8. Mailspring was previously sending message IDs where the “local part” was 46 characters.

Using UUIDv4 because it exactly matches what iCloud itself is using.
2019-02-25 08:16:02 -08:00
Ben Gotow
cc262ef0d2 Only re-evaluate visible range of a list when the number of items changes in an update 2019-02-24 10:24:21 -08:00
Ben Gotow
087892eaeb When the thread list is invalidated, re-run the SQL query in the background proc 2019-02-24 10:23:18 -08:00
Ben Gotow
cd08553b92 Make scrollTo run in an animation frame to avoid interrupting React commit with layout 2019-02-24 10:21:32 -08:00
Ben Gotow
209ba58e3e Use ResizeObserver to monitor email content size for better performance 2019-02-24 00:12:14 -08:00