Skip to content

draw-user-backgrounds: solid desktop colour not shown on login screen #285

Description

@sporteka2

Description

When the user sets a solid colour as desktop background (Picture: None), the login screen with draw-user-backgrounds=true does not show the chosen colour. It shows the old wallpaper (from picture-uri) instead.

Steps

  1. Cinnamon Settings → Background → Picture: None, pick a colour
  2. Lock screen or log out
  3. Login screen shows the old wallpaper, not the solid colour

Root Cause

When the user selects a solid colour, Cinnamon only sets picture-options=none and primary-color, but does not clear or update picture-uri. It still points to the old wallpaper.

Slick-greeters draw-user-backgrounds reads the users background via LightDM → AccountsService BackgroundFile. This file is empty when there is no wallpaper. But LightDM may still fall back to the old picture-uri, so slick-greeter loads and displays the old wallpaper file instead of the chosen solid colour.

BackgroundLoader.load() supports hex colour strings natively. The fix: when picture-options=none, pass primary-color to the background loader instead of picture-uri.

Data

BackgroundFile (AccountsService) = "" (empty)
picture-uri                       = file:///...jbaer_wave.jpg (old wallpaper, not cleared)
picture-options                   = none
primary-color                     = #2626a2a26969
Login screen shows                = jbaer_wave.jpg (old wallpaper)

System

Slick-greeter 2.2.6, Cinnamon 6.4.8 (Linux Mint 22.1)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions