From 1248eddd1461d3fa6e87d1d3278016d102f47e18 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Thu, 8 May 2014 16:41:44 +0200 Subject: [PATCH] Accessibility Android: Fix states MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Using the bit flags as parameters to the JNI functions would fail since they'd always be cast to false instead of the c-style casts. This fixes checkboxes reporting themselves as checkable and their check state. Task-number: QTBUG-38831 Change-Id: I30ab63ceabbec4cc2fbda9475e05523d915087fe Reviewed-by: Jan Arve Sæther --- .../platforms/android/androidjniaccessibility.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/plugins/platforms/android/androidjniaccessibility.cpp b/src/plugins/platforms/android/androidjniaccessibility.cpp index 2c1701db83..fa7e259460 100644 --- a/src/plugins/platforms/android/androidjniaccessibility.cpp +++ b/src/plugins/platforms/android/androidjniaccessibility.cpp @@ -215,11 +215,10 @@ if (!clazz) { \ } CALL_METHOD(node, "setEnabled", "(Z)V", !state.disabled) - //CALL_METHOD(node, "setFocusable", "(Z)V", state.focusable) - CALL_METHOD(node, "setFocusable", "(Z)V", true) - //CALL_METHOD(node, "setFocused", "(Z)V", state.focused) - CALL_METHOD(node, "setCheckable", "(Z)V", state.checkable) - CALL_METHOD(node, "setChecked", "(Z)V", state.checked) + CALL_METHOD(node, "setFocusable", "(Z)V", (bool)state.focusable) + CALL_METHOD(node, "setFocused", "(Z)V", (bool)state.focused) + CALL_METHOD(node, "setCheckable", "(Z)V", (bool)state.checkable) + CALL_METHOD(node, "setChecked", "(Z)V", (bool)state.checked) CALL_METHOD(node, "setVisibleToUser", "(Z)V", !state.invisible) if (iface->actionInterface()) { @@ -227,7 +226,7 @@ if (!clazz) { \ bool clickable = actions.contains(QAccessibleActionInterface::pressAction()); bool toggle = actions.contains(QAccessibleActionInterface::toggleAction()); if (clickable || toggle) { - CALL_METHOD(node, "setClickable", "(Z)V", clickable) + CALL_METHOD(node, "setClickable", "(Z)V", (bool)clickable) CALL_METHOD(node, "addAction", "(I)V", 16) // ACTION_CLICK defined in AccessibilityNodeInfo } }