mirror of
https://github.com/NickHu/sway
synced 2024-12-26 21:58:30 +01:00
Use output_match_name_or_id() in apply_output_config_to_outputs()
This commit is contained in:
parent
04904ab9a5
commit
fcec581748
3 changed files with 11 additions and 5 deletions
|
@ -96,6 +96,9 @@ void output_damage_box(struct sway_output *output, struct wlr_box *box);
|
||||||
void output_damage_whole_container(struct sway_output *output,
|
void output_damage_whole_container(struct sway_output *output,
|
||||||
struct sway_container *con);
|
struct sway_container *con);
|
||||||
|
|
||||||
|
bool output_match_name_or_id(struct sway_output *output,
|
||||||
|
const char *name_or_id);
|
||||||
|
|
||||||
// this ONLY includes the enabled outputs
|
// this ONLY includes the enabled outputs
|
||||||
struct sway_output *output_by_name_or_id(const char *name_or_id);
|
struct sway_output *output_by_name_or_id(const char *name_or_id);
|
||||||
|
|
||||||
|
|
|
@ -722,12 +722,11 @@ void apply_output_config_to_outputs(struct output_config *oc) {
|
||||||
// this is during startup then there will be no container and config
|
// this is during startup then there will be no container and config
|
||||||
// will be applied during normal "new output" event from wlroots.
|
// will be applied during normal "new output" event from wlroots.
|
||||||
bool wildcard = strcmp(oc->name, "*") == 0;
|
bool wildcard = strcmp(oc->name, "*") == 0;
|
||||||
char id[128];
|
|
||||||
struct sway_output *sway_output, *tmp;
|
struct sway_output *sway_output, *tmp;
|
||||||
wl_list_for_each_safe(sway_output, tmp, &root->all_outputs, link) {
|
wl_list_for_each_safe(sway_output, tmp, &root->all_outputs, link) {
|
||||||
char *name = sway_output->wlr_output->name;
|
if (output_match_name_or_id(sway_output, oc->name)) {
|
||||||
output_get_identifier(id, sizeof(id), sway_output);
|
char id[128];
|
||||||
if (wildcard || !strcmp(name, oc->name) || !strcmp(id, oc->name)) {
|
output_get_identifier(id, sizeof(id), sway_output);
|
||||||
struct output_config *current = get_output_config(id, sway_output);
|
struct output_config *current = get_output_config(id, sway_output);
|
||||||
if (!current) {
|
if (!current) {
|
||||||
// No stored output config matched, apply oc directly
|
// No stored output config matched, apply oc directly
|
||||||
|
|
|
@ -36,8 +36,12 @@
|
||||||
#include <wlr/types/wlr_drm_lease_v1.h>
|
#include <wlr/types/wlr_drm_lease_v1.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static bool output_match_name_or_id(struct sway_output *output,
|
bool output_match_name_or_id(struct sway_output *output,
|
||||||
const char *name_or_id) {
|
const char *name_or_id) {
|
||||||
|
if (strcmp(name_or_id, "*") == 0) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
char identifier[128];
|
char identifier[128];
|
||||||
output_get_identifier(identifier, sizeof(identifier), output);
|
output_get_identifier(identifier, sizeof(identifier), output);
|
||||||
return strcasecmp(identifier, name_or_id) == 0
|
return strcasecmp(identifier, name_or_id) == 0
|
||||||
|
|
Loading…
Reference in a new issue