Skip to content

Tags: janza/wlroots

Tags

0.13.0

Verified

This tag was signed with the committer’s verified signature. The key has expired.
emersion Simon Ser
wlroots 0.13.0

Andri Yngvason (1):
      types/seat: Clear focus in wlr_seat_destroy()

Ariadne Conill (1):
      drm: add fallback drmModeAddFB for drivers which do not support drmModeAddFB2

Brandon Dowdy (7):
      examples: remove dependency on wlr_egl from clients
      render/egl: remove wlr_egl_{create,destroy}_surface
      render/egl: remove *config_attribs and wlr_egl->config
      examples: remove "major" and "minor" from egl_common.c
      render/egl: add check for EGL_KHR_surfaceless_context
      examples/egl_common: make attribs const
      region: remove leftover description of resource_list

BrassyPanache (1):
      Expose ICCCM input status

Chris Chamberlain (1):
      Free xwayland cursor in wlr_xwayland_destroy

Daniel Kondor (1):
      layer-shell: allow new values for keyboard-interactivity

Dominik Honnef (1):
      xwayland: use pipe instead of SIGUSR1 to signal readiness

Ilia Bozhinov (10):
      texture: document that functions should not be called while rendering
      xwm: add wlr_xwayland_surface_restack()
      drm: do not unset make/model before emitting destroy event
      egl: fix memory leak
      noop: listen to display destroy and destroy the backend
      util: add support for generating UUIDs
      xdg-shell: add wlr_xdg_toplevel_set_parent
      types: add wlr_xdg_foreign_registry
      types: add wlr_xdg_foreign_v1
      types: add wlr_xdg_foreign_v2

Ilia Mirkin (8):
      backend/x11: set a blank cursor rather than hiding globally
      backend/x11: make sure output transform matrix is initialized
      backend/x11: add support for scanout mode
      backend/x11: skip events we don't care about
      backend/x11: keep track of exposed rects, add them to damage regions
      xwayland: free render picture backing cursor
      backend/x11: use native cursors
      backend/x11: clamp hotspot to texture bounds

Isaac Freund (28):
      Replace wlr_key_state with wl_keyboard_key_state
      Use uint32_t in wlr_renderer_begin signature
      Remove unneeded includes from wlr_input_device.h
      backend/libseat: fix change_vt return value
      wlr-output-management: add missing NULL check
      screencopy: handle compositor not setting damage
      screencopy: use output transform for damage copy
      screencopy: check if damage committed before copy
      screencopy: don't use output transform for damage copy
      docs: fix error in wlr_output_set_damage() comment
      xwayland: avoid crash on repeated server_finish_display() call
      subsurface: handle NULL parent in get_root_surface
      toplevel-management: ignore inert seats
      toplevel-management: handle strdup failure
      toplevel-management: avoid redundant state events
      docs: wlr_surface_from_resource cannot return NULL
      primary selection: destroy devices before manager
      gtk primary selection: destroy devices before manager
      layer shell: advertise version 3
      xdg shell: make unconstrain_from_box arg const
      xdg shell: add wlr_xdg_surface_for_each_popup_surface()
      xdg shell: add wlr_xdg_surface_popup_surface_at()
      layer shell: add wlr_layer_surface_v1_popup_surface_at()
      xdg/layer shell: reduce code duplication in iterators
      output-management: use same types as wlr_output
      xdg shell: remove wlr_xdg_surface_for_each_popup()
      layer shell: rename popup iterator for consistency
      xdg-output: destroy outputs before manager

Justus Rossmeier (1):
      tablet_v2: Fix implicit grab end detection

Kenny Levinsen (7):
      backend/drm: Use legacy gamma size for legacy backend
      surface: Make send_enter store entered outputs
      backend/wayland: Avoid uninitialized read
      wlr_seat_pointer: Remove log on notify_button
      backend/session/libseat: Set loglevel to INFO
      docs: Minor libseat corrections
      xdg_shell: Fix invert_y of top right anchor

Lukas Märdian (2):
      Fix false positive -Wstringop-truncation
      xcursor: use strncat instead of strncpy

Manuel Stoeckl (3):
      xwayland/xwm: make atom_map const
      xcursor: make cursor data and metadata const
      Make implementation function lists static const

Marten Ringwelski (1):
      wlr-output-management: Handle modes added after initializing

Mykola Orliuk (8):
      backend/wayland: Bind seat listener to wlr_wl_seat
      backend/wayland: Link input devices with seats
      backend/wayland: Add registering multiple seats
      backend/wayland: Use seat name in input names
      backend/wayland: Listen to pointers from all seats
      backend/wayland: Bind pointer listener to seat
      backend/wayland: Add active pointer per host seat
      backend/wayland: Set cursor indivdualy per output

Quantum (1):
      render/wlr_texture: clamp texture coordinates to edge by default

Ronan Pigott (2):
      render/egl: recognize EGL_BAD_DEVICE_EXT error
      backend/drm: avoid gcc stringop-truncation warning

Rouven Czerwinski (1):
      util: fix uuid support for freebsd

Simon Ser (287):
      backend/libinput: require libinput 1.14
      render: introduce wlr_allocator
      render: introduce wlr_gbm_allocator
      render/drm_format_set: introduce wlr_drm_format_dup
      render: introduce wlr_swapchain
      buffer: add wlr_client_buffer_get
      render: introduce wlr_renderer_bind_buffer
      render/gles2: implement wlr_renderer_bind_buffer
      render/gles2: fix y-inverted output when rendering to buffer
      backend/drm: use wlr_swapchain
      render/swapchain: add support for buffer age
      backend/drm: add support for wlr_swapchain buffer age
      backend/drm: get rid of wlr_drm_fb_type
      backend/drm: add support for wlr_swapchain multi-GPU
      backend/drm: check drm_surface_render_black_frame return value
      render/egl: introduce wlr_egl_dup_drm_fd
      render: introduce wlr_renderer_get_drm_fd
      backend/headless: switch to wlr_swapchain
      backend/headless: implement export_dmabuf
      build: improve summary via bool_yn
      render/egl: stop including eglmesaext.h
      backend/session: don't return FD on failure in open_file
      backend/session: operate on wlr_device
      backend/session: filter udev events by sysname
      backend/session: introduce wlr_session.events.add_drm_card
      backend/session: wait for DRM device if none found
      Revert "session/logind: support CanGraphical property"
      backend/session: replace session_signal with events.active
      backend/session/logind: log when using XDG_SESSION_ID
      backend/session: add a timeout waiting for GPUs
      backend/x11: log errors
      backend/x11: log unhandled X11 events
      backend/x11: log unhandled client messages
      backend/drm: stop force-probing connectors
      backend/wayland: don't set EGL visual
      render/egl: don't rely on being able to open primary node
      render: expand wlr_renderer_get{,_dmabuf}_formats docs
      render: remove wlr_renderer_format_supported
      render: introduce wlr_renderer_get_dmabuf_render_formats
      backend/headless: use a format suitable for rendering
      render: rename wlr_renderer_get_dmabuf_formats
      render: rename wlr_renderer_get_formats
      render: assert {X,A}RGB8888 are supported
      render/egl: remove wlr_egl.external_only_dmabuf_formats
      backend/drm: rotation is a plane property
      backend/drm: "scaling mode" is a connector property
      Revert "backend/drm: stop force-probing connectors"
      xwayland: add -core to flags
      build: add leftover WLR_HAS_LIBCAP
      backend/drm: take a wlr_drm_format in init_drm_surface
      render/drm_format_set: introduce wlr_drm_format_intersect
      backend/drm: query render formats
      backend/drm: remove unused if in drm_connector_move_cursor
      backend/session/libseat: set XDG_SESSION_TYPE
      render/egl: support config-less wlr_egl
      backend/headless: create a config-less EGL context
      backend/drm: use EGL_PLATFORM_GBM_KHR
      backend/drm: unset current surface before importing
      render/drm_format_set: allocate using cap when duplicating
      backend/drm: stop tracking overlay planes
      backend/headless: add support for direct scan-out
      backend/drm: fix missing wlr_drm_format.cap
      render/drm_format_set: assert len <= cap when duplicating
      backend/drm: remove EGL config
      render/gles2: don't eglGetConfigAttrib on EGL_NO_CONFIG_KHR
      render/gles2: query alpha size from render buffer
      output: improve basic test logging
      backend/drm: remove workaround for amdgpu DP MST
      output: stop assuming a frame is pending in init
      backend/wayland: stop rendering black frame on init
      backend/wayland: use wlr_swapchain for main surface
      backend/wayland: use wlr_swapchain for cursor surface
      build: move wayland-egl dependency to examples/
      backend/wayland: query render formats
      backend/x11: switch to wlr_swapchain
      backend/x11: query modifiers supported by X11 server
      backend/x11: fix xinput mask mixed up with present
      backend/drm: stop using GBM flags
      Remove inline keyword
      render/gles2: require GL_EXT_unpack_subimage
      backend/drm: dup FD before wlr_gbm_allocator_create
      backend: use fcntl(F_DUPFD_CLOEXEC) instead of dup
      backend/drm: add wlr_drm_connector.backend
      backend/headless: select the rendering device ourselves
      backend/x11: fix DRI3 formats not used
      render/allocator: ignore NULL in wlr_allocator_destroy
      backend/drm: remove nouveau workaround
      backend/drm: add wlr_drm_backend.name
      backend/drm: print DRM device name when scanning connectors
      render/drm_format_set: add wlr_drm_format_{create,add}
      backend/drm: use wlr_drm_format_{create,add}
      backend/x11: use DRI3Open to get DRM FD
      util/time: add timespec_from_nsec
      backend/x11: send more precise output present events
      backend/drm: introduce wlr_drm_conn_log
      backend/drm: introduce wlr_drm_connector.name
      backend/drm: refactor wlr_output destruction
      backend/drm: remove unused wlr_drm_plane.drm_format
      backend/wayland: remove EGL config
      backend/wayland: re-use wl_buffers
      backend/x11: re-use pixmaps
      backend/x11: destroy buffers when destroying output
      backend/drm: don't save texture in gbm_bo user data
      backend/drm: grab DMA-BUF from wlr_buffer instead of gbm_bo
      backend/drm: drop export_drm_bo
      backend/drm: make drm_fb_acquire return a FB ID
      backend/drm: remove drm_fb_acquire
      backend/drm: error on size mismatch in drm_surface_blit
      backend/drm: destroy DRM connectors that disappear
      backend/drm: assert connector state after wlr_output_destroy
      backend/drm: use plural form for possible_crtcs
      backend/drm: don't retry page-flip when modifiers are unsupported
      Remove contrib/_incr_version
      docs/env_vars: _WAYLAND_DISPLAY isn't used anymore
      docs/env_vars: document seatd session
      backend/drm: log whether ADDFB2 modifiers are supported
      backend/drm: add special case for cursor in add_plane
      backend/drm: make drmModePlane arg in add_plane const
      backend/drm: use connector log helpers in atomic backend
      client-buffer: remove unnecessary wlr_resource_get_buffer_size
      Stop using wlr_texture_get_size
      backend/drm: make listener names more idiomatic
      backend/x11: implement a real rendering loop
      backend/x11: create per-window present event contexts
      backend/drm: force LINEAR for cursor plane formats
      render/drm_format_set: add special case for LINEAR-only formats
      backend/drm: extract linear format creation into function
      backend/drm: remove special linear case for cursor plane
      Remove wlr_create_renderer_func_t
      backend/x11: always open render node
      backend/x11: print version on extension error
      backend/drm: ignore hotplug events while inactive
      backend/drm: stash pending page-flip CRTC
      examples: remove visual for EGL_PLATFORM_WAYLAND_EXT
      examples: request an EGL config
      backend/wayland: re-use cursor wl_buffers
      backend/session: allow wlr_session_find_gpus to return an error
      backend/wayland: remove unnecessary flags from event source
      render: remove EGL config and visual from wlr_renderer_autocreate
      backend/drm: don't log errno on plane_get_next_fb failure
      render/egl: document that config may be zero
      render/egl: use KHR function pointer type
      render/egl: document NULL config_attribs passed to wlr_egl_init
      backend/drm: make wlr_drm_plane.{pending,queued,current}_fb pointers
      backend/drm: introduce drm_fb_create
      backend/drm: add wlr_drm_buf.local_wlr_buf
      backend/drm: only keep track of local buffer
      backend/drm: re-use FBs
      backend/drm: stop using surface size for BO
      xwayland: remove protocol debug messages
      protocol: add drm.xml
      backend/wayland: use the EGL GBM platform
      output-damage: use output commit event
      gamma-control-v1: schedule frame when resetting gamma LUT
      build: remove Clang workarounds
      render/gles2: fix EGL use-after-free
      build: use more consistent feature names in summary
      render/egl: remove support for EGL_NATIVE_VISUAL_ID
      render/egl: remove wlr_egl_swap_buffers
      render/egl: replace init/finish with create/destroy
      render/egl: remove surface and buffer age args from make_current
      backend/drm: fix segfault in page_flip_handler
      backend/drm: remove unnecessary wlr_drm_fb.wlr_buf check
      render/gles2: save/restore EGL context in destroy_buffer
      render: document wlr_renderer_bind_buffer
      backend: remove unnecessary GLES2 includes
      output-damage: stop listening to scale/transform events
      output-layout: stop listening to scale/transform events
      output: remove scale/transform events
      render/gles2: restore EGL context after texture operations
      render/gbm_allocator: log GBM backend name
      render/gbm_allocator: document that DRM primary FDs work
      render/gbm_allocator: fix gbm_device use-after-free
      render: extract gles2 build files to subdir
      backend: add get_drm_fd to interface
      backend/multi: implement get_drm_fd
      backend/wayland: implement get_drm_fd
      backend/drm: implement get_drm_fd
      backend/x11: implement get_drm_fd
      backend/headless: implement get_drm_fd
      render/gles2: make EGL context current in bind_buffer
      output-damage: stop relying on output pending state on commit
      output: send commit event after pending state is cleared
      render/egl: fix gbm_device use-after-free
      render: introduce private wlr_renderer_autocreate_with_drm_fd
      backend/drm: use local DRM FD for wlr_rend
      backend/headless: create renderer after wlr_backend_init
      render/gbm_allocator: export to DMA-BUF on init
      render/gbm_allocator: set modifier to INVALID if implicit
      backend/x11: log when creating X11 backend
      backend/x11: log DRM node name
      backend/x11: add support for DRI3 1.0
      backend/x11: add xcb_dri3_pixmap_from_buffers check for n_planes
      backend/drm: add support for the subconnector property
      backend/drm: add wlr_drm_connector_get_id
      backend/drm: fix modifiers for cursor plane buffers
      backend/x11: fix region not being actually used
      Revert "render/egl: remove unused gbm_device member"
      Revert "render: add wlr_egl_create_from_drm_fd function"
      render/gbm_allocator: avoid drmPrimeHandleToFD
      backend/drm: document wlr_drm_plane surface fields
      backend/drm: simplify drm_fb_lock_surface
      backend/drm: don't blit in drm_fb_import
      xwayland: drop unused enum net_wm_state_action
      render/egl: fix NULL dereference when using llvmpipe
      xwayland: fix extraneous NET_WM_STATE log messages
      backend/x11: remove output_set_refresh
      backend/wayland: remove unnecessary cast
      render/egl: log whether DMA-BUF modifiers are supported
      render/dmabuf: cleanup on wlr_dmabuf_attributes_copy error
      render/dmabuf: make src arg const in wlr_dmabuf_attributes_copy
      region: make wlr_region_create private
      region: remove resource_list arg from region_create
      backend/wayland: flush remote display
      Fix bad indentation
      readme: fix typo in xcb-icccm dependency
      render/gles2: remove YUV blocklist
      backend/x11: drop x11-xcb dependency
      seat: use WL_SEAT_ERROR_CAPABILITY
      surface: check buffer size is compatible with scale
      build: remove extra whitespace
      examples: drop wlroots dep from egl_common.c
      examples: drop wlr/render/egl.h include from client examples
      examples: remove wlroots dep from client examples
      build: use dictionnary for features instead of configuration_data
      build: set have_* dep variables for our features
      build: set pkg-config variables for our features
      Replace leftover conf_data with features
      build: bump meson version to 0.56.0
      surface: move INVALID_SIZE check into surface_state_finalize
      surface: don't send protocol error on invalid buffer size
      backend: add error messages in attach_render impls
      render/gles2: check buffer stride when uploading texture
      render/gles2: remove current_buffer checks
      render/shm_format: add wl_shm_format conversion helpers
      render/gles2: convert format table to DRM formats
      render/gles2: replace wlr_gles2_texture.wl_format with drm_format
      render: use DRM formats in wlr_renderer_get_shm_texture_formats
      output: use DRM format in wlr_output_preferred_read_format
      render: use DRM formats in wlr_renderer_read_pixels
      render: use DRM formats in wlr_texture_from_pixels
      Remove unnecessary wayland-server-protocol.h includes
      build: add -Wformat=2 -Walloca
      build: rollback -Wformat=2
      buffer: add missing convert_wl_shm_format_to_drm call
      Fix wl_shm_format passed to wlr_texture_from_pixels
      examples: add libdrm partial dependency for compositors
      readme: make it clear build/ is a dir
      readme: use spaces for list indent
      readme: use references for links
      backend/session: fix KMS device filtering
      xwayland: add dependency on xwayland
      xwayland: check executable exists on init
      xwayland: use -listenfd if available
      backend/drm: add new writeback and SPI connector types
      output: document hotspot coord space
      output: fix transform matrix for 90/270 rotations
      render/egl: don't fail on EGL_MESA_device_software
      screencopy: stop using wlr_renderer_blit_dmabuf
      Fix buffer blit matrices
      ci: update xwayland dep on alpine
      examples/dmabuf-capture: stop using av_init_packet
      linux-dmabuf-v1: always advertise support for implicit modifiers
      surface: introduce commit sequence numbers
      surface: introduce cached states
      subsurface: use cached surface state
      subsurface: immediately unlock cached state in set_desync
      render/egl, backend/wayland: add workaround for split render/display setups
      xwayland: assume no WM_HINTS means window wants input
      xwayland: require xcb-icccm
      xwayland: use ICCCM state defines from xcb-icccm
      backend/drm: use format table in test_buffer
      build: add subproject fallback for libseat
      surface: make wlr_surface_create private
      surface: remove resource_list arg from surface_create
      render/egl: stop relying on platform for high priority
      backend/drm: try to import buffer when testing it
      backend/drm: improve logs in drm_fb_create
      backend/drm: reject DMA-BUFs with flags
      backend/x11: reject DMA-BUFs with flags
      build: simplify HAS_LIBUUID definition
      build: use get_variable instead of get_pkgconfig_variable
      backend/drm: don't set NONBLOCK with TEST_ONLY
      backend/drm: downgrade test-only commit failure log level
      backend/drm: use atomic test-only commits for direct scan-out
      backend/drm: stop testing for buffer in drm_connector_commit_buffer
      build: bump to v0.13.0

Simon Zeni (15):
      ci: build tinywl
      tinywl: fix wlr_backend_autocreate call
      backend: remove wlr_egl from all backends
      remove unnecessary egl includes
      render: drop egl parameters from wlr_renderer_autocreate
      render: remove egl include from wlr_renderer
      render: add wlr_egl_create_from_drm_fd function
      render/egl: remove unused gbm_device member
      render/egl: fail to create wlr_egl on software renderer
      output: improve transform matrix calculation
      render/pixel_format: introduce pixel format info table
      Move render/shm_format functions to render/pixel_format
      backend/drm: use pixel format table in renderer
      render/pixel_format: add XBGR8888 and ABGR8888 format
      render/gles2: remove depth and bpp gles2_pixel_format, use drm pixel format

Stephane Chauveau (1):
      backend/drm: don't assume possible_crtcs has only one bit set

Tadeo Kondrak (3):
      xdg-foreign: Make imported object inert when exported is destroyed
      xdg-foreign: rename finish_* functions to destroy_*
      text_input_v3: correct typo in enum field

Tudor Brindus (21):
      xwayland: use wlr_log_errno instead of %m
      xwayland/selection: prevent fd leak on unsupported MIME type
      xwayland/selection: rename Wayland-facing data and helpers
      xwayland/selection: make `xwm_data_source_write` return 0 on failure
      xwayland/selection: explicitly bail if first write to Wayland fd fails
      xwayland/selection: simplify incremental transfer control flow
      xwayland/selection: extract out property requests
      xwayland/selection: refactor remaining incremental transfer code
      xwayland/selection: end incr transfer on empty prop, not next selection
      xwayland/selection: don't request another selection while one is pending
      xwayland/selection: don't leak Wayland fd if ConvertSelection fails
      xwayland/selection: destroy all selections on Xwayland restart
      xwayland/selection: make xwm_selection_finish take a wlr_xwm_selection *
      xwayland/selection: introduce `xwm_selection_transfer_init`
      xwayland/selection: make xwm_selection_init take a wlr_xwm_selection *
      xwayland/selection: use one X11 window per incoming transfer
      xwayland/selection: use one target window per selection
      xwayland/selection: allow simultaneous Wayland-to-X11 transfers
      xwayland/selection: ignore requests for anything but the newest data
      xwayland/selection: log when proxy window loses ownership
      xwayland/selection: flush connection after changing xwm selection owner

fwsmit (1):
      examples/foreign-toplevel: Add documenation and output selection

zccrs (2):
      Use absolute paths in include in header files
      render/egl: check "EGL_KHR_platform_gbm" for EGL gbm platform

0.12.0

Verified

This tag was signed with the committer’s verified signature. The key has expired.
emersion Simon Ser
wlroots 0.12.0

Antonin Décimo (3):
      Fix typos
      Fix incorrect format parameters
      xwayland: free server in error path

Daniel De Graaf (1):
      wlr_virtual_keyboard: fix fd leak

Daniel Kondor (2):
      foreign-toplevel-management: report parent toplevel
      foreign toplevel: send parent event only to clients that support it

Devin J. Pohly (1):
      drm: fix uninitialized read

Drew DeVault (1):
      Remove xdg-shell v6

Guido Cella (1):
      render: Don't crash on 0 dimensions

Ilia Bozhinov (9):
      xwayland: do not allow apps to change focus after wlroots request
      make sure to fail setting gamma on disabled outputs
      backend/wayland: destroy relative pointer when output is disconnected
      wayland: emit relative pointer events only for current pointer
      xwayland: disconnect display destroy listener even if xwayland didn't initialize
      xwayland: add set_geometry event
      backend/wayland: add touch support to the wayland backend
      xdg_shell: fix a typo
      xdg_shell: handle inert popups

Isaac Freund (6):
      xdg-shell: split last-acked and current state
      layer-shell: add for_each_popup
      layer-shell: error on 0 dimension without anchors
      xdg_positioner: remove unused field
      wlr_drag: remove unused point_destroy field
      xwayland: remove unused listener

Kenny Levinsen (2):
      session: Add libseat backend
      session: Add missing init to direct-freebsd

Marten Ringwelski (1):
      backend/drm: Check if output is enabled before sending frame event

Mykola Orliuk (5):
      backend/wayland: manage cursor for current pointer
      backend/wayland: factor out wlr_wl_seat
      backend/wayland: add error flow in create_wl_seat
      backend/wayland: fix input creation error handling
      backend/wayland: fix some keyboard/touch leaks

Patrick Steinhardt (1):
      session: Don't refuse unprivileged creation of "direct" backend

Roman Gilg (3):
      output-management-v1: add head identifying events
      output-management-v1: send head identifying information
      output-management-v1: send complete head state on enable change

Ronan Pigott (1):
      virtual_pointer: remember current axis for axis events

Rouven Czerwinski (2):
      examples: remove unnecessary gles2.h imports
      xwm: add loop detection for read_surface_parent

Ryan Walklin (4):
      Implement logind session SetType method to change session type to wayland
      Also set XDG_SESSION_TYPE
      Don't set XDG_SESSION_TYPE unless logind SetType succeeds
      Quieten failure to set login session type

Scott Moreau (2):
      xwm: Set _NET_WM_STATE_FOCUSED property for the focused surface
      foreign toplevel: Fix whitespace error

Simon Ser (31):
      xwayland/xwm: don't insert surface in list on error
      xwayland/xwm: add prop count assert in xsurface_set_net_wm_state
      xwayland/xwm: use initializer for props in xsurface_set_wm_state
      render/gles2: make wlr_gles2_texture_from_* private
      render/gles2: keep ref to wlr_gles2_renderer in wlr_gles2_texture
      render/gles2: make push/pop debug functions take a wlr_renderer
      render/gles2: remove gles2_procs
      gamma-control-v1: fix use-after-free in gamma_control_handle_set_gamma
      examples/simple: use wlr_output_preferred_mode
      examples/simple: use wlr_renderer instead of GL
      Remove unnecessary wl_display_dispatch calls
      output: introduce wlr_output_event_commit
      output-power-management-v1: listen to output commit
      examples/dmabuf-capture: add extra roundtrip for wl_output listener
      backend/session/libseat: register log handler
      backend: remove check for _WAYLAND_DISPLAY
      backend/libinput: improve logger callback
      render: define EGL_NO_PLATFORM_SPECIFIC_TYPES (swaywm#2452)
      backend/drm: fix "a page-flip is already pending" errors on modeset
      xwayland: minor code style fixes
      xwayland: log unhandled NET_WM_STATE property changes
      gamma-control-v1: apply gamma LUT when output gets enabled
      screencopy: stop setting needs_frame flag
      backend/drm: export pending FB in export_dmabuf, if any
      output: update docs to reflect reality
      output: add when field to wlr_output_event_commit
      export-dmabuf: export DMA-BUF on output commit
      screencopy: perform DMA-BUF copy on output commit
      screencopy: send failed when copying a DMA-BUF with a region
      input-method: send modifiers in set_keyboard
      Update version to 0.12.0

Tobias Langendorf (1):
      xwm: add support for xwayland minimize

Tudor Brindus (11):
      examples: use `perror` instead of `fprintf` GNU %m `printf` extension
      xwayland: using %m in `wlr_log` is broken, use `wlr_log_errno` instead
      xwayland: fix use-after-free in selection handling
      xwayland: introduce WLR_XWAYLAND for specifying which Xwayland to use
      xwayland: remove stale transfers from the same requestor
      xwayland: notify requestor when we fail to respond to their request
      xwayland: fix minor typo in debug log
      types/wlr_keyboard: use bitmasks for wlr_keyboard_led and wlr_keyboard_modifier enums
      types/wlr_output_layout: use bitmask for wlr_direction
      util/edges: use bitmask for wlr_edges
      render/dmabuf: use bitmask for wlr_dmabuf_attributes_flags

Valentin (2):
      Use fixed size integer type
      Fix undefined behavior

nerdopolis (1):
      Accommodate for CONFIG_VT=0, all TTYs are in seat0, but not all seat0s have TTYs

0.11.0

Verified

This tag was signed with the committer’s verified signature. The key has expired.
emersion Simon Ser
wlroots 0.11.0

Aleksei Bavshin (1):
      xdg-shell: fix popups rendered outside of the screen

Andri Yngvason (15):
      virtual-pointer: Add request for mapping to specific output
      export-dmabuf: Schedule output frame on request
      export-dmabuf: Keep frame->output = NULL until frame is ready
      render: egl: Add utility functions for saving/restoring context
      render: Add wlr_renderer_blit_dmabuf()
      protocol: screencopy: Extend to report linux-dmabuf capability
      screencopy: Implement copying into linux-dmabuf
      examples: Add screencopy-dmabuf example
      render: Fix blit_dmabuf() breakage due to API change
      backend: drm: Fix dmabuf resource leak
      screencopy: Use correct constant for y-inversion
      render: gles2: Fix y-inversion in gles2_blit_dmabuf()
      screencopy: Use correct dmabuf to get y-inversion flag
      examples: screencopy-dmabuf: Fix y-inversion
      render: egl: Use current display to restore NULL context

Brian Ashworth (2):
      meson.build: update wayland requirement to 1.18
      wlr_keyboard_group: introduce enter and leave

David96 (1):
      Add wlr_surface_accepts_touch

Dorota Czaplejewicz (1):
      text_input_v3: Note features supported by the text field

Filip Sandborg (1):
      Fix uint32 overflow in fill_empty_gamma_table on Icelake platform

Greg Depoire--Ferrer (1):
      tinywl: Fix wrong anchor point while resizing a window

Greg V (1):
      xdg-shell: check for existing role before setting xdg_popup_surface_role

Guido Günther (4):
      Add wlr-output-power-management
      Implement wlr-output-power-management-v1
      examples: add output-power-management example client
      wlr_output_power_management_v1: Init output_power->link

Ilia Bozhinov (2):
      output-management: add current_configuration_dirty
      examples: make output-power-management oneshot by default

Isaac Freund (16):
      Send keyboard enter/leave on capability change
      Properly popluate keys array for enter on creation
      Send pointer enter/leave on capability change
      Return failure of wlr_renderer_init_wl_display()
      Return false on wlr_keyboard_set_keymap() failure
      tinywl: remove redundant create output global call
      Document the events of wlr_layer_surface
      tinywl: remove unused variables
      tinywl: handle request set selection
      layer shell: only send unmap on close if mapped
      Make wlr_xcursor_manager_load() return a bool
      layer-shell: handle serial wrapping overflow
      xdg-shell: handle serial wrapping overflow
      xdg-decoration: free old configure structs
      layer-shell: upgrade to v3, implement destructor
      layer-shell: remove unused surface list

Jan Beich (2):
      backend/session: allow GPU enumeration on FreeBSD
      xcursor: also look for cursor themes under ${datadir}/icons by default

Jan Staněk (1):
      Declare wlr_seat globals as extern

John Chadwick (1):
      xwm: end transfers when the requestor is destroyed

JonnyMako (1):
      backend/drm: fix missing cursor on external monitors with multi-GPU setup and nouveau

Julien Olivain (1):
      render/egl: include EGL/eglmesaext.h only if present

Kalyan Sriram (2):
      tinywl: fix geo_box bug in cursor resizing
      Don't send redundant capability updates

Kenny Levinsen (3):
      logind: Close fd before releasing device
      seat: Create inert objects for missing capabilities
      wlr_drag: Destroy drag after releasing grabs

Kirill Chibisov (1):
      xcursor: add xorg-x11 and cursors path to XCURSORPATH

Manuel Stoeckl (2):
      Fix output rotation direction
      output: fix output transform compositions

Michael Weiser (3):
      keyboard-shortcuts-inhibit: Implement the protocol
      keyboard-shortcuts-inhibit: Add client example
      idle-inhibit: Style and naming improvements

Rabit (1):
      Prevent memory leak in copypaste of the screencopy example

Rouven Czerwinski (4):
      backend/drm: add env variable to disable modifiers
      backend/drm: remove overzealous finish_drm_surface
      render: assert sane values for box functions
      surface: don't unset width and height in finalize

Scott Anderson (8):
      meson: Fix protocol includes for compositor examples
      examples: Fix compositor-examples
      wlr_surface: Post error if multiple role objects created
      backend/drm: introduce wlr_drm_fb
      backend/drm: don't have fallback atomic commits
      backend/drm: move atomic cursor code into pageflip code
      backend/drm: don't allow legacy to use direct scanout
      Remove libcap support

Scott Moreau (3):
      build: Add 'auto' to logind-provider combo option
      xwayland: Don't discard ready signals
      xwm: Destroy xwm on hangup or error

Simon Ser (129):
      build: replace version with soversion
      render: unconditionally disable implicit X11 includes
      meson: fix wayland-server minimum required version
      util: add wlr_output_destroy_safe
      output: don't destroy global immediately
      seat: don't destroy global immediately
      xwayland: ignore pointer focus changes
      backend/wayland: rename wl_seat.c to seat.c
      output: remove wlr_output_impl.schedule_frame
      backend/wayland: fix seat caps handling
      Introduce wlr_client_buffer
      output: add adaptive_sync_enabled property
      backend/x11: add support for adaptive_sync_enabled
      backend/drm: add support for adaptive_sync_enabled
      xwayland: use explicit indexes when initializing atom_map
      xwayland: remove duplicate _NET_WM_NAME entry
      xwayland: remove underscore prefix from atom names
      output: make wlr_output_schedule_frame set output->needs_frame
      output: don't send a needs_frame event if already sent
      util/log: improve time prefix
      render/gles2: remove duplicated format list
      buffer: remove unused wlr_client_buffer fields
      output: add comment about needs_frame in wlr_output_schedule_frame
      output: replace wlr_output.damage with a damage event
      backend/wayland: close keymap FD
      Gracefully handle inert wl_output resources
      buffer: add destroy event
      buffer: add a release event
      buffer: add width and height
      output: introduce wlr_output_test
      output: check buffer in wlr_output_test
      backend: reset EGL surface after buffer swap
      Add wlr_output_impl.rollback
      render/egl: make config attribs const
      backend: set EGL_RENDERABLE_TYPE and EGL_SURFACE_TYPE
      render/gles2: only call wlr_egl_bind_display if supported
      render: only expose linux-dmabuf if EGL extension is supported
      output: fix blurred hw cursors with fractional scaling
      output: check for buffer size compatibility in common code
      backend/wayland: check scan-out buffer is compatible in output_test
      output: fix maybe-uninitialized warning
      backend/multi: add backends at end of list
      build: use meson.override_dependency
      build: use dicts instead of get_variable
      build: use summary instead of message
      output_layout: improve docs
      render/drm_format_set: disallow DRM_FORMAT_INVALID
      render/gles2: add wlr_gles2_renderer_check_ext
      backend/headless: use FBOs instead of pbuffers
      backend/headless: add wlr_headless_backend_create_with_renderer
      render/texture: add width and height fields
      render/texture: make write_pixels optional
      backend/drm: strip alpha channel if necessary
      Remove .swp file added by mistake
      util/log: write log importance
      backend/drm: make page-flip error scarier
      examples/dmabuf-capture: use getopt
      backend/multi: handle backends depending on each other properly
      backend/headless: handle renderer destroy
      backend/drm: remove wlr_drm_interface.crtc_move_cursor
      backend/drm: remove unused fields
      backend/drm: remove mode argument to crtc_pageflip
      backend/drm: apply gamma LUT on page-flip
      backend/drm: rename crtc_pageflip to crtc_commit
      backend/drm: remove conn_enable from interface
      backend/drm: remove crtc_set_cursor from interface
      backend/drm: GAMMA_LUT_SIZE isn't atomic
      backend/drm: simplify atomic commit logic
      backend/drm: fix crash in session_signal
      backend/drm: remove missing cursor plane workaround
      backend/drm: fix combined modeset+enable commits
      backend/drm: disable cursor in dealloc_crtc
      backend/drm: print error in set_plane_props
      backend/drm: fix segfault in drm_crtc_page_flip
      output: make wlr_output_set_gamma atomic
      backend/drm: fix atomic commits when the GAMMA_LUT prop is missing
      Fix -Wreturn-type warnings
      render/egl: introduce wlr_egl_unset_current
      backend/drm: fix current EGL context on multi-GPU
      backend/drm: add missing wlr_egl_unset_current
      xwayland: split server
      xwayland: add option to disable WM
      render/egl: unset current context after swapping buffers
      backend/drm: rollback atomic blobs
      backend/drm: refuse to enable an output without a mode
      backend/drm: remove drm_connector_set_custom_mode
      backend/drm: remove enable_drm_connector
      backend/drm: make drm_connector_set_mode take a wlr_drm_connector
      backend/drm: nuke retry_pageflip
      backend/drm: introduce pending and current CRTC state
      backend/drm: don't set cursor if off-screen
      backend/drm: fix missing crtc->cursor NULL check
      Add comments for missing tablet tool entries
      backend/drm: rollback pending CRTC state on test commit
      backend/drm: make adaptive_sync atomic
      backend/drm: commit/rollback FBs in drm_crtc_commit
      backend/drm: drop extra wlr_output_update_enabled call
      backend/drm: always perform a CRTC commit in drm_connector_commit
      backend/wayland: fix spurious eglSwapBuffers failures
      render: stop making EGL context current in wlr_egl_init
      backend/drm: fix black screens when enabling output
      render: choose DMA-BUF texture target via eglQueryDmaBufModifiersEXT
      contributing: resource destroy handlers need to cleanup pointers
      contributing: add note about events that destroy objects
      backend/drm: fix stack overflow in dealloc_crtc
      buffer: document wlr_buffer_get_dmabuf DMA-BUF lifetime
      output: document wlr_output_export_dmabuf
      render/egl: explicit client extension handling
      examples/screencopy-dmabuf: call strncpy with maxlen - 1
      examples/fullscreen-shell: stop advertising linux-dmabuf unconditonally
      render/gles2: use .x/.y instead of .s/.t
      box: add wlr_fbox
      util/region: add wlr_region_scale_xy
      render: add wlr_render_subtexture_with_matrix
      surface: add wlr_surface_state.viewport
      surface: introduce wlr_surface_get_buffer_source_box
      viewporter: new protocol implementation
      surface: ignore viewport src rect on NULL buffer
      render/egl: print error name
      output: rename impl->rollback to rollback_render
      output: make rollback_render mandatory
      output: fix dangling renderer context after wlr_output_preferred_read_format
      backend/noop: add missing rollback_render output impl
      examples/pointer: fix wlr_renderer_end call order
      output: add backend docs
      backend/drm: fix DPMS on legacy interface
      backend/drm: fix typo in drm_surface_make_current arg
      backend/drm: check drm_surface_make_current return value
      Update version to 0.11.0

Simon Zeni (1):
      render/gles2: use glGetAttribLocation instead of hardcoded indices

Thomas Hebb (3):
      wlr_seat: Declare functions in the same order for pointer, keyboard, and touch
      wlr_seat: Clarify wording of non-grab-respecting function comments
      Allow keyboard and pointer grabs to hook clear_focus()

Tudor Brindus (19):
      backend/libinput: correctly populate x/y fields on tablet proximity in
      input/tablet: populate tool tip event position
      input/tablet: fix up updated axes after rotation
      input/tablet: clear focused surface on surface destroy
      wlr/types: use bitshifts for tablet axes enum
      backend/wayland: emit tablet tool axis events to the axis handler
      input/keyboard: expose keymap matching helper
      input/pointer: notify compositor when constraint region changes
      tablet: pass motion events to implicitly grabbed surface
      tablet: expose wlr_tablet_tool_v2_has_implicit_grab function
      util/log: use bright black rather than black for WLR_DEBUG
      xwayland: send focus change event unconditionally
      xwayland: add error-checking to `server_start_lazy`
      backend/wayland: scale tablet tool position into [0, 1] range
      util: fix and move `get_current_time_msec` into a util file
      util/time: de-duplicate `timespec_to_msec`
      util/time: move `timespec_sub` to time utilities
      input/keyboard: send modifiers on first keyboard enter
      input/pointer: add wlr_seat_pointer_wrap

Tudor Roman (1):
      seat: add selection event docs

Will Daly (1):
      Fix error when reconnecting external display

j-n-f (1):
      examples: fix improper use of `free`

r-c-f (1):
      seat: add check for NULL keyboard

xdavidwu (3):
      virtual-keyboard: add wlr_input_device_get_virtual_keyboard
      input-method: implement keyboard grabs
      examples/input-method-keyboard-grab: new example

0.10.1

Verified

This tag was signed with the committer’s verified signature. The key has expired.
emersion Simon Ser
wlroots 0.10.1

This is a bugfix release for wlroots 0.10.0.

Aleksei Bavshin (1):
      xdg-shell: fix popups rendered outside of the screen

Scott Anderson (2):
      meson: Fix protocol includes for compositor examples
      examples: Fix compositor-examples

Simon Ser (2):
      xwayland: ignore pointer focus changes
      Update version to 0.10.1

0.10.0

wlroots 0.10.0

Drew DeVault (1):
      Drop RDP backend

Jan Staněk (1):
      Honor the `examples` meson setting

Jason (1):
      Allow WLR_RDP_PORT to be any valid TCP/UDP port number

Scott Anderson (1):
      Bump meson version to 0.51.2

Simon Ser (9):
      backend/wayland: listen to wl_buffer.release events
      backend/wayland: handle display errors more gracefully
      render/egl: remove SURFACELESS_MESA special case
      render/gles2: unbind textures after use
      docs: remove rootston-specific env vars
      docs: establish one section per backend
      docs: document XDG_SESSION_ID
      backend/drm: prevent outputs from being destroyed on commit
      keyboard-group: two NULL keymaps are equal

xdavidwu (1):
      text-input: fix missing destroy signal init

0.9.1

wlroots 0.9.1

Andri Yngvason (1):
      virtual-pointer: Actually use the value passed to axis_discrete

Ilia Bozhinov (1):
      xwm: allow applications to change focus between their own surfaces

Simon Ser (1):
      backend/wayland: fix frame callback not registered

0.9.0

wlroots 0.9.0

Alynx Zhou (1):
      Skip assign when sub_x or sub_y is NULL in wlr_surface_surface_at

Andri Yngvason (3):
      output: Add commit sequence number
      protocol/screencopy: Add damage reporting
      screencopy: Implement damage reporting

Brian Ashworth (2):
      Introduce wlr_keyboard_group
      wlr_keyboard_group: fix mem leak in refresh_state

Danilo Spinella (1):
      Add new define EGL_NO_X11 for newer mesa library

Dorota Czaplejewicz (1):
      virtual_keyboard: Accept keycode 0

Drew DeVault (1):
      Introduce wlr_renderer_get_egl

Ferdinand Bachmann (1):
      Add missing include required by mesa and libglvnd change

György Kurucz (1):
      Fix heap-use-after-free in wlr_send_tablet_v2_tablet_pad_leave

Ilia Bozhinov (1):
      wlr_box: properly calculate closest point for non-positive area boxes

Ivan Molodetskikh (1):
      output: add block_idle_frame

Jan Beich (1):
      examples: set mode when creating shm object

Jason (2):
      Amend typos
      Amend typo

Josef Gajdusek (1):
      virtual-pointer: Add support for the wlr-virtual-pointer-unstable-v1

Manuel Stoeckl (1):
      output: fix cursor wl_surface.{enter,leave} tracking

Ronan Pigott (2):
      session/logind: support CanGraphical property
      render/gles2: do not set GL_TEXTURE_MAG_FILTER

Rouven Czerwinski (1):
      backend/drm: print preferred mode

Scott Anderson (8):
      backend/x11: Give X11 a real rendering loop
      session/logind: Clean up add_signal_matches
      render/gles: Simplify textures a bit
      backend: Do not attempt DRM on X11/WL failure
      backend/x11: Drop required present version
      backend/x11: Revert usage of present extension
      meson: Various improvements
      meson: Remove tag generation

Scott Moreau (3):
      xwayland: Expose configure request mask
      build: Pass library as first argument to pkgconfig.generate()
      xwayland: Clean up if Xwayland fails to start

Simon Ser (51):
      build: workaround for meson disabler object not working with if not
      render/egl: support formats with zero modifiers
      backend/drm: use modifiers for our GBM buffers
      build: simplify by using disabler deps
      backend/wayland: add support for direct scan-out
      render/gles2: don't unset the current EGL surface when destroying texture
      protocol: sync layer-shell with upstream
      backend/drm: track gbm_bo during direct scan-out
      render/egl: prevent use-after-free when destroying current surface
      backend/drm: retry without modifiers for the primary plane
      backend/drm: add support for custom modes
      output-management-v1: add assertion as a safety net
      render: remove EGL includes from wlr_texture.h
      render/gles2: provide public API to access GL texture
      backend/wayland: add support for relative-pointer-unstable-v1
      backend/wayland: expose remote objects
      output: add wlr_output_event_present.commit_seq
      Add -Wmissing-prototypes
      output: set wlr_output.commit_seq before firing the commit event
      output: fix off-by-one wlr_output_event_present.commit_seq
      presentation-time: make API more flexible
      presentation-time: add helper for common case
      backend/wayland: add support for presentation-time
      render: remove return in wlr_texture_get_size
      Simplify globals implementation by removing destructors
      Revert "output: add block_idle_frame"
      keyboard: emit key events without keymap
      backend/drm, backend/libinput: listen to session destroy
      backend/drm: fix segfault in init_drm_surface
      backend/drm: add BenQ to manufacturer list
      buffer: improve error handling
      surface: don't unref the current buffer on failure
      output: fix wlr_output_preferred_mode fallback
      Refactor EGL/GL API loading
      ci: add xorgproto dep to Arch build
      render: fix EGL extensions not loaded
      Revert "ci: add xorgproto dep to Arch build"
      ci: add a build run with all features disabled
      output: add description
      xdg-output-v1: use wlr_output.description
      output-management-v1: use wlr_output.description
      output: re-introduce atomic mode, enabled, scale and transform
      backend/drm: modeset before enabling an output
      output: clear pending bit if pending == current
      output: refuse to commit a buffer or modeset a disabled output
      tinywl: enable and commit output when modesetting
      xdg-shell: fix inert xdg_surface handling
      xdg-shell: make wlr_xdg_surface_from_resource reject NULL
      output: only advertise current mode
      backend/drm: don't modeset with a NULL mode after TTY switch
      render: guard rendering operations between begin() and end()

Timidger (2):
      layer_shell: set layer of existing surface
      Use layer shell v2

Ting-Wei Lan (1):
      backend/session/freebsd: Fix the way to get TTY path

myfreeweb (1):
      Send tablet tool frame on proximity_out

n3rdopolis (2):
      Update environment variable documentation to include more backends
      note libinput as well

0.8.1

wlroots 0.8.1

This update fixes Drew's continued ability to find novel ways to mess up
releases.

Filip Sandborg (1):
      render/gles2: fix calculation for partial gles2 pixel read (swaywm#1809)

Ilia Bozhinov (1):
      layer-shell: ignore ack_configure() on closed surfaces

Ivan Molodetskikh (2):
      presentation_feedback: add the sampled state
      drm: use IMPORT_FD for INVALID modifier

Markus Ongyerth (3):
      Move initialization of wlr_tablet_pad into types/wlr_tablet_pad
      Add zwp-tablet-unstable-v2 client support
      Clean up wayland backend tablet support

Rouven Czerwinski (1):
      backend/drm: check for mst: in path property

Scott Anderson (1):
      render/egl: Change KHR_debug log to include error code

Sebastian Krzyszkowiak (1):
      wlr_seat_touch: Destroy the touchpoint on client destroy

Simon Ser (1):
      compositor: disconnect client on OOM in create_surface

Versus Void (1):
      xdg-output: send wl_output.done after xdg_output created

amingin (1):
      Fixes crash of compositor when unvalidated keycode 0 is passed (swaywm#1833)

0.8.0

wlroots 0.8.0

wlroots 0.8.0 includes the following breaking changes:

	presentation_feedback: add the sampled state

The wlr_presentation_time structures have been rewritten. To correctly
support presentation-time, use wlr_presentation_surface_sampled after
you sample (read from) each surface.

Changelog:

Drew DeVault (4):
      wlr_idle_inhibit_v1: style fixes
      drm backend: detect non-desktop outputs
      drm backend: implement DRM lease issuance
      Introduce wlr_drm_lease_v1

Filip Sandborg (1):
      render/gles2: fix calculation for partial gles2 pixel read (swaywm#1809)

Ilia Bozhinov (1):
      layer-shell: ignore ack_configure() on closed surfaces

Ivan Molodetskikh (1):
      presentation_feedback: add the sampled state

Rouven Czerwinski (1):
      backend/drm: check for mst: in path property

Scott Anderson (1):
      render/egl: Change KHR_debug log to include error code

Sebastian Krzyszkowiak (1):
      wlr_seat_touch: Destroy the touchpoint on client destroy

Simon Ser (1):
      compositor: disconnect client on OOM in create_surface

Versus Void (1):
      xdg-output: send wl_output.done after xdg_output created

0.7.0

wlroots 0.7.0

wlroots 0.7.0 includes the following breaking changes:

	wlr_output_mode: drop wlr_outupt_mode.flags

This field was never used and has now been removed.

	wlr_output: drop wlr_output.transform

This field was not meaningful.

	Orbital screenshooter and gamma-control have been removed

These protocols are obsolete and have been replaced with more mature wlr
protocols.

Andri Yngvason (2):
      backend: touch: Assign good ids to single touch devices
      backend: touch: Fixup incomplete patch for single touch devices.

Antonin Décimo (12):
      render/drm: keep old drm_format if realloc fails
      xcursor: avoid leak and loss of all cursors if cursors realloc fails
      Fix memory leak
      Simplify check
      wlr_surface: condition is always false
      xdg_shell: remove variable self-assignment
      backend/session: non-void function should return a value
      backend/drm: use UINT64_C for uint64_t literals
      Avoid loss of a fractional part
      backend/wayland: check if zxdg_toplevel_decoration_v1 is not NULL
      xwayland: prevent possible array overrun
      examples: remove duplicated condition

Ashkan Kiani (1):
      Use a set to track pointer button state.

Brian Ashworth (4):
      session/logind: keep active for pause_device gone
      zwp_virtual-keyboard: fix mmap error handling
      wlr_xdg_toplevel: reparent on parent unmap
      wlr-layer-shell-v1: destroy xdg popups on unmap

Dorota Czaplejewicz (2):
      x11: Send a frame event on the pointer after button events
      virtual_keyboard: Require keymap before accepting keycodes

Drew DeVault (4):
      Remove rootston
      Add libinput-1.14 support
      Revert "render/drm: keep old drm_format if realloc fails"
      Add _incr_version to contrib/

Greg V (1):
      Support pointer-gestures on Wayland backend

Guido Günther (4):
      wlr_seat_touch: Don't destroy touch point with surface
      layer-shell: Remove unused event source
      layer-shell: Reject requests on gone surfaces
      text_input: Don't forget to send enter events

Ilia Bozhinov (2):
      output: clear output->damage on successful commit
      output-damage: set needs swap only when we have new damage

Jan Beich (1):
      Test RDP backend on FreeBSD as well

Jan Chren (2):
      session/logind: specify seat exactly
      session/logind: check for XDG_SESSION_ID first

Jason Francis (3):
      screencopy: fix segfault on disabled output
      screencopy: send failed after output disconnect
      export-dmabuf-v1: fix segfault on output disable

Manuel Stoeckl (6):
      Implement serial validation for selection requests
      wlr_seat: Fix edge cases with serial validation
      wlr_pointer_gestures: Register event serials
      wlr_tablet_v2: Register event serials
      wlr_seat: special-case first serial set use
      Use -fmacro-prefix-map to strip build path

Michiel (1):
      Fixes swaywm#1689 RDP RemoteFX crash

Rouven Czerwinski (5):
      wlr_output: remove idle_done on output destroy
      drm: legacy: issue a NULL modeset on disable
      backend: drm: switch to pageflip_handler_2
      backend/drm: destroy output immediately
      Revert "output: atomic mode"

Scott Anderson (3):
      Remove WLR_DRM_NO_ATOMIC_GAMMA workaround
      backend/drm: Simplify object matching code
      backend/drm: Exit-early if 0 crtcs

Sebastian Krzyszkowiak (9):
      seat: Move focus back to first shell surface when unfocusing layer surface
      xdg_shell(_v6): Take maximize/fullscreen state into account on view init
      wlr_touch: Declare wlr_touch_impl usage as const
      backends/x11: Touch support
      wlr_input_method_v2: Remove input method's resource from the list on destroy
      wlr_seat_touch: add a way for a grab to ignore a touch point
      wlr_xdg_popup: grab touch events alongside pointer and keyboard
      wlr_xdg_popup: don't treat all surfaces of grabbing client as grabbing surfaces
      Revert "wlr_xdg_popup: don't treat all surfaces of grabbing client as grabbing surfaces"

Silvan Jegen (1):
      rootston: remove duplicated include

Simon Ser (26):
      backend/wayland: use xdg-decoration-unstable-v1
      backend/wayland: remove wl_shm
      render/gles2: print GL_RENDERER
      Remove orbital screenshooter and gamma-control
      backend/drm: check format when scanning out DMA-BUF
      backend/drm: strip alpha channel on scan-out
      render/dmabuf: add wlr_dmabuf_attributes_copy
      buffer: add wlr_buffer_get_dmabuf
      output: change set_dmabuf to attach_buffer
      output: fix attach_buffer semantics
      output: save buffer in pending state
      backend/drm: hold buffers while scanning out
      backend/drm: reject DMA-BUFs with flags
      rootston: add support for direct scan-out
      output: refuse to scan-out if software cursors are used
      output: introduce wlr_output_lock_attach_render
      output-damage: support direct scan-out
      backend/drm: fallback to drmModeAddFB2
      backend/drm: add support for multiplanar BOs
      output: reset the pending state on failed commit
      output: remove wlr_output_impl.transform
      output: drop wlr_output_mode.flags
      Remove all wayland-server.h includes
      output: atomic mode, enabled, scale and transform
      xdg-output: add support for xdg-output-unstable-v1 version 3
      backend/drm: fix missing plane formats

emersion (1):
      backend/drm: add basic support for direct scan-out