From fa0dfcb64de83dbe397690422ea584961c145940 Mon Sep 17 00:00:00 2001 From: link2xt Date: Sun, 6 Jun 2021 17:29:05 +0300 Subject: Make it possible to get a list of archived chats --- context.cpp | 4 ++-- context.h | 2 +- qml/ChatlistPage.qml | 4 +++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/context.cpp b/context.cpp index f3e698a..ea9c5c4 100644 --- a/context.cpp +++ b/context.cpp @@ -56,9 +56,9 @@ Context::getInfo() } DcChatlist * -Context::getChatlist() +Context::getChatlist(int flags) { - dc_chatlist_t *chatlist = dc_get_chatlist(m_context, 0, NULL, 0); + dc_chatlist_t *chatlist = dc_get_chatlist(m_context, flags, NULL, 0); return new DcChatlist{chatlist}; } diff --git a/context.h b/context.h index 2d31f71..aba3313 100644 --- a/context.h +++ b/context.h @@ -26,7 +26,7 @@ public: Q_INVOKABLE void startIo(); Q_INVOKABLE void stopIo(); Q_INVOKABLE void maybeNetwork(); - Q_INVOKABLE DcChatlist *getChatlist(); + Q_INVOKABLE DcChatlist *getChatlist(int flags); Q_INVOKABLE void setChatVisibility(uint32_t chatId, int visibility); Q_INVOKABLE void deleteChat(uint32_t chatId); Q_INVOKABLE QString getChatEncrinfo(uint32_t chatId); diff --git a/qml/ChatlistPage.qml b/qml/ChatlistPage.qml index a92e7b8..9bc9c5a 100644 --- a/qml/ChatlistPage.qml +++ b/qml/ChatlistPage.qml @@ -13,6 +13,8 @@ Kirigami.ScrollablePage { required property DcContext context required property DcAccountsEventEmitter eventEmitter + property bool archivedOnly: false + Connections { target: chatlistPage.eventEmitter @@ -51,7 +53,7 @@ Kirigami.ScrollablePage { } function updateChatlist() { - let chatlist = chatlistPage.context.getChatlist() + let chatlist = chatlistPage.context.getChatlist(chatlistPage.archivedOnly ? 1 : 0) // Merge new chatlist with existing one. // To preserve selected item, we do not simply clear and fill -- cgit v1.2.3-54-g00ecf