summaryrefslogtreecommitdiffstats
path: root/src/components/personal_status.rs
diff options
context:
space:
mode:
authorLibravatar cel 🌸 <cel@bunny.garden>2025-06-07 17:36:22 +0100
committerLibravatar cel 🌸 <cel@bunny.garden>2025-06-07 17:36:22 +0100
commit36e87b708ed3a2b0d6f2e932509b0fdf10fe0089 (patch)
tree5f3fc5a3d863f52a82a204a7746532202103d7cc /src/components/personal_status.rs
parent4a5aa6579f5184c443ffbe80ce93e0daa0926826 (diff)
downloadmacaw-web-36e87b708ed3a2b0d6f2e932509b0fdf10fe0089.tar.gz
macaw-web-36e87b708ed3a2b0d6f2e932509b0fdf10fe0089.tar.bz2
macaw-web-36e87b708ed3a2b0d6f2e932509b0fdf10fe0089.zip
fix: avatar flashing from avatar loadHEADmain
Diffstat (limited to '')
-rw-r--r--src/components/personal_status.rs12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/components/personal_status.rs b/src/components/personal_status.rs
index 8439756..eb7f6e1 100644
--- a/src/components/personal_status.rs
+++ b/src/components/personal_status.rs
@@ -16,7 +16,7 @@ pub fn PersonalStatus() -> impl IntoView {
debug!("set open to true");
set_open.update(|state| *state = !*state)
}>
- <AvatarWithPresence user=user.get().into() />
+ <AvatarWithPresence user />
<div class="dock-pill"></div>
</div>
{move || {
@@ -25,7 +25,7 @@ pub fn PersonalStatus() -> impl IntoView {
if open {
view! {
<Overlay set_open>
- <PersonalStatusMenu user=user.get().into() set_open/>
+ <PersonalStatusMenu user set_open/>
</Overlay>
}.into_any()
} else {
@@ -38,7 +38,7 @@ pub fn PersonalStatus() -> impl IntoView {
}
#[component]
-pub fn PersonalStatusMenu(user: Store<User>, set_open: WriteSignal<bool>) -> impl IntoView {
+pub fn PersonalStatusMenu(user: MacawUser, set_open: WriteSignal<bool>) -> impl IntoView {
let set_app: WriteSignal<AppState> = use_context().unwrap();
let show_settings: RwSignal<Option<SettingsPage>> = use_context().unwrap();
let user_presences: Store<UserPresences> = use_context().expect("no user presence store");
@@ -46,7 +46,7 @@ pub fn PersonalStatusMenu(user: Store<User>, set_open: WriteSignal<bool>) -> imp
let client = use_context::<Client>().expect("client not in context");
let client1 = client.clone();
let (show_value, set_show_value) = signal({
- let show = match user_presences.write().get_user_presences(&user.jid().read()).write().resource_presence(client.resource.read().clone().unwrap_or_default()).presence {
+ let show = match user_presences.write().get_user_presences(&user.get().jid().read()).write().resource_presence(client.resource.read().clone().unwrap_or_default()).presence {
PresenceType::Online(online) => match online.show {
Some(s) => match s {
Show::Away => 3,
@@ -129,8 +129,8 @@ pub fn PersonalStatusMenu(user: Store<User>, set_open: WriteSignal<bool>) -> imp
<div class="user">
<AvatarWithPresence user=user />
<div class="user-info">
- <div class="nick">{move || get_name(user, false)}</div>
- <div class="jid">{move || user.jid().with(|jid| jid.to_string())}</div>
+ <div class="nick">{move || get_name(user.get().into(), false)}</div>
+ <div class="jid">{move || user.get().jid().with(|jid| jid.to_string())}</div>
</div>
</div>
<div class="status-edit">