Index: ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h |
diff --git a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h |
index a338c18da655f44148c2f4ded001145a90fc87f6..aa24f5ba8b944921e5b325d2ca60c7d298e2ca60 100644 |
--- a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h |
+++ b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h |
@@ -50,6 +50,14 @@ class EVENTS_OZONE_LAYOUT_EXPORT XkbKeyboardLayoutEngine |
std::string* layout_id, |
std::string* layout_variant); |
+ // Used to sync up client side 'xkb_state' instance with modifiers status |
+ // update |
+ // from the server. |
+ int UpdateModifiers(uint32_t depressed_mods, |
+ uint32_t latched_mods, |
+ uint32_t locked_mods, |
+ uint32_t group); |
+ |
protected: |
// Table for EventFlagsToXkbFlags(). |
struct XkbFlagMapEntry { |
@@ -114,6 +122,12 @@ class EVENTS_OZONE_LAYOUT_EXPORT XkbKeyboardLayoutEngine |
std::string current_layout_name_; |
+ struct { |
+ xkb_mod_index_t control = 0; |
+ xkb_mod_index_t alt = 0; |
+ xkb_mod_index_t shift = 0; |
+ } xkb_mod_indexes_; |
+ |
// Support weak pointers for attach & detach callbacks. |
base::WeakPtrFactory<XkbKeyboardLayoutEngine> weak_ptr_factory_; |
}; |