chore: clean up

This commit is contained in:
2025-08-25 13:46:46 +07:00
parent b19bb01003
commit 49a3dedd9c
3 changed files with 13 additions and 23 deletions

View File

@@ -176,12 +176,8 @@ impl Chat {
cx.spawn_in(window, async move |this, cx| { cx.spawn_in(window, async move |this, cx| {
match load_messages.await { match load_messages.await {
Ok(events) => { Ok(events) => {
cx.update(|window, cx| { this.update(cx, |this, cx| {
window.push_notification(t!("chat.reload_tooltip"), cx); this.insert_messages(events, cx);
this.update(cx, |this, cx| {
this.insert_messages(events, cx);
})
.ok();
}) })
.ok(); .ok();
} }
@@ -1077,7 +1073,8 @@ impl Chat {
Button::new("reload") Button::new("reload")
.icon(IconName::Refresh) .icon(IconName::Refresh)
.tooltip(t!("chat.reload_tooltip")) .tooltip(t!("chat.reload_tooltip"))
.on_click(move |_, _window, cx| { .on_click(move |_, window, cx| {
window.push_notification(t!("common.refreshed"), cx);
room.update(cx, |this, cx| { room.update(cx, |this, cx| {
this.emit_refresh(cx); this.emit_refresh(cx);
}) })

View File

@@ -388,31 +388,22 @@ impl Room {
/// A Task that resolves to Result<Vec<Event>, Error> containing all messages for this room /// A Task that resolves to Result<Vec<Event>, Error> containing all messages for this room
pub fn load_messages(&self, cx: &App) -> Task<Result<Vec<Event>, Error>> { pub fn load_messages(&self, cx: &App) -> Task<Result<Vec<Event>, Error>> {
let members = self.members.clone(); let members = self.members.clone();
let members_clone = members.clone();
cx.background_spawn(async move { cx.background_spawn(async move {
let client = nostr_client(); let client = nostr_client();
let signer = client.signer().await?;
let public_key = signer.get_public_key().await?;
let send = Filter::new() let filter = Filter::new()
.kind(Kind::PrivateDirectMessage) .kind(Kind::PrivateDirectMessage)
.author(public_key) .authors(members.clone())
.pubkeys(members.clone()); .pubkeys(members.clone());
let recv = Filter::new() let events = client
.kind(Kind::PrivateDirectMessage) .database()
.authors(members) .query(filter)
.pubkey(public_key); .await?
let send_events = client.database().query(send).await?;
let recv_events = client.database().query(recv).await?;
let events = send_events
.merge(recv_events)
.into_iter() .into_iter()
.sorted_by_key(|ev| ev.created_at) .sorted_by_key(|ev| ev.created_at)
.filter(|ev| ev.compare_pubkeys(&members_clone)) .filter(|ev| ev.compare_pubkeys(&members))
.collect::<Vec<_>>(); .collect::<Vec<_>>();
Ok(events) Ok(events)

View File

@@ -33,6 +33,8 @@ common:
en: "Clear" en: "Clear"
open_browser: open_browser:
en: "Open Browser" en: "Open Browser"
refreshed:
en: "Refreshed"
auto_update: auto_update:
updating: updating: