Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QtAndroidInput Namespace Reference

Enumerations

enum  AndroidMouseButton {
  BUTTON_PRIMARY = 0x00000001 , BUTTON_SECONDARY = 0x00000002 , BUTTON_TERTIARY = 0x00000004 , BUTTON_BACK = 0x00000008 ,
  BUTTON_FORWARD = 0x00000010 , BUTTON_STYLUS_PRIMARY = 0x00000020 , BUTTON_STYLUS_SECONDARY = 0x00000040 , BUTTON_PRIMARY = 0x00000001 ,
  BUTTON_SECONDARY = 0x00000002 , BUTTON_TERTIARY = 0x00000004 , BUTTON_BACK = 0x00000008 , BUTTON_FORWARD = 0x00000010 ,
  BUTTON_STYLUS_PRIMARY = 0x00000020 , BUTTON_STYLUS_SECONDARY = 0x00000040
}
enum  AndroidMouseButton {
  BUTTON_PRIMARY = 0x00000001 , BUTTON_SECONDARY = 0x00000002 , BUTTON_TERTIARY = 0x00000004 , BUTTON_BACK = 0x00000008 ,
  BUTTON_FORWARD = 0x00000010 , BUTTON_STYLUS_PRIMARY = 0x00000020 , BUTTON_STYLUS_SECONDARY = 0x00000040 , BUTTON_PRIMARY = 0x00000001 ,
  BUTTON_SECONDARY = 0x00000002 , BUTTON_TERTIARY = 0x00000004 , BUTTON_BACK = 0x00000008 , BUTTON_FORWARD = 0x00000010 ,
  BUTTON_STYLUS_PRIMARY = 0x00000020 , BUTTON_STYLUS_SECONDARY = 0x00000040
}

Functions

void updateSelection (int selStart, int selEnd, int candidatesStart, int candidatesEnd)
void showSoftwareKeyboard (int left, int top, int width, int height, int inputHints, int enterKeyType)
void resetSoftwareKeyboard ()
void hideSoftwareKeyboard ()
bool isSoftwareKeyboardVisible ()
QRect softwareKeyboardRect ()
int getSelectHandleWidth ()
void updateHandles (int mode, QPoint editMenuPos, uint32_t editButtons, QPoint cursor, QPoint anchor, bool rtl)
static Qt::MouseButtons toMouseButtons (jint j_buttons)
static void sendMouseButtonEvents (QWindow *topLevel, QPoint localPos, QPoint globalPos, jint mouseButtonState, QEvent::Type type)
static void mouseDown (JNIEnv *, jobject, jint winId, jint x, jint y, jint mouseButtonState)
static void mouseUp (JNIEnv *, jobject, jint winId, jint x, jint y, jint mouseButtonState)
static void mouseMove (JNIEnv *, jobject, jint winId, jint x, jint y, jint mouseButtonState)
static void mouseWheel (JNIEnv *, jobject, jint winId, jint x, jint y, jfloat hdelta, jfloat vdelta)
static void longPress (JNIEnv *, jobject, jint winId, jint x, jint y)
static void touchBegin (JNIEnv *, jobject, jint)
static void touchAdd (JNIEnv *, jobject, jint winId, jint id, jint action, jboolean, jint x, jint y, jfloat major, jfloat minor, jfloat rotation, jfloat pressure)
static QPointingDevicegetTouchDevice ()
static void touchEnd (JNIEnv *, jobject, jint winId, jint)
static void touchCancel (JNIEnv *, jobject, jint winId)
static bool isTabletEventSupported (JNIEnv *, jobject)
static void tabletEvent (JNIEnv *, jobject, jint winId, jint deviceId, jlong time, jint action, jint pointerType, jint buttonState, jfloat x, jfloat y, jfloat pressure)
static QKeyCombination mapAndroidKey (int key)
static Qt::KeyboardModifiers mapAndroidModifiers (jint modifiers)
static QString toString (jint unicode)
static void keyDown (JNIEnv *, jobject, jint key, jint unicode, jint modifier, jboolean autoRepeat)
static void moveActivityToBackground ()
static void keyUp (JNIEnv *, jobject, jint key, jint unicode, jint modifier, jboolean autoRepeat)
static void keyboardVisibilityChanged (JNIEnv *, jobject, jboolean visibility)
static void keyboardGeometryChanged (JNIEnv *, jobject, jint x, jint y, jint w, jint h)
static void handleLocationChanged (JNIEnv *, jobject, int id, int x, int y)
bool registerNatives (QJniEnvironment &env)

Variables

static bool m_ignoreMouseEvents = false
static Qt::MouseButtons m_lastSeenButtons = Qt::NoButton
static QRect m_softwareKeyboardRect
static QList< QWindowSystemInterface::TouchPointm_touchPoints
static QPointer< QWindowm_mouseGrabber
static bool m_backKeyPressAccepted = false
static bool m_menuKeyPressAccepted = false
static const JNINativeMethod methods []

Enumeration Type Documentation

◆ AndroidMouseButton [1/2]

Enumerator
BUTTON_PRIMARY 
BUTTON_SECONDARY 
BUTTON_TERTIARY 
BUTTON_BACK 
BUTTON_FORWARD 
BUTTON_STYLUS_PRIMARY 
BUTTON_STYLUS_SECONDARY 
BUTTON_PRIMARY 
BUTTON_SECONDARY 
BUTTON_TERTIARY 
BUTTON_BACK 
BUTTON_FORWARD 
BUTTON_STYLUS_PRIMARY 
BUTTON_STYLUS_SECONDARY 

Definition at line 103 of file androidjniinput.cpp.

◆ AndroidMouseButton [2/2]

Enumerator
BUTTON_PRIMARY 
BUTTON_SECONDARY 
BUTTON_TERTIARY 
BUTTON_BACK 
BUTTON_FORWARD 
BUTTON_STYLUS_PRIMARY 
BUTTON_STYLUS_SECONDARY 
BUTTON_PRIMARY 
BUTTON_SECONDARY 
BUTTON_TERTIARY 
BUTTON_BACK 
BUTTON_FORWARD 
BUTTON_STYLUS_PRIMARY 
BUTTON_STYLUS_SECONDARY 

Definition at line 103 of file androidjniinput.cpp.

Function Documentation

◆ getSelectHandleWidth()

int QtAndroidInput::getSelectHandleWidth ( )

Definition at line 88 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Referenced by QAndroidInputContext::updateSelectionHandles().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getTouchDevice()

QPointingDevice * QtAndroidInput::getTouchDevice ( )
static

Definition at line 328 of file androidjniinput.cpp.

References QtAndroid::androidPlatformIntegration().

Here is the call graph for this function:

◆ handleLocationChanged()

void QtAndroidInput::handleLocationChanged ( JNIEnv * ,
jobject ,
int id,
int x,
int y )
static

Definition at line 947 of file androidjniinput.cpp.

References QAndroidInputContext::androidInputContext().

Here is the call graph for this function:

◆ hideSoftwareKeyboard()

void QtAndroidInput::hideSoftwareKeyboard ( )

Definition at line 69 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Referenced by QAndroidInputContext::hideInputPanel(), and QAndroidInputContext::reset().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isSoftwareKeyboardVisible()

bool QtAndroidInput::isSoftwareKeyboardVisible ( )

Definition at line 76 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Referenced by QAndroidInputContext::isInputPanelVisible().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isTabletEventSupported()

bool QtAndroidInput::isTabletEventSupported ( JNIEnv * ,
jobject  )
static

Definition at line 383 of file androidjniinput.cpp.

◆ keyboardGeometryChanged()

void QtAndroidInput::keyboardGeometryChanged ( JNIEnv * ,
jobject ,
jint x,
jint y,
jint w,
jint h )
static

Definition at line 934 of file androidjniinput.cpp.

References QAndroidInputContext::androidInputContext(), and m_softwareKeyboardRect.

Here is the call graph for this function:

◆ keyboardVisibilityChanged()

void QtAndroidInput::keyboardVisibilityChanged ( JNIEnv * ,
jobject ,
jboolean visibility )
static

Definition at line 918 of file androidjniinput.cpp.

References QAndroidInputContext::androidInputContext(), and m_softwareKeyboardRect.

Here is the call graph for this function:

◆ keyDown()

void QtAndroidInput::keyDown ( JNIEnv * ,
jobject ,
jint key,
jint unicode,
jint modifier,
jboolean autoRepeat )
static

Definition at line 864 of file androidjniinput.cpp.

References m_backKeyPressAccepted, and m_menuKeyPressAccepted.

◆ keyUp()

void QtAndroidInput::keyUp ( JNIEnv * ,
jobject ,
jint key,
jint unicode,
jint modifier,
jboolean autoRepeat )
static

Definition at line 894 of file androidjniinput.cpp.

References m_backKeyPressAccepted, m_menuKeyPressAccepted, moveActivityToBackground(), and QtAndroidMenu::openOptionsMenu().

Here is the call graph for this function:

◆ longPress()

void QtAndroidInput::longPress ( JNIEnv * ,
jobject ,
jint winId,
jint x,
jint y )
static

Definition at line 234 of file androidjniinput.cpp.

References QAndroidInputContext::androidInputContext(), and m_ignoreMouseEvents.

Here is the call graph for this function:

◆ mapAndroidKey()

QKeyCombination QtAndroidInput::mapAndroidKey ( int key)
static

Definition at line 439 of file androidjniinput.cpp.

◆ mapAndroidModifiers()

Qt::KeyboardModifiers QtAndroidInput::mapAndroidModifiers ( jint modifiers)
static

Definition at line 839 of file androidjniinput.cpp.

◆ mouseDown()

void QtAndroidInput::mouseDown ( JNIEnv * ,
jobject ,
jint winId,
jint x,
jint y,
jint mouseButtonState )
static

Definition at line 169 of file androidjniinput.cpp.

References m_ignoreMouseEvents, and m_mouseGrabber.

◆ mouseMove()

void QtAndroidInput::mouseMove ( JNIEnv * ,
jobject ,
jint winId,
jint x,
jint y,
jint mouseButtonState )
static

Definition at line 197 of file androidjniinput.cpp.

References m_ignoreMouseEvents, and m_lastSeenButtons.

◆ mouseUp()

void QtAndroidInput::mouseUp ( JNIEnv * ,
jobject ,
jint winId,
jint x,
jint y,
jint mouseButtonState )
static

Definition at line 182 of file androidjniinput.cpp.

References m_ignoreMouseEvents, and m_mouseGrabber.

◆ mouseWheel()

void QtAndroidInput::mouseWheel ( JNIEnv * ,
jobject ,
jint winId,
jint x,
jint y,
jfloat hdelta,
jfloat vdelta )
static

Definition at line 214 of file androidjniinput.cpp.

References m_ignoreMouseEvents.

◆ moveActivityToBackground()

void QtAndroidInput::moveActivityToBackground ( )
static

Definition at line 885 of file androidjniinput.cpp.

Referenced by keyUp().

Here is the caller graph for this function:

◆ registerNatives()

bool QtAndroidInput::registerNatives ( QJniEnvironment & env)

Definition at line 977 of file androidjniinput.cpp.

References methods.

◆ resetSoftwareKeyboard()

void QtAndroidInput::resetSoftwareKeyboard ( )

Definition at line 62 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Referenced by QAndroidInputContext::reset().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendMouseButtonEvents()

void QtAndroidInput::sendMouseButtonEvents ( QWindow * topLevel,
QPoint localPos,
QPoint globalPos,
jint mouseButtonState,
QEvent::Type type )
static

Definition at line 147 of file androidjniinput.cpp.

References m_lastSeenButtons.

◆ showSoftwareKeyboard()

void QtAndroidInput::showSoftwareKeyboard ( int left,
int top,
int width,
int height,
int inputHints,
int enterKeyType )

Definition at line 52 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Referenced by QAndroidInputContext::showInputPanel().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ softwareKeyboardRect()

QRect QtAndroidInput::softwareKeyboardRect ( )

Definition at line 83 of file androidjniinput.cpp.

◆ tabletEvent()

void QtAndroidInput::tabletEvent ( JNIEnv * ,
jobject ,
jint winId,
jint deviceId,
jlong time,
jint action,
jint pointerType,
jint buttonState,
jfloat x,
jfloat y,
jfloat pressure )
static

Definition at line 392 of file androidjniinput.cpp.

◆ toMouseButtons()

Qt::MouseButtons QtAndroidInput::toMouseButtons ( jint j_buttons)
static

◆ toString()

QString QtAndroidInput::toString ( jint unicode)
inlinestatic

Definition at line 859 of file androidjniinput.cpp.

◆ touchAdd()

void QtAndroidInput::touchAdd ( JNIEnv * ,
jobject ,
jint winId,
jint id,
jint action,
jboolean ,
jint x,
jint y,
jfloat major,
jfloat minor,
jfloat rotation,
jfloat pressure )
static

Definition at line 269 of file androidjniinput.cpp.

References QAndroidInputContext::androidInputContext(), QtAndroid::androidPlatformIntegration(), QAndroidPlatformScreen::defaultAvailableGeometry(), m_touchPoints, QAndroidPlatformIntegration::screen(), and QtAndroid::windowFromId().

Here is the call graph for this function:

◆ touchBegin()

void QtAndroidInput::touchBegin ( JNIEnv * ,
jobject ,
jint  )
static

Definition at line 264 of file androidjniinput.cpp.

References m_touchPoints.

◆ touchCancel()

void QtAndroidInput::touchCancel ( JNIEnv * ,
jobject ,
jint winId )
static

Definition at line 367 of file androidjniinput.cpp.

References m_touchPoints, QtAndroid::platformInterfaceMutex(), and QtAndroid::windowFromId().

Here is the call graph for this function:

◆ touchEnd()

void QtAndroidInput::touchEnd ( JNIEnv * ,
jobject ,
jint winId,
jint  )
static

Definition at line 351 of file androidjniinput.cpp.

References m_touchPoints, QtAndroid::platformInterfaceMutex(), and QtAndroid::windowFromId().

Here is the call graph for this function:

◆ updateHandles()

void QtAndroidInput::updateHandles ( int mode,
QPoint editMenuPos = QPoint(),
uint32_t editButtons = 0,
QPoint cursor = QPoint(),
QPoint anchor = QPoint(),
bool rtl = false )

Definition at line 94 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Here is the call graph for this function:

◆ updateSelection()

void QtAndroidInput::updateSelection ( int selStart,
int selEnd,
int candidatesStart,
int candidatesEnd )

Definition at line 44 of file androidjniinput.cpp.

References QtAndroid::backendRegister().

Referenced by QAndroidInputContext::updateCursorPosition().

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ m_backKeyPressAccepted

bool QtAndroidInput::m_backKeyPressAccepted = false
static

Definition at line 40 of file androidjniinput.cpp.

Referenced by keyDown(), and keyUp().

◆ m_ignoreMouseEvents

bool QtAndroidInput::m_ignoreMouseEvents = false
static

Definition at line 32 of file androidjniinput.cpp.

Referenced by longPress(), mouseDown(), mouseMove(), mouseUp(), and mouseWheel().

◆ m_lastSeenButtons

Qt::MouseButtons QtAndroidInput::m_lastSeenButtons = Qt::NoButton
static

Definition at line 33 of file androidjniinput.cpp.

Referenced by mouseMove(), and sendMouseButtonEvents().

◆ m_menuKeyPressAccepted

bool QtAndroidInput::m_menuKeyPressAccepted = false
static

Definition at line 41 of file androidjniinput.cpp.

Referenced by keyDown(), and keyUp().

◆ m_mouseGrabber

QPointer< QWindow > QtAndroidInput::m_mouseGrabber
static

Definition at line 39 of file androidjniinput.cpp.

Referenced by mouseDown(), and mouseUp().

◆ m_softwareKeyboardRect

QRect QtAndroidInput::m_softwareKeyboardRect
static

Definition at line 35 of file androidjniinput.cpp.

Referenced by keyboardGeometryChanged(), and keyboardVisibilityChanged().

◆ m_touchPoints

QList< QWindowSystemInterface::TouchPoint > QtAndroidInput::m_touchPoints
static

Definition at line 37 of file androidjniinput.cpp.

Referenced by touchAdd(), touchBegin(), touchCancel(), and touchEnd().

◆ methods

const JNINativeMethod QtAndroidInput::methods
static
Initial value:
= {
{"touchBegin","(I)V",(void*)touchBegin},
{"touchAdd","(IIIZIIFFFF)V",(void*)touchAdd},
{"touchEnd","(II)V",(void*)touchEnd},
{"touchCancel", "(I)V", (void *)touchCancel},
{"mouseDown", "(IIII)V", (void *)mouseDown},
{"mouseUp", "(IIII)V", (void *)mouseUp},
{"mouseMove", "(IIII)V", (void *)mouseMove},
{"mouseWheel", "(IIIFF)V", (void *)mouseWheel},
{"longPress", "(III)V", (void *)longPress},
{"isTabletEventSupported", "()Z", (void *)isTabletEventSupported},
{"tabletEvent", "(IIJIIIFFF)V", (void *)tabletEvent},
{"keyDown", "(IIIZ)V", (void *)keyDown},
{"keyUp", "(IIIZ)V", (void *)keyUp},
{"keyboardVisibilityChanged", "(Z)V", (void *)keyboardVisibilityChanged},
{"keyboardGeometryChanged", "(IIII)V", (void *)keyboardGeometryChanged},
{"handleLocationChanged", "(III)V", (void *)handleLocationChanged},
}
static void touchCancel(JNIEnv *, jobject, jint winId)
static void mouseWheel(JNIEnv *, jobject, jint winId, jint x, jint y, jfloat hdelta, jfloat vdelta)
static bool isTabletEventSupported(JNIEnv *, jobject)
static void touchBegin(JNIEnv *, jobject, jint)
static void mouseDown(JNIEnv *, jobject, jint winId, jint x, jint y, jint mouseButtonState)
static void keyUp(JNIEnv *, jobject, jint key, jint unicode, jint modifier, jboolean autoRepeat)
static void touchAdd(JNIEnv *, jobject, jint winId, jint id, jint action, jboolean, jint x, jint y, jfloat major, jfloat minor, jfloat rotation, jfloat pressure)
static void keyboardGeometryChanged(JNIEnv *, jobject, jint x, jint y, jint w, jint h)
static void keyboardVisibilityChanged(JNIEnv *, jobject, jboolean visibility)
static void tabletEvent(JNIEnv *, jobject, jint winId, jint deviceId, jlong time, jint action, jint pointerType, jint buttonState, jfloat x, jfloat y, jfloat pressure)
static void keyDown(JNIEnv *, jobject, jint key, jint unicode, jint modifier, jboolean autoRepeat)
static void mouseMove(JNIEnv *, jobject, jint winId, jint x, jint y, jint mouseButtonState)
static void handleLocationChanged(JNIEnv *, jobject, int id, int x, int y)
static void longPress(JNIEnv *, jobject, jint winId, jint x, jint y)
static void mouseUp(JNIEnv *, jobject, jint winId, jint x, jint y, jint mouseButtonState)
static void touchEnd(JNIEnv *, jobject, jint winId, jint)

Definition at line 958 of file androidjniinput.cpp.

Referenced by registerNatives().