From 1b4267a6ff4a2446c80b29c5bf5728f5e0e9627d Mon Sep 17 00:00:00 2001 From: Misaka Date: Fri, 15 May 2026 22:31:55 +0800 Subject: [PATCH] Append submitted Android text on desktop --- .../SyncMessageTests.cs | 4 ++-- .../Services/SyncMessageHandler.cs | 14 ++++++-------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/WirelessTextSyncer.Windows.Tests/SyncMessageTests.cs b/WirelessTextSyncer.Windows.Tests/SyncMessageTests.cs index 3038668..f368e01 100644 --- a/WirelessTextSyncer.Windows.Tests/SyncMessageTests.cs +++ b/WirelessTextSyncer.Windows.Tests/SyncMessageTests.cs @@ -43,7 +43,7 @@ public sealed class SyncMessageTests } [TestMethod] - public void ReplaceAllUsesFocusedTextReplacement() + public void ReplaceAllAppendsSubmittedText() { var keyboard = new RecordingKeyboardInjectionService(); var handler = new SyncMessageHandler(keyboard); @@ -55,7 +55,7 @@ public sealed class SyncMessageTests }); CollectionAssert.AreEqual( - new[] { "replace:final text" }, + new[] { "insert:final text" }, keyboard.Calls); } diff --git a/WirelessTextSyncer.Windows/Services/SyncMessageHandler.cs b/WirelessTextSyncer.Windows/Services/SyncMessageHandler.cs index 3fe575d..ea15181 100644 --- a/WirelessTextSyncer.Windows/Services/SyncMessageHandler.cs +++ b/WirelessTextSyncer.Windows/Services/SyncMessageHandler.cs @@ -22,7 +22,7 @@ public sealed class SyncMessageHandler remoteText += insertedText; break; case SyncAction.ReplaceAll: - ReplaceAll(message.Text ?? string.Empty); + AppendSubmittedText(message.Text ?? string.Empty); break; case SyncAction.Backspace: keyboard.Backspace(); @@ -43,17 +43,15 @@ public sealed class SyncMessageHandler } } - private void ReplaceAll(string newText) + private void AppendSubmittedText(string text) { - if (newText == remoteText) + if (string.IsNullOrEmpty(text)) { return; } - AppLogger.Info( - $"Hard replacing focused text. Old mirrored length: {remoteText.Length}, new length: {newText.Length}"); - - keyboard.ReplaceFocusedText(newText); - remoteText = newText; + AppLogger.Info($"Appending submitted text length: {text.Length}"); + keyboard.InsertText(text); + remoteText += text; } }