From 7965ae401480103cd97dd2fdc50bd20945771fd1 Mon Sep 17 00:00:00 2001 From: xtaodada Date: Sun, 10 Mar 2024 10:06:54 +0800 Subject: [PATCH] feat: Show Quick Reply In Bot Commands --- .../src/main/java/org/telegram/ui/ChatActivity.java | 4 +++- .../org/telegram/ui/Components/ChatActivityEnterView.java | 4 ++-- .../nekogram/settings/NekoChatSettingsActivity.java | 1 + .../src/main/kotlin/xyz/nextalone/nagram/NaConfig.kt | 6 ++++++ TMessagesProj/src/main/res/values-zh-rCN/strings_na.xml | 1 + TMessagesProj/src/main/res/values/strings_na.xml | 1 + 6 files changed, 14 insertions(+), 3 deletions(-) diff --git a/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java b/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java index 90515f2faa..783918645e 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java @@ -2527,7 +2527,9 @@ public boolean onFragmentCreate() { hasQuickReplies = false; if (currentUser != null && chatMode == 0 && !currentUser.bot) { QuickRepliesController.getInstance(currentAccount).load(); -// hasQuickReplies = QuickRepliesController.getInstance(currentAccount).hasReplies(); + if (NaConfig.INSTANCE.getShowQuickReplyInBotCommands().Bool()) { + hasQuickReplies = QuickRepliesController.getInstance(currentAccount).hasReplies(); + } } } else if (encId != 0) { currentEncryptedChat = getMessagesController().getEncryptedChat(encId); diff --git a/TMessagesProj/src/main/java/org/telegram/ui/Components/ChatActivityEnterView.java b/TMessagesProj/src/main/java/org/telegram/ui/Components/ChatActivityEnterView.java index 8f432f1889..5eb7bafdf6 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/Components/ChatActivityEnterView.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/Components/ChatActivityEnterView.java @@ -10268,13 +10268,13 @@ private boolean checkBotButton() { if (botButton == null) { return false; } - boolean canShowBotsMenu = hasBotCommands && dialog_id > 0; + boolean canShowBotsMenu = botMenuButtonType != BotMenuButtonType.NO_BUTTON && dialog_id > 0; // if (canShowBotsMenu && ) { // TLRPC.Chat chat = accountInstance.getMessagesController().getChat(-(int) dialog_id); // canShowBotsMenu = chat == null || !chat.megagroup; // } - if (hasBotCommands || botReplyMarkup != null) { + if (hasBotCommands || hasQuickReplies || botReplyMarkup != null) { if (botReplyMarkup != null) { if (isPopupShowing() && currentPopupContentType == 1) { botButtonDrawable.setIcon(R.drawable.input_keyboard, true); diff --git a/TMessagesProj/src/main/java/tw/nekomimi/nekogram/settings/NekoChatSettingsActivity.java b/TMessagesProj/src/main/java/tw/nekomimi/nekogram/settings/NekoChatSettingsActivity.java index 697d0e50fe..59b3b8e577 100644 --- a/TMessagesProj/src/main/java/tw/nekomimi/nekogram/settings/NekoChatSettingsActivity.java +++ b/TMessagesProj/src/main/java/tw/nekomimi/nekogram/settings/NekoChatSettingsActivity.java @@ -154,6 +154,7 @@ public class NekoChatSettingsActivity extends BaseNekoXSettingsActivity implemen private final AbstractConfigCell doNotUnarchiveBySwipeRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDoNotUnarchiveBySwipe())); private final AbstractConfigCell disableMarkdownRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableMarkdown())); private final AbstractConfigCell disableClickCommandToSendRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableClickCommandToSend(), LocaleController.getString(R.string.DisableClickCommandToSendHint))); + private final AbstractConfigCell showQuickReplyInBotCommandsRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getShowQuickReplyInBotCommands())); private final AbstractConfigCell dividerInteractions = cellGroup.appendCell(new ConfigCellDivider()); // Sticker diff --git a/TMessagesProj/src/main/kotlin/xyz/nextalone/nagram/NaConfig.kt b/TMessagesProj/src/main/kotlin/xyz/nextalone/nagram/NaConfig.kt index 3b06dd4379..9df6a138a7 100644 --- a/TMessagesProj/src/main/kotlin/xyz/nextalone/nagram/NaConfig.kt +++ b/TMessagesProj/src/main/kotlin/xyz/nextalone/nagram/NaConfig.kt @@ -542,6 +542,12 @@ object NaConfig { ConfigItem.configTypeBool, false ) + val showQuickReplyInBotCommands = + addConfig( + "ShowQuickReplyInBotCommands", + ConfigItem.configTypeBool, + false + ) private fun addConfig( k: String, diff --git a/TMessagesProj/src/main/res/values-zh-rCN/strings_na.xml b/TMessagesProj/src/main/res/values-zh-rCN/strings_na.xml index 99599662e9..293be34214 100644 --- a/TMessagesProj/src/main/res/values-zh-rCN/strings_na.xml +++ b/TMessagesProj/src/main/res/values-zh-rCN/strings_na.xml @@ -125,4 +125,5 @@ 禁用主页浮动按钮 Disable Flag Secure 标题居中 + 在输入框中显示快速回复按钮 diff --git a/TMessagesProj/src/main/res/values/strings_na.xml b/TMessagesProj/src/main/res/values/strings_na.xml index b7eda7939e..d7cc7802cc 100644 --- a/TMessagesProj/src/main/res/values/strings_na.xml +++ b/TMessagesProj/src/main/res/values/strings_na.xml @@ -125,4 +125,5 @@ Disable Dialogs Floating Button Disable Flag Secure Center title in action bar + Show Quick Reply In Bot Commands