Mailspring/internal_packages/composer
Evan Morikawa 9859e594f2 feat(composer): typing at the end of the composer tracks scrolling
Summary:
When you're typing at the end of the composer, then the composer should
look like it's scrolling along with you.

When you're typing in the middle of the composer, if the footer
inforamtion scrolls past the end of the page, then that's fine.

When the selection changes, the contenteditable component now caches
whether or not the selection is at the end of the content. It has to do it
at this point, otherwise the cloned, cached DOM nodes of the saved
selection are not the same nodes that will show up in the future.

Whether the cursor is at the end is queried by the composer on a body
change. If it is, then the composer expects a callback from its parent
(the message list), to call to update the scroll position.

The message list immediately updates the scroll position to move the
bottom of the composer to the bottom of the message-wrap window.

Test Plan: edgehill --test

Reviewers: bengotow

Reviewed By: bengotow

Differential Revision: https://review.inboxapp.com/D1366
2015-03-27 19:35:27 -04:00
..
keymaps feat(draft): escape deletes pristine drafts 2015-03-25 14:18:07 -04:00
lib feat(composer): typing at the end of the composer tracks scrolling 2015-03-27 19:35:27 -04:00
spec feat(threads): List improvements and message collapsing 2015-03-25 12:41:48 -07:00
stylesheets feat(selection): by default nothing is selectable. 2015-03-26 14:39:42 -04:00
.bowerrc fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00
.gitignore fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00
bower.json fix(drafts): Rename files inbox-composer =>composer 2015-02-03 17:16:25 -08:00
build.js fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00
CHANGELOG.md fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00
end.frag fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00
LICENSE.md fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00
package.json fix(speed): Mark packages as engine:atom, don't include coffee,cjsx in compiled app 2015-03-20 17:53:11 -07:00
README.md fix(drafts): Rename files inbox-composer =>composer 2015-02-03 17:16:25 -08:00
start.frag fix(drafts): Various improvements and fixes to drafts, draft state management 2015-02-03 16:24:31 -08:00

composer package