qt6-bb10/tests/auto/widgets/kernel
Yansheng Zhu 70096b2bbd Implement Qt::ImEnabled by isEnabled() and isReadOnly()
Previously, querying Qt::ImEnabled only returned the value of
isEnabling(), which is incorrect for edit widgets with read-only
properties set, as Qt::ImEnabled indicates whether text can be *input*
through the input method, which results in the IM being able to insert
text into read-only edit widgets.

The fixed version uses both isEnabling() and isReadOnly() values to
determine whether input methods need to be enabled. For some platforms
(like iOS and Android) that rely on IM to select text, a check for
ImReadOnly has been added to their QPA plugins to enable handles on
read-only input boxes.

At the same time, the imEnabledNotImplemented function in the test file
tst_qwidget was modified, since ImEnabling should give a _false_ value
when a lineedit is read-only.

Task-number: QTBUG-105009
Task-number: QTBUG-110838
Task-number: QTBUG-119182
Pick-to: 6.7 6.6 6.5
Change-Id: Ia2abcdb3200826d567f90447d4f8b71d0ef1fbf0
Reviewed-by: Yansheng Zhu <670429759@qq.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2024-03-01 02:22:06 +08:00
..
qaction Change license for tests files 2024-02-04 09:56:42 +01:00
qactiongroup Change license for tests files 2024-02-04 09:56:42 +01:00
qapplication Android: Make timeout in tst_QApplication::abortQuitOnShow() longer 2024-02-27 17:28:19 +00:00
qboxlayout Remove extra semi-colons 2024-02-06 20:17:18 +09:00
qformlayout Change license for tests files 2024-02-04 09:56:42 +01:00
qgesturerecognizer Change license for tests files 2024-02-04 09:56:42 +01:00
qgridlayout Change license for tests files 2024-02-04 09:56:42 +01:00
qlayout Change license for tests files 2024-02-04 09:56:42 +01:00
qshortcut Change license for tests files 2024-02-04 09:56:42 +01:00
qsizepolicy Change license for tests files 2024-02-04 09:56:42 +01:00
qstackedlayout Change license for tests files 2024-02-04 09:56:42 +01:00
qtooltip Change license for tests files 2024-02-04 09:56:42 +01:00
qwidget Implement Qt::ImEnabled by isEnabled() and isReadOnly() 2024-03-01 02:22:06 +08:00
qwidget_window QWidgetWindow: Don't meddle with WA_WState_{Hidden/ExplicitShowHide} 2024-02-12 21:09:18 +01:00
qwidgetaction Change license for tests files 2024-02-04 09:56:42 +01:00
qwidgetmetatype Change license for tests files 2024-02-04 09:56:42 +01:00
qwidgetrepaintmanager Add QPlatformIntegration::BackingStoreStaticContents capability 2024-02-13 13:55:01 +01:00
qwidgetsvariant Change license for tests files 2024-02-04 09:56:42 +01:00
qwindowcontainer Change license for tests files 2024-02-04 09:56:42 +01:00
CMakeLists.txt tests: Remove remains of qmake conversion from CMakeLists.txt files 2023-02-17 21:56:49 +01:00