summaryrefslogtreecommitdiffstats
path: root/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension/0004-ivi-ilmcontrol-added-focus-notification.patch
blob: 05d1cc238f65f15bb96a35e6ef8d10533852d779 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
diff --git a/ivi-layermanagement-api/ilmCommon/include/ilm_types.h b/ivi-layermanagement-api/ilmCommon/include/ilm_types.h
index a88f2b0..12a2017 100644
--- a/ivi-layermanagement-api/ilmCommon/include/ilm_types.h
+++ b/ivi-layermanagement-api/ilmCommon/include/ilm_types.h
@@ -245,6 +245,7 @@ typedef enum
     ILM_NOTIFICATION_CONTENT_AVAILABLE = ILM_BIT(6),
     ILM_NOTIFICATION_CONTENT_REMOVED = ILM_BIT(7),
     ILM_NOTIFICATION_CONFIGURED = ILM_BIT(8),
+    ILM_NOTIFICATION_FOCUS = ILM_BIT(9),
     ILM_NOTIFICATION_ALL = 0xffff
 } t_ilm_notification_mask;
 
diff --git a/ivi-layermanagement-api/ilmControl/src/ilm_control_wayland_platform.c b/ivi-layermanagement-api/ilmControl/src/ilm_control_wayland_platform.c
index a912e50..5166839 100644
--- a/ivi-layermanagement-api/ilmControl/src/ilm_control_wayland_platform.c
+++ b/ivi-layermanagement-api/ilmControl/src/ilm_control_wayland_platform.c
@@ -819,6 +819,12 @@ input_listener_input_focus(void *data,
             surf_ctx->prop.focus |= device;
         else
             surf_ctx->prop.focus &= ~device;
+
+        if (surf_ctx->notification != NULL) {
+            surf_ctx->notification(surf_ctx->id_surface,
+                                    &surf_ctx->prop,
+                                    ILM_NOTIFICATION_FOCUS);
+        }
     }
 }