DS_OUTPUT_STATE_TRANSFORM = 1 << 5,
};
+enum ds_output_state_mode_type
+{
+ DS_OUTPUT_STATE_MODE_FIXED,
+ DS_OUTPUT_STATE_MODE_CUSTOM,
+};
+
struct ds_output_interface
{
void (*destroy)(struct ds_output *output);
{
enum ds_output_state_field committed;
struct ds_buffer *buffer;
+
+ enum ds_output_state_mode_type mode_type;
const struct ds_output_mode *mode;
+ struct {
+ int32_t width, height;
+ int32_t refresh; // mHz, may be zero
+ } custom_mode;
bool enabled;
};
struct ds_buffer *back_buffer, *front_buffer;
const struct ds_output_mode *current_mode;
+ int32_t width, height;
+ int32_t refresh; // mHz, may be zero
struct ds_output_state pending;
struct wl_list modes;