desktop-shell: Only use default background if no background color is set
Previously we would only use the set background color if the background-image value was explicitly set to empty or a non-existing image. With this change, we only load the default background image if there's no configure background image or background color. In case of both an image and a color, the image takes precedence as before.
This commit is contained in:
@@ -709,6 +709,8 @@ background_draw(struct widget *widget, void *data)
|
|||||||
image = NULL;
|
image = NULL;
|
||||||
if (background->image)
|
if (background->image)
|
||||||
image = load_cairo_surface(background->image);
|
image = load_cairo_surface(background->image);
|
||||||
|
else if (background->color == 0)
|
||||||
|
image = load_cairo_surface(DATADIR "/weston/pattern.png");
|
||||||
|
|
||||||
if (image && background->type != -1) {
|
if (image && background->type != -1) {
|
||||||
im_w = cairo_image_surface_get_width(image);
|
im_w = cairo_image_surface_get_width(image);
|
||||||
@@ -1057,10 +1059,9 @@ background_create(struct desktop *desktop)
|
|||||||
|
|
||||||
s = weston_config_get_section(desktop->config, "shell", NULL, NULL);
|
s = weston_config_get_section(desktop->config, "shell", NULL, NULL);
|
||||||
weston_config_section_get_string(s, "background-image",
|
weston_config_section_get_string(s, "background-image",
|
||||||
&background->image,
|
&background->image, NULL);
|
||||||
DATADIR "/weston/pattern.png");
|
|
||||||
weston_config_section_get_uint(s, "background-color",
|
weston_config_section_get_uint(s, "background-color",
|
||||||
&background->color, 0xff002244);
|
&background->color, 0);
|
||||||
|
|
||||||
weston_config_section_get_string(s, "background-type",
|
weston_config_section_get_string(s, "background-type",
|
||||||
&type, "tile");
|
&type, "tile");
|
||||||
|
|||||||
Reference in New Issue
Block a user