Remove obsolete canvas panel focus mode

This commit is contained in:
2026-09-12 15:06:57 -07:00
parent 8112dea7a3
commit 40154983cc
12 changed files with 44 additions and 104 deletions
@@ -14,7 +14,6 @@ pub enum Shelf {
pub(super) struct Presentation {
pub(super) identity: Option<(Id, Id)>,
pub(super) viewport: Option<Size>,
pub(super) focused: bool,
pub(super) shelf: Option<Shelf>,
pub(super) pan: iced::Vector,
pub(super) zoom: Option<f32>,
@@ -1040,7 +1040,9 @@ fn scenario_workspace_viewport_events_are_passive_guarded_and_do_not_apply_raw_f
}
app.busy = false;
navigation_event(&mut app, |ctx| CanvasEvent::Shelf(ctx, Shelf::Selection));
navigation_event(&mut app, CanvasEvent::Focus);
let epoch = app.canvas_epoch;
navigation_event(&mut app, |ctx| CanvasEvent::Zoom(ctx, Some(0.8)));
assert_ne!(app.canvas_epoch, epoch);
navigation_event(&mut app, |ctx| CanvasEvent::Zoom(ctx, None));
assert_eq!(app.behavior.recovery_snapshot().unwrap(), raw);
assert!(std::sync::Arc::ptr_eq(&accepted, &app.document.snapshot()));
@@ -1341,7 +1343,7 @@ async fn production_scenario_camera_external_controls_bounds_and_retained_deltas
let mut mounted = Mounted::new(&mut app).await;
let snapshot = app.document.snapshot();
let source = app.document.bundle().clone();
for boundary in ["Fit", "A", "Details", "Panels", "Bounds"] {
for boundary in ["Fit", "A", "Details", "ZoomIn", "Bounds"] {
let toolbar = capture_toolbar(&mut mounted, &app, "Fit");
let bounds = mounted.geometry(&app).bounds("scenario-viewport");
let point = bounds.position() + iced::Vector::new(95., 90.);
@@ -1371,11 +1373,6 @@ async fn production_scenario_camera_external_controls_bounds_and_retained_deltas
let size = Size::new(app.window_size.width + 90., app.window_size.height + 35.);
let task = app.update(Message::WindowResized(size));
mounted.perform(&mut app, task).await;
} else if boundary == "Panels" {
// Panel layout remains a presentation command, not canvas activation.
let context = app.scenario_context().unwrap();
let task = app.update(Message::ScenarioCanvas(CanvasEvent::Focus(context)));
mounted.perform(&mut app, task).await;
} else {
let id = scope(&app).control_id(boundary);
let at = mounted.geometry(&app).containers[&id].center();
@@ -1860,7 +1857,6 @@ async fn scenario_workspace_open_and_back_restore_owner_and_mounted_camera_after
CanvasEvent::Choose(ctx, CanvasTool::Message(MessageStyle::Timer))
});
navigation_event(&mut app, |ctx| CanvasEvent::Shelf(ctx, Shelf::Selection));
navigation_event(&mut app, CanvasEvent::Focus);
let mut mounted = Mounted::new(&mut app).await;
navigation_event(&mut app, |ctx| CanvasEvent::Zoom(ctx, Some(0.75)));
let canvas = mounted.geometry(&app).bounds("scenario-viewport");
@@ -1903,7 +1899,13 @@ async fn scenario_workspace_open_and_back_restore_owner_and_mounted_camera_after
mounted.settle(&mut app).await;
assert_eq!(app.behavior.scenario.presentation.pan, Vector::ZERO);
navigation_event(&mut app, |ctx| CanvasEvent::Zoom(ctx, Some(2.)));
navigation_event(&mut app, CanvasEvent::Focus);
navigation_event(&mut app, |ctx| {
CanvasEvent::Choose(ctx, CanvasTool::Add(Tool::Action))
});
assert_eq!(
app.behavior.scenario.canvas_tool(b),
CanvasTool::Add(Tool::Action)
);
let _ = app.update(Message::Command(Command::Rename(
reference,
"Renamed caller use".into(),
@@ -1921,7 +1923,6 @@ async fn scenario_workspace_open_and_back_restore_owner_and_mounted_camera_after
app.behavior.scenario.canvas_tool(a),
CanvasTool::Message(MessageStyle::Timer)
);
assert!(app.behavior.scenario.focused());
assert_eq!(
app.behavior.scenario.presentation.shelf,
Some(Shelf::Selection)