| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: Id7e59c8258165ebca9bcb552d5a4e9872d872232
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The cleanup work needs to be done even the surface is null, for
example, a window was closed in mouse press handler, then will not
get a mouse release.
Fixes: QTBUG-100942
Change-Id: I637a6744909ddbe62bdeba6b21494e5a6ae7fa9f
Reviewed-by: Tang Haixiang <tanghaixiang@uniontech.com>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 409d1080f25b653b3ff3f57c9776c5c390912206)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
See also https://cgit.freedesktop.org/wayland/wayland-protocols/tree/stable/xdg-shell/xdg-shell.xml#n234 .
Kudos to Greg V for his original patch in jira.
Fixes: QTBUG-87303
Done-with: Greg V <greg@unrelenting.technology>
Change-Id: I57df9aedea7cc6f0b6fa142a6fc6c3bdc98324c8
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 59a5fe99e1569421b920d99c5b20cdafcdcf43a9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise the cursor would be hidden even if preedit is empty.
Amends 719a55be13bdadfa659a732755f280e276a894bd
Change-Id: I320733b917779b7b51aa4a28eaea411fdb10a318
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit 31ae194e295651d9ece03408630d2358acd4f7b4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- None mapping to no style.
- Default/Underline mapping to underline.
- Highlight/Selection mapping to background color/text color with highlight/highlight
text with underline.
- Active/Inactive mapping to bold text with underline.
- Incorrect mapping to red wave underline.
Change-Id: Iab51d671b8f83aece8596f7f7610de19343fcceb
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
(cherry picked from commit f1fb5d9e568a24e213ee41e82a1142cef56f1098)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is no reason to keep eglConfig value as a member variable. Even
this can result in creating wrong surface from the current surface.
And it makes no sense to change alpha bits of the surface format by
supporting decorations.
Task-number: QTBUG-97916
Change-Id: Iaa395d36e83373ea197dc5e14424fcb62cd2cd8b
(cherry picked from commit af884d4aac18e5155649f8a916ea272c11542b7e)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Seokha Ko <seokha.ko@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Windows' geometries should be updated when changing decorations.
Fixes: QTBUG-100467
Change-Id: I5ec9968aa48422776d184a8fa2f5d86ecc3ca5c3
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit 37e3789cf932ff665b8bd9325e64524c10c16489)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| | |
Change-Id: I8f346def616606a6c5540856bd08a84ee7ed5ca2
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 49fb7248f6ab7de046e2179c7861951ea1169e9b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-99965
Change-Id: Ib7fcf92973b4e559713ae27ad0c7f843f9122daf
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit ba82ba66eb8dc3580e67683783a410a254984def)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Touch events may be ignored if we set time stamp in handleTouchEvent()
when handling touch events queued in wayland socket in main thread.
So use time stamp from wayland compositor.
Task-number: QTBUG-100150
Change-Id: I14fd3791b4d29177c71662d1cf26c0eed0abb767
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Seokha Ko <seokha.ko@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 2419064c3532e2efd3bcf2f23c9c690b0a0fdd00)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add touch event keyboard modifier for wayland, which is done in qpa
xcb, which is very convenient on tablets with keyboards.
Change-Id: I4e6ed369f3444da41d06f9a9a83addf7de0a4e91
Reviewed-by: Povilas Kanapickas <povilas@radix.lt>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit a2dd5efbaa4b63782261664ca9a1aa9973db976e)
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When CSD is toggled while a window is showing, it would change the
size and recreate the buffers, but since the widget area remained
the same size, we would not trigger a redraw. The result was that
when you got any update to the window, it would redraw the widgets
that had changed, and the rest would be transparent.
Since this is a fairly specialized case, we fix it the simple way,
by just issuing an extra update when it happens.
This also required an update to the surface test, since there is
an additional buffer commit in the beginning of the sequence now.
Fixes: QTBUG-95032
Change-Id: Ic4bdb9c66a2ea76546926dd622f2d2dac5dce10c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit af7b60ade5c4be81cbc58eb18307c017d5594071)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| | |
Change-Id: I832fbb22d973b36ac4ab51570fc53bc2e4c3ed58
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit 719a55be13bdadfa659a732755f280e276a894bd)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-90530
Change-Id: Ib1f36e1cb89352dfac8a385a7b097cfc0226e813
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit fc91cd6b1306c6d452cbddab3c2289ccb92218d6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\ \
| |/
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: Id97943831fbc85d703dc50369e0d975513208c43
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previous pendingConfigureSerial can be overwritten regardless of the
current configuration. With this patch, the client surface can use
correct serial for xdg_surface.ack_configure.
Fixes: QTBUG-95962
Change-Id: I849d2daf4acc8ef6e7f8528af9c5a57f671f43e6
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 07ddfbfa43d08c2b76aabafaab38830e04a42690)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Explicitly defaulting the default ctor suppresses aggregate
initialization. It's also a pointless thing to do, so don't do it.
Change-Id: I8ec14f22ae1ead2dd6db643a6462f719fda344b8
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 6f195a592b26ad8416a6f02d6bd7258ab3fadf65)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since exec() is a synchronous call, we can just take everything by
reference instead.
Change-Id: Ic1588db69ed6bb0d8dd39ff0439ad0fc97dd957f
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 550c867ead52c575b9d7117754d8c935916f0bb7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A cases reported that client windows try to make decorations
when their shell surfaces are null.
Since the surfaces' requests for decorations should be applied,
those case will be failed to create decorations.
This patch was modified by Paul Tvete's advice.
(paul.tvete@qt.io)
Task-number: QTBUG-97608
Change-Id: I2563dbd73b730f81cc411857af07da99ceb2d063
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit 246f0c0bc01dd059bf8165e81f7b49efa36e4d95)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Correctly check for the flags in the modifiers map when we get it from
the compositor, instead of modifying the map in the for loop conditional.
[ChangeLog][QWaylandInputContext] Fix modifiers map decoding
logic when receiving the map from the compositor.
Fixes: QTBUG-97094
Change-Id: Idad19f7b1f4560d40abbb5b31032360cfe915261
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit baa7ef511bf40280448e5f0e721ddd6da3301f3b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\ \
| |/
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I42a0e780eea6d92f0463566e5ab9b23efc9f49b7
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-87624
Change-Id: I1b9443df091878abcd4fbe9c55927cb819aebd59
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit c64c5d3849b40617e1de0295f8690f354cab2b3a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| | |
Change-Id: I4a6354892203b37f341fb89069ebc2b572595373
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For the code path which uses QWaylandBufferMaterial, the buffer
could potentially be deleted before the material had been
updated, which could cause issues if the render thread was
currently using the textures.
In the default code path this was handled by keeping a reference
to the buffer in the texture provider, but in the alternative YUV
format code path, we did not increase the reference count of the
buffer, so it would be deleted immediately when it was replaced
rather than wait for the sync with the render thread.
Task-number: QTBUG-95715
Change-Id: Ic6038ea8281e2a2e292d12150d1fffedb5c3b76e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit 6b9a27d77e226a3d0ce9fa9b4974f70c9ef4a30e)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Some EGL image formats (the YUV formats specifically) cannot
be handled by the built-in node types in the Qt Quick scene
graph and use a custom material and geometry setup.
In this setup, the wp_viewporter source rectangle was ignored
and the entire texture was always sampled. This caused problems
e.g. for video frames supplied by GStreamer.
[ChangeLog][Extensions] Support for wp_viewporter extended to
cover less common buffer formats.
Pick-to: 5.15 6.1 6.2
Task-number: QTBUG-95464
Change-Id: I2504c6cd7d82e17d28e930a59d9ec71b25779acb
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit 060024e2fc9335d4fc999253c9d6ed560c7ffb0c)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The documentation for viewporter says: "if the source
rectangle is partially or completely outside of the
non-NULL wl_buffer, then the out_of_buffer protocol error
is raised when the surface state is applied. A NULL
wl_buffer does not raise the out_of_buffer error."
The intention here is that the viewport can be
initialized before the buffer is actually attached to
the surface, and the parameters will be kept for
later.
We simply skip the error condition when there is no
buffer.
[ChangeLog][QtWaylandCompositor] Fixed an issue in the
wp_viewporter extension, where it would emit a protocol
error if the viewport was configured before attaching
a buffer to the surface.
Pick-to: 5.15 6.1 6.2
Fixes: QTBUG-95464
Change-Id: I71d09974dfe5e0f39ed79e7718e1e0d402547583
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit 639bd92682f5f61f15f97f78ccd9791bec852b6c)
|
|\ \
| |/
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I9c249bfb8ad3764931b1c468f5cb927b784a2135
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When showing a surface with a subsurface in a QML based compositor, the
subsurface QQuickitems are now destroyed when when main surface QQuickItem
is destroyed and not just when the surface is destroyed.
This prevents subsurface QQuickItems piling up when showing and hiding
the client surfaces e.g. inside a StackView.
Fixes: QTBUG-94602
Change-Id: I006a6a763d4daf560ba2a7b6f83e1de3e3c48906
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit 5463a04097ee7824b2032fb058e289cf62bfd315)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mMask serves as a cache to remember what we've sent, the source of truth
for the value is window()->mask().
No need to store values that we are going to discard, because it will
confuse the state of newly created windows.
Change-Id: I6aa3da82c7f09c7ef90d0f7060f292fb042730f0
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 962f87190c682562b369c5ebd93dc9ce0915ed7a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Depending on the used modifiers, there are cases where dmabuf buffers
may be transported as multiple dmabuf planes, although they are
conceptually single plane buffers. An example of a modifier that works
like this is I915_FORMAT_MOD_Y_TILED_CCS. In such cases we need to
create a single EGLImage by merging all the dmabuf planes.
Almost all of the currently supported DRM formats are conceptually
single plane, so they require such merging of the dmabuf planes. The
only formats that need to be mapped to multiple EGLImages are some YUV
based ones, which we are already importing in a different way
(see initYuvTexture).
In addition, ensure that we don't pass to EGL a modifier value of
DRM_FORMAT_MOD_INVALID, since this is not an acceptable value.
To indicate a lack of modifiers skip the relevant
EGL_DMA_BUF_*_MODIFIER_* attributes altogether.
Sponsored-by: LG Electronics Inc.
Change-Id: I32a717f3be20927f2f3f4aa0fc6c4f7a5250db33
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit 8163327dcb3d37e9f3011bd9bec88848b2ce3b6c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
BlankCursor => "blank"
Change-Id: I9337f0615f84bb82bc722d24416e97799309b3e5
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit 94e68d506ab9b94ec11786553a220abe4b52503e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a window is hidden or destroyed, the render thread may already
be rendering. We need to properly read-lock the surface pointer
when it is in use and exit when it becomes null.
Note that there is also a potential crash in the Mesa GL driver
where it keeps a proxy to the wl_surface, so if we delete this
while we are still rendering, it can crash inside the driver.
This is not addressed by this patch, and has not been reproduced
on any other drivers so far.
[ChangeLog][Client] Fixed a crash that could happen when hiding
or closing windows while Qt Quick was actively rendering on
a different thread.
Fixes: QTBUG-91264
Fixes: QTBUG-90037
Task-number: QTBUG-92249
Change-Id: I029b123b83c58740321e8b90a463ced748d8bcf4
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit b19b0fbaf775e8b8eda1e03c265a5393d618c6c0)
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|\ \
| |/
| |
| | |
tqtc/lts-5.15-opensource
|
| |
| |
| |
| | |
Change-Id: I7f046c2006d68b1d129a569f380f8847f389477d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Document what the corresponding C++ class for any given QML item is,
like it's done in Qt Declarative.
Change-Id: I015565f88cb457f1e73dd7c2c54edff3505db395
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit a04decb6a85ef254ec48842e7551a2920de6a714)
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Change-Id: Iced32a31a63cec71008549c1e0961d59ffc45a37
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
(cherry picked from commit e9522eda46028f351d87311d898ab985856970b0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Ammend cca1b94190a094b5d1d7ce492b6533e2d330c5e8 to use m_composeState
only if xcbcommon is available.
Change-Id: I48332b15def3282c5bda3e1c7c393ea7e9849cbe
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
(cherry picked from commit 05658e127dedfff65789860415537c6920ec574d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\ \
| |/
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I665a0f6579e52cd9f27f731c6363bb03188a07bf
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Wayland protocol gives no guarantees about which events are part of
a frame, so handle the case where we receive wl_touch.down and
wl_touch.up within the same frame.
Fixes: QTBUG-89680
Change-Id: Ie0b9d2fb950fb0d9a6af8dd8ad2fa55a5efa71e6
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
(cherry picked from commit da31aa6544f38c063de93326f958e8cbb02004af)
Reviewed-by: Hyunkook Khang <hyunkook.khang@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
At the moment, we are forcing user to choose to either compose or use
the text-input channel. This patch brings some of the QComposeInputContext
functionality in order to let applications understand dead key
combinations like they are supposed to.
Having it in QWaylandInputContext rather than in QWaylandInputDevice
should solve the problems 3aedd01271dc4f4a13103d632df224971ab2b6df had
with 57c4af2b18c0fb1d266b245a107fa6cb876b9d9e, because we are doing it
in the input context rather than before. This way, if the user is
overriding the input method (e.g. by setting QT_IM_MODULE), all the key
strokes will still be properly forwarded to the module to use.
This in turn allows us to solve https://bugs.kde.org/show_bug.cgi?id=411729
and https://bugs.kde.org/show_bug.cgi?id=405388 since we don't need to
choose anymore between physical and virual keyboards anymore.
Change-Id: I8601f5d7ae21edf4b3a1191fa75877286e505588
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit cca1b94190a094b5d1d7ce492b6533e2d330c5e8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This type of error is likely to happen upon system logout. qFatal would
trigger sigabrt and leave unnecessary coredump on the system. Using
qWarning here would make it consistent with xcb's io error.
Change-Id: I571ba007bf2453486b81837cccdbefa5f181b63d
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 91625c591c9854c7b6934c12a83df6cbcfcbfbd4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Extensions are registered by initialize(), which is called as
a polish event later. Therefore the following race can happen:
1. Application #1 requests a text-input object. The compositor
sees that the seat has no such object and creates a new one.
2. Polish event is posted.
3. Application #2 requests a text-input object. Since the
polish event is not yet processed, it also creates a new one.
4. Second polish event posted.
5. Both polish events processed.
We end up with two competing text-input objects, one per client.
This in turn leads to enter/leave events not being sent correctly,
and the client may therefore end up not updating the keyboard
hints.
The result was arbitrary behavior: Sometimes the keyboard
would not open at all, whereas other times it would open with
the current input method hints, even if these do not match the
hints of the editor.
[ChangeLog][Input] Fixed a problem where a virtual keyboard
would not be updated correctly if two clients were started
at almost the same time.
Fixes: QTBUG-91096
Change-Id: I262a5c15f87ba13d750425c259583919cd947ea4
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit e08b25efe4a7bec1004696bd23d9f8959158bd60)
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The xdgshell protocol allows us to tell the output to fill. This makes
it possible to use fullscreen confidently on systems with multiple
screens knowing that our windows won't be overlapping one another by
calling setScreen accordingly before QWindow::showFullScreen.
Change-Id: I757854c3698639472f3a25ef298ddcca031e1ed5
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit f915e53eaa596654ee1b9726a4767a1cba11336f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| | |
Change-Id: I1d5ca219c9300047704f484ced7ae39222760941
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Size we use to calculate margins region already contains size including
margins. This resulted into bigger region and not properly damaging
region we need to update.
Change-Id: Id1b7f4cd2a7b894b82db09c5af2b2d1f1f43fa2a
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 1631315387faff3b4ae5c5ff1afb95e42f986e4c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a subsurface is moved, we need the parent window to commit to apply
that move. Ideally we want this in sync with any potential rendering on
the parent window.
Currently the code calls requestUpdate() which acts more like a frame
callback; it will only do something if the main QWindow considers itself
dirty.
We want to force a repaint, which is semantically more similar to an
ExposeEvent.
Fixes: QTBUG-86177
Change-Id: I30bdfa357beee860ce2b00a256eaea6d040dd55c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
(cherry picked from commit b36a345d727eab37ee4ec4c2dc4674d5971c81d8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The opaque area doesn't take window decorations into account, which may
result into possible graphical artefacts.
Change-Id: I1606e8256e7e204dad927931eb1221b576e227fd
Reviewed-by: David Edmundson <davidedmundson@kde.org>
(cherry picked from commit 3aed1fe7132c00cc7ce9b0fe8fc9e8ccdc771d38)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|