set adaptive sync inside config file

This commit is contained in:
Palanix 2021-08-07 11:40:12 +02:00
parent 7cb3b2a5cb
commit 01807eb2a7
2 changed files with 7 additions and 4 deletions

View File

@ -28,12 +28,12 @@ static const Layout layouts[] = {
* The order in which monitors are defined determines their position. * The order in which monitors are defined determines their position.
* Non-configured monitors are always added to the left. */ * Non-configured monitors are always added to the left. */
static const MonitorRule monrules[] = { static const MonitorRule monrules[] = {
/* name mfact nmaster scale layout rotate/reflect x y resx resy rate custom*/ /* name mfact nmaster scale layout rotate/reflect x y resx resy rate adaptive custom*/
/* example of a HiDPI laptop monitor at 120Hz: /* example of a HiDPI laptop monitor at 120Hz:
{ "eDP-1", 0.5, 1, 2, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 120.000 , 0}, { "eDP-1", 0.5, 1, 2, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 120.000, 1, 0},
*/ */
/* defaults */ /* defaults */
{ NULL, 0.55, 1, 1, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 0, 0}, { NULL, 0.55, 1, 1, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 0, 0, 0},
}; };
/* keyboard */ /* keyboard */

5
dwl.c
View File

@ -192,6 +192,7 @@ typedef struct {
int resx; int resx;
int resy; int resy;
int rate; int rate;
bool adaptive_true;
bool custom_mode; bool custom_mode;
} MonitorRule; } MonitorRule;
@ -852,6 +853,7 @@ createmon(struct wl_listener *listener, void *data)
struct wlr_output *wlr_output = data; struct wlr_output *wlr_output = data;
const struct wlr_output_mode *wlr_output_mode; const struct wlr_output_mode *wlr_output_mode;
int32_t resx,resy,rate; int32_t resx,resy,rate;
bool adaptive_true;
bool custom_mode; bool custom_mode;
const MonitorRule *r; const MonitorRule *r;
Monitor *m = wlr_output->data = calloc(1, sizeof(*m)); Monitor *m = wlr_output->data = calloc(1, sizeof(*m));
@ -898,7 +900,8 @@ createmon(struct wl_listener *listener, void *data)
} }
} }
wlr_output_enable_adaptive_sync(wlr_output, 1); if (adaptive_true)
wlr_output_enable_adaptive_sync(wlr_output, 1);
/* Set up event listeners */ /* Set up event listeners */
LISTEN(&wlr_output->events.frame, &m->frame, rendermon); LISTEN(&wlr_output->events.frame, &m->frame, rendermon);