Set gradient/wallpaper/background controls' sensitivity depending on
2000-09-10 Bradford Hovinen <hovinen@helixcode.com> * capplets/new-background-properties/prefs-widget.c (read_preferences): Set gradient/wallpaper/background controls' sensitivity depending on whether they are enabled * capplets/new-background-properties/applier.c (renderer_render_to_screen): Fixed solid, no wallpaper case to work correctly with preview window; don't set root pixmap if neither wallpaper nor gradient enabled
This commit is contained in:
parent
99aa241dba
commit
589923f166
3 changed files with 50 additions and 16 deletions
|
@ -663,15 +663,15 @@ renderer_render_background (Renderer *renderer)
|
|||
renderer->gwidth = 32;
|
||||
}
|
||||
|
||||
if (renderer->pixbuf != NULL)
|
||||
gdk_pixbuf_unref (renderer->pixbuf);
|
||||
|
||||
renderer->gradient_data =
|
||||
fill_gradient (renderer->gwidth, renderer->gheight,
|
||||
renderer->prefs->color1,
|
||||
renderer->prefs->color2,
|
||||
renderer->prefs->orientation);
|
||||
|
||||
if (renderer->pixbuf != NULL)
|
||||
gdk_pixbuf_unref (renderer->pixbuf);
|
||||
|
||||
renderer->pixbuf =
|
||||
gdk_pixbuf_new_from_data (renderer->gradient_data,
|
||||
GDK_COLORSPACE_RGB,
|
||||
|
@ -837,12 +837,27 @@ renderer_render_to_screen (Renderer *renderer)
|
|||
renderer->wwidth, renderer->wheight,
|
||||
GDK_RGB_DITHER_NORMAL, 0, 0);
|
||||
} else {
|
||||
gdk_window_set_background (GDK_ROOT_PARENT(),
|
||||
renderer->prefs->color1);
|
||||
gdk_window_clear (GDK_ROOT_PARENT());
|
||||
if (renderer->is_root) {
|
||||
gdk_color_alloc (gdk_window_get_colormap
|
||||
(GDK_ROOT_PARENT()),
|
||||
renderer->prefs->color1);
|
||||
gdk_window_set_background (GDK_ROOT_PARENT (),
|
||||
renderer->prefs->color1);
|
||||
gdk_window_clear (GDK_ROOT_PARENT ());
|
||||
} else {
|
||||
gdk_color_alloc (gdk_window_get_colormap
|
||||
(preview_widget->window),
|
||||
renderer->prefs->color1);
|
||||
gdk_gc_set_foreground (gc, renderer->prefs->color1);
|
||||
XFillRectangle (GDK_DISPLAY (), renderer->pixmap, xgc,
|
||||
renderer->x, renderer->y,
|
||||
renderer->width, renderer->height);
|
||||
}
|
||||
}
|
||||
|
||||
if (renderer->is_root && !renderer->is_set)
|
||||
if (renderer->is_root && !renderer->is_set &&
|
||||
(renderer->prefs->wallpaper_enabled ||
|
||||
renderer->prefs->gradient_enabled))
|
||||
set_root_pixmap (renderer->pixmap);
|
||||
|
||||
gdk_gc_destroy (gc);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue