_config_screen_find() -> e_randr2_config_screen_find()
This commit is contained in:
parent
b4e65519d1
commit
7104e637ef
|
@ -15,7 +15,6 @@ static void _config_free(E_Config_Randr2 *cfg);
|
||||||
static Eina_Bool _config_save(E_Randr2 *r, E_Config_Randr2 *cfg);
|
static Eina_Bool _config_save(E_Randr2 *r, E_Config_Randr2 *cfg);
|
||||||
static void _config_update(E_Randr2 *r, E_Config_Randr2 *cfg);
|
static void _config_update(E_Randr2 *r, E_Config_Randr2 *cfg);
|
||||||
static void _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg);
|
static void _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg);
|
||||||
static E_Config_Randr2_Screen *_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg);
|
|
||||||
static int _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg);
|
static int _config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg);
|
||||||
static char *_screens_fingerprint(E_Randr2 *r);
|
static char *_screens_fingerprint(E_Randr2 *r);
|
||||||
static Eina_Bool _screens_differ(E_Randr2 *r1, E_Randr2 *r2);
|
static Eina_Bool _screens_differ(E_Randr2 *r1, E_Randr2 *r2);
|
||||||
|
@ -363,7 +362,7 @@ _config_update(E_Randr2 *r, E_Config_Randr2 *cfg)
|
||||||
{
|
{
|
||||||
printf("RRR: out id=%s: connected=%i\n", s->id, s->info.connected);
|
printf("RRR: out id=%s: connected=%i\n", s->id, s->info.connected);
|
||||||
if ((!s->id) || (!s->info.connected) || (_screen_closed(s))) continue;
|
if ((!s->id) || (!s->info.connected) || (_screen_closed(s))) continue;
|
||||||
cs = _config_screen_find(s, cfg);
|
cs = e_randr2_config_screen_find(s, cfg);
|
||||||
if (!cs)
|
if (!cs)
|
||||||
{
|
{
|
||||||
cs = calloc(1, sizeof(E_Config_Randr2_Screen));
|
cs = calloc(1, sizeof(E_Config_Randr2_Screen));
|
||||||
|
@ -403,7 +402,7 @@ _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg)
|
||||||
printf("RRR: apply '%s'...\n", s->info.name);
|
printf("RRR: apply '%s'...\n", s->info.name);
|
||||||
cs = NULL;
|
cs = NULL;
|
||||||
if ((!_screen_closed(s)) && (s->info.connected))
|
if ((!_screen_closed(s)) && (s->info.connected))
|
||||||
cs = _config_screen_find(s, cfg);
|
cs = e_randr2_config_screen_find(s, cfg);
|
||||||
printf("RRR: connected = %i\n", s->info.connected);
|
printf("RRR: connected = %i\n", s->info.connected);
|
||||||
if ((cs) && (cs->enabled))
|
if ((cs) && (cs->enabled))
|
||||||
{
|
{
|
||||||
|
@ -445,22 +444,6 @@ _config_apply(E_Randr2 *r, E_Config_Randr2 *cfg)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static E_Config_Randr2_Screen *
|
|
||||||
_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg)
|
|
||||||
{
|
|
||||||
Eina_List *l;
|
|
||||||
E_Config_Randr2_Screen *cs;
|
|
||||||
|
|
||||||
if ((!s) || (!cfg)) return NULL;
|
|
||||||
if (!s->id) return NULL;
|
|
||||||
EINA_LIST_FOREACH(cfg->screens, l, cs)
|
|
||||||
{
|
|
||||||
if (!cs->id) continue;
|
|
||||||
if (!strcmp(cs->id, s->id)) return cs;
|
|
||||||
}
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
_config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg)
|
_config_screen_match_count(E_Randr2 *r, E_Config_Randr2 *cfg)
|
||||||
{
|
{
|
||||||
|
@ -1273,7 +1256,7 @@ _info_get(void)
|
||||||
}
|
}
|
||||||
cs = NULL;
|
cs = NULL;
|
||||||
priority = 0;
|
priority = 0;
|
||||||
if (e_randr2_cfg) cs = _config_screen_find(s, e_randr2_cfg);
|
if (e_randr2_cfg) cs = e_randr2_config_screen_find(s, e_randr2_cfg);
|
||||||
if (cs)
|
if (cs)
|
||||||
priority = cs->priority;
|
priority = cs->priority;
|
||||||
else if (ecore_x_randr_primary_output_get(root) == outputs[i])
|
else if (ecore_x_randr_primary_output_get(root) == outputs[i])
|
||||||
|
@ -1677,3 +1660,19 @@ e_randr2_screen_refresh_queue(Eina_Bool lid_event)
|
||||||
_screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL);
|
_screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL);
|
||||||
event_screen = !!lid_event;
|
event_screen = !!lid_event;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EAPI E_Config_Randr2_Screen *
|
||||||
|
e_randr2_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg)
|
||||||
|
{
|
||||||
|
Eina_List *l;
|
||||||
|
E_Config_Randr2_Screen *cs;
|
||||||
|
|
||||||
|
if ((!s) || (!cfg)) return NULL;
|
||||||
|
if (!s->id) return NULL;
|
||||||
|
EINA_LIST_FOREACH(cfg->screens, l, cs)
|
||||||
|
{
|
||||||
|
if (!cs->id) continue;
|
||||||
|
if (!strcmp(cs->id, s->id)) return cs;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
|
@ -121,5 +121,6 @@ EAPI void e_randr2_config_apply(void);
|
||||||
EAPI void e_randr2_screeninfo_update(void);
|
EAPI void e_randr2_screeninfo_update(void);
|
||||||
|
|
||||||
EAPI void e_randr2_screen_refresh_queue(Eina_Bool lid_event);
|
EAPI void e_randr2_screen_refresh_queue(Eina_Bool lid_event);
|
||||||
|
EAPI E_Config_Randr2_Screen *e_randr2_config_screen_find(E_Randr2_Screen *s, E_Config_Randr2 *cfg);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue