| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: Icbb93367f2d9f08261b450c97f9e7fb1820b4ee3
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
|\
| |
| |
| | |
Change-Id: I83392c13a9cea972fbb570a9510a19f401675283
|
| |
| |
| |
| |
| | |
Change-Id: I4b84d7eac0016dccaa370419487940e32130617e
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7f958175fdb5ae21babae259bf2e8d5e749cd396
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I6c972b79555d41cba9e8c5954e595f76b580725b
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I71f6714f2ac4d92baedd89246d57f20c159bda1b
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I80b4f078d63ac32d9ce6d91fc46f0b9d9d7d7146
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The documentation was missing the proper indentation.
Change-Id: I3ce2afd8b9ea8c045f54202f942a8f55f831c1b2
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I23a67b8189ab84e6a70c9e3de5da15cf2e9a9d77
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia60e20a15151a76c337872bf46b4d09da519387c
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9f2ed6411ab0e24a2a6e6f194abe3ffaaba96756
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ifc7682614ee4e2691dface73ceace20fd4f6effa
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
And also fix copy-paste error for parentXdgSurface
Change-Id: Ife15e8fc7a59a0effa0c9f00689273db3699eca6
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is some confusion with regards to what types of features
the Wayland Compositor provides and how it related to
application managers. This tries to expand the entry point
description in the docs to give a more detailed description.
Change-Id: I96f58c04646c69575a1bd4e4b9178c5722d752d6
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I76bfc271efcf75c75bf38f4bf58503e1d2a00839
|
| |
| |
| |
| |
| |
| |
| |
| | |
Assign to the actual variable instead of a new one with the same name.
Change-Id: I9e4c3525891ff53f0194198b9c11f223df4c14a9
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Removes the pointer mScreen, which would previously cause a crash if the screen
was removed.
Ensures that QWindow::screen() is correct, except in the cases where:
- The compositor has not yet sent enter and leave events (in which case the
primary output is returned).
- The compositor is not sending enter and leave events (although this is
mandatory, some compositors don't do this).
- The application developer has tried to move the window with
QWindow::setScreen(QScreen *). Since there is no way for a client to ask to
be moved to a specific monitor in windowed mode, we return the requested
screen until a new enter or leave event is received.
This will also be useful when implementing/fixing features where the current
screen matters. Examples are QT_AUTO_SCREEN_SCALE_FACTOR and the optional
output parameter to wl_shell_surface.set_fullscreen.
Task-number: QTBUG-62044
Change-Id: Iafde2e278fbc8876e8dafe5b2a4d2482fdc7961a
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
According to the protocol, child popups have to be closed before
parents, but QMenuBar/QMenu will sometimes close the parent first.
Change-Id: Id027ac483b727a19388df619fe1503d794e12c12
Task-number: QTBUG-62048
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If QWaylandWindow::attach was called before getting the frame callback, it
would overwrite mFrameCallback. Hence, all but the last frame callback would
still be alive after the QWaylandWindow destructor.
When the dangling callbacks got invoked the data pointer was statically casted
to the deleted QWaylandWindow, resulting in undefined behavior.
In this change we only delete frame callbacks from the render thread, avoiding
a race condition we fixed earlier. And we always destroy the frame callback
when adding a new one, ensuring that the destructor will clean up the only
remaining callback.
There's a test confirming that the crash has been fixed.
This fixes the flakiness of many of the qtbase auto tests.
Change-Id: Iecb08ab48216eac61b1ebc5c0e0664d4aac900c0
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The old link to XdgSurface was broken due to the rename to V5. Added the other
ShellSurface implementations as well.
Change-Id: I012501d93353b27bb7bb6e14e56d5baecbdae6c1
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I59d43d87e672015560a932c4ab5f376ad657c431
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously we would send events to just one of the bound resources.
An example of this, is the breeze Qt style, which would bind to the pointer
resource a second time, which resulted in the original resource not receiving
any events, which in turn resulted in an unresponsive client.
Change-Id: Iac0ffe5d9ef0dfb95db89796515d7eb4a0b38227
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I83d5692b6361311ba0562b0c3e6e026f392f7ab5
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
which has a file descriptor we can also use to share with
Change-Id: I8d96dea9955d4c749b99fffd14cd61628c616b30
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: Ia0f9d099e92a40cae7ec506781f70c56415bcf89
|
| |
| |
| |
| |
| |
| |
| |
| | |
This will detect wayland-egl on an imx6 without pkg-config
Change-Id: I9c0fe6eef375fd0431a218c3b0407505c29eead9
Reviewed-by: Karim Pinter <karim.pinter@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2cc4e0877d5957c0939d62ec66ed2ce72f15e7e6
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
And add a more helpful explanation of the property.
Change-Id: Ia5cd31867f5b0be586129abef829e00ee384b346
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The wayland protocol requires Popup windows to have a transient parent
set, in order to correctly position the window on the screen.
In Qt, some popup menus don't have it, so they will appear misplaced in
the screen. This adds an heuristic which makes transientParent()
return the current application focus window, which is an approximation
which won't be always correct, but seems to fix most applications
Task-number: QTBUG-60932
Change-Id: Icec1e306d3f64f4f00ad735a8c2eedb99e85eabb
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QWaylandWindow resets the surface on various events.
Handling focus comes in a posted event, so this can be after we've
hidden a window and lost a surface.
Task-number: QTBUG-61704
Change-Id: I535ff78c6bc2b86816696a08f8eebc47186d1225
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia67fe4f677dd77a6c1b4d7c1762fdefa9a2aed60
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise we crash if we call reset twice. For example if we call
setParent and setVisible together.
Change-Id: I7f07825167bf8c3236a80e649a6d6805fd6c868b
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I8d08eddb0eb9cd005b29e13818ba27efa11c6872
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I9de16c48a1dee7728fb02faa590c112bd656aa09
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| | |
If positioner was null, we would try to print its data in the error message.
Change-Id: Ic6d5d5cd8039dbfd97d4cbbcc34fb18207ae633e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2ea03f3366524d3133a65870abad9d9389dfec9c
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I5ffee26a4c0cd7726e007cc0692e403e15b5726e
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix crashes, and change the (private) API to be more usable.
The libhybris code compiles without warnings, but is untested.
Change-Id: I1433daf1ba76d7869d1dfe260642199ce5a1b849
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I3941d7e8caffb613f546e628c7e089e971d1e8b8
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of using mkstemp. Even current glibc versions do not open the
file with O_CLOEXEC, so this code is not thread-safe. QTemporaryFile is.
And since Qt 5.10, it will also use O_TMPFILE on Linux, so the file will
not actually exists on disk.
Take this opportunity to use the runtime directory instead of /tmp.
There's no guarantee that the /tmp filesystem can support mmap'ing,
while XDG_RUNTIME_DIR has that guarantee. It's also usually a tmpfs, so
no data will be leaked to disk.
Change-Id: I8d96dea9955d4c749b99fffd14cd5335d1114cef
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds QML and C++ support for xdg-shell-unstable v6 on the compositor side.
A couple of things are still missing for complete support, but can be added
implemented later without breaking the API.
Task-number: QTBUG-56174
Change-Id: I08d7c05aa4f40f00377d92f2519d89ab416daaf4
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Found by GCC 7:
qwaylandquickitem.cpp:223:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
Change-Id: I8d96dea9955d4c749b99fffd14cd5157a79d782b
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
|\|
| |
| |
| | |
Change-Id: I286b58e2c3a42c1078fd25d5b699c8a17edb1c23
|
| |
| |
| |
| |
| | |
Change-Id: I26e3ac4224fb54e1d3fddeef8847f9556effe324
Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Found by GCC 7
qwaylandinputmethodeventbuilder.cpp:110:51: warning: this statement may fall through [-Wimplicit-fallthrough=]
Change-Id: Ia3e896da908f42939148fffd14c47fc6058b0933
Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
New fields are appended to the structure, so we can't initialize them as
we would lose compatibility with earlier versions of libwayland. So just
disable the warning.
Change-Id: Ia3e896da908f42939148fffd14c4806ce3468e56
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
qLoadPlugin is variadic and can take one argument to the plugin loader,
so just use that.
Change-Id: Ia3e896da908f42939148fffd14c481e367fdb128
Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I9895a41cdf00bbfd1e41c07c627235a82f16f2c4
Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6e7b5869097f579020c7a4439441a63a0771e955
Task-number: QTBUG-55956
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Both WaylandBrcmBuffer and WaylandBuffer were calling
wl_buffer_destroy(mBuffer)
without the derived class nulling the pointer on deletion
Change-Id: I66a553a3d11a1ef90bbfe6ad0fb49f40fe1a0bdb
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|