|
|
|
@ -917,6 +917,7 @@ x11_output_enable(struct weston_output *base) |
|
|
|
|
weston_log("Failed to create pixman renderer for output\n"); |
|
|
|
|
x11_output_deinit_shm(b, output); |
|
|
|
|
goto err; |
|
|
|
|
output->base.repaint = x11_output_repaint_shm; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
/* eglCreatePlatformWindowSurfaceEXT takes a Window*
|
|
|
|
@ -932,8 +933,16 @@ x11_output_enable(struct weston_output *base) |
|
|
|
|
0); |
|
|
|
|
if (ret < 0) |
|
|
|
|
goto err; |
|
|
|
|
|
|
|
|
|
output->base.repaint = x11_output_repaint_gl; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
output->base.start_repaint_loop = x11_output_start_repaint_loop; |
|
|
|
|
output->base.assign_planes = NULL; |
|
|
|
|
output->base.set_backlight = NULL; |
|
|
|
|
output->base.set_dpms = NULL; |
|
|
|
|
output->base.switch_mode = NULL; |
|
|
|
|
|
|
|
|
|
loop = wl_display_get_event_loop(b->compositor->wl_display); |
|
|
|
|
output->finish_frame_timer = |
|
|
|
|
wl_event_loop_add_timer(loop, finish_frame_handler, output); |
|
|
|
@ -999,17 +1008,6 @@ x11_output_set_size(struct weston_output *base, int width, int height) |
|
|
|
|
output->base.mm_height = height * b->screen->height_in_millimeters / |
|
|
|
|
b->screen->height_in_pixels; |
|
|
|
|
|
|
|
|
|
if (b->use_pixman) |
|
|
|
|
output->base.repaint = x11_output_repaint_shm; |
|
|
|
|
else |
|
|
|
|
output->base.repaint = x11_output_repaint_gl; |
|
|
|
|
|
|
|
|
|
output->base.start_repaint_loop = x11_output_start_repaint_loop; |
|
|
|
|
output->base.assign_planes = NULL; |
|
|
|
|
output->base.set_backlight = NULL; |
|
|
|
|
output->base.set_dpms = NULL; |
|
|
|
|
output->base.switch_mode = NULL; |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|