ply_console_t *console;
ply_fd_watch_t *display_watch;
+
+ uint32_t is_inactive : 1;
};
ply_renderer_plugin_interface_t *ply_renderer_backend_get_interface (void);
ply_console_ignore_mode_changes (backend->console, false);
}
+static void
+activate (ply_renderer_backend_t *backend)
+{
+ backend->is_inactive = false;
+}
+
+static void
+deactivate (ply_renderer_backend_t *backend)
+{
+ backend->is_inactive = true;
+}
+
static void
flush_area_to_device (ply_renderer_backend_t *backend,
ply_renderer_head_t *head,
assert (backend != NULL);
+ if (backend->is_inactive)
+ return;
+
pixel_buffer = head->pixel_buffer;
updated_region = ply_pixel_buffer_get_updated_areas (pixel_buffer);
areas_to_flush = ply_region_get_rectangle_list (updated_region);
.query_device = query_device,
.map_to_device = map_to_device,
.unmap_from_device = unmap_from_device,
+ .activate = activate,
+ .deactivate = deactivate,
.flush_head = flush_head,
.get_heads = get_heads,
.get_buffer_for_head = get_buffer_for_head,