mirror of
https://github.com/Foundry376/Mailspring.git
synced 2024-09-23 08:46:07 +08:00
1a3cca8d0a
* Remove the composer contenteditable, replace with basic <textarea> * Beginning broader cleanup of draft session * DraftJS composer with color, style support * Serialization/unserialization of basic styles, toolbar working * WIP * Switch to draft-js-plugins approach, need to revisit HTML * Move HTML conversion functionality into plugins * Add spellcheck context menu to editor * Initial work on quoted text * Further work on quoted text * BLOCK approach * Entity approach - better, does not bump out to top level * Hiding and showing quoted text via CSS * Get rid of ability to inject another subject line component * Clean up specs, DraftFactory to ES6 * Remove old initial focus hack * Fix focusing, initial text selection * Remove participant “collapsing” support, it can be confusing * Correctly terminate links on carriage returns * Initial signature support, allow removal of uneditable blocks * Sync body string with body editorstate * Simplify draft editor session, finish signatures * Templates * Minor fixes * Simplify link/open tracking, ensure it works * Reorg composer, rework template editor * Omg the slowness is all the stupid emoji button * Polish and small fixes * Performance improvements, new templates UI * Don’t assume nodes are elements * Fix for sending drafts twice due to back-to-back saves * Fix order of operations on app quit to save drafts reliably * Improve DraftJS-Convert whitespace handling * Use contentID throughout attachment lifecycle * Try to fix images * Switch to Slate instead of DraftJS… much better * Fix newline handling * Bug fixes * Cleanup * Finish templates plugin * Clean up text editing / support for Gmail email styles * Support for color + size on the same node, clean trailing whitespace * Restore emoji typeahead / emoji picker * Fix scrolling in template editor * Fix specs * Fix newlines * Re-implement spellcheck to be faster * Make spellcheck decorator changes invisible to the undo/redo stack * Remove comment * Polish themplates panel * Fix #521
39 lines
1.2 KiB
JavaScript
39 lines
1.2 KiB
JavaScript
import { React, PropTypes, Actions } from 'mailspring-exports';
|
|
import { MultiselectDropdown } from 'mailspring-component-kit';
|
|
|
|
export default class SignatureAccountDefaultPicker extends React.Component {
|
|
static propTypes = {
|
|
defaults: PropTypes.object,
|
|
signature: PropTypes.object,
|
|
accountsAndAliases: PropTypes.array,
|
|
};
|
|
|
|
_onToggleAccount = account => {
|
|
Actions.toggleAccount(account.email);
|
|
};
|
|
|
|
render() {
|
|
const { accountsAndAliases, defaults, signature } = this.props;
|
|
|
|
const isChecked = accountOrAlias => defaults[accountOrAlias.email] === signature.id;
|
|
const checked = accountsAndAliases.filter(isChecked);
|
|
|
|
return (
|
|
<div className="account-picker">
|
|
Default for:{' '}
|
|
<MultiselectDropdown
|
|
className="account-dropdown"
|
|
items={accountsAndAliases}
|
|
itemChecked={isChecked}
|
|
itemContent={accountOrAlias => accountOrAlias.email}
|
|
itemKey={a => a.id}
|
|
current={signature}
|
|
attachment={'right'}
|
|
buttonText={`${checked.length} Account${checked.length === 1 ? '' : 's'}`}
|
|
onToggleItem={this._onToggleAccount}
|
|
/>
|
|
</div>
|
|
);
|
|
}
|
|
}
|