commit 49745dec9287e383b28d52ae050366ebab865406
parent 83f2822a0add86719cb164735de84043c3f6a00b
Author: William Casarin <jb55@jb55.com>
Date: Mon, 23 Feb 2026 12:05:57 -0800
clippy fixes
Signed-off-by: William Casarin <jb55@jb55.com>
Diffstat:
4 files changed, 87 insertions(+), 86 deletions(-)
diff --git a/crates/notedeck_nostrverse/src/convert.rs b/crates/notedeck_nostrverse/src/convert.rs
@@ -71,7 +71,7 @@ fn collect_objects(space: &Space, id: CellId, objects: &mut Vec<RoomObject>) {
let cell = space.cell(id);
if let CellType::Object(ref obj_type) = cell.cell_type {
- let obj_id = space.id_str(id).unwrap_or_else(|| "").to_string();
+ let obj_id = space.id_str(id).unwrap_or("").to_string();
// Generate a fallback id if none specified
let obj_id = if obj_id.is_empty() {
diff --git a/crates/notedeck_nostrverse/src/lib.rs b/crates/notedeck_nostrverse/src/lib.rs
@@ -257,7 +257,7 @@ impl NostrverseApp {
/// Load 3D models for objects, then resolve any semantic locations
/// (e.g. "top-of obj1") to concrete positions using AABB bounds.
- fn load_object_models(&self, objects: &mut Vec<RoomObject>) {
+ fn load_object_models(&self, objects: &mut [RoomObject]) {
let renderer = self.renderer.as_ref();
let model_bounds_fn = |m: Option<renderbud::Model>| -> Option<renderbud::Aabb> {
let r = renderer?.renderer.lock().unwrap();
diff --git a/crates/notedeck_nostrverse/src/room_view.rs b/crates/notedeck_nostrverse/src/room_view.rs
@@ -245,93 +245,93 @@ pub fn render_editing_panel(ui: &mut Ui, state: &mut NostrverseState) -> Option<
ui.add_space(12.0);
// --- Object Inspector ---
- if let Some(selected_id) = state.selected_object.clone() {
- if let Some(obj) = state.objects.iter_mut().find(|o| o.id == selected_id) {
- ui.strong("Inspector");
- ui.separator();
+ if let Some(selected_id) = state.selected_object.clone()
+ && let Some(obj) = state.objects.iter_mut().find(|o| o.id == selected_id)
+ {
+ ui.strong("Inspector");
+ ui.separator();
+
+ ui.small(format!("ID: {}", obj.id));
+ ui.add_space(4.0);
+
+ // Editable name
+ let name_changed = ui
+ .horizontal(|ui| {
+ ui.label("Name:");
+ ui.text_edit_singleline(&mut obj.name).changed()
+ })
+ .inner;
+
+ // Editable position
+ let mut px = obj.position.x;
+ let mut py = obj.position.y;
+ let mut pz = obj.position.z;
+ let pos_changed = ui
+ .horizontal(|ui| {
+ ui.label("Pos:");
+ let x = ui
+ .add(egui::DragValue::new(&mut px).speed(0.1).prefix("x:"))
+ .changed();
+ let y = ui
+ .add(egui::DragValue::new(&mut py).speed(0.1).prefix("y:"))
+ .changed();
+ let z = ui
+ .add(egui::DragValue::new(&mut pz).speed(0.1).prefix("z:"))
+ .changed();
+ x || y || z
+ })
+ .inner;
+ obj.position = Vec3::new(px, py, pz);
+
+ // Editable scale (uniform)
+ let mut sx = obj.scale.x;
+ let mut sy = obj.scale.y;
+ let mut sz = obj.scale.z;
+ let scale_changed = ui
+ .horizontal(|ui| {
+ ui.label("Scale:");
+ let x = ui
+ .add(
+ egui::DragValue::new(&mut sx)
+ .speed(0.05)
+ .prefix("x:")
+ .range(0.01..=100.0),
+ )
+ .changed();
+ let y = ui
+ .add(
+ egui::DragValue::new(&mut sy)
+ .speed(0.05)
+ .prefix("y:")
+ .range(0.01..=100.0),
+ )
+ .changed();
+ let z = ui
+ .add(
+ egui::DragValue::new(&mut sz)
+ .speed(0.05)
+ .prefix("z:")
+ .range(0.01..=100.0),
+ )
+ .changed();
+ x || y || z
+ })
+ .inner;
+ obj.scale = Vec3::new(sx, sy, sz);
- ui.small(format!("ID: {}", obj.id));
+ // Model URL (read-only for now)
+ if let Some(url) = &obj.model_url {
ui.add_space(4.0);
+ ui.small(format!("Model: {}", url));
+ }
- // Editable name
- let name_changed = ui
- .horizontal(|ui| {
- ui.label("Name:");
- ui.text_edit_singleline(&mut obj.name).changed()
- })
- .inner;
-
- // Editable position
- let mut px = obj.position.x;
- let mut py = obj.position.y;
- let mut pz = obj.position.z;
- let pos_changed = ui
- .horizontal(|ui| {
- ui.label("Pos:");
- let x = ui
- .add(egui::DragValue::new(&mut px).speed(0.1).prefix("x:"))
- .changed();
- let y = ui
- .add(egui::DragValue::new(&mut py).speed(0.1).prefix("y:"))
- .changed();
- let z = ui
- .add(egui::DragValue::new(&mut pz).speed(0.1).prefix("z:"))
- .changed();
- x || y || z
- })
- .inner;
- obj.position = Vec3::new(px, py, pz);
-
- // Editable scale (uniform)
- let mut sx = obj.scale.x;
- let mut sy = obj.scale.y;
- let mut sz = obj.scale.z;
- let scale_changed = ui
- .horizontal(|ui| {
- ui.label("Scale:");
- let x = ui
- .add(
- egui::DragValue::new(&mut sx)
- .speed(0.05)
- .prefix("x:")
- .range(0.01..=100.0),
- )
- .changed();
- let y = ui
- .add(
- egui::DragValue::new(&mut sy)
- .speed(0.05)
- .prefix("y:")
- .range(0.01..=100.0),
- )
- .changed();
- let z = ui
- .add(
- egui::DragValue::new(&mut sz)
- .speed(0.05)
- .prefix("z:")
- .range(0.01..=100.0),
- )
- .changed();
- x || y || z
- })
- .inner;
- obj.scale = Vec3::new(sx, sy, sz);
-
- // Model URL (read-only for now)
- if let Some(url) = &obj.model_url {
- ui.add_space(4.0);
- ui.small(format!("Model: {}", url));
- }
-
- if name_changed || pos_changed || scale_changed {
- state.dirty = true;
- }
-
- ui.add_space(8.0);
- if ui.button("Delete Object").clicked() {
- action = Some(NostrverseAction::RemoveObject(selected_id));
- }
+ if name_changed || pos_changed || scale_changed {
+ state.dirty = true;
+ }
+
+ ui.add_space(8.0);
+ if ui.button("Delete Object").clicked() {
+ action = Some(NostrverseAction::RemoveObject(selected_id));
}
}
diff --git a/crates/notedeck_nostrverse/src/subscriptions.rs b/crates/notedeck_nostrverse/src/subscriptions.rs
@@ -23,6 +23,7 @@ impl RoomSubscription {
}
/// Subscribe to room events from a specific author.
+ #[allow(dead_code)]
pub fn for_author(ndb: &Ndb, author: &[u8; 32]) -> Self {
let filter = Filter::new()
.kinds([kinds::ROOM as u64])