- 15 Jul, 2020 1 commit
-
-
Vlad Zahorodnii authored
-
- 08 Jul, 2020 1 commit
-
-
It can be especially useful if the compositor wants to ensure that all globals have been created before starting to accept client connections. Unfortunately, start() and terminate() stuff doesn't align well with it, so the terminate() method was dropped to ensure that Display always returns the same wl_display object.
-
- 19 Jun, 2020 1 commit
-
-
The compositor needs to monitor changes in the mapping between the surface local coordinates and the buffer coordinates because texture coordinates correspond to the latter. One way to do it is to monitor things such as the surface size, the buffer size, the buffer scale, etc. The main problem with doing so is that there are so many factors that contribute to how mapping between the surface local coordinate space and the buffer coordinate space is performed. In order to provide a generic way for monitoring changes in the mapping between the surface local coordinate space and the buffer coordinate space, this patch introduces two new matrices. The first one specifies how the surface-local coordinates are mapped to buffer coordinates, and the other one specifies how to map the buffer coordinates to surface local coordinates. With the new two matrices, the compositor has a generic way to get notified when it has to re-compute texture coordinates.
-
- 02 Jun, 2020 1 commit
-
-
Vlad Zahorodnii authored
The wp_viewporter compositor extension allows clients to crop and scale their surface. It can be useful for applications such as video players because it may potentially reduce their power usage.
-
- 29 May, 2020 2 commits
-
-
Benjamin Port authored
-
Benjamin Port authored
Reviewers: zzag, davidedmundson, apol Subscribers: romangg, crossi, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D29231
-
- 28 May, 2020 1 commit
-
-
Vlad Zahorodnii authored
The data control protocol is unstable. Therefore, class names must have "V1" suffix.
-
- 26 May, 2020 1 commit
-
-
David Edmundson authored
Summary: This patch makes use of wlroot's DataControl interface to support clipboard management. Unlike wl_data_device clipboards are sent on every change to all watchers. If the data device has a selection set it updates immediately. Because it was started a year ago it uses the existing style of wrapping objects. The unit test uses the new approach. Test Plan: Updated kwin used wlroot's wl-copy, wl-paste which are xclip replacements to show that the clipboard updated correctly Reviewers: #kwin Differential Revision: https://phabricator.kde.org/D29330
-
- 18 May, 2020 1 commit
-
-
David Edmundson authored
Summary: This isn't used by kwin or Qt anymore Differential Revision: https://phabricator.kde.org/D29338
-
- 29 Apr, 2020 2 commits
-
-
Aleix Pol Gonzalez authored
-
Aleix Pol Gonzalez authored
-
- 19 Mar, 2020 1 commit
-
-
Aleix Pol Gonzalez authored
Summary: Implements the necessary classes to have proper support for the tablet and pen. Doesn't implement yet the ring/slider/totem bits. Test Plan: Used it with Plasma and GTK clients, together with the kwin patch I'll submit soon. https://youtu.be/GGx0TlNJlzs Also I added a test. Reviewers: #kwin, #frameworks, zzag, davidedmundson Reviewed By: #kwin, zzag, davidedmundson Subscribers: davidedmundson, zzag, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D26858
-
- 16 Mar, 2020 1 commit
-
-
Andreas Cord-Landwehr authored
Summary: Convert license headers to SPDX expressions and add license files as required by REUSE specification. Reviewers: zzag Reviewed By: zzag Subscribers: kde-frameworks-devel Tags: #frameworks Maniphest Tasks: T11550 Differential Revision: https://phabricator.kde.org/D28058
-
- 25 Jan, 2019 1 commit
-
-
Fabian Vogt authored
Summary: If automaticSocketNaming is enabled, it will use wl_display_add_socket_auto to allocate the next free socket. The resulting name can be retrieved using socketName after a successful start afterwards. Test Plan: Ran the new autotest, passes. kwin_wayland still uses the old behaviour. Reviewers: #kwin, #plasma, romangg Reviewed By: #kwin, #plasma, romangg Subscribers: davidedmundson, zzag, romangg, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D17122
-
- 06 Nov, 2018 1 commit
-
-
Laurent Montel authored
-
- 04 Jul, 2018 1 commit
-
-
Bhushan Shah authored
Summary: - selfInitialization - memleak I could probably suppress the selfInitialization warning, but probably is cleaner this way. Opinions welcome. This also fixes the memleak in autotest. Test Plan: - arc lint --everything - Fix issues - build - run tests Reviewers: #frameworks, aacid Reviewed By: aacid Subscribers: apol, aacid, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D13559
-
- 29 Jul, 2017 2 commits
-
-
David Faure authored
Summary: This fixes the check in the unittest when doing set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") which I intend to do globally at some point. Turns out it's comparing with its own executable location, so we can use QCoreApplication to get it generically. Test Plan: Verified to work with ctest and with "./testWaylandServerDisplay" Reviewers: graesslin, mart Reviewed By: graesslin, mart Subscribers: plasma-devel, #frameworks Tags: #plasma_on_wayland, #frameworks Differential Revision: https://phabricator.kde.org/D6974
-
David Faure authored
Scripted with perl -pi -e 's/add_test\(([^ ]*) (.*?)\)/add_test(NAME $1 COMMAND $2)/' CMakeLists.txt
-
- 01 Jul, 2017 1 commit
-
-
Martin Flöser authored
If the test is run as root we cannot compare the user id to not be 0. Thus let's check for that and expect fail.
-
- 02 Jun, 2017 2 commits
-
-
Friedrich W. H. Kossebau authored
-
Friedrich W. H. Kossebau authored
Use the QProcess::start() variant with explicit (empty, in these cases) arguments, so the program strings are not parsed as shell commands, thus preserving paths with spaces as such.
-
- 11 Oct, 2016 1 commit
-
-
Martin Flöser authored
Summary: In the situation that a wl_client gets destroyed while still wl_resources are around it can happen that one of them calls into the ClientConnection during the cleanup handling which gets triggered at the same time. This can then trigger a crash. This change uses deleteLater for the ClientConnection and sets the hold wl_client pointer to null instead of deleting directly. So the ClientConnection is still around while the Resources gets cleaned up. This is similar to the cleanup of Resource where on unbind the wl_resource pointer is set to null and the Resource gets delete later. BUG: 370232 FIXED-IN: 5.28 Reviewers: #plasma, bshah Subscribers: plasma-devel Tags: #plasma_on_wayland Differential Revision: https://phabricator.kde.org/D3004
-
- 13 Jul, 2016 1 commit
-
-
Martin Flöser authored
Summary: Even if the XDG_RUNTIME_DIR is not set, KWayland should not crash if methods are invoked which only make sense after the server was started successfully. This was not yet the case for Display::dispatchEvents. Also the wl_display was not destroyed in the situation that creating the socket failed. Test Plan: Test case added which simulates the situation of no XDG_RUNTIME_DIR being set. Reviewers: #plasma_on_wayland Subscribers: plasma-devel Tags: #plasma_on_wayland Differential Revision: https://phabricator.kde.org/D2077
-
- 19 May, 2016 1 commit
-
-
Martin Flöser authored
Summary: So far the server component performed manual cleanup in some cases when a client disconnects. But this is not needed: the Wayland library calls the static unbind methods which do cleanup. If we cleanup ourselves this can result in double deletes in the worst case, so let's only use the Wayland functionality. Adjusted: * RegionInterface * SurfaceInterface * ShellSurfaceInterface (doesn't take a parent anymore) * DpmsInterface * QtSurfaceExtensionInterface * KeyboardInterface * PointerInterface * TouchInterface * DataOfferInterface * PlasmaShellSurfaceInterface For each adjusted case a test case is added to verify that the cleanup works. Exceptions are DpmsInterface as the actual Resource is not exposed at all in the Server component and DataOfferInterface as that is server side created. Reviewers: #plasma Subscribers: plasma-devel Tags: #plasma Differential Revision: https://phabricator.kde.org/D1640
-
- 13 Apr, 2016 1 commit
-
-
Martin Flöser authored
Summary: KWayland does not have a client implementation of the QtSurfaceExtension protocol. Thus the test is different: it starts a helper binary which creates a QWindow. The test closes that one which should terminate the started applications. Reviewers: #plasma Subscribers: plasma-devel Projects: #plasma Differential Revision: https://phabricator.kde.org/D1388
-
- 25 Jan, 2016 1 commit
-
-
Martin Flöser authored
Summary: Convenient API to get the absolute executable path for the pid. Reviewers: sebas, mart Subscribers: plasma-devel Differential Revision: https://phabricator.kde.org/D858
-
- 15 Dec, 2015 1 commit
-
-
Martin Flöser authored
Similar to OutputInterfaces we can have multiple SeatInterfaces so expose a way to get to all SeatInterfaces. REVIEW: 126364
-
- 10 Nov, 2015 1 commit
-
-
Martin Flöser authored
Wrapper around wl_client_destroy. In case the ClientConnection got created through Display::createClient we need to destroy the ClientConnection again. The exiting client will not cause it to be destroyed. Reviewed-By: Bhushan Shah
-
- 04 Nov, 2015 1 commit
-
-
Sebastian Kügler authored
REVIEW:125942
-
- 02 Sep, 2015 1 commit
-
-
Martin Flöser authored
* Raises wl_seat supported version to 4 in both server and client * Raises wl_keyboard supported version to 4 in wl_keyboard * wl_pointer and wl_touch are still on version 3 * Raises minimum Wayland version to 1.6
-
- 27 Nov, 2014 2 commits
-
-
Martin Flöser authored
If one passes StartMode::ConnectClientsOnly the socket in XDG_RUNTIME_DIR is not created and instead one can only connect to this server using the Display::createClient method. A very nice solution to just have a Server and one dedicated Client talk to each other.
-
Martin Flöser authored
This allows connecting a client without going via the socket name. E.g. to create a socketpair in the server and fork to exec the client.
-
- 26 Nov, 2014 2 commits
-
-
Martin Flöser authored
The button state is a seat-global state and not a per pointer state. All pressed/released and axis events are moved to the SeatInterface and just invoke the related method on the focused surface pointer.
-
Martin Flöser authored
Makes PointerInterface more like other Interface classes wrapping wl_resource. The most important change is the handling of the focused surface. This is now kept in the SeatInterface and can also be set if there is no PointerInterface for the client yet. The unit tests had to be adjusted and some are also disabled as the button events are not yet moved into SeatInterface.
-
- 25 Nov, 2014 3 commits
-
-
Martin Flöser authored
This method is supposed to return the PointerInterface for the current focused surface. At the moment it just creates the one global PointerInterface. The existing SeatInterface::pointer method got removed as that is actually wrong usage.
-
Martin Flöser authored
PointerInterface should only wrap a Resource. In order to do so all global state needs to move into the Global.
-
Martin Flöser authored
-
- 17 Nov, 2014 3 commits
-
-
Martin Flöser authored
-
Martin Flöser authored
-
Martin Flöser authored
The ClientConnection is managed by Display. Whenever one tries to get a ClientConnection for a wl_client* and it doesn't exist yet a new one will be created and a clientConnected signal will be emitted. Also there is a clientDisconnected signal. ClientConnection provides access to pid, uid and gid. The idea is to extend it to provide access to all the resources created for the client.
-