Skip to content

[Feature]: Wallpaper-Adaptive Accent Palette (Dynamic Color Syncing) #303

Description

@bhavyasanthoshi02

Description.

Currently, Paraline allows users to select a custom color palette or sync with the Windows system accent color. However, when users have slideshows or dynamic wallpapers, the system accent color doesn't always match the wallpaper's colors, causing the visualizer to look out of place on the screen.

Solution

Add a Wallpaper Match mode. When enabled:

  1. Paraline will periodically query the current desktop wallpaper path from the Windows Registry.
  2. The main process will read the image file and perform a lightweight sub-sampling (e.g., extracting colors from a small grid) to find the 3-4 dominant colors.
  3. This color palette will be pushed to the renderer overlays via IPC to dynamically update active visualizer themes.

Alternatives

  • Manual Color Updating: Requires the user to manually change their color preferences every time their wallpaper changes.
  • Syncing only to Windows Accent Color: The OS accent color doesn't always update, and many users prefer not to change their OS theme elements to match their wallpapers.

Additional Context & Technical Implementation Details

  • Registry Query: Use child_process in main.js to query:
    HKCU:\Control Panel\Desktop\Wallpaper
  • Color Extraction: Parse the file in the Node main process, extract dominant RGB values, and send them to the renderer.
  • Themes integration: Pass the extracted wallpaper palette into the themes (e.g. ambientWave.js, reactiveBorder.js) as customColors override values.

Metadata

Metadata

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions