| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  |  | 
|  | The logic isn't correct. | 
|  |  | 
|  | - wlr_output_layout_add{,_auto}() now return a bool indicating whether
  the function has succeeded.
- wlr_output_layout_move() is removed.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/1083 | 
|  | wlroots uses "// private state" comments to denote structure fields
which shouldn't be accessed by compositors, so let's drop
wlr_output_layout_output_state and inline its fields into
wlr_output_layout_output; this also simplifies layout output creation. | 
|  |  | 
|  | Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3545 | 
|  |  | 
|  |  | 
|  |  | 
|  | Query the formats at init time, then forget about the renderer.
This will allow wl_drm to be created with a list of formats instead
of a renderer, and will behave better after a GPU reset. | 
|  | The backend no longer changes the output state behind the
compositor's back. Instead, compositors can listen to the "commit"
event and check for WLR_OUTPUT_STATE_ENABLED/WLR_OUTPUT_STATE_MODE.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/2300 | 
|  | These will go away. | 
|  | These will go away. | 
|  | This lets the compositor call this function after the fact to replace
the renderer/allocator after a renderer context lost. | 
|  |  | 
|  | Some compositors may want to use the linux-dmabuf-v1 implementation
with a completely custom renderer. Add a function to create the
global with a default feedback. | 
|  | This isn't used anymore. | 
|  | The wlr_renderer field will go away in a subsequent commit.
Build the legacy device list from the default feedback instead. | 
|  | The wlr_renderer field will go away in a subsequent commit.
Instead of trying to create a texture, try to import the DMA-BUF
into the DRM device FD. | 
|  | To be able to add support for newer versions without breaking
changes. | 
|  | Make it clear this is a helper consuming a wlr_renderer. We'll
add a lower-level create() function which doesn't take it in the
next commit. | 
|  | Some compositors are not interested in wlr_session, for instance
nested compositors.
Disabling wlr_session removes the udev dependency. | 
|  | This allows compositors which don't use wlr_renderer to still use
wlroots' wl_shm implementation. | 
|  | This event is useful for e.g. sending the preferred buffer scale to the
client. | 
|  | This is a first step towards moving texture uploading out of
wlr_compositor.
This commit allows compositors to opt-out of the texture uploading
by passing a NULL wlr_renderer. An immediate user of this is
gamescope, which currently implements a stub wlr_renderer just to
make wlr_compositor happy. | 
|  |  | 
|  | Unused. | 
|  | No reason why the GLES2/Pixman renderers should depend on the
backend. | 
|  | We can just forward-declare the struct instead. | 
|  | We don't actually need to pull that header here. | 
|  | Let's just forward-declare struct wlr_backend instead.
We need to fixup the Vulkan renderer: it needs makedev(), which
got included by chance via <wlr/backend.h> → <wlr/backend/session.h>
→ <libudev.h>. | 
|  |  | 
|  |  | 
|  | This allows users to setup event listeners before the server is
actually started. | 
|  | This can be used to know when wlr_xwayland_server decides to start
a new Xwayland process. At that point the wl_client has already
been created but the Xwayland process hasn't been started yet. | 
|  |  | 
|  |  | 
|  | References: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/163 | 
|  | Use wlr_compositor.h and wlr_subcompositor.h instead. | 
|  | This function is not used anymore. Backends have no good reason to
damage outputs. | 
|  | This no longer has purpose. | 
|  | Up until now, wlr_backend_autocreate() created the wlr_session and
then stuffed it into struct wlr_multi_backend so that compositors
can grab it later.
This is an abuse of wlr_multi_backend and the wlr_backend API:
wlr_backend_get_session() and wlr_multi_backend.session only exist
to accomodate the needs of wlr_backend_autocreate(). What's more,
the DRM and libinput backends don't implement
wlr_backend_impl.get_session.
Instead, return the struct wlr_session to the compositor in the
wlr_backend_autocreate() call. wlr_backend_get_session() will be
removed in the next commit. | 
|  | This is a re-implementation of wl_shm. The motivations for using
this over the one shipped in libwayland are:
- Properly handle SIGBUS when accessing a wl_buffer's underlying
  data after the wl_buffer protocol object has been destroyed.
  With the current code, we just crash if the client does that
  and then shrinks the backing file.
- No need to fight the wl_shm_buffer API anymore. This was awkward
  because we weren't notified when clients created a wl_shm buffer,
  and this doesn't play well with our wlr_buffer abstraction.
- Access to the underlying FD. This makes it possible to forward
  the wl_shm buffer to a parent compositor with the Wayland/X11
  backends.
- Better stride checks. We can use our format table to ensure that
  the stride is consistent with the bpp and width. | 
|  | The protocol itself has been deprecated. | 
|  |  | 
|  |  | 
|  | Make it return a bool to indicate success/failure. Adapt the
various implementations to check errors. | 
|  |  |