Merge branch 'dev' into m_10.13.0

This commit is contained in:
xtaodada 2024-06-21 21:15:35 +08:00
commit eee29e0bad
Signed by: xtaodada
GPG Key ID: 4CBB3F4FA8C85659
9 changed files with 152 additions and 122 deletions

View File

@ -15,7 +15,7 @@ repositories {
}
def verName = "10.13.1"
def verCode = 1179
def verCode = 1180
def officialVer = "10.13.1"

View File

@ -4191,7 +4191,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
return Unit.INSTANCE;
});
if (NekoXConfig.isDeveloper()) {
if (NaConfig.INSTANCE.getShowHiddenFeature().Bool()) {
builder.addItem(LocaleController.getString("DeveloperSettings", R.string.DeveloperSettings), R.drawable.baseline_developer_mode_24, (it) -> {
BottomBuilder devBuilder = new BottomBuilder(ProfileActivity.this.getParentActivity());
devBuilder.addTitle(LocaleController.getString("DevModeTitle", R.string.DevModeTitle), LocaleController.getString("DevModeNotice", R.string.DevModeNotice));
@ -4259,6 +4259,10 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
public boolean onItemClick(View view, int position) {
if (position == versionRow) {
pressCount++;
if (pressCount >= 5) {
NaConfig.INSTANCE.getShowHiddenFeature().toggleConfigBool();
Toast.makeText(getParentActivity(), LocaleController.getString("ErrorOccurred", R.string.ErrorOccurred), Toast.LENGTH_SHORT).show();
}
if (pressCount >= 2 || BuildVars.DEBUG_PRIVATE_VERSION) {
AlertDialog.Builder builder = new AlertDialog.Builder(getParentActivity(), resourcesProvider);
builder.setTitle(LocaleController.getString("DebugMenu", R.string.DebugMenu));
@ -10603,6 +10607,9 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
}
private void createMessageFilterItem() {
if (!NaConfig.INSTANCE.getRegexFiltersEnabled().Bool()) {
return;
}
otherItem.addSubItem(message_filter, R.drawable.hide_title, LocaleController.getString("RegexFilters", R.string.RegexFilters));
}

View File

@ -190,21 +190,6 @@ public class NekoChatSettingsActivity extends BaseNekoXSettingsActivity implemen
private final AbstractConfigCell repeatConfirmRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.repeatConfirm));
private final AbstractConfigCell dividerConfirms = cellGroup.appendCell(new ConfigCellDivider());
// Story
private final AbstractConfigCell headerStory = cellGroup.appendCell(new ConfigCellHeader(LocaleController.getString("Story")));
private final AbstractConfigCell disableStoriesRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableStories()));
private final AbstractConfigCell disableSendReadStoriesRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableSendReadStories()));
private final AbstractConfigCell dividerStory = cellGroup.appendCell(new ConfigCellDivider());
private final AbstractConfigCell ignoreBlockedRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.ignoreBlocked, LocaleController.getString("IgnoreBlockedAbout")));
private final AbstractConfigCell regexFiltersEnabledRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getRegexFiltersEnabled()));
private final AbstractConfigCell regexFiltersEnableInChatsRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getRegexFiltersEnableInChats()));
private final AbstractConfigCell disableChatActionRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.disableChatAction));
private final AbstractConfigCell disableChoosingStickerRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.disableChoosingSticker));
private final AbstractConfigCell dividerEnd = cellGroup.appendCell(new ConfigCellDivider());
private ListAdapter listAdapter;
private ActionBarMenuItem menuItem;
private StickerSizeCell stickerSizeCell;
@ -212,15 +197,6 @@ public class NekoChatSettingsActivity extends BaseNekoXSettingsActivity implemen
private UndoView tooltip;
public NekoChatSettingsActivity() {
if (!NekoXConfig.isDeveloper()) {
cellGroup.rows.remove(disableChatActionRow);
cellGroup.rows.remove(disableChoosingStickerRow);
cellGroup.rows.remove(ignoreBlockedRow);
cellGroup.rows.remove(dividerEnd);
NekoConfig.disableChatAction.setConfigBool(false);
NekoConfig.disableChoosingSticker.setConfigBool(false);
NekoConfig.ignoreBlocked.setConfigBool(false);
}
if (!NekoConfig.showRepeat.Bool() || NaConfig.INSTANCE.getShowRepeatAsCopy().Bool()){
cellGroup.rows.remove(autoReplaceRepeatRow);
NaConfig.INSTANCE.getAutoReplaceRepeat().setConfigBool(false);
@ -287,10 +263,6 @@ public class NekoChatSettingsActivity extends BaseNekoXSettingsActivity implemen
listView.setOnItemClickListener((view, position, x, y) -> {
AbstractConfigCell a = cellGroup.rows.get(position);
if (a instanceof ConfigCellTextCheck) {
if (position == cellGroup.rows.indexOf(regexFiltersEnabledRow) && (LocaleController.isRTL && x > AndroidUtilities.dp(76) || !LocaleController.isRTL && x < (view.getMeasuredWidth() - AndroidUtilities.dp(76)))) {
presentFragment(new RegexFiltersSettingActivity());
return;
}
((ConfigCellTextCheck) a).onClick((TextCheckCell) view);
} else if (a instanceof ConfigCellSelectBox) {
((ConfigCellSelectBox) a).onClick(view);

View File

@ -101,8 +101,21 @@ public class NekoExperimentalSettingsActivity extends BaseNekoXSettingsActivity
private final AbstractConfigCell fakeHighPerformanceDeviceRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getFakeHighPerformanceDevice()));
private final AbstractConfigCell disableEmojiDrawLimitRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableEmojiDrawLimit()));
private final AbstractConfigCell sendMp4DocumentAsVideoRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getSendMp4DocumentAsVideo()));
private final AbstractConfigCell hideProxySponsorChannelRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.hideProxySponsorChannel));
private final AbstractConfigCell hideSponsoredMessageRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.hideSponsoredMessage));
private final AbstractConfigCell ignoreBlockedRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.ignoreBlocked, LocaleController.getString("IgnoreBlockedAbout")));
private final AbstractConfigCell regexFiltersEnabledRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getRegexFiltersEnabled()));
private final AbstractConfigCell regexFiltersEnableInChatsRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getRegexFiltersEnableInChats()));
private final AbstractConfigCell disableChatActionRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.disableChatAction));
private final AbstractConfigCell disableChoosingStickerRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.disableChoosingSticker));
private final AbstractConfigCell divider1 = cellGroup.appendCell(new ConfigCellDivider());
// Story
private final AbstractConfigCell headerStory = cellGroup.appendCell(new ConfigCellHeader(LocaleController.getString("Story")));
private final AbstractConfigCell disableStoriesRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableStories()));
private final AbstractConfigCell disableSendReadStoriesRow = cellGroup.appendCell(new ConfigCellTextCheck(NaConfig.INSTANCE.getDisableSendReadStories()));
private final AbstractConfigCell dividerStory = cellGroup.appendCell(new ConfigCellDivider());
private final AbstractConfigCell header3 = cellGroup.appendCell(new ConfigCellHeader(LocaleController.getString(R.string.ExternalStickerCache)));
private final AbstractConfigCell externalStickerCacheRow = cellGroup.appendCell(new ConfigCellAutoTextCheck(
NaConfig.INSTANCE.getExternalStickerCache(), LocaleController.getString(R.string.ExternalStickerCacheHint), this::onExternalStickerCacheButtonClick));
@ -118,6 +131,40 @@ public class NekoExperimentalSettingsActivity extends BaseNekoXSettingsActivity
private static final int INTENT_PICK_EXTERNAL_STICKER_DIRECTORY = 514;
public NekoExperimentalSettingsActivity() {
if (!NaConfig.INSTANCE.getShowHiddenFeature().Bool()) {
cellGroup.rows.remove(localPremiumRow);
cellGroup.rows.remove(localQuoteColorRow);
cellGroup.rows.remove(enhancedFileLoaderRow);
cellGroup.rows.remove(disableFilteringRow);
cellGroup.rows.remove(unlimitedFavedStickersRow);
cellGroup.rows.remove(unlimitedPinnedDialogsRow);
cellGroup.rows.remove(enableStickerPinRow);
cellGroup.rows.remove(forceCopyRow);
cellGroup.rows.remove(disableFlagSecureRow);
cellGroup.rows.remove(hideSponsoredMessageRow);
cellGroup.rows.remove(ignoreBlockedRow);
cellGroup.rows.remove(regexFiltersEnabledRow);
cellGroup.rows.remove(regexFiltersEnableInChatsRow);
cellGroup.rows.remove(disableChatActionRow);
cellGroup.rows.remove(disableChoosingStickerRow);
cellGroup.rows.remove(headerStory);
cellGroup.rows.remove(disableStoriesRow);
cellGroup.rows.remove(disableSendReadStoriesRow);
cellGroup.rows.remove(dividerStory);
NekoConfig.localPremium.setConfigBool(false);
NaConfig.INSTANCE.getForceCopy().setConfigBool(false);
NaConfig.INSTANCE.getDisableFlagSecure().setConfigBool(false);
NekoConfig.hideSponsoredMessage.setConfigBool(false);
NekoConfig.ignoreBlocked.setConfigBool(false);
NaConfig.INSTANCE.getRegexFiltersEnabled().setConfigBool(false);
NekoConfig.disableChatAction.setConfigBool(false);
NekoConfig.disableChoosingSticker.setConfigBool(false);
NaConfig.INSTANCE.getDisableSendReadStories().setConfigBool(false);
}
addRowsToMap(cellGroup);
}
@ -191,6 +238,10 @@ public class NekoExperimentalSettingsActivity extends BaseNekoXSettingsActivity
listView.setOnItemClickListener((view, position, x, y) -> {
AbstractConfigCell a = cellGroup.rows.get(position);
if (a instanceof ConfigCellTextCheck) {
if (position == cellGroup.rows.indexOf(regexFiltersEnabledRow) && (LocaleController.isRTL && x > AndroidUtilities.dp(76) || !LocaleController.isRTL && x < (view.getMeasuredWidth() - AndroidUtilities.dp(76)))) {
presentFragment(new RegexFiltersSettingActivity());
return;
}
((ConfigCellTextCheck) a).onClick((TextCheckCell) view);
} else if (a instanceof ConfigCellSelectBox) {
((ConfigCellSelectBox) a).onClick(view);

View File

@ -228,8 +228,6 @@ public class NekoGeneralSettingsActivity extends BaseNekoXSettingsActivity {
private final AbstractConfigCell disableUndoRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.disableUndo));
private final AbstractConfigCell showIdAndDcRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.showIdAndDc));
private final AbstractConfigCell inappCameraRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.inappCamera));
private final AbstractConfigCell hideProxySponsorChannelRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.hideProxySponsorChannel));
private final AbstractConfigCell hideSponsoredMessageRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.hideSponsoredMessage));
private final AbstractConfigCell autoPauseVideoRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.autoPauseVideo, LocaleController.getString("AutoPauseVideoAbout")));
private final AbstractConfigCell disableNumberRoundingRow = cellGroup.appendCell(new ConfigCellTextCheck(NekoConfig.disableNumberRounding, "4.8K -> 4777"));
private final AbstractConfigCell nameOrderRow = cellGroup.appendCell(new ConfigCellSelectBox(null, NekoConfig.nameOrder, new String[]{
@ -260,10 +258,6 @@ public class NekoGeneralSettingsActivity extends BaseNekoXSettingsActivity {
private UndoView restartTooltip;
public NekoGeneralSettingsActivity() {
if (!NekoXConfig.isDeveloper()) {
cellGroup.rows.remove(hideSponsoredMessageRow);
}
addRowsToMap(cellGroup);
}

View File

@ -620,6 +620,12 @@ object NaConfig {
ConfigItem.configTypeBool,
true
)
val showHiddenFeature =
addConfig(
"ShowHiddenFeature",
ConfigItem.configTypeBool,
false
)
private fun addConfig(
k: String,

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="N_Config">N-Config</string>
<string name="N_Config">N-構成</string>
<string name="ForceCopy">強制コピー</string>
<string name="InvertReply">Invert</string>
<string name="Great">素晴らしい</string>
@ -132,7 +132,7 @@
<string name="PushServiceTypeUnified">統一されたプッシュ</string>
<string name="PushServiceTypeMicroG">MicroG</string>
<string name="PushServiceTypeInAppDialog">常駐通知を表示</string>
<string name="PushServiceTypeUnifiedGateway">Unified Push Gateway</string>
<string name="PushServiceTypeUnifiedGateway">統合プッシュゲートウェイ</string>
<string name="SendMp4DocumentAsVideo">mp4ドキュメントを動画として送信</string>
<string name="StickersChooseShortNameForStickerPack">あなたのパックの短い名前を選択してください。</string>
<string name="StickersCopyStickerSet">ステッカーセットをコピー</string>

View File

@ -24,7 +24,7 @@
<string name="CreateMono">Создать моноширинный</string>
<string name="CreateMonoLanguage">Язык кода</string>
<string name="CodeSyntaxHighlightDetails">Спасибо prismjs и Nekogram</string>
<string name="UseSystemUnlock">Разблокировка паролем с использованием системного интерфейса</string>
<string name="UseSystemUnlock">Разблокировка паролем с помощью системного интерфейса</string>
<string name="CopyPhoto">Копировать фото</string>
<string name="PhotoCopied">Фото скопировано в буфер обмена</string>
<string name="ToTheBeginning">К началу</string>
@ -41,10 +41,10 @@
<string name="AppIconColorful">Цветная</string>
<string name="AppIconDarkGreen">Тёмно-зелёная</string>
<string name="AppIconNeon">Неон</string>
<string name="AppIconNiello">Черный</string>
<string name="AppIconNiello">Ниелло</string>
<string name="AppIconBlue">Синяя</string>
<string name="AppIconDarkBlue">Тёмно-синяя</string>
<string name="AppIconBlurBlue">Размытый синий</string>
<string name="AppIconBlurBlue">Размытая синяя</string>
<string name="AutoInsertGIFCaption">Автоматическая вставка подписи перед отправкой GIF</string>
<string name="DefaultMonoLanguage">Пользовательский язык кода по умолчанию</string>
<string name="DisableGlobalSearch">Отключить глобальный поиск</string>
@ -71,7 +71,7 @@
<string name="CustomEditedMessage">Подпись для изменённых сообщений</string>
<string name="FakeHighPerformanceDevice">Поддельное высокопроизводительное устройство</string>
<string name="DisableEmojiDrawLimit">Отключить ограничение на отрисовку эмодзи</string>
<string name="IconDecoration">Оформление иконки</string>
<string name="IconDecoration">Оформление значков</string>
<string name="NotificationIcon">Иконка уведомления</string>
<string name="Official">Официальная</string>
<string name="Nekogram">Nekogram</string>
@ -96,8 +96,8 @@
<string name="DisableSuggestionView">Отключить предложение настройки профиля</string>
<string name="DisableStories">Отключить истории</string>
<string name="DisableSendReadStories">Отключить отправку прочтения историй</string>
<string name="HideFilterMuteAll">Скрыть фильтр \"заглушить всех\"</string>
<string name="UseLocalQuoteColor">Использовать локальный цвет цитаты</string>
<string name="HideFilterMuteAll">Скрыть фильтр «Отключить все»</string>
<string name="UseLocalQuoteColor">Локальный цвет цитаты</string>
<string name="ShowSquareAvatar">Квадратные аватары</string>
<string name="DisableCustomWallpaperUser">Отключить пользовательские обои</string>
<string name="DisableCustomWallpaperChannel">Отключить пользовательские обои каналов</string>
@ -109,8 +109,8 @@
<string name="ExternalStickerCacheWaitSync">Ожидание завершения синхронизации кэша</string>
<string name="ExternalStickerCacheSyncNotFinished">Синхронизация кэша уже запущена</string>
<string name="ExternalStickerCacheAutoRefresh">Автоматическая синхронизация</string>
<string name="ExternalStickerCacheAutoRefreshHint">Автосинхронизировать все кеши после получения событий стикера</string>
<string name="ExternalStickerCacheRefreshAll">Синхронизировать все кеши</string>
<string name="ExternalStickerCacheAutoRefreshHint">Автоматически синхронизируйте весь кэш после получения событий, связанных со стикерами.</string>
<string name="ExternalStickerCacheRefreshAll">Синхронизировать весь кэш</string>
<string name="ExternalStickerCacheDeleteAll">Удалить весь кэш</string>
<string name="ExternalStickerCacheDirNameType">Присвоение имен каталогам</string>
<string name="ProviderTranSmartTranslate">TranSmart</string>
@ -132,11 +132,11 @@
<string name="PushServiceTypeUnified">Unified Push</string>
<string name="PushServiceTypeMicroG">microG</string>
<string name="PushServiceTypeInAppDialog">Показывать постоянное уведомление</string>
<string name="PushServiceTypeUnifiedGateway">Unified Push Gateway</string>
<string name="PushServiceTypeUnifiedGateway">Шлюз Unified Push</string>
<string name="SendMp4DocumentAsVideo">Отправлять MP4 без сжатия как видео</string>
<string name="StickersChooseShortNameForStickerPack">Выберите короткое имя для своего набора.</string>
<string name="StickersCopyStickerSet">Копировать набор стикеров</string>
<string name="DisableChannelMuteButton">Отключить кнопку заглушения канала</string>
<string name="DisableChannelMuteButton">Отключить кнопку выключения звука каналов</string>
<string name="DisablePreviewVideoSoundShortcut">Отключить звук видео превью</string>
<string name="DisablePreviewVideoSoundShortcutNotice">Не включать звук кнопками громкости при предпросмотре видео.</string>
<string name="DisableAutoWebLogin">Отключить автоматический вход при переходе в веб версию</string>

View File

@ -41,10 +41,10 @@
<string name="AppIconColorful">繽紛</string>
<string name="AppIconDarkGreen">深翠</string>
<string name="AppIconNeon">霓虹</string>
<string name="AppIconNiello">Niello</string>
<string name="AppIconBlue">Blue</string>
<string name="AppIconDarkBlue">Dark Blue</string>
<string name="AppIconBlurBlue">Blur Blue</string>
<string name="AppIconNiello">黑金</string>
<string name="AppIconBlue">藍色</string>
<string name="AppIconDarkBlue">幾何藍色</string>
<string name="AppIconBlurBlue">輕盈</string>
<string name="AutoInsertGIFCaption">在 GIF 傳送時自動插入草稿</string>
<string name="DefaultMonoLanguage">自訂預設語法高亮語言</string>
<string name="DisableGlobalSearch">禁用全域性搜尋</string>
@ -73,87 +73,87 @@
<string name="DisableEmojiDrawLimit">解除 Emoji 渲染上限</string>
<string name="IconDecoration">圖示裝飾</string>
<string name="NotificationIcon">通知圖標樣式</string>
<string name="Official">Official</string>
<string name="Official">官方</string>
<string name="Nekogram">Nekogram</string>
<string name="HalloWeen">萬聖節</string>
<string name="ShowOnlineStatus">顯示使用者線上狀態</string>
<string name="ShowOnlineStatusNotice">在群組聊天時使用者頭像的右下角顯示線上狀態</string>
<string name="ShowRecentOnlineStatus">Show Recent Online Status</string>
<string name="ShowRecentOnlineStatus">顯示用戶最近在綫狀態</string>
<string name="DoActionsInCommonGroups">也在共同群操作</string>
<string name="ShowFullAbout">直接顯示完整的群組簡介</string>
<string name="HideMessageSeenTooltip">隱藏訊息已讀提示</string>
<string name="TypeMessageHintUseGroupName">使用群組名稱作為輸入框提示</string>
<string name="HideBotButtonInInputField">隱藏輸入框中的機器人按鈕</string>
<string name="ShowSendAsUnderMessageHint">在訊息提示下顯示傳送者</string>
<string name="CheckAllForum">Add forum</string>
<string name="ShowForumAsNormalChat">Show forum as normal chat</string>
<string name="DecorationNone">None</string>
<string name="ChatDecoration">Chat Decoration</string>
<string name="NeedChangeNekoSettings">You need to change N-Settings</string>
<string name="DoNotUnarchiveBySwipe">Do not unarchive by swipe</string>
<string name="DoNotShareMyPhoneNumber">Do not share my phone number</string>
<string name="DefaultDeleteMenu">Default Delete Menu</string>
<string name="DisableSuggestionView">Disable Profile Settings Suggestion</string>
<string name="DisableStories">Disable Stories</string>
<string name="DisableSendReadStories">Disable Send Read Stories</string>
<string name="HideFilterMuteAll">Hide filter mute all</string>
<string name="UseLocalQuoteColor">Use local quote color</string>
<string name="ShowSquareAvatar">Show square avatar</string>
<string name="DisableCustomWallpaperUser">Disable user custom wallpaper</string>
<string name="DisableCustomWallpaperChannel">Disable channel custom wallpaper</string>
<string name="CopyPhotoAsSticker">Copy Photo As Sticker</string>
<string name="ExternalStickerCache">External sticker cache</string>
<string name="ExternalStickerCacheHint">For sharing sticker packs with other apps. Click to pick storage location.</string>
<string name="ExternalStickerCacheRefresh">Refresh External Cache</string>
<string name="ExternalStickerCacheDelete">Delete External Cache</string>
<string name="ExternalStickerCacheWaitSync">Waiting for cache sync to finish</string>
<string name="ExternalStickerCacheSyncNotFinished">Cache sync is already running</string>
<string name="ExternalStickerCacheAutoRefresh">Automatic sync</string>
<string name="ExternalStickerCacheAutoRefreshHint">Automatically sync all caches after receiving sticker events</string>
<string name="ExternalStickerCacheRefreshAll">Sync all caches</string>
<string name="ExternalStickerCacheDeleteAll">Delete all caches</string>
<string name="ExternalStickerCacheDirNameType">Directory naming</string>
<string name="CheckAllForum">添加所有話題模式的群組</string>
<string name="ShowForumAsNormalChat">以普通對話模式打開話題模式群組</string>
<string name="DecorationNone"></string>
<string name="ChatDecoration">聊天框裝飾</string>
<string name="NeedChangeNekoSettings">此設置已被 N-設置 覆蓋,無法修改</string>
<string name="DoNotUnarchiveBySwipe">禁用滑動取消歸檔</string>
<string name="DoNotShareMyPhoneNumber">禁用分享我的手機號碼</string>
<string name="DefaultDeleteMenu">默認刪除菜單</string>
<string name="DisableSuggestionView">停用設定檔設定建議</string>
<string name="DisableStories">禁用動態功能s</string>
<string name="DisableSendReadStories">偷偷看動態</string>
<string name="HideFilterMuteAll">隱藏文件夾中的\"全部取消靜音\</string>
<string name="UseLocalQuoteColor">本地名稱顏色</string>
<string name="ShowSquareAvatar">顯示方形頭像</string>
<string name="DisableCustomWallpaperUser">禁用私聊的自定義背景</string>
<string name="DisableCustomWallpaperChannel">禁用頻道的自定義背景</string>
<string name="CopyPhotoAsSticker">復製圖片但是貼紙</string>
<string name="ExternalStickerCache">外部貼紙緩存</string>
<string name="ExternalStickerCacheHint">用於與其他應用共享貼紙包 (點擊選擇存儲位置)</string>
<string name="ExternalStickerCacheRefresh">刷新外部緩存</string>
<string name="ExternalStickerCacheDelete">刪除外部緩存</string>
<string name="ExternalStickerCacheWaitSync">正在等待緩存同步完成</string>
<string name="ExternalStickerCacheSyncNotFinished">緩存同步已經在運行了</string>
<string name="ExternalStickerCacheAutoRefresh">自動同步</string>
<string name="ExternalStickerCacheAutoRefreshHint">在有貼紙事件時自動同步所有緩存 </string>
<string name="ExternalStickerCacheRefreshAll">同步所有緩存</string>
<string name="ExternalStickerCacheDeleteAll">刪除所有緩存</string>
<string name="ExternalStickerCacheDirNameType">目錄命名方式</string>
<string name="ProviderTranSmartTranslate">騰訊交互翻譯</string>
<string name="DisableMarkdown">Disable Markdown</string>
<string name="SendWithMarkdown">Send with markdown</string>
<string name="DisableClickProfileGalleryView">Disable flip avatars by tapping</string>
<string name="TipsInfo">Want to follow our features tips channel?</string>
<string name="TipsChannel">Features Tips Channel</string>
<string name="ShowSmallGIF">Show Small Gif</string>
<string name="DisableClickCommandToSend">Disable click command text to send</string>
<string name="DisableClickCommandToSendHint">To prevent accidental touch</string>
<string name="DisableDialogsFloatingButton">Disable Dialogs Floating Button</string>
<string name="DisableFlagSecure">Disable Flag Secure</string>
<string name="CenterActionBarTitle">Center title in action bar</string>
<string name="ShowQuickReplyInBotCommands">Show Quick Reply In Bot Commands</string>
<string name="PushServiceType">Push Service Type</string>
<string name="PushServiceTypeInApp">In App</string>
<string name="DisableMarkdown">禁用 Markdown</string>
<string name="SendWithMarkdown">啟用 markdown</string>
<string name="DisableClickProfileGalleryView">禁用點按切換頭像</string>
<string name="TipsInfo">要關註我們的功能介紹頻道嗎 </string>
<string name="TipsChannel">功能介紹頻道</string>
<string name="ShowSmallGIF">GIF 顯示得更小</string>
<string name="DisableClickCommandToSend">禁用點擊指令文本發送</string>
<string name="DisableClickCommandToSendHint">防止意外觸碰</string>
<string name="DisableDialogsFloatingButton">禁用主頁浮動按鈕</string>
<string name="DisableFlagSecure">禁用標記安全</string>
<string name="CenterActionBarTitle">標題居中</string>
<string name="ShowQuickReplyInBotCommands">在輸入框中顯示快速回復按鈕</string>
<string name="PushServiceType">通知推送服務</string>
<string name="PushServiceTypeInApp">內置</string>
<string name="PushServiceTypeFCM">Google FCM</string>
<string name="PushServiceTypeUnified">Unified Push</string>
<string name="PushServiceTypeUnified">統一推送</string>
<string name="PushServiceTypeMicroG">MicroG</string>
<string name="PushServiceTypeInAppDialog">Show resident notifications</string>
<string name="PushServiceTypeUnifiedGateway">Unified Push Gateway</string>
<string name="SendMp4DocumentAsVideo">Send mp4 document as video</string>
<string name="StickersChooseShortNameForStickerPack">Choose a short name for your pack.</string>
<string name="StickersCopyStickerSet">Copy Sticker Set</string>
<string name="DisableChannelMuteButton">Disable channel mute button</string>
<string name="DisablePreviewVideoSoundShortcut">Disable preview video sound shortcut</string>
<string name="DisablePreviewVideoSoundShortcutNotice">Disable volume keys to enable preview video sound</string>
<string name="DisableAutoWebLogin">Disable auto web login</string>
<string name="PreviewSendPhoto">Send Photo</string>
<string name="PreviewSendVideo">Send Video</string>
<string name="PreviewSendFile">Send File</string>
<string name="SentryAnalytics">Sentry Crash Report</string>
<string name="UnblockDeleted">Unblock Deleted Users</string>
<string name="UnblockDeletedWarn">Are you sure you want to unblock **all deleted users**?</string>
<string name="RegexFilters">Message Filters</string>
<string name="RegexFiltersHeader">Filters</string>
<string name="RegexFiltersEnableInChats">Enable in private chats</string>
<string name="RegexFiltersCaseInsensitive">Case insensitive expressions</string>
<string name="RegexFiltersAdd">Add filter</string>
<string name="RegexFiltersEdit">Edit filter</string>
<string name="RegexFiltersAddDescription">You can use site <![CDATA[<a href="https://regex101.com">regex101.com</a>]]> to fully test your regular expression.
You can also use plain text, but don\'t forget to escape brackets.</string>
<string name="RegexFiltersAddError">Regex syntax error</string>
<string name="ShowTimeHint">Click message time to display details</string>
<string name="PushServiceTypeInAppDialog">顯示常駐通知</string>
<string name="PushServiceTypeUnifiedGateway">統一推播網關</string>
<string name="SendMp4DocumentAsVideo">MP4 視頻作為文件發送時可預覽</string>
<string name="StickersChooseShortNameForStickerPack">為您的包選擇一個簡短的名稱</string>
<string name="StickersCopyStickerSet">復製整個貼紙包</string>
<string name="DisableChannelMuteButton">禁用頻道聊天頁面的靜音按鈕</string>
<string name="DisablePreviewVideoSoundShortcut">禁用預覽視頻音量快捷鍵</string>
<string name="DisablePreviewVideoSoundShortcutNotice">禁用音量鍵快捷開啟預覽視頻的聲音</string>
<string name="DisableAutoWebLogin">禁用官方網頁自動登錄</string>
<string name="PreviewSendPhoto">傳送照片</string>
<string name="PreviewSendVideo">傳送視頻</string>
<string name="PreviewSendFile">傳送文件</string>
<string name="SentryAnalytics">崩潰自動上報</string>
<string name="UnblockDeleted">解禁已刪除賬號</string>
<string name="UnblockDeletedWarn">您確定要解除屏蔽**所有已刪除賬號**嗎?</string>
<string name="RegexFilters">消息過濾</string>
<string name="RegexFiltersHeader">消息過濾</string>
<string name="RegexFiltersEnableInChats">在私聊中啟用消息過濾</string>
<string name="RegexFiltersCaseInsensitive">不區分大小寫</string>
<string name="RegexFiltersAdd">添加正則表達式</string>
<string name="RegexFiltersEdit">修改正則表達式</string>
<string name="RegexFiltersAddDescription">您可以使用網站 <![CDATA[<a href="https://regex101.com">regex101.com</a>]]> 來測試您的正則表達式。
您也可以使用純文本,但請不要忘記使用轉義符號。</string>
<string name="RegexFiltersAddError">正則表達式語法錯誤</string>
<string name="ShowTimeHint">點擊消息時間顯示詳細信息</string>
</resources>