mirror of https://github.com/NekoX-Dev/NekoX.git
add unmuted option
This commit is contained in:
parent
116729d7d5
commit
8dfb5f7ecb
|
@ -2896,6 +2896,9 @@ public class DialogsActivity extends BaseFragment implements NotificationCenter.
|
|||
case FilterPopup.DialogType.Admin:
|
||||
title = LocaleController.getString("Admins", R.string.Admins);
|
||||
break;
|
||||
case FilterPopup.DialogType.Unmuted:
|
||||
title = LocaleController.getString("NotificationsUnmuted", R.string.NotificationsUnmuted);
|
||||
break;
|
||||
default:
|
||||
if (folderId != 0) {
|
||||
title = LocaleController.getString("ArchivedChats", R.string.ArchivedChats);
|
||||
|
|
|
@ -96,7 +96,7 @@ public class FilterPopup {
|
|||
} else if (lower_id < 0) {
|
||||
dialogsGroups.add(dialog);
|
||||
} else {
|
||||
TLRPC.User user = MessagesController.getInstance(currentAccount).getUser((int) dialog.id);
|
||||
TLRPC.User user = MessagesController.getInstance(currentAccount).getUser(lower_id);
|
||||
if (user != null) {
|
||||
if (user.bot)
|
||||
dialogsBots.add(dialog);
|
||||
|
@ -125,6 +125,19 @@ public class FilterPopup {
|
|||
return false;
|
||||
}
|
||||
|
||||
private ArrayList<TLRPC.Dialog> filterUnmutedDialogs(ArrayList<TLRPC.Dialog> allDialogs) {
|
||||
ArrayList<TLRPC.Dialog> dialogs = new ArrayList<>();
|
||||
for (TLRPC.Dialog dialog : allDialogs) {
|
||||
if (dialog instanceof TLRPC.TL_dialogFolder) {
|
||||
continue;
|
||||
}
|
||||
if (!MessagesController.getInstance(currentAccount).isDialogMuted(dialog.id)) {
|
||||
dialogs.add(dialog);
|
||||
}
|
||||
}
|
||||
return dialogs;
|
||||
}
|
||||
|
||||
public ArrayList<TLRPC.Dialog> getDialogs(int type, int folderId) {
|
||||
MessagesController messagesController = AccountInstance.getInstance(currentAccount).getMessagesController();
|
||||
ArrayList<TLRPC.Dialog> allDialogs = new ArrayList<>(messagesController.getDialogs(folderId));
|
||||
|
@ -141,6 +154,14 @@ public class FilterPopup {
|
|||
|
||||
ArrayList<TLRPC.Dialog> dialogs = new ArrayList<>();
|
||||
switch (type) {
|
||||
case DialogType.Unmuted:
|
||||
for (int i = 0; i < folders.size(); i++) {
|
||||
folderDialogs.get(i).retainAll(filterUnmutedDialogs(folderDialogs.get(i)));
|
||||
if (!folderDialogs.get(i).isEmpty())
|
||||
dialogs.add(folders.get(i));
|
||||
}
|
||||
allDialogs.retainAll(filterUnmutedDialogs(allDialogs));
|
||||
break;
|
||||
case DialogType.Users:
|
||||
for (int i = 0; i < folders.size(); i++) {
|
||||
folderDialogs.get(i).retainAll(dialogsUsers);
|
||||
|
@ -263,6 +284,14 @@ public class FilterPopup {
|
|||
unreadCounts.add(getDialogsUnreadCount(temp));
|
||||
}
|
||||
|
||||
temp = new ArrayList<>(allDialogs);
|
||||
temp.retainAll(filterUnmutedDialogs(allDialogs));
|
||||
if (!temp.isEmpty()) {
|
||||
items.add(LocaleController.getString("NotificationsUnmuted", R.string.NotificationsUnmuted));
|
||||
options.add(DialogType.Unmuted);
|
||||
unreadCounts.add(getDialogsUnreadCount(temp));
|
||||
}
|
||||
|
||||
if (scrimPopupWindow != null) {
|
||||
scrimPopupWindow.dismiss();
|
||||
scrimPopupWindow = null;
|
||||
|
@ -397,5 +426,6 @@ public class FilterPopup {
|
|||
public static final int Channels = 9;
|
||||
public static final int Bots = 10;
|
||||
public static final int Admin = 11;
|
||||
public static final int Unmuted = 12;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,12 +17,12 @@
|
|||
<string name="Repeat">繰り返す</string>
|
||||
<string name="CreateMention">アットユーザー</string>
|
||||
<string name="ForceTabletMode">タブレットモードを強制する</string>
|
||||
<string name="All">すべての会話</string>
|
||||
<string name="All">すべて</string>
|
||||
<string name="Users">ユーザー</string>
|
||||
<string name="Groups">グループ</string>
|
||||
<string name="Channels">チャンネル</string>
|
||||
<string name="Bots">ボット</string>
|
||||
<string name="Admins">管理な会話</string>
|
||||
<string name="Admins">マネージド</string>
|
||||
<string name="EnableNya">長押しするときにかわいいしっぽを送る</string>
|
||||
<string name="NyaSuffix">メッセージテール</string>
|
||||
<string name="NyaSuffixHint">ぽい</string>
|
||||
|
|
|
@ -17,12 +17,12 @@
|
|||
<string name="Repeat">复读</string>
|
||||
<string name="CreateMention">创建\@</string>
|
||||
<string name="ForceTabletMode">假装是平板(重启生效)</string>
|
||||
<string name="All">全部会话</string>
|
||||
<string name="All">全部</string>
|
||||
<string name="Users">用户</string>
|
||||
<string name="Groups">群组</string>
|
||||
<string name="Channels">频道</string>
|
||||
<string name="Bots">机器人</string>
|
||||
<string name="Admins">管理的会话</string>
|
||||
<string name="Admins">管理的</string>
|
||||
<string name="EnableNya">长按发送时加上可爱的尾音</string>
|
||||
<string name="NyaSuffix">消息尾音</string>
|
||||
<string name="NyaSuffixHint">恶意卖萌的尾音</string>
|
||||
|
|
|
@ -17,12 +17,12 @@
|
|||
<string name="Repeat">复讀</string>
|
||||
<string name="CreateMention">提及使用者</string>
|
||||
<string name="ForceTabletMode">強制平板模式(重啟生效)</string>
|
||||
<string name="All">全部會話</string>
|
||||
<string name="All">全部</string>
|
||||
<string name="Users">用戶</string>
|
||||
<string name="Groups">群組</string>
|
||||
<string name="Channels">頻道</string>
|
||||
<string name="Bots">機器人</string>
|
||||
<string name="Admins">管理的會話</string>
|
||||
<string name="Admins">管理的</string>
|
||||
<string name="EnableNya">長按發送時加上可愛的尾音</string>
|
||||
<string name="NyaSuffix">消息尾音</string>
|
||||
<string name="NyaSuffixHint">惡意賣萌的尾音</string>
|
||||
|
|
|
@ -17,12 +17,12 @@
|
|||
<string name="Repeat">Repeat</string>
|
||||
<string name="CreateMention">Create Mention</string>
|
||||
<string name="ForceTabletMode">Force tablet mode</string>
|
||||
<string name="All">All Chats</string>
|
||||
<string name="All">All</string>
|
||||
<string name="Users">Users</string>
|
||||
<string name="Groups">Groups</string>
|
||||
<string name="Channels">Channels</string>
|
||||
<string name="Bots">Bots</string>
|
||||
<string name="Admins">Administrating Chats</string>
|
||||
<string name="Admins">Administrating</string>
|
||||
<string name="EnableNya">Send message with suffix on long click</string>
|
||||
<string name="NyaSuffix">Message suffix</string>
|
||||
<string name="NyaSuffixHint">Suffix</string>
|
||||
|
|
Loading…
Reference in New Issue