From 037b945a9f253b97faffc02d8475574e75203516 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Thu, 27 Mar 2025 18:36:26 +0100 Subject: one dir per subproject MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- redshift/gamma-drm.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 redshift/gamma-drm.c (limited to 'redshift/gamma-drm.c') diff --git a/redshift/gamma-drm.c b/redshift/gamma-drm.c new file mode 100644 index 0000000..cecc836 --- /dev/null +++ b/redshift/gamma-drm.c @@ -0,0 +1,51 @@ +/*- + * redshift-ng - Automatically adjust display colour temperature according the Sun + * + * Copyright (c) 2009-2018 Jon Lund Steffensen + * Copyright (c) 2014-2016, 2025 Mattias Andrée + * + * redshift-ng is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * redshift-ng is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with redshift-ng. If not, see . + */ +#include "common.h" + + +static int +drm_is_available(void) +{ + return libgamma_is_method_available(LIBGAMMA_METHOD_LINUX_DRM); +} + + +static int +drm_create(struct gamma_state **state_out) +{ + return direct_create(state_out, LIBGAMMA_METHOD_LINUX_DRM, "drm"); +} + + +static void +drm_print_help(void) +{ + printf(_("Adjust gamma ramps with Direct Rendering Manager.\n")); + printf("\n"); + direct_print_help(LIBGAMMA_METHOD_LINUX_DRM); +} + + +#define drm_set_option direct_set_option +#define drm_start direct_start +#define drm_apply direct_apply +#define drm_restore direct_restore +#define drm_free direct_free +const struct gamma_method drm_gamma_method = GAMMA_METHOD_INIT("drm", 0, 0, drm); -- cgit v1.2.3-70-g09d2