diff --git a/arkui/ace_engine/native/ui_input_event.h b/arkui/ace_engine/native/ui_input_event.h index 503f6f8ca2bdd6cb5396308a14de5fcd01558516..ecec3291f2ff7872f205673c4a1b5d53e7358d88 100644 --- a/arkui/ace_engine/native/ui_input_event.h +++ b/arkui/ace_engine/native/ui_input_event.h @@ -791,6 +791,19 @@ double OH_ArkUI_FocusAxisEvent_GetAxisValue(const ArkUI_UIInputEvent* event, int */ int32_t OH_ArkUI_FocusAxisEvent_SetStopPropagation(const ArkUI_UIInputEvent* event, bool stopPropagation); +/** + * @brief Obtains the state of the modifier keys in a UI input event. + * + * @param event Pointer to an ArkUI_UIInputEvent object. + * @param keys Pointer to a variable where the current combination of pressed modifier keys will be returned. + * The application can use bitwise operations to determine the state of each modifier key. + * @return Returns the result code. + * Returns {@link ARKUI_ERROR_CODE_NO_ERROR} if the operation is successful. + * Returns {@link ARKUI_ERROR_CODE_PARAM_INVALID} if a parameter error occurs. + * @since 16 + */ +int32_t OH_ArkUI_UIInputEvent_GetModifierKeyStates(const ArkUI_UIInputEvent* event, uint64_t* keys); + #ifdef __cplusplus }; #endif