Add xkb_key_get_syms API
[platform/upstream/libxkbcommon.git] / include / xkbcommon / xkbcommon.h
index 4ef3dd2..abce09e 100644 (file)
@@ -74,14 +74,14 @@ typedef uint32_t xkb_keysym_t;
 
 /* Duplicate the modifier mask defines so libxkcommon can be used
  * without X.h */
-#define XKB_COMMON_SHIFT_MASK          (1<<0)
-#define XKB_COMMON_LOCK_MASK           (1<<1)
-#define XKB_COMMON_CONTROL_MASK                (1<<2)
-#define XKB_COMMON_MOD1_MASK           (1<<3)
-#define XKB_COMMON_MOD2_MASK           (1<<4)
-#define XKB_COMMON_MOD3_MASK           (1<<5)
-#define XKB_COMMON_MOD4_MASK           (1<<6)
-#define XKB_COMMON_MOD5_MASK           (1<<7)
+#define XKB_COMMON_SHIFT_MASK          (1 << 0)
+#define XKB_COMMON_LOCK_MASK           (1 << 1)
+#define XKB_COMMON_CONTROL_MASK                (1 << 2)
+#define XKB_COMMON_MOD1_MASK           (1 << 3)
+#define XKB_COMMON_MOD2_MASK           (1 << 4)
+#define XKB_COMMON_MOD3_MASK           (1 << 5)
+#define XKB_COMMON_MOD4_MASK           (1 << 6)
+#define XKB_COMMON_MOD5_MASK           (1 << 7)
 
 
 struct xkb_rule_names {
@@ -572,6 +572,10 @@ xkb_keysym_to_string(xkb_keysym_t ks, char *buffer, size_t size);
 _X_EXPORT extern xkb_keysym_t
 xkb_string_to_keysym(const char *s);
 
+_X_EXPORT unsigned int
+xkb_key_get_syms(struct xkb_desc *xkb, struct xkb_state *state,
+                 xkb_keycode_t key, xkb_keysym_t **syms_out);
+
 _XFUNCPROTOEND
 
 #endif /* _XKBCOMMON_H_ */