Qt 6.x
The Qt SDK
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 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 bool isValid () const
 Returns input context validity.
 
virtual bool hasCapability (Capability capability) const
 Returns whether the implementation supports capability.
 
virtual void reset ()
 Method to be called when input method needs to be reset.
 
virtual void commit ()
 
virtual void update (Qt::InputMethodQueries)
 Notification on editor updates.
 
virtual void invokeAction (QInputMethod::Action, int cursorPosition)
 Called when the word currently being composed in the input item is tapped by the user.
 
virtual bool filterEvent (const QEvent *event)
 This function can be reimplemented to filter input events.
 
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.
 
virtual QLocale locale () const
 
void emitLocaleChanged ()
 
virtual Qt::LayoutDirection inputDirection () const
 
void emitInputDirectionChanged (Qt::LayoutDirection newDirection)
 
virtual void setFocusObject (QObject *object)
 This virtual method gets called to notify updated focus to object.
 
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.
 
void moveToThread (QThread *thread)
 Changes the thread affinity for this object and its children.
 
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::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
template<typename T >
findChild (const QString &aName=QString(), 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 (const QString &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 >
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 48 of file qibusplatforminputcontext.h.

Constructor & Destructor Documentation

◆ QIBusPlatformInputContext()

QIBusPlatformInputContext::QIBusPlatformInputContext ( )

◆ ~QIBusPlatformInputContext()

QIBusPlatformInputContext::~QIBusPlatformInputContext ( void  )

Definition at line 122 of file qibusplatforminputcontext.cpp.

Member Function Documentation

◆ busRegistered

void QIBusPlatformInputContext::busRegistered ( const QString str)
slot

Definition at line 537 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 546 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 162 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::attributes, QIBusPlatformInputContextPrivate::busConnected, QList< T >::clear(), QIBusPlatformInputContextPrivate::context, QString::isEmpty(), QIBusPlatformInputContextPrivate::predit, 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 272 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 555 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 214 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::busConnected, QIBusPlatformInputContextPrivate::context, debug, QScreen::geometry, QRect::height(), QGuiApplication::platformName, qApp, qDebug, QRect::width(), QRect::x(), and QRect::y().

Referenced by QIBusPlatformInputContext().

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

◆ deleteSurroundingText

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

Definition at line 365 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 400 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 461 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 567 of file qibusplatforminputcontext.cpp.

References QIBusPlatformInputContextPrivate::bus, desc, 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 132 of file qibusplatforminputcontext.cpp.

References QPlatformInputContext::HiddenTextCapability.

◆ hidePreeditText

void QIBusPlatformInputContext::hidePreeditText ( )
slot

Definition at line 379 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 143 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 127 of file qibusplatforminputcontext.cpp.

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

◆ locale()

QLocale QIBusPlatformInputContext::locale ( ) const
overridevirtual

Reimplemented from QPlatformInputContext.

Definition at line 512 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 152 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 253 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 390 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 520 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 357 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 186 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 295 of file qibusplatforminputcontext.cpp.

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

+ Here is the call graph for this function:

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