Webcam menu gates on the app-wide identity (TASK 26)
This commit is contained in:
@@ -313,11 +313,11 @@ This replaces the old five-seeder cluster (`Seed{Starting,Brb,Ending,Chat}Backgr
|
||||
while another scene still used it; that identity survived, so re-adding bypassed the choice).
|
||||
Picking a different camera than the current app-wide one swaps it everywhere via
|
||||
`SwapWebcamIdentityAsync` (the same path "Change Webcam…" uses), keeping the singleton honest;
|
||||
picking the same one just places the config. The Add Webcam menu greys out when the **active**
|
||||
scene already has a config (`CanAddWebcamToActiveScene`); showing a hidden webcam reuses the
|
||||
existing config (`CanShowWebcamInActiveScene` / empty-canvas right-click "Show Webcam" — which, on
|
||||
a config-less canvas, delegates to Add Webcam and so also picks). **Removing the last webcam
|
||||
config anywhere clears the identity** (`_webcam = null`), which also drops "Change Webcam…".
|
||||
picking the same one just places the config. The Add Webcam menu item greys out whenever a webcam
|
||||
exists **anywhere** — one camera identity app-wide (`CanAddWebcam` = `StagedScene != null && _webcam == null`,
|
||||
TASK 26; the old per-staged-scene gate let a second picker run from a scene that lacked the config).
|
||||
**Removing the last webcam config anywhere clears the identity** (`_webcam = null`, raising
|
||||
`CanAddWebcam`/`CanChangeWebcam`), which also drops "Change Webcam…" and re-enables Add.
|
||||
- **Round→rect restores the aspect (persisted, schema v4):** `SceneElement.ToggleClipShape()`
|
||||
snapshots the rectangular Width/Height into public `RectWidth`/`RectHeight` before going Round and
|
||||
restores them when switching back — otherwise the Round resize lock (square) would leave a square
|
||||
|
||||
Reference in New Issue
Block a user