E (RandR): If the monitor does not have a CRTC because it was

disabled, try to find an available one so that we can re-enable the
monitor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77881
This commit is contained in:
Christopher Michael 2012-10-11 13:51:33 +00:00 committed by Christopher Michael
parent 6134584e47
commit c9edc0c734
1 changed files with 20 additions and 3 deletions

View File

@ -87,10 +87,27 @@ _basic_apply(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
E_Randr_Output_Info *output;
E_Smart_Monitor_Changes changes = E_SMART_MONITOR_CHANGED_NONE;
crtc = e_smart_monitor_crtc_get(mon);
output = e_smart_monitor_output_get(mon);
changes = e_smart_monitor_changes_get(mon);
if (!(output = e_smart_monitor_output_get(mon)))
continue;
if (!(crtc = e_smart_monitor_crtc_get(mon)))
{
Eina_List *c;
EINA_LIST_FOREACH(E_RANDR_12->crtcs, c, crtc)
{
if (crtc->current_mode)
{
crtc = NULL;
continue;
}
break;
}
}
if (!crtc) continue;
changes = e_smart_monitor_changes_get(mon);
if (changes & E_SMART_MONITOR_CHANGED_ENABLED)
{
if (e_smart_monitor_enabled_get(mon))