Qt 6.x
The Qt SDK
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
qqnxinputcontext_imf.cpp File Reference
#include "qqnxinputcontext_imf.h"
#include "qqnxabstractvirtualkeyboard.h"
#include "qqnxintegration.h"
#include "qqnxscreen.h"
#include "qqnxscreeneventhandler.h"
#include <QtGui/QGuiApplication>
#include <QtGui/QInputMethodEvent>
#include <QtGui/QTextCharFormat>
#include <QtCore/QDebug>
#include <QtCore/QMutex>
#include <QtCore/QVariant>
#include <QtCore/QVariantHash>
#include <QtCore/QWaitCondition>
#include <QtCore/QQueue>
#include <QtCore/QGlobalStatic>
#include <dlfcn.h>
#include "imf/imf_client.h"
#include "imf/input_control.h"
#include <process.h>
#include <sys/keycodes.h>
+ Include dependency graph for qqnxinputcontext_imf.cpp:

Go to the source code of this file.

Classes

struct  SpellCheckInfo
 
class  QQnxImfRequest
 

Macros

#define qInputContextIMFRequestDebug   QT_NO_QDEBUG_MACRO
 
#define qInputContextDebug   QT_NO_QDEBUG_MACRO
 

Enumerations

enum  ImfEventType {
  ImfCommitText , ImfDeleteSurroundingText , ImfFinishComposingText , ImfGetCursorPosition ,
  ImfGetTextAfterCursor , ImfGetTextBeforeCursor , ImfSendEvent , ImfSetComposingRegion ,
  ImfSetComposingText , ImfIsTextSelected , ImfIsAllTextSelected
}
 

Functions

static bool isSessionOkay (input_session_t *ic)
 
static void executeIMFRequest (QQnxImfRequest *event)
 
static void initEvent (event_t *pEvent, const input_session_t *pSession, EventType eventType, int eventId, int eventSize)
 
static spannable_string_t * toSpannableString (const QString &text)
 
static bool imfAvailable ()
 
static int adjustIndex (const QChar *text, int utf32Index, int utf16StartIndex, int *highSurrogateCount)
 

Variables

static QQnxInputContextsInputContextInstance
 
static QColor sSelectedColor (0, 0xb8, 0, 85)
 
static const input_session_t * sSpellCheckSession = nullptr
 
static const input_session_t * sInputSession = nullptr
 
static const input_session_t *(* p_ictrl_open_session )(connection_interface_t *) = nullptr
 
static void(* p_ictrl_close_session )(input_session_t *) = nullptr
 
static int32_t(* p_ictrl_dispatch_event )(event_t *) = nullptr
 
static int32_t(* p_imf_client_init )() = nullptr
 
static void(* p_imf_client_disconnect )() = nullptr
 
static int32_t(* p_vkb_init_selection_service )() = nullptr
 
static int32_t(* p_ictrl_get_num_active_sessions )() = nullptr
 
static bool s_imfInitFailed = false
 

Macro Definition Documentation

◆ qInputContextDebug

#define qInputContextDebug   QT_NO_QDEBUG_MACRO

Definition at line 37 of file qqnxinputcontext_imf.cpp.

◆ qInputContextIMFRequestDebug

#define qInputContextIMFRequestDebug   QT_NO_QDEBUG_MACRO

Definition at line 31 of file qqnxinputcontext_imf.cpp.

Enumeration Type Documentation

◆ ImfEventType

Enumerator
ImfCommitText 
ImfDeleteSurroundingText 
ImfFinishComposingText 
ImfGetCursorPosition 
ImfGetTextAfterCursor 
ImfGetTextBeforeCursor 
ImfSendEvent 
ImfSetComposingRegion 
ImfSetComposingText 
ImfIsTextSelected 
ImfIsAllTextSelected 

Definition at line 50 of file qqnxinputcontext_imf.cpp.

Function Documentation

◆ adjustIndex()

static int adjustIndex ( const QChar text,
int  utf32Index,
int  utf16StartIndex,
int *  highSurrogateCount 
)
static

Definition at line 1007 of file qqnxinputcontext_imf.cpp.

References text.

◆ executeIMFRequest()

static void executeIMFRequest ( QQnxImfRequest event)
static

Definition at line 130 of file qqnxinputcontext_imf.cpp.

References Qt::BlockingQueuedConnection, QMetaObject::invokeMethod(), Q_ARG, and sInputContextInstance.

+ Here is the call graph for this function:

◆ imfAvailable()

static bool imfAvailable ( )
static

◆ initEvent()

static void initEvent ( event_t *  pEvent,
const input_session_t *  pSession,
EventType  eventType,
int  eventId,
int  eventSize 
)
static

Definition at line 454 of file qqnxinputcontext_imf.cpp.

Referenced by QQnxInputContext::checkSpelling(), QQnxInputContext::handleKeyboardEvent(), and QQnxInputContext::update().

+ Here is the caller graph for this function:

◆ isSessionOkay()

static bool isSessionOkay ( input_session_t *  ic)
static

Definition at line 45 of file qqnxinputcontext_imf.cpp.

References sInputSession.

◆ toSpannableString()

static spannable_string_t * toSpannableString ( const QString text)
static

Definition at line 467 of file qqnxinputcontext_imf.cpp.

References QString::length(), qInputContextDebug, text, and QString::toWCharArray().

+ Here is the call graph for this function:

Variable Documentation

◆ p_ictrl_close_session

void(* p_ictrl_close_session) (input_session_t *) ( input_session_t *  ) = nullptr
static

Definition at line 483 of file qqnxinputcontext_imf.cpp.

Referenced by imfAvailable().

◆ p_ictrl_dispatch_event

int32_t(* p_ictrl_dispatch_event) (event_t *) ( event_t *  ) = nullptr
static

◆ p_ictrl_get_num_active_sessions

int32_t(* p_ictrl_get_num_active_sessions) () ( ) = nullptr
static

Definition at line 488 of file qqnxinputcontext_imf.cpp.

Referenced by imfAvailable().

◆ p_ictrl_open_session

const input_session_t *(* p_ictrl_open_session) (connection_interface_t *) ( connection_interface_t *  ) = nullptr
static

Definition at line 482 of file qqnxinputcontext_imf.cpp.

Referenced by QQnxInputContext::checkSpelling(), and imfAvailable().

◆ p_imf_client_disconnect

void(* p_imf_client_disconnect) () ( ) = nullptr
static

Definition at line 486 of file qqnxinputcontext_imf.cpp.

Referenced by QQnxInputContext::~QQnxInputContext(), and imfAvailable().

◆ p_imf_client_init

int32_t(* p_imf_client_init) () ( ) = nullptr
static

Definition at line 485 of file qqnxinputcontext_imf.cpp.

Referenced by QQnxInputContext::QQnxInputContext(), and imfAvailable().

◆ p_vkb_init_selection_service

int32_t(* p_vkb_init_selection_service) () ( ) = nullptr
static

Definition at line 487 of file qqnxinputcontext_imf.cpp.

Referenced by imfAvailable().

◆ s_imfInitFailed

bool s_imfInitFailed = false
static

Definition at line 489 of file qqnxinputcontext_imf.cpp.

Referenced by QQnxInputContext::QQnxInputContext(), and imfAvailable().

◆ sInputContextInstance

◆ sInputSession

const input_session_t* sInputSession = nullptr
static

◆ sSelectedColor

QColor sSelectedColor(0, 0xb8, 0, 85) ( ,
0xb8  ,
,
85   
)
static

◆ sSpellCheckSession

const input_session_t* sSpellCheckSession = nullptr
static

Definition at line 43 of file qqnxinputcontext_imf.cpp.

Referenced by QQnxInputContext::checkSpelling().