-
0.12.0238d1c07 · ·
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 (#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.0751a21d9 · ·
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.10c7c5624 · ·
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.057ffb35d · ·
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.1a2cbb4e4 · ·
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.01c5ca793 · ·
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.1b051bb68 · ·
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 (#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 (#1833)