| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently the QtCompositor library and API do not follow the Qt API
naming conventions. This commit intends to fix these inconsistencies.
filenames start with q
headers containing private API's end in _p
public API classes begin with Q
use the qt namespace macros where necessary
Wayland namespace is now QtWayland
wayland_wrapper classes are now private API's
It's important to make these changes not just for stylistic reasons, but
also because when qmake builds the module in checks for these
conventions to determine how to deploy the include files.
Change-Id: I8bfadeceda92a0f52cb73c704551da75540e7587
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now use the wayland-cursor library for handling pointer cursors.
This required some API changes in QtCompositor, as cursors are now
represented by wl_surfaces instead of just wl_buffer data. This means
that when a new cursor is set by a client, you will receive a surface
which you can generate cursors from. This Surface will be painted to
when the cursor is changed. This also means that not all
WaylandSurfaces are window surfaces, so it's important that you check
that a WaylandSurface has a shell surface before treating it like a
window surface. An API has been added for checking if there is a
shellSurface available in a WaylandSurface.
The qwindow compositor example demonstrates the correct usage of these
new API's.
Change-Id: Ife6b417f1048fd926a3499a139de07bceaebc727
Reviewed-by: Jørgen Lind <jorgen.lind@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The class name identifies the general class of applications to
which the surface belongs. The class is the name of the desktop
file and is derived from the process name.
We might want to add a new method to QWindow in order to set
a custom class name.
It's quiet similar to WM_CLASS on X11, for more information
see https://live.gnome.org/GnomeShell/ApplicationBased
Change-Id: I5be90fb45e82e79710dda376f42c18c126d2a80f
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
|
|
|
|
|
| |
Change-Id: I6b598595cdb8ff91d5146e0ae2511752bcfa473f
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
|
|
|
|
|
|
|
|
| |
Change copyrights and license headers from Nokia to Digia
Change-Id: Ie65cbe0c622780d2f0672bce19d267d1167620ff
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Makes tooltips and tooltip-like components like Create's locator show
up properly. These should never get keyboard focus even though they
are regular surfaces like any other.
Change-Id: I0ade61845d9785cad19040683362a5532a04e6f6
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
| |
Change-Id: Ie012861bc40e3bc448d85c9d8c27f798434020ed
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
| |
This was not working previously due to not updating the offset.
Change-Id: I0a8db17a1eabeb6139129386675b271f9e1b8f22
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Something is alot better than nothing :)
This gives window decorations for QWidgets and other applications that
use QBackingStore
Change-Id: Ic748ee1df88236b20416029e20e26532f7fb4476
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
| |
Change-Id: I0628a7655a6deb061a5d0b6c6304c89d8655cf11
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
| |
Change-Id: If0c1d86a3011e266cafabeb875bc5616191a8cf4
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
|
|
|
|
|
| |
Change-Id: Iebd082678264178987e2550370663ed2b44a8916
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
|
|
|
|
|
|
|
|
|
| |
And refactor to make it fit
Done with: Paul
Change-Id: I2bd28abb4ac256a336cd6c2c90e67104d8c27cc5
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
|
|
|
|
|
|
|
|
| |
Now we treat all buffers the same (shm or not).
We advance the queue when we send the frame signal
Change-Id: Id62b1037e03fbeae82048f5ab9078fa81ed8e45d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
And moving Wayland::SurfaceBuffer into its own file.
Also remove the extra functions in Wayland::Surface which just relayed
down to extended surface. The pattern is that WaylandSurface is the
entry point so we check there is the Wayland::Surface has the extension
we'r looking for, then calling it directly from WaylandSurface.
Last, the data of an extension is suppose to be members of the
extension, so I moved the properties to be members of ExtendedSurface
Change-Id: I5877671a17ee873b7644094f695fcd3e4677964a
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
| |
Change-Id: I1b53c5f0b0f908490dcd0ab30e46ab681f885954
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
|
|
|
|
|
|
|
| |
Change-Id: I6e182c048282f5edd30f49be19dcc0f020679b85
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.
Change-Id: I08d8673382f0230d5c5a22a25efaf5c45cef539a
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
|
|
|
|
|
|
|
|
| |
Replace Nokia contact email address with Qt Project website.
Change-Id: Ib67c393df41c539deae0ef71e0acc13029ceb46d
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
All code in this module outside of src/plugins/platforms/wayland should
carry a copy of the BSD license header. The master copy of this header
lives at qtbase/header.BSD.
Change-Id: Icd56f24f4a3d309db4c1c3aaef25618680c07f6e
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Qt only gives us 1 input device as of now, ie. the mouse/keyboard and
touch events. However, at some point in the future, this will change, so
that the events will have a device id. This will ie on x map to the same
device, but on evdev this can be different devices.
Also this is part of what is needed to implement grabbing
Change-Id: Ice049502d6f0f53fd06142d4dedde05806d60120
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
Qt applications don't need global x and y, but the protocol dictates it,
so someone else might need it. We still keep the api to just use the
local coordinates
Change-Id: I4b34df935a6692a8d72946c16603d3d600514161
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
This is code which is either fairly old or where the api has changed.
Anyway, Surfaces allways have a client handle in the resource, so no
need to check it or store it.
Change-Id: If0be4bed177d42f168b5384a820b8e681e6d9539
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
| |
so that we can actually do something usefull in the callbacks
Change-Id: Ie8e85757bf5c90caa40db34df1b8bc642ba09962
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A simple sendTouchPointEvent(id, x, y, ...) type of function will not
be sufficient in the future due to the amount of data in a touch
event; therefore an additional sendFullTouchEvent is introduced. This
function takes a QTouchEvent and posts a series of down, motion, up,
frame events as needed. In the future it may be changed so that it
maps to a protocol extension instead of the standard events.
As an example qwindow-compositor is updated to use this new function.
Change-Id: I39d3df1c6d4868364440f59789d01fc5b7b80dac
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
|
|
|
|
|
|
|
|
|
| |
and add pos and size properties instead. The pos is a PointF while the
size is a integer based Size since pos can be transformed, while the
size reffers to the pixel size.
Change-Id: I5d84aa6661405cb0df356b787246d0d73ad0c503
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows you to have subwindows in the compositor.
We tried to experiment with composing subsurfaces client side, but the
architecture did not feel very lean. This however, requires the
compositor to compose each surface before drawing the surface. The
example compositors render the subsurfaces into the wl_surfaces texture.
This might not be a good idea.
Change-Id: I6e186b62d7b490de7f4e6c6f22fcf6c1e0a70df3
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
| |
Change-Id: Ie3ba75335717e8dbae906c1a13cc8f852b77bd1b
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
This is an atempt on removing WindowManagerIntegration and create more
specialised extensions. Hopefully it will reduce tha "map lookups" we
have all because of the windowmanagerintegration is way to generic, and
hopefully it will make it easier to ready and understand the code
Change-Id: I126c430e87909e4520f6d241c0a6023214cb509a
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
This class will typically be the super class of globals which creates
wl_resources in the bind functions. If for some reason some other class
needs to get a resource for a given client of the global, it can look it
up
Change-Id: I939cc7aaeb15586f2c760c600c188a8cbf19f358
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
|
|
|
|
|
|
|
|
| |
I'm not sure if the header file name is what we want, but will do for
now.
Change-Id: Ief7f006b0f59b53295e6a11c222d8c459a80683d
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
|
|
Also fix so that QtCompositor can be built as shared object.
+ fix so that the default QT_WAYLAND_GL_CONFIG is wayland_egl
Change-Id: I02b72e99286584426bd37ab2d00bbc84af11efdc
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
|