Workspace: Escape clears selection
Press Escape to deselect all components and layout groups on the canvas (same as clicking empty workspace). Does not run while Settings, the effect browser, confirm dialogs, or a context menu is open. Fixed a case where the component library overlay was treated as always open (CSS-hidden modals no longer block Escape).
Device tree: opening a device no longer jumps selection to the last channel
Clicking a device in the left panel selects that device’s components on the canvas instead of leaving only the last component in the last channel selected.
Dropdowns and fields match minimal panel buttons
Profile pickers, effect/device layout selects, toolbar dropdowns, effect-browser filters, plugin settings, and Settings form controls now use the same flat look as icon buttons — ghost comboboxes (faint underline, larger chevron, light hover wash) and lighter text fields instead of heavy gray boxes.
Custom dropdown menus (replacing the OS list)
Opening a profile or settings select now shows an in-app list (dark panel, hover highlight, accent on the current item) instead of the default WebView2 popup. Native `<select>` is still used for values and keyboard accessibility; only the open menu is custom.
Minimal sliders
Brightness, effect parameters (e.g. Overall pace), plugin settings, and calibration sliders use a thin track: your theme accent from the start up to the thumb, faint line after, and an accent-colored thumb (matches tabs and other accent controls).
Effect settings profile reload no longer adds extra canvases
Reloading a saved effect settings profile restores effect choices and sliders only — it no longer auto-loads the paired default device layout, which could add workspace canvases that were not part of the profile when you saved it. Switching effects in the library still applies the default device layout mapping when you have one set.
Warning before switching profiles with unsaved changes
Changing the effect settings or device layout profile dropdown, reloading a profile, or picking a new default device layout for effect now warns you when the session has changed since that profile was loaded or last saved (for example adding a canvas tab). Autosave still runs in the background, but the prompt compares against that loaded baseline — not autosave alone — so edits like a new canvas are not missed. The dialog offers Cancel, Continue without Saving, and Save and Continue on one row. Save and Continue now writes the named profile file you were on (not only autosave), so switching back to that layout keeps new canvases and other edits.
Effect browser: rescan local effects when opened
Opening Browse effects now runs a full disk rescan (built-in and user folders), merges the online gallery, and refreshes the list — so new or edited `.html` / `.mjs` files show up without restarting the app.
New effect: Topographic Contours
A calm elevation-map look — drifting hills drawn as contour lines with optional shading from your color profile, and optional bass response so lines shift slightly with music.
New effect: Chromatic Split
Soft floating shapes tinted by your color profile, then separated into red / green / blue channels — prismatic fringing that widens on bass hits. No text rain or digital noise; adjustable split distance, direction, and wobble.
Effect settings no longer reset when opening Browse effects
Opening the effect browser rescans disk and merges the gallery without switching to a different effect, relaunching the iframe, or reapplying autosave parameters — sidebar sliders and the running effect stay as they were.
Brainstorm effect pack — fixes and removals
Removed: Gray-Scott, SEM Lithography, Origami Fold, PCB Traces, Fan Tachograph, Network Pulse, Ambient Pulse, Slime Mold, Cymatics, Rope Chain, plus earlier weak HUD/layout effects (Pendulum Wave, Solar Day Arc, Path Runner, Corner Reflector, Desk Lamp, Terrarium, Star Ceiling, Health Rings, Cooldown Sweep, Loot Flash, Minimap Ping).
Tuned: Halftone drifts faster and has a movement angle slider. Fibre Optic sways slower with visible sound response (sway, brightness, and traveling pulses on bass). Segment Chase scrolls profile colors through bands and offers segment shapes (vertical, horizontal, diagonal, radial rings, wedges); wedge mode rotates profile colors with the spokes (not locked to the screen). Dominant Color Wash weights screen center more. Seasonal Slow density updates live; autumn vs spring look distinct. Double Pendulum has arm length controls.
Brainstorm effect pack (remaining canvas + strip `.mjs`)
Open Browse effects to rescan the disk.
- Physics & math: Double Pendulum
- Visual style: Halftone, Fibre Optic
- PC / mood: Dominant Color Wash (screen sampling)
- Layout / chase: Segment Chase
- Calm / HUD: Seasonal Slow
- Strip functional (`.mjs`): Hilbert Walker, Euclidean Beats, Thermodynamic Noise, Palindrome Symmetry, Morse Stream
Sidebar and Settings: hints behind icon-only help buttons
Device Layout Profiles and Effect Settings Profiles no longer show gray subtitle lines under the headings. The same text is on the ? icon beside each title (hover or focus).
Settings uses the same control everywhere section intros used to be gray paragraphs: App look (language, theme, typography, canvas LEDs, labels), Color profiles, Hardware (OpenRGB RAM, WLED, unmatched devices), RAM / GPU tabs, Engine advanced options, Backup, Computer, Logs, Installed files (Git repos and media lists — click opens the full help dialog), and the request missing device dialog. Installed-files help no longer uses a bordered ? text button.
App-wide buttons: minimal flat style
Buttons across RGBJunkie (toolbar, Settings, component/effect library modals, setup wizard, plugin settings, confirm dialogs, LED Studio, and the device/effect side panels) use the same light treatment: transparent by default, soft hover, accent when toggled on. Browse effects, Submit, and other primary actions still use the green btn-primary-strong style. Delete/remove controls keep a red hover hint. Top toolbar controls stay icon-only (labels hidden for space); icons keep an explicit size so they remain visible with the flat button style. Toolbar button groups no longer use a separate grey pill background — icons sit directly on the top bar. Tools that are unavailable (nothing selected, etc.) show darker gray icons instead of a washed-out fade.
Sidebar panels: lighter icon buttons
Small controls in the Devices and Effects docks (profile save/reload/delete, rescan, visibility/lock toolbar, transport buttons, share, reset, and per-device tree actions) use the same minimal icon-only style as the profile ? help buttons — no heavy gray btn boxes; subtle hover and accent when active. Effect settings category tabs match (flat until selected).
Settings: hardware notes and color profile delete buttons
Removed the RAM (OpenRGB) and GPU I2C disclaimer notes from Settings → Hardware. Color profile and swatch delete controls now show an × icon (Bootstrap Icons) instead of a ? placeholder.
Effect hot-reload: stay on the same effect
When you save an effect `.html` file while it is running, RGBJunkie reloads that effect instead of jumping to a different entry in the list (fixes wrong index after catalog rescan and profile restore overriding your selection).
Effect developer guide: scaling shapes to canvas size
`EFFECT-DEVELOPER-GUIDE.md` (and the HTML guide on the site) now documents Section 2.2 — how to scale radii, spacing, and stroke width using `canvas.width`/`height`, `engine.canvas`, `rgbjSetupCanvas`, and the 320×200 reference size.