diff --git a/src/backends/meta-input-mapper.c b/src/backends/meta-input-mapper.c index 2a41a7508..ffbe2dd37 100644 --- a/src/backends/meta-input-mapper.c +++ b/src/backends/meta-input-mapper.c @@ -116,6 +116,9 @@ enum static guint signals[N_SIGNALS] = { 0, }; +static void mapper_output_info_remove_input (MetaMapperOutputInfo *output, + MetaMapperInputInfo *input); + static void mapper_recalculate_input (MetaInputMapper *mapper, MetaMapperInputInfo *input); @@ -166,6 +169,9 @@ settings_output_changed_cb (GSettings *settings, const char *key, MetaMapperInputInfo *info) { + if (info->output != NULL) + mapper_output_info_remove_input (info->output, info); + mapper_recalculate_input (info->mapper, info); } @@ -492,10 +498,6 @@ guess_candidates (MetaInputMapper *mapper, { flags = libwacom_get_integration_flags (wacom_device); - if ((flags & (WACOM_DEVICE_INTEGRATED_SYSTEM | - WACOM_DEVICE_INTEGRATED_DISPLAY)) == 0) - return; - integrated = (flags & (WACOM_DEVICE_INTEGRATED_SYSTEM | WACOM_DEVICE_INTEGRATED_DISPLAY)) != 0; builtin = (flags & WACOM_DEVICE_INTEGRATED_SYSTEM) != 0;