Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QIBusPlatformInputContext Class Reference

#include <qibusplatforminputcontext.h>

+ Inheritance diagram for QIBusPlatformInputContext:
+ Collaboration diagram for QIBusPlatformInputContext:

Public Slots

void commitText (const QDBusVariant &text)
 
void updatePreeditText (const QDBusVariant &text, uint cursor_pos, bool visible)
 
void updatePreeditTextWithMode (const QDBusVariant &text, uint cursor_pos, bool visible, uint mode)
 
void forwardKeyEvent (uint keyval, uint keycode, uint state)
 
void cursorRectChanged ()
 
void deleteSurroundingText (int offset, uint n_chars)
 
void surroundingTextRequired ()
 
void hidePreeditText ()
 
void showPreeditText ()
 
void filterEventFinished (QDBusPendingCallWatcher *call)
 
void socketChanged (const QString &str)
 
void busRegistered (const QString &str)
 
void busUnregistered (const QString &str)
 
void connectToBus ()
 
void globalEngineChanged (const QString &engine_name)
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 

Public Member Functions

 QIBusPlatformInputContext ()
 
 ~QIBusPlatformInputContext ()
 
bool isValid () const override
 Returns input context validity.
 
void setFocusObject (QObject *object) override
 This virtual method gets called to notify updated focus to object.
 
void invokeAction (QInputMethod::Action a, int x) override
 Called when the word currently being composed in the input item is tapped by the user.
 
void reset () override
 Method to be called when input method needs to be reset.
 
void commit () override
 
void update (Qt::InputMethodQueries) override
 Notification on editor updates.
 
bool filterEvent (const QEvent *event) override
 This function can be reimplemented to filter input events.
 
QLocale locale () const override
 
bool hasCapability (Capability capability) const override
 Returns whether the implementation supports capability.
 
- Public Member Functions inherited from QPlatformInputContext
 QPlatformInputContext ()
 
 ~QPlatformInputContext ()
 
virtual QRectF keyboardRect () const
 This function can be reimplemented to return virtual keyboard rectangle in currently active window coordinates.
 
void emitKeyboardRectChanged ()
 Active QPlatformInputContext is responsible for providing keyboardRectangle property to QInputMethod.
 
virtual bool isAnimating () const
 This function can be reimplemented to return true whenever input method is animating shown or hidden.
 
void emitAnimatingChanged ()
 Active QPlatformInputContext is responsible for providing animating property to QInputMethod.
 
virtual void showInputPanel ()
 Request to show input panel.
 
virtual void hideInputPanel ()
 Request to hide input panel.
 
virtual bool isInputPanelVisible () const
 Returns input panel visibility status.
 
void emitInputPanelVisibleChanged ()
 Active QPlatformInputContext is responsible for providing visible property to QInputMethod.
 
void emitLocaleChanged ()
 
virtual Qt::LayoutDirection inputDirection () const
 
void emitInputDirectionChanged (Qt::LayoutDirection newDirection)
 
bool inputMethodAccepted () const
 Returns true if current focus object supports input method events.
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
virtual bool event (QEvent *event)
 This virtual function receives events to an object and should return true if the event e was recognized and processed.
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 

Additional Inherited Members

- Public Types inherited from QPlatformInputContext
enum  Capability { HiddenTextCapability = 0x1 }
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 
- Static Public Member Functions inherited from QPlatformInputContext
static void setSelectionOnFocusObject (const QPointF &anchorPos, const QPointF &cursorPos)
 QPlatformInputContext::setSelectionOnFocusObject.
 
static QVariant queryFocusObject (Qt::InputMethodQuery query, QPointF position)
 QPlatformInputContext::queryFocusObject.
 
static QRectF inputItemRectangle ()
 QPlatformInputContext::inputItemRectangle.
 
static QRectF inputItemClipRectangle ()
 QPlatformInputContext::inputItemClipRectangle.
 
static QRectF cursorRectangle ()
 QPlatformInputContext::cursorRectangle.
 
static QRectF anchorRectangle ()
 QPlatformInputContext::anchorRectangle.
 
static QRectF keyboardRectangle ()
 QPlatformInputContext::keyboardRectangle.
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Detailed Description

Definition at line 50 of file qibusplatforminputcontext.h.

Constructor & Destructor Documentation

◆ QIBusPlatformInputContext()

QIBusPlatformInputContext::QIBusPlatformInputContext ( )

◆ ~QIBusPlatformInputContext()

QIBusPlatformInputContext::~QIBusPlatformInputContext ( void )

Definition at line 130 of file qibusplatforminputcontext.cpp.

Member Function Documentation

◆ busRegistered

void QIBusPlatformInputContext::busRegistered ( const QString & str)
slot

Definition at line 562 of file qibusplatforminputcontext.cpp.

References connectToBus(), Q_UNUSED, qCDebug, str, and QIBusPlatformInputContextPrivate::usePortal.

Referenced by QIBusPlatformInputContext().

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

◆ busUnregistered

void QIBusPlatformInputContext::busUnregistered ( const QString & str)
slot

Definition at line 571 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::busConnected, Q_UNUSED, qCDebug, and str.

Referenced by QIBusPlatformInputContext().

+ Here is the caller graph for this function:

◆ commit()

void QIBusPlatformInputContext::commit ( )
overridevirtual

Reimplemented from QPlatformInputContext.

Definition at line 170 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::attributes, QIBusPlatformInputContextPrivate::busConnected, QList< T >::clear(), QIBusPlatformInputContextPrivate::context, QString::isEmpty(), QIBusPlatformInputContextPrivate::predit, QIBusPlatformInputContextPrivate::PREEDIT_COMMIT, QIBusPlatformInputContextPrivate::preeditFocusMode, qApp, and QCoreApplication::sendEvent().

Referenced by invokeAction().

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

◆ commitText

void QIBusPlatformInputContext::commitText ( const QDBusVariant & text)
slot

Definition at line 288 of file qibusplatforminputcontext.cpp.

References arg, QIBusPlatformInputContextPrivate::attributes, QList< T >::clear(), debug, QIBusPlatformInputContextPrivate::predit, qApp, qDebug, QCoreApplication::sendEvent(), and text.

+ Here is the call graph for this function:

◆ connectToBus

void QIBusPlatformInputContext::connectToBus ( )
slot

Definition at line 580 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::getSocketPath(), QIBusPlatformInputContextPrivate::initBus(), qCDebug, and QIBusPlatformInputContextPrivate::usePortal.

Referenced by QIBusPlatformInputContext(), and busRegistered().

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

◆ cursorRectChanged

void QIBusPlatformInputContext::cursorRectChanged ( )
slot

Definition at line 230 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::busConnected, QIBusPlatformInputContextPrivate::context, debug, QGuiApplication::platformName, qApp, and qDebug.

Referenced by QIBusPlatformInputContext().

+ Here is the caller graph for this function:

◆ deleteSurroundingText

void QIBusPlatformInputContext::deleteSurroundingText ( int offset,
uint n_chars )
slot

Definition at line 390 of file qibusplatforminputcontext.cpp.

References debug, qApp, qDebug, and QCoreApplication::sendEvent().

+ Here is the call graph for this function:

◆ filterEvent()

bool QIBusPlatformInputContext::filterEvent ( const QEvent * event)
overridevirtual

This function can be reimplemented to filter input events.

Return true if the event has been consumed. Otherwise, the unfiltered event will be forwarded to widgets as ordinary way. Although the input events have accept() and ignore() methods, leave it untouched.

Reimplemented from QPlatformInputContext.

Definition at line 425 of file qibusplatforminputcontext.cpp.

References Qt::AltModifier, args, QIBusPlatformInputContextPrivate::busConnected, QObject::connect(), QIBusPlatformInputContextPrivate::context, Qt::ControlModifier, filterEventFinished(), QDBusPendingCallWatcher::finished(), QGuiApplication::focusWindow(), QVariant::fromValue(), Qt::GroupSwitchModifier, IBUS_RELEASE_MASK, QPlatformInputContext::inputMethodAccepted(), QKeyEvent::isAutoRepeat(), QNetworkReply::isFinished(), QKeyEvent::key(), Qt::Key_Alt, Qt::Key_AltGr, Qt::Key_Control, Qt::Key_Meta, Qt::Key_Shift, QEvent::KeyPress, Qt::MetaModifier, QKeyEvent::modifiers(), QKeyEvent::nativeModifiers(), QKeyEvent::nativeScanCode(), QKeyEvent::nativeVirtualKey(), qCDebug, reply, Qt::ShiftModifier, state, QKeyEvent::text(), QInputEvent::timestamp(), QEvent::type(), and watcher.

+ Here is the call graph for this function:

◆ filterEventFinished

void QIBusPlatformInputContext::filterEventFinished ( QDBusPendingCallWatcher * call)
slot

Definition at line 486 of file qibusplatforminputcontext.cpp.

References args, QList< T >::at(), QObject::deleteLater(), Qt::Key_Menu, QEvent::KeyPress, pos, QGuiApplicationPrivate::processWindowSystemEvent(), qCDebug, reply, state, time, watcher, and window().

Referenced by filterEvent().

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

◆ forwardKeyEvent

void QIBusPlatformInputContext::forwardKeyEvent ( uint keyval,
uint keycode,
uint state )
slot

◆ globalEngineChanged

void QIBusPlatformInputContext::globalEngineChanged ( const QString & engine_name)
slot

Definition at line 592 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::bus, QPlatformInputContext::emitLocaleChanged(), QIBusPlatformInputContextPrivate::locale, locale(), and Q_ASSERT.

+ Here is the call graph for this function:

◆ hasCapability()

bool QIBusPlatformInputContext::hasCapability ( Capability capability) const
overridevirtual

Returns whether the implementation supports capability.

Since
5.4

Reimplemented from QPlatformInputContext.

Definition at line 140 of file qibusplatforminputcontext.cpp.

References QPlatformInputContext::HiddenTextCapability.

◆ hidePreeditText

void QIBusPlatformInputContext::hidePreeditText ( )
slot

Definition at line 404 of file qibusplatforminputcontext.cpp.

References QGuiApplication::focusObject(), and QCoreApplication::sendEvent().

+ Here is the call graph for this function:

◆ invokeAction()

void QIBusPlatformInputContext::invokeAction ( QInputMethod::Action action,
int cursorPosition )
overridevirtual

Called when the word currently being composed in the input item is tapped by the user.

Input methods often use this information to offer more word suggestions to the user.

Reimplemented from QPlatformInputContext.

Definition at line 151 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::busConnected, QInputMethod::Click, and commit().

+ Here is the call graph for this function:

◆ isValid()

bool QIBusPlatformInputContext::isValid ( ) const
overridevirtual

Returns input context validity.

Deriving implementations should return true.

Reimplemented from QPlatformInputContext.

Definition at line 135 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::busConnected, and QIBusPlatformInputContextPrivate::valid.

◆ locale()

QLocale QIBusPlatformInputContext::locale ( ) const
overridevirtual

Reimplemented from QPlatformInputContext.

Definition at line 537 of file qibusplatforminputcontext.cpp.

References QPlatformInputContext::locale(), QIBusPlatformInputContextPrivate::locale, and QIBusPlatformInputContextPrivate::usePortal.

Referenced by globalEngineChanged().

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

◆ reset()

void QIBusPlatformInputContext::reset ( )
overridevirtual

Method to be called when input method needs to be reset.

Called by QInputMethod::reset(). No further QInputMethodEvents should be sent as response.

Reimplemented from QPlatformInputContext.

Definition at line 160 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::attributes, QIBusPlatformInputContextPrivate::busConnected, QList< T >::clear(), QIBusPlatformInputContextPrivate::context, and QIBusPlatformInputContextPrivate::predit.

+ Here is the call graph for this function:

◆ setFocusObject()

void QIBusPlatformInputContext::setFocusObject ( QObject * object)
overridevirtual

This virtual method gets called to notify updated focus to object.

Warning
Input methods must not call this function directly.

Reimplemented from QPlatformInputContext.

Definition at line 269 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::busConnected, QIBusPlatformInputContextPrivate::context, debug, QPlatformInputContext::inputMethodAccepted(), and qDebug.

+ Here is the call graph for this function:

◆ showPreeditText

void QIBusPlatformInputContext::showPreeditText ( )
slot

Definition at line 415 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::attributes, QGuiApplication::focusObject(), QIBusPlatformInputContextPrivate::predit, and QCoreApplication::sendEvent().

+ Here is the call graph for this function:

◆ socketChanged

void QIBusPlatformInputContext::socketChanged ( const QString & str)
slot

Definition at line 545 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::bus, QIBusPlatformInputContextPrivate::busConnected, QIBusPlatformInputContextPrivate::context, QDBusConnection::disconnectFromBus(), Q_UNUSED, qCDebug, QIBusPlatformInputContextPrivate::serviceWatcher, QDBusServiceWatcher::setConnection(), QTimer::start(), QTimer::stop(), and str.

Referenced by QIBusPlatformInputContext().

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

◆ surroundingTextRequired

void QIBusPlatformInputContext::surroundingTextRequired ( )
slot

Definition at line 382 of file qibusplatforminputcontext.cpp.

References debug, Qt::ImSurroundingText, QIBusPlatformInputContextPrivate::needsSurroundingText, qDebug, and update().

+ Here is the call graph for this function:

◆ update()

void QIBusPlatformInputContext::update ( Qt::InputMethodQueries )
overridevirtual

Notification on editor updates.

Called by QInputMethod::update().

Reimplemented from QPlatformInputContext.

Definition at line 202 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::context, Qt::ImAnchorPosition, Qt::ImCursorPosition, Qt::ImSurroundingText, QIBusPlatformInputContextPrivate::needsSurroundingText, qApp, QCoreApplication::sendEvent(), QVariant::setValue(), text, QString::toUInt(), and variant.

Referenced by surroundingTextRequired().

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

◆ updatePreeditText

void QIBusPlatformInputContext::updatePreeditText ( const QDBusVariant & text,
uint cursor_pos,
bool visible )
slot

Definition at line 311 of file qibusplatforminputcontext.cpp.

References arg, QIBusPlatformInputContextPrivate::attributes, QInputMethodEvent::Cursor, debug, QIBusPlatformInputContextPrivate::predit, qApp, qDebug, QCoreApplication::sendEvent(), and text.

Referenced by updatePreeditTextWithMode().

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

◆ updatePreeditTextWithMode

void QIBusPlatformInputContext::updatePreeditTextWithMode ( const QDBusVariant & text,
uint cursor_pos,
bool visible,
uint mode )
slot

Definition at line 337 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::PREEDIT_CLEAR, QIBusPlatformInputContextPrivate::PREEDIT_COMMIT, QIBusPlatformInputContextPrivate::preeditFocusMode, text, and updatePreeditText().

+ Here is the call graph for this function:

The documentation for this class was generated from the following files: