| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
updateSize() depends on both screen devicePixelRatio and output scaleFactor.
Make sure to call it when they change.
This still doesn't handle all cases, because there is no signal for when a
screen device pixel ratio changes, but we update when we get a new screen,
which should be good enough in most cases
Change-Id: I4550cf580d4821e4b0f4da0d2eb7bb8d9ab823cf
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If there was no resource for the given wl_resource*, don't try to dereference
it.
Change-Id: I3a27a5805699148bb26029e8b4179042c3c1117a
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I85c17e50cf917a51e74fa03fcdc647def6e4bdfd
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
setCursor would sometimes be called on null objects causing a JavaScript error.
Use Connections instead which will disconnect the signal automatically if
either side is destroyed or in case seat is reassigned.
Change-Id: I70686937b510ab516f27f1e61b2f2a921e74f4b3
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes a source incompatibility introduced in 9ebba7c3a. In Qt 5.11 it was
possible to have the following code:
XdgShellV6 {
property XdgToplevelV6 top
onToplevelCreated: top = toplevel
}
After, 9ebba7c3a, however, this would fail because XdgToplevel refers to
QWaylandXdgToplevelV6ParentClass, while QWaylandXdgShellV6::toplevelCreated
emits a QWaylandXdgToplevelV6.
It would also break instanceof, i.e.:
onToplevelCreated: console.log(toplevel instanceof XdgToplevelV6)
This patch reverts to C++ and QML using the same type (no subclassing for QML
types), but still lets the items have children in QML by putting the macro
inside each class instead.
Task-number: QTBUG-70090
Change-Id: I8efa8f68ebc4dc2289b4a9b96402b0c00d45547d
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Compositor] Fixed a bug where outputAdded was not emitted
if a new output was added through QWaylandCompositor::setDefaultOutput.
Change-Id: I875badd340d6241fda7a5fce9b3bba8ca8b2f560
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We can't trust QWindow::isActive, because it relies on focusWindow, which may
be updated too late, and there might also be multiple active toplevel windows
at once on Wayland. Even though Qt doesn't support multiple seats, we should
still draw the decorations of active windows correctly.
This implements QPlatformWindow::isActive and uses it in the decorations.
Change-Id: I34d79b354e2d26694533e2319a26f24085212243
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
This is the same bug as QTBUG-70126, but for the stable version.
Change-Id: I8cad104d6ebc980835c47d455968b2b9e63c6169
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ib6d23655a5c9ee059a9560e862d38746f508caee
|
| |
| |
| |
| |
| | |
Change-Id: Iac85af45ee0cb43c908983b331f2d50ed68bd036
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, windows that were hidden and shown again would have the old list of
entered screens. Aside from occasionally getting the current screen wrong,
this also polluted the log with bogus warnings about unexpected enter events.
This problem could be seen quite easily by opening, closing and opening a menu.
[ChangeLog][QPA plugin] Fixed a bug where a window that was hidden and then
shown on different screen would still think it was on the first screen.
Change-Id: I1b27433ea6607a218384d814ae4c16b9c4395948
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I5ebf22aa94393645df806e8d653a98ae13117909
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Compositor] xdg-shell minimum and maximum sizes are now respected
when resizing.
Change-Id: Iaf6a2bd283117e948fda6693530e08f68f755a17
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Avoids protocol errors on Weston, gnome-shell and wlroots-based compositors.
This is the same fix as 75c996e7, but for the stable version of xdg shell.
Change-Id: Ic998fb920a8b1b131e42833a61e663704c8663e4
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If00feef8c7e55fc2ac56b9a0e5bfeabfa158efc6
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
And add an example with server-side window decorations.
Task-number: QTBUG-69934
Change-Id: Ic3984b50cf7574cae5135dea51eb4b1c80bb45a7
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I0f388a4c4f6b765c34d115a6583982d86bc82557
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I85b58ca9d14a1d37959475b05e0be8c9c8721186
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Compositor] Added support for wl_subsurface.place_above and
place_below in WaylandQuickItem.
Task-number: QTBUG-49809
Change-Id: Ie30c342f329c26feaa954f8909b61b139e5588dc
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are two different types of edges in xdg-shell. Make it more explicit
which ones we are using.
Change-Id: I7e18a376b359be8e06f96cae897d7ccbc62e3c3e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| | |
Change-Id: Iddd6671316b3748e5156625f0dab1ee3d26e915a
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Compositor API] Added APIs for xdg-shell stable.
Code copied from the V6 implementation with suffixes and prefixes removed.
Otherwise a few minor edits, such as renaming xdg_shell to xdg_wm_base, and
handling the anchor and gravity edges no longer being bitfields.
Examples that used v6 have been updated to use stable instead, or, in some
cases, to support both.
Task-number: QTBUG-66784
Change-Id: Ia619b478a938fdcd9b47af8a8df2d7fcc4406204
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][QPA plugin] Added client-side support for the
xdg-decoration-unstable-v1 Wayland extension. Qt clients will now let the
compositor draw the window decorations if configured through this extension.
Note: The env var QT_WAYLAND_DISABLE_WINDOWDECORATION is still supported, but
works on a higher level, and for all shell integrations, while xdg-decoration
only works with xdg-shell stable.
Task-number: QTBUG-69746
Change-Id: I9dd0331bbd8d624c6be54ed23ee3b96446d5820d
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Checking in wayland-scanner and qtwaylandscanner generated files with renamed
symbols to avoid conflicts with xdg-shell stable.
Task-number: QTBUG-66784
Change-Id: I1b1a055d3be12bfa7d16e7bb7209e96497cbf28c
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ia9584a185a3d7a68a4333890ade535585ba33fee
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ifd6d4956eeed663e45219b428dfe562e7a82e626
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In Qt we call flush() when we think the window might need to be
updated. It is also possible to trigger a flush while painting.
Two fixes:
1) If there are attempted flushes between beginPaint() and endPaint,
queue them up, and do them in endPaint().
2) Make sure we only commit the buffer once: after that the
compositor owns the buffer, and it can repaint on its own.
Change-Id: Ibf61068fa95760eb67dbc0b1d0534854114ea528
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This makes gstreamer and Firefox work with QML-based compositors.
Task-number: QTBUG-69643
Change-Id: Iaddaeb7dc3493a262993eecc5ea0b6ce076b4044
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][QPA plugin] Font and UI scaling is now based on the screen scale
factor rather than the physical DPI. The logical DPI is set to 96 unless
overridden by the the environment variable QT_WAYLAND_FORCE_DPI, which may be
set to a specific DPI or to "physical" to get the old behavior.
Change-Id: Ife417bf5537b0f6c9ecceffea46937951770b150
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, we would send one leave event each time the mouse was moved on the
decorations.
Change-Id: I57bd6e57261447db8a8c5ab45dc8f3fdfed33a49
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The shell extension is not much used anymore, and needs a lot of hacks to
build. It should eventually be removed to ease maintenance.
[ChangeLog][Compositor API] xdg-shell unstable v5 is now deprecated.
Existing applications should migrate to v6.
Change-Id: Ic77ff8e6183c20271a5298952f47ab2789cfab89
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
States are not visible in WAYLAND_DEBUG output since array values are not
printed there. Logging the states to the Wayland QPA logging category gives us
a convenient way of seeing what states are configured.
Change-Id: If71c6df3180eba3f8efb08135a67b417940c3ffe
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Could happen if events were received before the default seat had been
initialized
Change-Id: I09d97a4b747b75b5c580386f7e0d45715274ed8b
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Encapsulate what the scanner needs of functions and state into a class,
Scanner, instead of keeping everything in the global namespace.
Change-Id: Idd4b412bb7f709f24c86abe82b135c09b7985878
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I561e2af0cdc812ea4f499525b4af0a4ab7ad8182
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I7947816edbfef4e07d488d25122cfd9a969436db
|
| |
| |
| |
| |
| | |
Change-Id: I0baf542f89274f48bf7d02121a07d64f0f3a001b
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
XdgOutput is an extension of wl_output with the benefit of having the
logical size of a screen as an explicit parameter, instead of clients
inferring it from modeSize / scale. This is useful as it allows
compositors to implement fractional scaling whilst clients can still
fill the screen.
In the future XdgOutputV2 will support a more useful name and ID that
we can use.
[ChangeLog][QPA plugin] Added support for xdg-output-unstable-v1
Change-Id: I2e1e64ad6cb497a1cbb7b7b170f28ac92231c2c4
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I4c25009c207ab36219976e75343a9b6398d3a42d
|
| |
| |
| |
| |
| |
| |
| |
| | |
The logging category is exported, so the name should be
specific.
Change-Id: Iffdc89875ef9e3091009780edc614fee10c05532
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There was a naming conflict between the client buffer integration, wayland-egl,
and the system library libwayland-egl.so
Rename the plugin binary to qt-plugin-wayland-egl to avoid the issue.
This commit appends commit 83db09bd0acaafb256880e3a217ed9df0641a00a
which did the same for the client plugin
Task-number: QTBUG-65652
Change-Id: I245192a9f844945200209cc2e3a9f419c541d33b
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Compositors that only update damaged regions would show the old content of the
decorations.
[ChangeLog][QPA plugin] Fixed the window decorations sometimes not updating on
some compositors.
Change-Id: I75ab40e159bf165152a58e438dd7f70e7f9e9b22
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-68834
Change-Id: Iced478d12b56fc360c0d824cf5876855d887f9a2
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/client/qwaylandxdgsurface.cpp
src/plugins/shellintegration/xdg-shell-v5/qwaylandxdgsurfacev5.cpp
src/plugins/shellintegration/xdg-shell-v6/qwaylandxdgshellv6.cpp
src/plugins/shellintegration/xdg-shell-v6/qwaylandxdgshellv6_p.h
Done-with: Johan Klokkhammer Helsing <johan.helsing@qt.io>
Change-Id: Ia39be6254a95af1c4efa831358cc06a697da3423
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-68773
Change-Id: Ia00c2438ef7ce6be7dc7d05efbba3bc7f27fe62f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia2f708fc668a802f4468efd0765f36aab0944e10
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |\
| | |
| | |
| | | |
Change-Id: Idd23894d256f83518f2cd25d7c13f5a09c7d577e
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I3d3cc001320febd64529f0997b88efd69303fa30
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Avoids protocol errors on Weston, gnome-shell and wlroots-based
compositors.
[ChangeLog][QPA Plugin] Fixed a protocol error that sometimes happened
when showing popups such as nested menus on xdg-shell unstable v6.
Task-number: QTBUG-67988
Change-Id: I037aec94fba3d177dd0392e5a216a604bc65ac4f
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-68933
Change-Id: I02ba2e659d21923934dab970af23856b45ff1570
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|