diff options
author | Derek Foreman <derekf@osg.samsung.com> | 2016-07-15 12:01:31 -0500 |
---|---|---|
committer | Derek Foreman <derekf@osg.samsung.com> | 2016-07-15 12:01:31 -0500 |
commit | 607807da19d8af7847bd6b55d76f417174e27b67 (patch) | |
tree | f2a3afaf72b5029666cceaf11e0d886979a0b266 | |
parent | 5a3c015e9e2b9a19e5396faf2a78376979fc5ea9 (diff) | |
download | efl-devs/derekf/drm2_fixes.tar.gz |
ecore_drm2: Allow enabling outputs in drm eventsdevs/derekf/drm2_fixes
Previously a drm event could create a new output or disconnect an output,
but could not re-enable an existing output.
This results in failure to properly wake from screen blanker.
-rw-r--r-- | src/lib/ecore_drm2/ecore_drm2_outputs.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c b/src/lib/ecore_drm2/ecore_drm2_outputs.c index 42e8e1a08f..1eb50d692e 100644 --- a/src/lib/ecore_drm2/ecore_drm2_outputs.c +++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c @@ -669,6 +669,24 @@ next: } } } + + connected = (dev->alloc.conn & connected); + if (connected) + { + Ecore_Drm2_Output *output; + Eina_List *l; + + EINA_LIST_FOREACH(dev->outputs, l, output) + { + if (connected & (1 << output->conn_id)) + { + connected &= ~(1 << output->conn_id); + output->connected = EINA_TRUE; + output->enabled = EINA_TRUE; + _output_event_send(output); + } + } + } } static void |