Telegram Web K with changes to work inside I2P
https://web.telegram.i2p/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.0 KiB
62 lines
2.0 KiB
/* |
|
* https://github.com/morethanwords/tweb |
|
* Copyright (C) 2019-2021 Eduard Kuzmenko |
|
* https://github.com/morethanwords/tweb/blob/master/LICENSE |
|
*/ |
|
|
|
import appDialogsManager from "../../../lib/appManagers/appDialogsManager"; |
|
import { SliderSuperTab } from "../../slider"; |
|
|
|
export default class AppArchivedTab extends SliderSuperTab { |
|
public static filterId = 1; |
|
public loadedAll: boolean; |
|
public loadDialogsPromise: Promise<any>; |
|
public wasFilterId: number; |
|
|
|
init() { |
|
this.container.id = 'chats-archived-container'; |
|
this.setTitle('ArchivedChats'); |
|
|
|
//this.scrollable = new Scrollable(this.container, 'CLA', 500); |
|
const chatList = appDialogsManager.chatLists[AppArchivedTab.filterId]; |
|
this.scrollable.append(chatList); |
|
this.scrollable.container.addEventListener('scroll', appDialogsManager.onChatsRegularScroll); |
|
this.scrollable.setVirtualContainer(chatList); |
|
this.scrollable.onScrolledBottom = appDialogsManager.onChatsScroll; |
|
///this.scroll.attachSentinels(); |
|
|
|
appDialogsManager.setListClickListener(chatList, null, true); |
|
|
|
window.addEventListener('resize', () => { |
|
setTimeout(appDialogsManager.scroll.checkForTriggers, 0); |
|
}); |
|
} |
|
|
|
onOpen() { |
|
if(this.init) { |
|
this.init(); |
|
this.init = null; |
|
} |
|
|
|
this.wasFilterId = appDialogsManager.filterId; |
|
appDialogsManager.scroll = this.scrollable; |
|
appDialogsManager.filterId = AppArchivedTab.filterId; |
|
appDialogsManager.onTabChange(); |
|
} |
|
|
|
// вообще, так делать нельзя, но нет времени чтобы переделать главный чатлист на слайд... |
|
onOpenAfterTimeout() { |
|
appDialogsManager.chatLists[this.wasFilterId].innerHTML = ''; |
|
} |
|
|
|
onClose() { |
|
appDialogsManager.scroll = appDialogsManager._scroll; |
|
appDialogsManager.filterId = this.wasFilterId; |
|
appDialogsManager.onTabChange(); |
|
} |
|
|
|
onCloseAfterTimeout() { |
|
appDialogsManager.chatLists[AppArchivedTab.filterId].innerHTML = ''; |
|
return super.onCloseAfterTimeout(); |
|
} |
|
}
|
|
|