mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-09-07 00:17:03 +03:00
Added idea messagelist infinite scroll
This commit is contained in:
parent
bf6b30c971
commit
c2b4b1f238
2 changed files with 23 additions and 3 deletions
|
|
@ -169,7 +169,7 @@ MessagelistUserStore.canAutoSelect = () =>
|
||||||
* @param {boolean=} bDropPagePosition = false
|
* @param {boolean=} bDropPagePosition = false
|
||||||
* @param {boolean=} bDropCurrentFolderCache = false
|
* @param {boolean=} bDropCurrentFolderCache = false
|
||||||
*/
|
*/
|
||||||
MessagelistUserStore.reload = (bDropPagePosition = false, bDropCurrentFolderCache = false) => {
|
MessagelistUserStore.reload = (bDropPagePosition = false, bDropCurrentFolderCache = false, bAppend = false) => {
|
||||||
let iOffset = (MessagelistUserStore.page() - 1) * SettingsUserStore.messagesPerPage();
|
let iOffset = (MessagelistUserStore.page() - 1) * SettingsUserStore.messagesPerPage();
|
||||||
|
|
||||||
if (bDropCurrentFolderCache) {
|
if (bDropCurrentFolderCache) {
|
||||||
|
|
@ -264,7 +264,11 @@ MessagelistUserStore.reload = (bDropPagePosition = false, bDropCurrentFolderCach
|
||||||
|
|
||||||
disableAutoSelect(true);
|
disableAutoSelect(true);
|
||||||
|
|
||||||
MessagelistUserStore(collection);
|
if (bAppend) {
|
||||||
|
collection.forEach(item => MessagelistUserStore.push(item));
|
||||||
|
} else {
|
||||||
|
MessagelistUserStore(collection);
|
||||||
|
}
|
||||||
MessagelistUserStore.isIncomplete(false);
|
MessagelistUserStore.isIncomplete(false);
|
||||||
|
|
||||||
if (folder && (bCached || unreadCountChange || SettingsUserStore.useThreads())) {
|
if (folder && (bCached || unreadCountChange || SettingsUserStore.useThreads())) {
|
||||||
|
|
|
||||||
|
|
@ -254,10 +254,11 @@ export class MailMessageList extends AbstractViewRight {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/*
|
||||||
MessagelistUserStore.endHash.subscribe((() =>
|
MessagelistUserStore.endHash.subscribe((() =>
|
||||||
this.selector.scrollToFocused()
|
this.selector.scrollToFocused()
|
||||||
).throttle(50));
|
).throttle(50));
|
||||||
|
*/
|
||||||
decorateKoCommands(this, {
|
decorateKoCommands(this, {
|
||||||
downloadCommand: canBeMovedHelper,
|
downloadCommand: canBeMovedHelper,
|
||||||
forwardCommand: canBeMovedHelper,
|
forwardCommand: canBeMovedHelper,
|
||||||
|
|
@ -535,6 +536,21 @@ export class MailMessageList extends AbstractViewRight {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
b_content.addEventListener(
|
||||||
|
'scroll',
|
||||||
|
(() => {
|
||||||
|
if (b_content.scrollTop >= (b_content.scrollTopMax || (b_content.scrollHeight - b_content.clientTop))) {
|
||||||
|
// Load more messages in the MessageList
|
||||||
|
let page = MessagelistUserStore.page();
|
||||||
|
if (page < MessagelistUserStore.pageCount()) {
|
||||||
|
MessagelistUserStore.page(1 + page);
|
||||||
|
MessagelistUserStore.reload(false, false, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).debounce(1000),
|
||||||
|
{passive:true}
|
||||||
|
);
|
||||||
|
|
||||||
// initUploaderForAppend
|
// initUploaderForAppend
|
||||||
|
|
||||||
if (Settings.app('allowAppendMessage')) {
|
if (Settings.app('allowAppendMessage')) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue