fix: avatar center to cursor, and cleanup.
Lots of cleanup, went in with this too
This commit is contained in:
parent
c3320ddcce
commit
fe65835f4a
14 changed files with 769 additions and 708 deletions
|
|
@ -13,6 +13,9 @@ use chattyness_db::models::{AvatarWithPaths, InventoryItem};
|
|||
use chattyness_db::ws_messages::ClientMessage;
|
||||
|
||||
use super::ws_client::WsSenderStorage;
|
||||
#[cfg(feature = "hydrate")]
|
||||
use crate::utils::normalize_asset_path;
|
||||
use crate::utils::use_escape_key;
|
||||
|
||||
/// Tab selection for the editor
|
||||
#[derive(Clone, Copy, PartialEq, Eq)]
|
||||
|
|
@ -203,16 +206,6 @@ fn RenderedPreview(#[prop(into)] avatar: Signal<Option<AvatarWithPaths>>) -> imp
|
|||
}
|
||||
}
|
||||
|
||||
/// Normalize an asset path to be absolute, prefixing with /static/ if needed.
|
||||
#[cfg(feature = "hydrate")]
|
||||
fn normalize_asset_path(path: &str) -> String {
|
||||
if path.starts_with('/') {
|
||||
path.to_string()
|
||||
} else {
|
||||
format!("/static/{}", path)
|
||||
}
|
||||
}
|
||||
|
||||
/// Avatar Editor popup component.
|
||||
///
|
||||
/// Props:
|
||||
|
|
@ -312,33 +305,7 @@ pub fn AvatarEditorPopup(
|
|||
}
|
||||
|
||||
// Handle escape key to close
|
||||
#[cfg(feature = "hydrate")]
|
||||
{
|
||||
use wasm_bindgen::{closure::Closure, JsCast};
|
||||
|
||||
Effect::new(move |_| {
|
||||
if !open.get() {
|
||||
return;
|
||||
}
|
||||
|
||||
let on_close_clone = on_close.clone();
|
||||
let closure =
|
||||
Closure::<dyn Fn(web_sys::KeyboardEvent)>::new(move |ev: web_sys::KeyboardEvent| {
|
||||
if ev.key() == "Escape" {
|
||||
on_close_clone.run(());
|
||||
}
|
||||
});
|
||||
|
||||
if let Some(window) = web_sys::window() {
|
||||
let _ = window.add_event_listener_with_callback(
|
||||
"keydown",
|
||||
closure.as_ref().unchecked_ref(),
|
||||
);
|
||||
}
|
||||
|
||||
closure.forget();
|
||||
});
|
||||
}
|
||||
use_escape_key(open, on_close.clone());
|
||||
|
||||
// Close context menu when clicking elsewhere
|
||||
let close_context_menu = move |_| {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue