From 82222afd764d76fb226fa539703754f295849ab6 Mon Sep 17 00:00:00 2001 From: CodeST <694468528@qq.com> Date: Wed, 25 Feb 2026 20:16:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20KBChatPanel=20=E5=8F=91?= =?UTF-8?q?=E9=80=81=E5=86=85=E5=AE=B9=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../KeyboardViewController+Chat.m | 16 ++++++++++++++-- ...B0-3C97-4594-BAD8-E9270D999989.xcactivitylog | Bin 0 -> 819 bytes ...6F-0143-4FD7-90C7-C8F37E9F59D6.xcactivitylog | Bin 760 -> 0 bytes .../xcshareddata/WorkspaceSettings.xcsettings | 5 +++++ .../WorkspaceSettings.xcsettings | 14 ++++++++++++++ 5 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 _DerivedData/Logs/Package/18A75CB0-3C97-4594-BAD8-E9270D999989.xcactivitylog delete mode 100644 _DerivedData/Logs/Package/C9B2536F-0143-4FD7-90C7-C8F37E9F59D6.xcactivitylog create mode 100644 keyBoard.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 keyBoard.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings diff --git a/CustomKeyboard/KeyboardViewControllerHelp/KeyboardViewController+Chat.m b/CustomKeyboard/KeyboardViewControllerHelp/KeyboardViewController+Chat.m index d2f9ced..c0a52ed 100644 --- a/CustomKeyboard/KeyboardViewControllerHelp/KeyboardViewController+Chat.m +++ b/CustomKeyboard/KeyboardViewControllerHelp/KeyboardViewController+Chat.m @@ -93,13 +93,25 @@ static const NSUInteger kKBChatMessageLimit = 6; NSString *trim = [rawText stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceAndNewlineCharacterSet]]; + NSString *textToClear = rawText; + if (trim.length == 0) { + // 兼容「先输入再打开聊天面板」场景: + // 此时新增文本为空,但当前输入框已有可发送内容,应该允许直接发送。 + NSString *fullTrim = + [fullText stringByTrimmingCharactersInSet: + [NSCharacterSet whitespaceAndNewlineCharacterSet]]; + if (fullTrim.length > 0) { + trim = fullTrim; + textToClear = fullText; + } + } if (trim.length == 0) { [KBHUD showInfo:KBLocalized(@"请输入内容")]; return; } [self kb_sendChatText:trim]; - // 只清除新增的文本,保留基线文本 - [self kb_clearHostInputForText:rawText]; + // 默认只清新增文本;若命中兜底则清当前全文,避免“已发送但输入框残留”。 + [self kb_clearHostInputForText:textToClear]; } - (void)kb_sendChatText:(NSString *)text { diff --git a/_DerivedData/Logs/Package/18A75CB0-3C97-4594-BAD8-E9270D999989.xcactivitylog b/_DerivedData/Logs/Package/18A75CB0-3C97-4594-BAD8-E9270D999989.xcactivitylog new file mode 100644 index 0000000000000000000000000000000000000000..3a4ffb20d3a0424f9e12a6b7f8162e74ecd453b8 GIT binary patch literal 819 zcmV-31I+v%iwFP!000006YZGoYTGarhHphUl=epzTeckAg+TK;3h4*U3f-T9BFl-H zV+G4;7fPYGG1zXdSF&R}EzQTav^cDVBoGu?I_K4SB>TnvUe_R`Vw!s=?M_RM$1L`H zVJw={F!FnHNREw) z)S9kAKi3iw<&NlD)-jeF1G5o1lmOQ_nmTbUrmrvMd9AO4wxd zr+&kvY(b;vFKNUkr8P~zQX*0Mm~p)q4ic8kbeRmR>NX70;&(FExr~EwI89i#0u(9~ z%M>xrg;L=l5=bU_&utQ>4E`S?KUB~N;~|KDJ{7BJ=!4{Zg@j)z5f_y6LN;55>06jkZTv_Ae!!HC8 z^D#2=MUssw3Idm^8p_Ib5(lz=ch>Jhlna)Q>aQr`Av)_{UH0mkf+Jmj?aUY?MKh>x zzW%!Loe-B&&v6ZOw^XK!^Zv>8N|^}K&Y>v9#?9E}6-ra#Yxnm%GUbvnZP(?ckO>Mh zkz{^$xbhR_Be=JRflw(_BtiSR8q8%B6?ay(zfC|-xz$=Q>+qGpNPo`yc3Mj@)^Q`0 z27Z~`cqCQE?HQOqC>ZVty@?RU0o+u4!#Y7}<}KfI&d3?VhNo%Q^f)^o!%>S{ZW`rbY2hA64F zGqdm6%>D(VImc*JvM;o)nnpa^?RcJxn-1+_YEu`xjV{66rrB+EXsu&pT8N+(b6!t}W9RfBZZ0OBl*vM5pjLnvsuZ9S3#DbPs?|N4z~BimS8PC9 zX0kMh6ISg3_I89wgg&d)!v6XB`;Sjw?TZgzEB*VL^PXi{YaThPSup@j*-F-)ZX+n@-S1F#ZvbM|6xlij)pj(_l&%NhHv$YO zqG4dvzEgDEioV|j!`P?3i_AQTND4`kxG*Bffdo-EO=%qC;d(Oc?~3UVd#;~C2NBah q(e0mfP;94on~A+S4mRmFsJ{S?Ts(T}2mk + + + + diff --git a/keyBoard.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings b/keyBoard.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..bbfef02 --- /dev/null +++ b/keyBoard.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings @@ -0,0 +1,14 @@ + + + + + BuildLocationStyle + UseAppPreferences + CustomBuildLocationType + RelativeToDerivedData + DerivedDataLocationStyle + Default + ShowSharedSchemesAutomaticallyEnabled + + +