diff options
Diffstat (limited to 'sway/desktop')
-rw-r--r-- | sway/desktop/output.c | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/sway/desktop/output.c b/sway/desktop/output.c index 246f4438..96ceea86 100644 --- a/sway/desktop/output.c +++ b/sway/desktop/output.c @@ -29,23 +29,13 @@ #include "sway/tree/view.h" #include "sway/tree/workspace.h" -struct sway_output *output_by_name(const char *name) { +struct sway_output *output_by_name_or_id(const char *name_or_id) { for (int i = 0; i < root->outputs->length; ++i) { struct sway_output *output = root->outputs->items[i]; - if (strcasecmp(output->wlr_output->name, name) == 0) { - return output; - } - } - return NULL; -} - -struct sway_output *output_by_identifier(const char *identifier) { - for (int i = 0; i < root->outputs->length; ++i) { - struct sway_output *output = root->outputs->items[i]; - char output_identifier[128]; - snprintf(output_identifier, sizeof(output_identifier), "%s %s %s", output->wlr_output->make, - output->wlr_output->model, output->wlr_output->serial); - if (strcasecmp(output_identifier, identifier) == 0) { + char identifier[128]; + output_get_identifier(identifier, sizeof(identifier), output); + if (strcasecmp(identifier, name_or_id) == 0 + || strcasecmp(output->wlr_output->name, name_or_id) == 0) { return output; } } |