Render preview uses the shared camera navigation (#1462)
* Render preview uses the shared camera navigation The Render workspace's product preview had its own hard-coded camera controls. Camera input now lives in one component, navigation::handle, which the modelling viewport and the Render preview both call (NavCaps: orbit, pick). Render gets the navigation preset, Orbit around, zoom to the cursor, the middle double-click and the axis view or navigation cube. Flat pages can call it with orbit off. A test rejects pages that read the wheel or move the camera themselves. Fixes #1454 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Render panel hint says the camera moves as in Design Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
e8e2ccc8a9
commit
be985f136d
16 files changed
+969
-580
No files matched your search
@@ -96,6 +96,7 @@ pub(crate) mod display_lod;
|
||||
mod file_load_ui_tests;
|
||||
#[cfg(test)]
|
||||
mod fillet_spline_handle_tests;
|
||||
pub(crate) mod navigation;
|
||||
pub mod palette;
|
||||
pub mod params_dialog;
|
||||
pub mod prefs;
|
||||
@@ -1056,6 +1057,11 @@ impl SolveApp {
|
||||
|
||||
/// Frame everything shown, keeping the orientation (animated; the selection is ignored).
|
||||
pub fn animate_fit_all(&mut self) {
|
||||
if render_workspace::active(self) {
|
||||
// The Render preview frames its product scene (see `fit_view`).
|
||||
self.fit_view();
|
||||
return;
|
||||
}
|
||||
self.pending_fit = None;
|
||||
let request = Some((self.cam, viewport::view_bounds(self), true));
|
||||
let to = self.fitted(self.cam);
|
||||
|
||||
Reference in new issue
Block a user