From 66168805627cc3919842e4278c461cbeb9c4d3f2 Mon Sep 17 00:00:00 2001 From: Adam Porter Date: Tue, 10 Aug 2021 01:16:43 -0500 Subject: [PATCH] Change: Use ement-room--handle-event Don't call ement-room--insert-event directly anymore. --- ement-room.el | 16 ++-------------- ement.el | 3 --- 2 files changed, 2 insertions(+), 17 deletions(-) diff --git a/ement-room.el b/ement-room.el index 865d541..52b4c03 100644 --- a/ement-room.el +++ b/ement-room.el @@ -911,8 +911,7 @@ Interactively, send reaction to event at point." (when buffer ;; Insert events into the room's buffer. (with-current-buffer buffer - ;; FIXME: Unify insert/process-events. - (ement-room--insert-events chunk 'retro) + ;; FIXME: Use retro-loading in event handlers, or in --handle-events, anyway. (ement-room--handle-events chunk) (setf (ement-room-prev-batch room) end ement-room-retro-loading nil)))) @@ -943,16 +942,7 @@ the previously oldest event." (when buffer-window (select-window buffer-window)) (cl-loop for event being the elements of events - ;; TODO: This should be done in a unified interface. - ;; HACK: Only insert certain types of events. - ;; FIXME: Remove this when the transition to defevent-based handlers is done. - when (pcase (ement-event-type event) - ("m.reaction" nil) - ("m.room.member" - ;; Membership events now handled with defevent-based handler. - nil) - (_ t)) - do (ement-room--insert-event event) + do (ement-room--handle-event event) do (ement-progress-update))) ;; Since events can be received in any order, we have to check the whole buffer ;; for where to insert new timestamp headers. (Avoiding that would require @@ -1097,8 +1087,6 @@ data slot." ;; We don't use `ement-room--insert-events' to avoid extra ;; calls to `ement-room--insert-ts-headers'. (ement-room--handle-events (ement-room-state room)) - ;; TODO: Move event insertion to defevent handlers. - (mapc #'ement-room--insert-event (ement-room-timeline room)) (ement-room--handle-events (ement-room-timeline room)) (ement-room--insert-ts-headers)) ;; Return the buffer! diff --git a/ement.el b/ement.el index 85bcea0..0e471e4 100644 --- a/ement.el +++ b/ement.el @@ -437,9 +437,6 @@ To be called in `ement-sync-callback-hook'." (ement-room--handle-events (ement-room-ephemeral ement-room)) (setf (ement-room-ephemeral ement-room) nil)) (when-let ((new-events (alist-get 'new-events (ement-room-local ement-room)))) - (ement-room--insert-events new-events) - ;; For now, we also call `--process-events' for ones that are defined with `ement-room-defevent'. - ;; FIXME: Unify this. ;; HACK: Process these events in reverse order, so that later events (like reactions) ;; which refer to earlier events can find them. (Not sure if still necessary.) (ement-room--handle-events (reverse new-events))