Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qiosinputcontext.h
Go to the documentation of this file.
1
// Copyright (C) 2020 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
ifndef
QIOSINPUTCONTEXT_H
6
#
define
QIOSINPUTCONTEXT_H
7
8
#
include
<
UIKit
/
UIKit
.
h
>
9
10
#
include
<
QtCore
/
qlocale
.
h
>
11
#
include
<
QtGui
/
qevent
.
h
>
12
#
include
<
QtGui
/
qtransform
.
h
>
13
#
include
<
qpa
/
qplatforminputcontext
.
h
>
14
15
const
char
kImePlatformDataInputView[] =
"inputView"
;
16
const
char
kImePlatformDataInputAccessoryView
[] =
"inputAccessoryView"
;
17
const
char
kImePlatformDataHideShortcutsBar
[] =
"hideShortcutsBar"
;
18
const
char
kImePlatformDataReturnKeyType
[] =
"returnKeyType"
;
19
20
@
class
QIOSLocaleListener;
21
@
class
QIOSKeyboardListener;
22
@
class
QIOSTextResponder;
23
@protocol KeyboardState;
24
25
QT_BEGIN_NAMESPACE
26
27
struct
KeyboardState
28
{
29
KeyboardState() :
30
keyboardVisible(
false
), keyboardAnimating(
false
),
31
animationDuration(0), animationCurve(UIViewAnimationCurve(-1))
32
{}
33
34
bool
keyboardVisible;
35
bool
keyboardAnimating;
36
QRectF keyboardRect;
37
CGRect keyboardEndRect;
38
NSTimeInterval animationDuration;
39
UIViewAnimationCurve animationCurve;
40
};
41
42
struct
ImeState
43
{
44
ImeState
() =
default
;
45
Qt
::
InputMethodQueries
update
(Qt::InputMethodQueries properties);
46
QInputMethodQueryEvent
currentState
=
QInputMethodQueryEvent
({});
47
QObject
*
focusObject
=
nullptr
;
48
};
49
50
class
QIOSInputContext
:
public
QPlatformInputContext
51
{
52
public
:
53
QIOSInputContext
();
54
~
QIOSInputContext
();
55
56
bool
isValid
()
const
override
{
return
true
; }
57
58
void
showInputPanel
()
override
;
59
void
hideInputPanel
()
override
;
60
61
bool
isInputPanelVisible
()
const
override
;
62
bool
isAnimating
()
const
override
;
63
QRectF
keyboardRect
()
const
override
;
64
65
void
update
(
Qt
::
InputMethodQueries
)
override
;
66
void
reset
()
override
;
67
void
commit
()
override
;
68
69
QLocale
locale
()
const
override
;
70
71
void
clearCurrentFocusObject
();
72
73
void
setFocusObject
(QObject *object)
override
;
74
void
focusWindowChanged(QWindow *focusWindow);
75
76
void
scrollToCursor
();
77
void
scroll
(
int
y);
78
79
void
updateKeyboardState
(NSNotification *notification =
nullptr
);
80
81
const
ImeState
&
imeState
() {
return
m_imeState; }
82
const
KeyboardState &
keyboardState
() {
return
m_keyboardState; }
83
84
bool
inputMethodAccepted
()
const
;
85
86
static
QIOSInputContext
*
instance
();
87
88
private
:
89
UIView* scrollableRootView();
90
91
QIOSLocaleListener *m_localeListener;
92
QIOSKeyboardListener *m_keyboardHideGesture;
93
QIOSTextResponder *m_textResponder;
94
KeyboardState m_keyboardState;
95
ImeState
m_imeState;
96
};
97
98
QT_END_NAMESPACE
99
100
#
endif
QIOSInputContext
Definition
qiosinputcontext.h:51
QIOSInputContext::setFocusObject
void setFocusObject(QObject *object) override
This virtual method gets called to notify updated focus to object.
QIOSInputContext::clearCurrentFocusObject
void clearCurrentFocusObject()
QIOSInputContext::scrollToCursor
void scrollToCursor()
QIOSInputContext::keyboardRect
QRectF keyboardRect() const override
This function can be reimplemented to return virtual keyboard rectangle in currently active window co...
QIOSInputContext::keyboardState
const KeyboardState & keyboardState()
Definition
qiosinputcontext.h:82
QIOSInputContext::updateKeyboardState
void updateKeyboardState(NSNotification *notification=nullptr)
QIOSInputContext::isValid
bool isValid() const override
Returns input context validity.
Definition
qiosinputcontext.h:56
QIOSInputContext::QIOSInputContext
QIOSInputContext()
QIOSInputContext::scroll
void scroll(int y)
QIOSInputContext::instance
static QIOSInputContext * instance()
Definition
qiosinputcontext.mm:296
QIOSInputContext::locale
QLocale locale() const override
QIOSInputContext::reset
void reset() override
Method to be called when input method needs to be reset.
QIOSInputContext::imeState
const ImeState & imeState()
Definition
qiosinputcontext.h:81
QIOSInputContext::commit
void commit() override
QIOSInputContext::isAnimating
bool isAnimating() const override
This function can be reimplemented to return true whenever input method is animating shown or hidden.
QIOSInputContext::showInputPanel
void showInputPanel() override
Request to show input panel.
QIOSInputContext::focusWindowChanged
void focusWindowChanged(QWindow *focusWindow)
QIOSInputContext::~QIOSInputContext
~QIOSInputContext()
QIOSInputContext::hideInputPanel
void hideInputPanel() override
Request to hide input panel.
QIOSInputContext::isInputPanelVisible
bool isInputPanelVisible() const override
Returns input panel visibility status.
QIOSInputContext::inputMethodAccepted
bool inputMethodAccepted() const
QIOSInputContext::update
void update(Qt::InputMethodQueries) override
Notification on editor updates.
QIOSIntegration
Definition
qiosintegration.h:38
QIOSIntegration::instance
static QIOSIntegration * instance()
Definition
qiosintegration.mm:53
isQtApplication
bool isQtApplication()
Definition
qiosglobal.mm:21
qImDebug
#define qImDebug
Definition
qiosglobal.h:21
kImePlatformDataReturnKeyType
const char kImePlatformDataReturnKeyType[]
Definition
qiosinputcontext.h:18
kImePlatformDataInputAccessoryView
const char kImePlatformDataInputAccessoryView[]
Definition
qiosinputcontext.h:16
kImePlatformDataHideShortcutsBar
const char kImePlatformDataHideShortcutsBar[]
Definition
qiosinputcontext.h:17
qPrintable
#define qPrintable(string)
Definition
qstring.h:1718
connect
connect(manager, &QNetworkAccessManager::finished, this, &MyClass::replyFinished)
ImeState
Definition
qiosinputcontext.h:43
ImeState::update
Qt::InputMethodQueries update(Qt::InputMethodQueries properties)
Definition
qiosinputcontext.mm:268
ImeState::currentState
QInputMethodQueryEvent currentState
Definition
qiosinputcontext.h:46
ImeState::ImeState
ImeState()=default
ImeState::focusObject
QObject * focusObject
Definition
qiosinputcontext.h:47
qtbase
src
plugins
platforms
ios
qiosinputcontext.h
Generated on
for Qt by
1.18.0