| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Make sure we test exactly the size we expect.
We used frameGeometry() to take client-side decoration margins into
account, but actually frameMargins() returns exactly that, this
means we can compute the actual size that we want to test.
Change-Id: I2f41ffdb2aa2e3a4253a1ff7038c4bc2e43cdf98
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\ |
|
|/|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/client/qwaylandinputdevice.cpp
Change-Id: I20fb102162351b714855258175ed00437e55f072
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This crash only occurs on a few machines running autotests for the
application-manager, but it's happening consistently on the affected
machines.
Change-Id: I4533379580b7c1f62e4f45bf223d73aac3e8d5b7
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I0a193ceaa1549c08acad02b59db62ae313d6b334
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QList is going away in Qt 6, and CoW is not needed, as containers and
elements are only ever moved, not copied, and NRVO is in effect
everywhere.
Change-Id: Ie738da3619f0b8048fbd07e5911db0960133d553
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change
- standardizes on using boolean needsXy to handle join-style omissions
of commas or newlines instead of inspecting the index of the element
in various forms, which enables
- standardize on C++11 ranged for loops instead of indexed loops
- use braced initialization for structs, with designators, which are
strictly a C++20 feature but are being used in QtWayland already, so
should be safe (they originally come from C99).
Together, they make the code easier to understand, because the
variation of patterns used in the program is reduced.
Change-Id: Ib96620a9ecbe4ee47e59290ed758f0ec1bffcfd6
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Correct a typo introduced with 0761173a.
Change-Id: I5c101e015c0fbd7de03d26ff3f8629418f070db2
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QList's swap(int i, int j) is deprecated in favor of swapItemsAt() and
when building with QT_VERSION == 6 it's removed from the API.
Change-Id: I5513d4d879a85369040864cfc9c058f0f3665648
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Id3d7c7e5a62b8f7a7844dab872e16bf2094a5c91
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\ \ |
|
|/| |
| |/
| |
| | |
Change-Id: I64c1a5cabcdad4177aeac35bcd45a4cde8f60165
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With 0761173a, Linux SPI Accessibility bridge was added to
the Wayland QPA plugin, but this had a bad side-effect to
QtWaylandClient.
Linux Accessibility support is a private module, this means we have
to link to it with QT_PRIVATE not QT, otherwise CMake and pkg-config
files for Qt5WaylandClient will depend on it.
Change-Id: I6182267f97adc2cd5bd66895df148a6a45614f45
Fixes: QTBUG-76042
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is allowed since C++11, and K&R C, resp., and doing so simplifies
the code.
Change-Id: I4bf5bc50b46c6b811ec386b92bfb0a7529a32645
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The content of the QMultiMap cursorNameMaps is static, so using a
dynamic container is overkill.
Replace the map by a (sorted) C array of struct {Key, Value}, and use
std::equal_range to find matching cursors. This also avoids the
creation of a QList on each call (due to the use of QMap:values()
instead of QMap::equal_range), as well as the creation of QByteArrays,
which the underlying wayland C API doesn't know about, anyway.
The entries were already sorted, so the initializer_list stays the
same. Add an assert that the list is ordered.
Since this is library code, don't use the attractive struct {
WaylandCursor, const char *name }, as that causes relocations that
delay the loading of the shared object, and make sharing of the data
between processes impossible. This wastes some memory, due to all the
NUL padding up to the common maximum, and the next alignment step, but
can be optimized later when someone writes a C++-only version of
Q_STRINGTABLE.
Even so, this saves 10.5KiB in text size on optimized AMD64 Linux GCC
9.1 builds.
Change-Id: I19fa1742e2fcaf9de74af1e5908e796b0588d507
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
QPointer is larger than void*.
Change-Id: I144104a71eef1d023d20d3a024960c429bad6827
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The old code used the implicit conversions from QAtomicInteger<T> to
T, and vice versa. The semantics of these differ from the ones
std::atomic uses, so we're going to deprecate these, like we did for
load() and store(), too.
This patch fixes some users of these APIs before we deprecate them.
Change-Id: Iab07e00d5f59d5de73233571bca723f94f76a265
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\ \ |
|
|/| |
| |/
| |
| | |
Change-Id: Id4304c7244dd1580d5bb18451e3dda5dabe6bcb3
|
| |\ |
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
.qmake.conf
Change-Id: I436405677453e7df43258363c0d5c88d7b3790d0
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Implicit capture of 'this' in [=] is deprecated in C++20.
Fix by using explicit captures.
Change-Id: Ie3a94ec60d7c56b2856d201fa3d68d0670bdd7b9
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: If69992b414824405267ea0d8c20b9f1bd996944b
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If we hide a window whilst a compositor has a pending frame to show,
it's possible the compositor will not render the frame and not return
the callback.
If this happens on the next window expose we can be left with
mFrameCallbackTimedOut still true causing isExposed() to remain false
and us to not send the next buffer when we later show the window again.
Change-Id: I507410415d1a930fd5fa736412055e68fdf6c1d3
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When we did invokeMethod for handling the frame callbacks, we had to wait for
the GUI thread to finish whatever it's doing before we would stop blocking.
Fix it by clearing the frame callback timer and stop blocking immediately,
while delaying the rest of the work until it can be run on the other thread.
Fixes: QTBUG-76397
Change-Id: I343e4feac4838926b4fa2ccac2948988bc6c3bb7
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | | |\ |
|
| | | |/|
| | | | |
| | | | |
| | | | | |
Change-Id: I7ad83f19cf9f47b40088a56d4182514bf5b83508
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Neither Qt::ToolTip nor Qt::Popup are single bits in Qt::WindowFlags, and do in
fact include Qt::Window. This meant that when we or'ed them and did a bitwise
and with QWindow::type(), we would match more types than just Qt::Popup and
Qt::ToolTip. We would for instance get any Qt::Window as well, which meant the
main window would be added to activePopups, leading to strange things
happening, such as crashes and the main window closing unexpectedly.
[ChangeLog][QPA plugin] Fixed a crash when closing multiple popups at once.
Fixes: QTBUG-76124
Change-Id: I1a6a59e161a436604a7ac8ab824396481dc99a20
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit af9ec8a76d7e62444fadb518256fc58723fe5186)
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Change-Id: I3402a5297448aa4f4e0703ffbae897f00f0f6577
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | | |
Change-Id: I76df7709ee1e21440c647a4419900800edfacac2
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-74391
Change-Id: Iac93aa49419d8485fcc2076136c190533782e188
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
...and mark the module QLinkedList-free.
QLinkedList is going to be deprecated.
Change-Id: Ieb9efef24cd8677edc1262f22b7c6d41b6376347
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\ \ \ \ |
|
|/| | | |
| |/ / /
| | | |
| | | | |
Change-Id: Ia74c2459057ef681b59a3201cab34168016e78d0
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Designated initializers (a C99 feature) made it into C++20, but the
current code, which, presumably, was using a GCC extension, ran afoul
of the rule that either all initializers must be designated ones, or
none.
Fix by naming the .plane member, too.
Change-Id: Id302787331cfe0f2976250ec2c6b86a6946c8016
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
|\ \ \ \ |
|
|/| | | |
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
.qmake.conf
src/client/qwaylanddatadevice.cpp
Change-Id: I1cc8640b68eba5dfb560749dfe679741ee62e6ad
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: Ib38bf7b8a1c8062696849c455c3974051bac6cb6
|
| |\ \ \ |
|
| |/| | |
| | | | |
| | | | |
| | | | | |
Change-Id: I3b0e0899cfcd738ddf45b4211f86e1079d6e4988
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Neither Qt::ToolTip nor Qt::Popup are single bits in Qt::WindowFlags, and do in
fact include Qt::Window. This meant that when we or'ed them and did a bitwise
and with QWindow::type(), we would match more types than just Qt::Popup and
Qt::ToolTip. We would for instance get any Qt::Window as well, which meant the
main window would be added to activePopups, leading to strange things
happening, such as crashes and the main window closing unexpectedly.
[ChangeLog][QPA plugin] Fixed a crash when closing multiple popups at once.
Fixes: QTBUG-76124
Change-Id: I1a6a59e161a436604a7ac8ab824396481dc99a20
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
(cherry picked from commit af9ec8a76d7e62444fadb518256fc58723fe5186)
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fixes: QTBUG-75920
Change-Id: I29d84b487afb2a90b8a633abce2fcc39ca75adae
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Change-Id: I35b995cc2273a285b0c89be86841b5d38630b493
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Change-Id: I3854d7310259d1ce9f474d09f2b6dfdfbca8434a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |\ \ \ \ |
|
| |/| | | |
| | | |/ /
| | |/| |
| | | | | |
Change-Id: I3b4132c4824a5312e7af0ca5659bd34269cb02fe
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Sometimes origin will be nullptr, triggering a crash.
[ChangeLog][QPA plugin] Fixed a crash that sometimes happened when
starting a drag-and-drop operation.
Fixes: QTBUG-76368
Change-Id: I8f4e6b05f073644834c3c72a8307dac5b897f626
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Task-number: QTBUG-76491
Change-Id: I8f96c049e134843e4eb2bffef6274497eca8b5cf
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Change-Id: Ic8a10575a30f32a8eed6982d636feb4be2f6917e
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Change-Id: I2b593069a6da8cc5f4c7057f48c3e5fa42c27b9c
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|