mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-22 12:55:58 +01:00
gamma-control-v1: add wlr_gamma_control_manager_v1_get_control()
This commit is contained in:
parent
70c1a57248
commit
6e635d2fd3
2 changed files with 16 additions and 6 deletions
|
@ -39,5 +39,7 @@ struct wlr_gamma_control_v1 {
|
|||
|
||||
struct wlr_gamma_control_manager_v1 *wlr_gamma_control_manager_v1_create(
|
||||
struct wl_display *display);
|
||||
struct wlr_gamma_control_v1 *wlr_gamma_control_manager_v1_get_control(
|
||||
struct wlr_gamma_control_manager_v1 *manager, struct wlr_output *output);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -207,13 +207,10 @@ static void gamma_control_manager_get_gamma_control(struct wl_client *client,
|
|||
return;
|
||||
}
|
||||
|
||||
struct wlr_gamma_control_v1 *gc;
|
||||
wl_list_for_each(gc, &manager->controls, link) {
|
||||
if (gc->output == output) {
|
||||
if (wlr_gamma_control_manager_v1_get_control(manager, output) != NULL) {
|
||||
zwlr_gamma_control_v1_send_failed(resource);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
struct wlr_gamma_control_v1 *gamma_control =
|
||||
calloc(1, sizeof(struct wlr_gamma_control_v1));
|
||||
|
@ -299,3 +296,14 @@ struct wlr_gamma_control_manager_v1 *wlr_gamma_control_manager_v1_create(
|
|||
|
||||
return manager;
|
||||
}
|
||||
|
||||
struct wlr_gamma_control_v1 *wlr_gamma_control_manager_v1_get_control(
|
||||
struct wlr_gamma_control_manager_v1 *manager, struct wlr_output *output) {
|
||||
struct wlr_gamma_control_v1 *gamma_control;
|
||||
wl_list_for_each(gamma_control, &manager->controls, link) {
|
||||
if (gamma_control->output == output) {
|
||||
return gamma_control;
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue