diff options
| author | 2025-06-02 19:50:45 +0100 | |
|---|---|---|
| committer | 2025-06-02 19:50:45 +0100 | |
| commit | ab654372e4d3766c8df17623a6de8922fc2a1960 (patch) | |
| tree | 59ff88ab5da68af23ad84bc2310730e29eb89410 /src/components/roster_list | |
| parent | 6ee4190a26f32bfa953302ee363ad3bb6c384ebb (diff) | |
| download | macaw-web-ab654372e4d3766c8df17623a6de8922fc2a1960.tar.gz macaw-web-ab654372e4d3766c8df17623a6de8922fc2a1960.tar.bz2 macaw-web-ab654372e4d3766c8df17623a6de8922fc2a1960.zip  | |
feat: make `MacawUser`, `MacawChat` and `MacawMessage` arena-allocated
Diffstat (limited to 'src/components/roster_list')
| -rw-r--r-- | src/components/roster_list/roster_list_item.rs | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/src/components/roster_list/roster_list_item.rs b/src/components/roster_list/roster_list_item.rs index 46ac1cc..9ebc26a 100644 --- a/src/components/roster_list/roster_list_item.rs +++ b/src/components/roster_list/roster_list_item.rs @@ -5,13 +5,13 @@ use leptos::prelude::*;  use reactive_stores::{ArcStore, Store};  use tracing::debug; -use crate::{chat::MacawChat, components::{avatar::AvatarWithPresence, sidebar::Open}, contact::MacawContact, open_chats::{OpenChatsPanel, OpenChatsPanelStoreFields}, user::get_name}; +use crate::{chat::{ArcMacawChat, MacawChat}, components::{avatar::AvatarWithPresence, sidebar::Open}, contact::MacawContact, open_chats::{OpenChatsPanel, OpenChatsPanelStoreFields}, user::get_name};  #[component]  pub fn RosterListItem(contact: MacawContact) -> impl IntoView {      let contact_contact: Store<Contact> = contact.contact;      let contact_user: Store<User> = -        <ArcStore<filamento::user::User> as Clone>::clone(&contact.user).into(); +        <ArcStore<filamento::user::User> as Clone>::clone(&contact.user.get()).into();      let name = move || get_name(contact_user, false);      let open_chats: Store<OpenChatsPanel> = @@ -23,11 +23,11 @@ pub fn RosterListItem(contact: MacawContact) -> impl IntoView {          correspondent: contact_user.jid().get(),          have_chatted: false,      }; -    let chat = MacawChat::got_chat_and_user(chat, contact_user.get()); +    let chat = ArcMacawChat::got_chat_and_user(chat, contact_user.get());      let open_chat = move |_| {          debug!("opening chat"); -        open_chats.update(|open_chats| open_chats.open(chat.clone())); +        open_chats.update(|open_chats| open_chats.open(Clone::clone(&chat)));      };      let open = move || {  | 
