- Sep 04, 2019
-
-
Marius Vlad authored
Scanout assignement of views was previously conditioned by views being opaque, as to allow views with non-opaque buffers reach overlays. Allow for non-opaque buffers to reach the scanout as well (as to avoid the case where the last view will try reaching the overlay but can not longer due other views being assigned to them). Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
- Sep 03, 2019
-
-
Marius Vlad authored
Under some circumstances, where the HW allows underlays we should try to assign the views to them. The restriction no longer hold if view is not opaque and there could be a plane available for it. Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
overlays/scanout planes This basically removes the restriction in which we were forced into renderer mode of compositing when determining that the views would be occluded if placed in the overlays. We turn it back on once we exhaused (for the lack of a better term) all available planes the HW made available to us. If zpos is available and could place the view in the plane, we use the zpos property previously read and set the zpos in the plane state (to apply). If the end, if we managed to used all of them, we will re-instantiate the restriction. Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
We need some way to compute the no of planes that have zpos such that we can determine when we can no longer ascertain that the HW planes, and, implicily their zpos property, can be used to assign views to them, and finally can remove the restriction in place when views are overlay occluded. This adds also a function to reset to the initial value such that we can re-use next time the propose state is executed. Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
Might prove useful at a later point of time when retrieving the property. Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
Functional no change, as nobody makes use of it. Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
placing non-opaque views into the overlay plane Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
- Aug 30, 2019
-
-
Ankit Nautiyal authored
Currently, a check is missing for the case if the HDCP Content Type property is requested, but is not supported by the driver. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
- Aug 26, 2019
-
-
Ankit Nautiyal authored
Modify weston.ini man page to update that drm-backend supports HDCP. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
Ankit Nautiyal authored
In case of enforced protection mode, the renderer takes care of censoring the protected content when the output recording is going on. But in case of relaxed protection mode, the client must be notified to avoid showing the protected content, if the output recording is on. This patch handles the case, where the content-protection is enabled with relaxed protection mode, and notifies the client, whenever the recording is started or stopped. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
Contents on an ouput are captured when screenshooter/recorder/screen sharing is enabled. In such cases the protected content must be censored to ensure that it is not recorded along with unprotected content. This is a required only when the surface protection is in enforced mode. Signed-off-by: Harish Krupo <harishkrupo@gmail.com> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
Ankit Nautiyal authored
Currently, the idle task for updating surface protection is scheduled in case of change in the output mask of a surface or in case of change in protection status of an output. This patch adds a function for reusing the code to schedule the idle-tasks, that can be called whenever there is a chance of a change in the protection status of a surface. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
Ankit Nautiyal authored
The member disable_planes of weston_output signifies the recording status of the output, and is incremented and decremented from various places. This patch provides helper functions to increment and decrement the counter. These functions can then be used to do processing, before and after the recording has started or stopped. Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
Ankit Nautiyal authored
Currently drm-layer supports HDCP1.4 using connector property: Content Protection. This property if available for a platform, can be read and set for requesting content-protection. Also, the patch series [1] adds HDCP2.2 support in drm, and patch [2] adds support to send udev events for change in connector properties, made by the kernel. This patch adds these HDCP connector properties in weston, and exposes the content-protection support to the client for drm-backend. It adds the enums to represent 'Content Protection' and 'Content Type' connector properties exposed by drm layer. It adds a member 'protection' in drm_output_state, to store the desired protection from the weston_output in the drm-backend output-repaint cycle. This is then used to write the HDCP connector properties for the drm_heads attached to the drm_output. The kernel sends uevents to the user-space for any change made by it in the "Content Protection" connector property. No event is sent in case of change in the property made by the user-space. It means, when there is a change of the property value from "DESIRED" to "ENABLE" i.e. successful authentication by the kernel, a uevent will be generated, but in case of userspace requesting for disabling the protection by writing "UNDESIRED" into the property, no uevent will be generated. This patch also adds support for handling new udev events for HDCP connector property changes. Any such change, triggers change in the weston_head's current_protection. [1] https://patchwork.freedesktop.org/series/57233/#rev7 [2] https://patchwork.freedesktop.org/patch/303903/?series=57233&rev=7 Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
-
- Aug 23, 2019
-
-
Simon Ser authored
-
Simon Ser authored
-
62626cbf ensures that the GL render will not render a view's content to the screen when the surface has requested a higher content-protection level than the output currently offers. When the HDCP MR was split into the core content-protection support in !83 and specific DRM support for HDCP in !48 (not yet landed), this opened a hole where the DRM backend could promote a view to a hardware plane, even if the output offered a lower protection level than the surface wanted to enforce. In the DRM backend, check the desired protection level, and refuse to promote the view to a hardware plane if the output does not offer sufficient protection. This will lead to presentation falling back to the renderer, which may censor the content, reduce quality, etc. Signed-off-by: Daniel Stone <daniels@collabora.com> Fixes: 4b6e73d6 ("libweston: Add support to set content-protection for a weston_surface")
-
This ensures that the default signal action doesn't kill weston-terminal when the terminal tries to paste into a pipe whose read end has already been shut down. (For example, a pipe from a misconfigured program or from one which crashes/exits before the terminal calls write().) Signed-off-by: Manuel Stoeckl <code@mstoeckl.com>
-
- Aug 19, 2019
-
-
Marius Vlad authored
Otherwise 'log_extensions()' will not know how to properly format the data. Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Reported-by: Pekka Paalanen <pekka.paalanen@collabora.com>
-
Marius Vlad authored
Information is needed for 'vlog()' and 'vlog_continue()' (others depend on them). Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
- Aug 16, 2019
-
-
Simon Ser authored
-
The function pixman_blt may return false in case there is no accelerated blit function available. In this case the remote shared screen stays black. This has been observed on Weston compiled for aarch64. In currrent pixman 0.38.4 there is no accelerated pixman_blt function for aarch64 available. Use pixman_image_composite32 instead which is guaranteed to have a working fallback implementation. Fixes: #253 Signed-off-by: Stefan Agner <stefan@agner.ch>
-
Calculate damage region after resizing the cache image. This avoids unnecessary calculation of damaged regions on resize, makes sure that the whole screen is considered damaged on resize and simplifies error handling. Signed-off-by: Stefan Agner <stefan@agner.ch>
-
Make sure damage region gets properly unreferenced in error cases. Signed-off-by: Stefan Agner <stefan@agner.ch>
-
Calculate y_orig separately first makes it easer to understand the code and aligns with how pixels are read in screenshooter.c. Signed-off-by: Stefan Agner <stefan@agner.ch>
-
- Aug 15, 2019
-
-
Link Mauve authored
This was caused by weston_wm_handle_xfixes_selection_notify() calling weston_seat_set_selection() with a NULL source, apparently only sometimes when closing an Xwayland window.
-
- Aug 12, 2019
-
-
Check return values for wl_display_dispatch_* functions, so that the program stops running when the compositor that it is connected to crashes. Signed-off-by: Manuel Stoeckl <code@mstoeckl.com>
-
Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Reported-by: Pekka Paalanen <pekka.paalanen@collabora.com>
-
- Aug 06, 2019
-
-
Marius Vlad authored
Fixes the following warn/error when using combination of flags like building with debug, when disabling optimization and/or when enabling ASAN: ../shared/option-parser.c:61:1: error: control reaches end of non-void function [-Werror=return-type] Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
Marius Vlad authored
No need to duplicate messages. Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
- Aug 02, 2019
-
-
Simon Ser authored
-
A few things have changed: - Meson is used instead of autotools - Wayland and Weston releases are not synchronized anymore - Artifact deployment happens via wayland.freedesktop.org's Git repo While at it, also convert the file to Markdown. Instructions to locally install Xwayland/libinput have been dropped. Signed-off-by: Simon Ser <contact@emersion.fr>
-
Although we already supported minor version 2 of the explicit sync protocol, we couldn't advertise it previously, since it was not in any released version of wayland-protocols. With the release of wayland-protocols 1.18, which includes minor version 2 of this protocol, and the recent update in weston to require 1.18, we can now safely advertise minor version 2. Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
-
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
-
- Aug 01, 2019
-
-
Commit 4fc5dd00 ("compositor: add capability CAPTURE_YFLIP") introduced a capability flag which indicates whether y-flipping is necessary. As already indicated in that commit message, it seems that pixman flipps the y-axis only due to historic reasons. Drop y-flipping and use the WESTON_CAP_CAPTURE_YFLIP flag to indicate that y-flipping is not necessary. This simplifies code and improves screen share performance (on my test by about 3% down to 18% CPU load on the sharing instance of Weston). Signed-off-by: Stefan Agner <stefan@agner.ch>
-
- Jul 31, 2019
-
-
To fully allow parallel-installation of libweston, we have to make sure anything that is implemented in libweston is in a versioned directory. Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
-
- Jul 26, 2019
-
-
Stefan Agner authored
When building without GL renderer the compiler prints the following warning: ../clients/subsurfaces.c: In function ‘egl_state_create’: ../clients/subsurfaces.c:225:35: warning: passing argument 1 of ‘weston_platform_get_egl_display’ makes pointer from integer without a cast [-Wint-conversion] 225 | weston_platform_get_egl_display(EGL_PLATFORM_WAYLAND_KHR, | ^~~~~~~~~~~~~~~~~~~~~~~~ | | | int ... Define the fallback implementation of weston_platform_get_egl_display to take an integer which is the underlaying datatype of EGLenum. Signed-off-by: Stefan Agner <stefan@agner.ch>
-