Mailspring/internal_packages/message-list/lib
Ben Gotow a8a0154c44 fix(MessageContainer): Fix state, prevent from getting different messages. #1175
Summary:
This fixes a serious issue where drafts could appear to be sending if
they were located in the same index of the message list as a draft which was
previously sending.

Under the hood this was due to two bad programming choices:

1) State based on props in MessageContainer requires correct implementation of
   componentWillReceiveProps. This is definitely an anti-pattern.

2) Using item index rather than clientId as the key for items in the MessageList
   caused containers to be given a different message prop when one was inserted,
   rather than just shifting the existing ones down and inserting a new one.

Test Plan: Not sure how to test this really...

Reviewers: drew, juan

Differential Revision: https://phab.nylas.com/D2673
2016-03-03 12:10:03 -08:00
..
plugins fix(tracking): tracking pixel won't register if it's from you 2016-02-24 12:55:00 -08:00
email-frame-styles-store.coffee fix(dark-mode): Adjust email CSS immediately upon switching themes 2015-11-23 20:20:06 -08:00
email-frame.cjsx feat(find-in-thread): add the ability to find in a thread 2016-03-02 14:46:27 -08:00
find-in-thread.jsx fix(find-in-thread): minor rename fixes 2016-03-02 15:00:01 -08:00
main.cjsx feat(hidden-messages): Filter trash/spam messages. Fixes #1135 2016-03-02 10:05:17 -08:00
message-controls.cjsx fix(message-controls): add accountId to debug values copied to clipboard 2016-02-26 15:13:33 -08:00
message-item-body.cjsx fix(tracking): fix link tracking and read receipt plugins 2016-02-24 12:30:12 -08:00
message-item-container.cjsx fix(MessageContainer): Fix state, prevent from getting different messages. #1175 2016-03-03 12:10:03 -08:00
message-item.cjsx fix(hidden-messages): Address diff feedback from @jstejada 2016-03-02 10:28:32 -08:00
message-list-hidden-messages-toggle.jsx fix(hidden-messages): Address diff feedback from @jstejada 2016-03-02 10:28:32 -08:00
message-list.cjsx fix(MessageContainer): Fix state, prevent from getting different messages. #1175 2016-03-03 12:10:03 -08:00
message-participants.cjsx 💄: White buttons, dropdown / popover cleanup, hairline dividers 2016-02-18 15:21:42 -08:00
message-timestamp.cjsx Standardize message-list capitalization to AM/PM, 2016-01-19 15:54:44 -07:00
message-toolbar-items.cjsx fix(toolbars): Cross disolve toolbar items on a one-off basis 2015-10-21 10:34:14 -07:00
sidebar-components.cjsx fix(message-sidebar): New ContactCard injectable role, updated FocusedContactStore 2015-09-24 18:58:53 -07:00
thread-archive-button.cjsx TaskFactory now returns N tasks for performing standard actions, undo uses arrays 2016-01-21 13:46:04 -08:00
thread-star-button.cjsx feat(tooltip): use native tooltip style 2015-10-21 11:27:57 -07:00
thread-toggle-unread-button.cjsx Harmonize require and remove unused ones. 2015-12-17 00:02:37 +01:00
thread-trash-button.cjsx feat(swipe-to-*): Gesture support and animation in thread list 2016-02-19 18:22:28 -08:00