@@ -290,47 +290,30 @@ private async Task<bool> SendMessage(string messageText)
290
290
using ( await ActionInProgress . LockAsync ( ) )
291
291
{
292
292
Debug . WriteLine ( "keydown lock grabbed" ) ;
293
+
294
+ /* update in-memory data */
295
+ SelectedThread . MessagesCount += 1 ;
296
+ //View.Thread.RemoveUnreadMarker();
297
+ var container = new SignalMessageContainer ( message , ( int ) SelectedThread . MessagesCount - 1 ) ;
298
+ View . Thread . Append ( container , true ) ;
293
299
SelectedThread . LastMessage = message ;
294
300
SelectedThread . View . UpdateConversationDisplay ( SelectedThread ) ;
295
301
MoveThreadToTop ( SelectedThread ) ;
302
+
303
+ /* save to disk */
296
304
await Task . Run ( ( ) =>
297
305
{
298
306
SignalDBContext . SaveMessageLocked ( message ) ;
299
307
SignalDBContext . ClearUnreadLocked ( SelectedThread . ThreadId ) ;
300
308
} ) ;
309
+
310
+ /* update in-memory data with db results */
301
311
SelectedThread . LastMessageId = message . Id ;
302
312
SelectedThread . LastSeenMessageId = message . Id ;
303
- if ( SelectedThread != null && SelectedThread . ThreadId == message . ThreadId )
304
- {
305
- Debug . WriteLine ( "keydown lock grabbed" ) ;
306
-
307
- /* update in-memory data */
308
- SelectedThread . MessagesCount += 1 ;
309
- //View.Thread.RemoveUnreadMarker();
310
- var container = new SignalMessageContainer ( message , ( int ) SelectedThread . MessagesCount - 1 ) ;
311
- View . Thread . Append ( container , true ) ;
312
- SelectedThread . LastMessage = message ;
313
- SelectedThread . View . UpdateConversationDisplay ( SelectedThread ) ;
314
- MoveThreadToTop ( SelectedThread ) ;
315
-
316
- /* save to disk */
317
- await Task . Run ( ( ) =>
318
- {
319
- SignalDBContext . SaveMessageLocked ( message ) ;
320
- SignalDBContext . ClearUnreadLocked ( SelectedThread . ThreadId ) ;
321
- } ) ;
322
-
323
- /* update in-memory data with db results */
324
- SelectedThread . LastMessageId = message . Id ;
325
- SelectedThread . LastSeenMessageId = message . Id ;
326
- View . Thread . AddToOutgoingMessagesCache ( container ) ;
327
-
328
- /* send */
329
- OutgoingQueue . Add ( message ) ;
330
- }
313
+ View . Thread . AddToOutgoingMessagesCache ( container ) ;
314
+
315
+ /* send */
331
316
OutgoingQueue . Add ( message ) ;
332
- var after = Util . CurrentTimeMillis ( ) ;
333
- Debug . WriteLine ( "ms until out queue: " + ( after - now ) ) ;
334
317
}
335
318
Debug . WriteLine ( "keydown lock released" ) ;
336
319
}
0 commit comments