|
|
@ -935,6 +935,22 @@ void wlr_output_send_present(struct wlr_output *output,
|
|
|
|
wl_signal_emit_mutable(&output->events.present, event);
|
|
|
|
wl_signal_emit_mutable(&output->events.present, event);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void wlr_output_send_request_state(struct wlr_output *output,
|
|
|
|
|
|
|
|
const struct wlr_output_state *state) {
|
|
|
|
|
|
|
|
uint32_t unchanged = output_compare_state(output, state);
|
|
|
|
|
|
|
|
struct wlr_output_state copy = *state;
|
|
|
|
|
|
|
|
copy.committed &= ~unchanged;
|
|
|
|
|
|
|
|
if (copy.committed == 0) {
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
struct wlr_output_event_request_state event = {
|
|
|
|
|
|
|
|
.output = output,
|
|
|
|
|
|
|
|
.state = ©,
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
wl_signal_emit_mutable(&output->events.request_state, &event);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void wlr_output_set_gamma(struct wlr_output *output, size_t size,
|
|
|
|
void wlr_output_set_gamma(struct wlr_output *output, size_t size,
|
|
|
|
const uint16_t *r, const uint16_t *g, const uint16_t *b) {
|
|
|
|
const uint16_t *r, const uint16_t *g, const uint16_t *b) {
|
|
|
|
uint16_t *gamma_lut = NULL;
|
|
|
|
uint16_t *gamma_lut = NULL;
|
|
|
|