-
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)
-
0.7.0a20bb387 · ·
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 #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