@ -695,8 +695,6 @@ background_draw(struct widget *widget, void *data)
double sx , sy , s ;
double sx , sy , s ;
double tx , ty ;
double tx , ty ;
struct rectangle allocation ;
struct rectangle allocation ;
struct display * display ;
struct wl_region * opaque ;
surface = window_get_surface ( background - > window ) ;
surface = window_get_surface ( background - > window ) ;
@ -752,13 +750,6 @@ background_draw(struct widget *widget, void *data)
cairo_destroy ( cr ) ;
cairo_destroy ( cr ) ;
cairo_surface_destroy ( surface ) ;
cairo_surface_destroy ( surface ) ;
display = window_get_display ( background - > window ) ;
opaque = wl_compositor_create_region ( display_get_compositor ( display ) ) ;
wl_region_add ( opaque , allocation . x , allocation . y ,
allocation . width , allocation . height ) ;
wl_surface_set_opaque_region ( window_get_wl_surface ( background - > window ) , opaque ) ;
wl_region_destroy ( opaque ) ;
background - > painted = 1 ;
background - > painted = 1 ;
check_desktop_ready ( background - > window ) ;
check_desktop_ready ( background - > window ) ;
}
}
@ -1056,6 +1047,7 @@ background_create(struct desktop *desktop)
background - > widget = window_add_widget ( background - > window , background ) ;
background - > widget = window_add_widget ( background - > window , background ) ;
window_set_user_data ( background - > window , background ) ;
window_set_user_data ( background - > window , background ) ;
widget_set_redraw_handler ( background - > widget , background_draw ) ;
widget_set_redraw_handler ( background - > widget , background_draw ) ;
widget_set_transparent ( background - > widget , 0 ) ;
window_set_preferred_format ( background - > window ,
window_set_preferred_format ( background - > window ,
WINDOW_PREFERRED_FORMAT_RGB565 ) ;
WINDOW_PREFERRED_FORMAT_RGB565 ) ;