chore: clean up
This commit is contained in:
@@ -176,14 +176,10 @@ 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| {
|
|
||||||
window.push_notification(t!("chat.reload_tooltip"), cx);
|
|
||||||
this.update(cx, |this, cx| {
|
this.update(cx, |this, cx| {
|
||||||
this.insert_messages(events, cx);
|
this.insert_messages(events, cx);
|
||||||
})
|
})
|
||||||
.ok();
|
.ok();
|
||||||
})
|
|
||||||
.ok();
|
|
||||||
}
|
}
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
cx.update(|window, cx| {
|
cx.update(|window, cx| {
|
||||||
@@ -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);
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|||||||
@@ -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:
|
||||||
|
|||||||
Reference in New Issue
Block a user