setEditorSettings
Change an OpenScreen project's look—frame, wallpaper, webcam, cursor, audio—by passing only the settings to change.
Instructions
Change the project's look: pass only the settings to change, named as getCurrentDocument returns them under settings. Background: wallpaper (a bundled path from settingsContext.bundledWallpapers, a CSS colour or gradient, or a base64 PNG/JPEG data URL; never a file path or web URL; an embedded image reads back as a marker, leave the key out to keep it), wallpaperMotion (moves a gradient or image only), backgroundBlur 0–1. Frame: aspectRatio ("auto", a preset, or an originalAspectRatios token; a fixed format picked for the first time fills the frame with a window that follows the cursor, which formatFollowCursor turns off when settingsContext.formatFill is "available"), padding 0–100 %, borderRadius 0–64 px, shadowIntensity 0–1, frame (none, window, laptop, phone, monitor) and frameTheme (light, dark), motionBlurAmount 0–1, depthOfField (blurs 3D-tilted zooms only). Camera: webcamLayoutPreset, webcamMirrored, webcamReactiveZoom (shrinks on zoom), webcamMaskShape (square or rectangle, the camera's own proportions; an untouched roundness follows it), webcamRoundness 0–1, webcamSizePreset 15–60, webcamAnchor (a corner or an edge middle), webcamCropRegion (the framing: a square share of the picture, width = height ≥ 1/3) and webcamCropPan (where that window sits, 0–1 per axis, 0.5 centred), webcamBackgroundMode (none, transparent, blur, custom: needs settingsContext.cameraSegmentation ready), webcamBlurIntensity 0–1, webcamWallpaper (as wallpaper). Cursor, under cursor: show, autoHide, theme (settingsContext.cursorThemes), asArrow (the recorded cursor kinds drawn as the arrow instead), size 1.5–6, smoothing 0–1, motionBlur 0–1, clickBounce 0–2, clickImpact, clickSound (only heard when the take recorded clicks) and clickSoundGainDb −24–0, model3d. Also autoFocusAll (every zoom follows the cursor) and audioGainDb −12–12 dB, the master volume. A value out of range or a key not listed is refused with the reason, and nothing changes. The result lists what was applied, including what the editor changes with it, and inactive for any of those the current state leaves without effect.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| frame | No | ||
| cursor | No | ||
| padding | No | Percent. | |
| projectId | No | The project to act on, from listProjects. Omit it only for the project open in the OpenScreen editor, which works only while the app runs. | |
| wallpaper | No | A bundled wallpaper path (settingsContext.bundledWallpapers), a CSS colour (#1e1e2e, rgb(…)), a CSS gradient, or a base64 PNG/JPEG data URL. No file paths, no web URLs. | |
| frameTheme | No | ||
| aspectRatio | No | "auto", one of the presets, or a token from settingsContext.originalAspectRatios. | |
| audioGainDb | No | ||
| autoFocusAll | No | ||
| borderRadius | No | Corner radius in px at 1080p. | |
| depthOfField | No | ||
| webcamAnchor | No | ||
| webcamCropPan | No | ||
| backgroundBlur | No | ||
| webcamMirrored | No | ||
| shadowIntensity | No | ||
| wallpaperMotion | No | ||
| webcamMaskShape | No | ||
| webcamRoundness | No | ||
| webcamWallpaper | No | ||
| motionBlurAmount | No | ||
| webcamCropRegion | No | ||
| webcamSizePreset | No | The camera's long side, in percent of the frame's short side. | |
| formatFollowCursor | No | ||
| webcamLayoutPreset | No | ||
| webcamReactiveZoom | No | ||
| webcamBlurIntensity | No | ||
| webcamBackgroundMode | No |