summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2015-02-11 14:51:44 -0500
committerChris Michael <cp.michael@samsung.com>2015-02-11 14:51:44 -0500
commitab2487037fc4b11eabc874bd95085a232e4d12c8 (patch)
tree8dd10f0fabf60c696b47b2f12c56d16f1a79c943 /src/lib
parent4f320a80df28c9f1ed0e1922b3e51ed4b1d19f12 (diff)
ecore-drm: Disable/Enable inputs if we release/aquire VT through logind
Summary: Due to libinput processing events directly from evdev, we need to disable/enable input events when we release/acquire the vt. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/ecore_drm/ecore_drm_logind.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/ecore_drm/ecore_drm_logind.c b/src/lib/ecore_drm/ecore_drm_logind.c
index f8207567cd..d49d2c7941 100644
--- a/src/lib/ecore_drm/ecore_drm_logind.c
+++ b/src/lib/ecore_drm/ecore_drm_logind.c
@@ -148,6 +148,7 @@ _ecore_drm_logind_cb_activate(void *data, int type EINA_UNUSED, void *event)
148 Ecore_Drm_Event_Activate *ev; 148 Ecore_Drm_Event_Activate *ev;
149 Ecore_Drm_Device *dev; 149 Ecore_Drm_Device *dev;
150 Ecore_Drm_Output *output; 150 Ecore_Drm_Output *output;
151 Ecore_Drm_Input *input;
151 Eina_List *l; 152 Eina_List *l;
152 153
153 if ((!event) || (!data)) return ECORE_CALLBACK_RENEW; 154 if ((!event) || (!data)) return ECORE_CALLBACK_RENEW;
@@ -160,11 +161,19 @@ _ecore_drm_logind_cb_activate(void *data, int type EINA_UNUSED, void *event)
160 /* set output mode */ 161 /* set output mode */
161 EINA_LIST_FOREACH(dev->outputs, l, output) 162 EINA_LIST_FOREACH(dev->outputs, l, output)
162 ecore_drm_output_enable(output); 163 ecore_drm_output_enable(output);
164
165 /* enable inputs */
166 EINA_LIST_FOREACH(dev->inputs, l, input)
167 ecore_drm_inputs_enable(input);
163 } 168 }
164 else 169 else
165 { 170 {
166 Ecore_Drm_Sprite *sprite; 171 Ecore_Drm_Sprite *sprite;
167 172
173 /* disable inputs */
174 EINA_LIST_FOREACH(dev->inputs, l, input)
175 ecore_drm_inputs_disable(input);
176
168 /* disable hardware cursor */ 177 /* disable hardware cursor */
169 EINA_LIST_FOREACH(dev->outputs, l, output) 178 EINA_LIST_FOREACH(dev->outputs, l, output)
170 ecore_drm_output_cursor_size_set(output, 0, 0, 0); 179 ecore_drm_output_cursor_size_set(output, 0, 0, 0);