File wlroots.changes of Package wlroots
-------------------------------------------------------------------
Wed Aug 27 10:01:28 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250825T140513.b0c886e:
* render/allocator/gbm: insert buffer after export gbm bo
-------------------------------------------------------------------
Thu Aug 21 12:11:31 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250818T140913.7431d84:
* color-management-v1: handle inert outputs in get_output
* compositor: use wl_resource_post_error_vargs()
* Avoid including generated headers publicly where possible
* fixes: add implementation
* backend, output: send commit events after applying all in wlr_backend_commit()
-------------------------------------------------------------------
Sun Aug 10 17:53:27 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250807T222539.07e92fb:
* output/cursor: Fix double cursor bug
-------------------------------------------------------------------
Sun Aug 03 09:17:27 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250731T141324.1231641:
* ext_image_capture_source_v1: advertise fallback {A,X}RGB8888 formats
* color-representation-v1: Fix missing destroy signal init
* wlr_ext_data_control_v1: Make all listeners private
* color_management_v1: set output color properties
* tinywl: fix cursor disappears when focused window is closed
* scene: use helpers to convert TF/primaries enums
* color_management_v1: add helpers to convert TF/primaries enums
* meson: bump minimum wayland-protocols version
* ext_image_capture_source_v1: remove unused struct definition
* cursor: update output cursor even if output is disabled
* ext-image-capture-source: output: Apply transform to cursor
* types/color_management: check on invalid image description
* types/color_representation: correctly cleanup in manager create
* color-representation-v1: Add wlr enums + converters
* color-representation-v1: new protocol
* util/mem: Move memdup to new util/mem.c file
* render/vulkan: destroy vulkan instance when drm phdev mismatch
* transient_seat: initialize seat destroy listener
* xdg-toplevel-tag-v1: new protocol
* wlr_text_input_v3: remove event arguments from header
* scene: fix output transfer functions
* scene: Block damage on single-pixel buffer textures
* render/egl: fix software rendering check
* backend/drm: relay full HDR metadata
* output: add full HDR metadata to wlr_output_image_description
* scene: grab image description from output state
* output: add output_pending_image_description()
* output: add wlr_output.image_description
* xwm: add support for _NET_WM_ICON
* util/box: set dest to empty if boxes don't intersect
* output: shorten output enabled checks
* scene: add support for color-management-v1 primaries
* scene: add primaries support to wlr_scene_buffer
* render/vulkan: add luminance multiplier for texture shader
* render, render/vulkan: add primaries to wlr_render_texture_options
* render/vulkan: add support for PQ for textures
* render/vulkan: add texture color transformation matrix
* render/vulkan: introduce wlr_vk_frag_texture_pcr_data
* render/vulkan: prepare texture shader for new transforms
* scene: add support for color-management-v1 transfer functions
* scene: add transfer function support for wlr_scene_buffer
* render/vulkan: add support for texture transfer functions
* render/vulkan: fix typo in wlr_vk_texture.views comment
* render/pass: add wlr_render_texture_options.transfer_function
* color-management-v1: add EXT_LINEAR
* render/color, render/vulkan: add EXT_LINEAR to enum wlr_color_transfer_function
* render/vulkan: fix multiplication order for output color matrix
* render/vulkan: add luminance multipler for output shader
* backend/drm: add support for image description transfer function
* output: add transfer function to image description
* render/color, render/vulkan: add support for PQ transfer function
* render/vulkan: add PQ inverse EOTF to output shader
* backend/drm: add support for color primaries
* output: add color primaries to output state
* render, render/vulkan: add primaries to wlr_buffer_pass_options
* render/vulkan: use array declaration in encode_proj_matrix()
* render/vulkan: rename mat3_to_mat4() to encode_proj_matrix()
* render/vulkan: use output_pipe_srgb for non-NULL sRGB color transform
* render/vulkan: add color transformation matrix
* output: drop gamma LUT from state
* wlr_gamma_control_v1: use color transforms
* backend/drm: add support for color transforms
* output: add color transform to state
* render/color: introduce COLOR_TRANSFORM_LUT_3X1D
* render/color: replace COLOR_TRANSFORM_LUT_3D with COLOR_TRANSFORM_LCMS2
* render/color: use variable instead of type in sizeof()
* render/color: add wlr_color_transform_init()
* scene: send surface preferred transform alongside DMA-BUF feedback
* scene: use output with highest refresh rate for frame pacing
* scene: filter frame_done primary output in surface handler
* scene: configure clients with the highest output scale
* scene: ignore outputs with too small intersection with nodes
* ext_image_capture_source_v1: add helper to capture scene nodes
* ext_image_capture_source_v1: add support for foreign toplevels
* swapchain: assert that size is not empty at creation time
* render/allocator/gbm: require GBM 21.1
* xwayland: require xcb-xfixes 1.15
* idle_notify_v1: drop trailing spaces
* xwayland: Activate no_focus_window when a Wayland window is activated
* xwayland: Create a dummy no_focus_window to use for non-X window focus
-------------------------------------------------------------------
Sun Jun 08 22:31:42 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250605T162525.afe427d:
* xdg-shell: add support for v7
* render/pass: Ensure the precision is consistent during comparison
* cursor-shape-v1: bump to version 2
* cursor-shape-v1: use generated enum validator
* xwayland: Remove has_utf8_title field
* backend/libinput: don't leak udev_device
-------------------------------------------------------------------
Thu May 15 17:47:45 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250515T133658.2d5492c:
* text-input-v3: Use `NULL` when emitting signals
* text-input-v3: Name new text input event correctly
-------------------------------------------------------------------
Thu May 15 09:38:39 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.20.0+dev.20250515T091448.62c86fb:
* Add support for XKB_LED_NAME_COMPOSE and XKB_LED_NAME_KANA USB HID LEDs Requires xkbcommon 1.8.0
* output: don't send make/model
* Change all timespec pointers in events to owned
* build: bump version to 0.20.0-dev
* build: bump version to 0.19.0
* xwayland: handle unset _NET_WM_NAME
* backend/drm: Fix segfault in libliftoff startup
* render/pixman: null check on newly created image
* render/drm_syncobj: fix return type mismatch
* wlr-foreign-toplevel-management-v1: Simply leave and destroy code
* render/vulkan: check binary semaphore in vulkan_sync_render_buffer()
* render/vulkan: create binary semaphore when signal timeline is supplied
* backend/drm: assign plane_id from function parameter instead of drm_plane
* build: bump version to 0.19.0-rc3
* presentation-time: make version a uint32_t
* tablet-v2: cleanup focused surface on tool destroy
* backend/drm: rename conn_name to conn_type_name for clarity
* wlr_keyboard_group: fix leak of wlr_keyboard_group->keys
* Revert "wlr_keyboard: don't emit key event for duplicated keycodes"
* xdg-activation: make wl_global public
* Revert "xwayland: Reset signal mask and handlers before exec"
* build: bump version to 0.19.0-rc2
* xdg-surface: fix geom for surfaces that don't set it explicitly
* color-management-v1: implement surface_feedback_v1::get_preferred_parametric
* backend/drm: add DRM object and property IDs to error
* xdg-surface: don't disconnect clients for bad effective geom yet
* output_layout: Fixes docstring for wlr_output_layout_add[_auto].
* Fix/cleanup includes a bit
* scene: Fix scanout log to respect SCANOUT_SUCCESS
* compositor: Clean up surface current_outputs last
-------------------------------------------------------------------
Mon Apr 14 08:00:47 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.19.0+dev.20250413T204859.d752777:
* wlr_client_buffer: add get_shm implementation
* xdg-surface: ensure that the effective geom is not empty
* build: bump version to 0.19.0-rc1
* seat/keyboard: optimize wlr_seat_set_keyboard to send the keymap only if it has changed
* xdg-system-bell-v1: set proper global/resource user data
* scene: Move single-pixel buffer things to scene_buffer
* wlr_scene: Debounce dmabuf feedback on scanout
* scene: Optimize rendering of single-pixel buffers
* single-pixel-buffer: Add try_from_buffer() function
* ext-data-control-v1: fix types in wl_list/wl_signal comments
* ext-data-control: add missing listener list assertion
* Drop region.h
* meson: add a missing src file
* ext_image_capture_source_v1: remove unused wlr_renderer include
* color-management-v1: add setter for surface feedback
* color-management-v1: add support for mastering display metadata
* color-management-v1: add wlr_surface_get_image_description_v1_data()
* color-management-v1: add support for parametric image desc creator
* color-management-v1: add struct wlr_image_description_v1
* color-management-v1: new protocol
* render/color: add wlr_color_transfer_function_get_default_luminance()
* render/color: introduce enum wlr_color_transfer_function
* render/color: introduce wlr_color_primaries_from_named()
* render/color: introduce wlr_color_named_primaries
* render/color: add wlr_color_primaries_to_xyz()
* render/color: include public header from private one
* util/matrix: add matrix_invert()
* fullscreen-shell: remove
* backend/drm: pass DRM_MODE_ATOMIC_NONBLOCK for test commits
* xwayland/selection/dnd: always send finished event
* git: fix incorrect subprojects ignore in `.gitignore`
* scene/surface: use source buffer to signal release timeline point
* fix comment typo in wlr_text_input_v3.h
* xwayland: Reset signal mask and handlers before exec
* Document config.h
* screencopy-v1: drop output_enable listener
* backend/drm: fix enabling an output with a custom mode set
* backend/drm: handle custom modes in connect_drm_connector()
* xwayland/xwm: log when property type is invalid
* xwayland/xwm: handle deleted properties
* xwm: Handle NET_WM_WINDOW_OPACITY
* output: don't update disabled cursor texture
* output/cursor: drop output_cursor_reset()
* ci: fetch gyosu from new upstream
* scene: don't mention damage in region-scaling functions
* scene: don't always round scaled regions up
* xdg-shell,layer-shell: assert that configure events are only sent to initialized surfaces
* backend/wayland: use a separate event queue for busy loops
* backend/output: extract backend to a variable in output_commit()
* backend/wayland: don't send request_state when enabling an output
* render/vulkan: unify alpha pre-multiplication in output shader
* Fix includes of wlr_output.h
* Declare struct wlr_surface in a less weird place
* scene/surface: Do not use buffer dimensions for clip
* Bump required w-p version to 1.40
* Implement updated version of ext-idle-notify protocol
* seat: Don't forget to destroy touch points on touch up
-------------------------------------------------------------------
Thu Feb 06 14:08:13 UTC 2025 - llyyr.public@gmail.com
- Update to version 0.19.0+dev.20250131T183917.d305934ebe68:
* ext_data_control: Add protocol implementation
* ci: generate and publish HTML documentation
* backend/drm: log when creating multi-GPU renderer
* Remove all calls to pixman_region32_not_empty()
* render/pixman: drop cast for pixman_image_set_clip_region32()
* util/matrix: remove unnecessary include
* matrix: move to util/
* render/drm_syncobj: Remove the ready signal from timeline_waiter
* render/drm_syncobj: Add a callback when ready
* matrix: drop rotation
* matrix: drop wlr_matrix_transpose()
* Make wlr_matrix private API
* buffer: Move wlr_buffer_is_opaque to public header
* buffer: Make wlr_buffer_is_opaque public
* drm-syncobj: return false instead of NULL
* backend/wayland: remove syncobj waiter on buffer destroy
* CONTRIBUTING.md: mention listener list assertions
* pointer-constraints: use wlr_surface_synced.commit hook
* pointer-constraints: rewrite doc comments
* compositor: add wlr_surface_synced commit hook
* pointer-constraints: fix deactivating oneshot constraint on destroy
* backend/drm: don't leak mgpu_formats
* Assert (almost all) signals have no attached listeners on destroy
* xdg-dialog: add missing wm destroy signal
* xdg-toplevel-icon-v1: add implementation
* ext-image-copy-capture-v1: implement PAINT_CURSORS flag
* ext-image-capture-source-v1: add start/stop hooks
* backend/headless: accept hardware cursors
* ext-image-capture-source-v1: add output cursor source
* output: require commit after hardware cursor update
* ext-image-capture-source-v1: add output source
* ext-image-capture-source-v1: add wlr_ext_image_capture_source_v1_set_constraints_from_swapchain()
* ext-image-copy-capture-v1: add wlr_ext_image_copy_capture_frame_v1_copy_buffer()
* ext-image-copy-capture-v1: new protocol implementation
* ext-image-capture-source-v1: add source pointer cursors
* ext-image-capture-source-v1: add base interface
* text-input: fix wlr_text_input_manager_v3.text_inputs comment
* backend: drop wl_display refs from docs
* session: drop unused wlr_session.vtnr
* wlr_drag: cleanup icon_destroy listener when destroying icon
* backend/session: simplify udev event action matching
* output: introduce wlr_output_finish()
* buffer: introduce wlr_buffer_finish()
* session: skip adding duplicate DRM device
* xwayland,render/vulkan: fix some size assertions
* render/egl: attribs len could be equal to size
* backend: document that buffer_caps/features are mutable
* backend: replace get_buffer_caps hook with a struct field
* render/allocator: use udmabuf allocator automatically
* render: add WLR_RENDERER_FORCE_SOFTWARE env var
* render/vulkan: accept negative DRM FD to select software rendering
* render/egl: accept negative DRM FD to select software rendering
* render/allocator: add udmabuf allocator
* seat: don't generate serial 0
* build: add Meson wrap manifests for our dependencies
* xdg-dialog-v1: add implementation
* backend/drm: make drm_lease implementation follow docs
* wlr-foreign-toplevel: version guard fullscreen state
* wlr-foreign-toplevel: convert to stack backed states array
* wlr-foreign-toplevel: slight refactor
* xwm: add missing NET_WM_STATE states
* output: adjust warning when hardware cursors are unsupported
* wlr_cursor: use default shape if requested shape missing
* render/gles2: validate shaders at build time
* xwayland: fix xdg->xwayland drag-and-drop
* data-device: reset focused surface when destroyed
* xwayland: remove loop to find drag focus surface
* xwayland: listen to drag focus destroy signal
* render/vulkan: fix crash on OOM
* xwayland: don't fail on SIGCHLD
-------------------------------------------------------------------
Tue Dec 03 17:13:11 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.19.0+dev.20241129T134255.be3d2b74cf4e:
* dnd: ensure internal dnd handlers are unlinked on xwm_destroy()
* backend/drm: check buffer format for multi-GPU
* render/drm_format_set: fix corruption in wlr_drm_format_set_remove()
* wlr_keyboard: don't emit key event for duplicated keycodes
* Add missing destroy events on automatically destroyed objects
* backend/drm: fix drmModePageFlip() when disabling CRTC on legacy uAPI
* tinywl: don't pass time to cursor mode motion handlers
* scene: assert on bad wlr_scene_buffer params
* scene: Assert all signals are clear when destroying
* meson: require wayland >=1.23.1
* meson: use kwargs for wayland deps
* tinywl: don't pass surface to focus_toplevel()
* seat: drop last_event
* renderer: Drop mention of wlr_renderer_begin_with_buffer
* output-management-v1: only create custom mode object for enabled heads
* backend/wayland: add support for explicit sync
* render/drm_syncobj: add addon set
* render/drm_syncobj: de-duplicate drm_syncobj timeline init
* scene: Only unwrap client buffer when underlying buffer is held
* backend/drm: Remove redundant error logs
* backend/drm: Allow proceeding with render-less mgpu
* backend/drm: Move mgpu renderer setup to function
* backend/drm: Check for mgpu_renderer instead of parent
* backend/drm: Bail if renderer cannot import DMA-BUFs
* backend/drm: Ensure renderer is set to NULL on error
* drm_format_set: Add wlr_drm_format_set_remove
* backend/drm: Set timeline support based on capability
* render/allocator: drop allocator_autocreate_with_drm_fd()
* backend/drm: use public wlr_allocator_autocreate()
* all: use public <wlr/render/allocator.h>
* backend/wayland: handle DMA-BUF import failures
* scene: unwrap wlr_client_buffer for direct scan-out
* backend/wayland: Account for shm buffer offset
* output-power-management-v1: use enum_is_valid functions
* wlr_output_management_v1: use enum_is_valid functions
* wlr_linux_dmabuf_v1: use enum_is_valid functions
* layer-shell-v1: use enum_is_valid functions
* build: rename meson_options.txt to meson.options
* render/vulkan: Garbage collect unused buffers
* util/time: Move NSEC_PER_SEC to header
* wlr_keyboard_group: Use get_current_time_msec
* tablet-v2: Event time should be milliseconds
* Consider using vulkan renderer in default configuration
* buffer: add more docs
* xdg-system-bell-v1: add implementation
* meson: fix file order
* backend/multi: only consider backends with dmabuf cap for timeline
* wlr_scene: Add notes about wlr_scene_rect taking premultiplied colors
* backend/drm: Store only a single plane viewport
* backend/drm: Remove reset from interface
* backend/drm: Remove automatic reset on VT switch
-------------------------------------------------------------------
Mon Oct 28 20:13:10 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.19.0+dev.20241028T192227.3df1528a8fba:
* backend/drm: Store viewport with framebuffer
* Make all listeners private
* render/vulkan: add support for explicit sync
* render/vulkan: add render_pass_destroy()
* scene: Transform coordinates for direct scanout
* backend/drm: Skip plane props if buffer is not committed
* presentation-time: bump protocol version to v2
* backend/drm: check whether clipped damage is empty
* Use WLR_PRIVATE for private fields
* scene: Apply output offset for direct scanout
* backend/x11: delete xcb conn check NULL
* backend/headless: actually perform output test
* xdg-positioner: use enum_is_valid functions
* xdg-toplevel: use enum_is_valid functions
* Support direct scanout with src crop and dst boxes
* wlr_linux_dmabuf_v1: log plane index in error messages for dma-buf
* backend/multi: Advance index on backend_commit
* scene: crop output buffer damage before adding
* backend/drm: fix timeline feature flag on multi-GPU setups
* output: Change wlr_output_add_software_cursors_to_render_pass to take buffer coordinates
* output: drop output timeline flag
* scene: use backend-wide timeline feature flag
* output: use backend-wide timeline feature flag
* backend: add timeline feature flag
* scene: Rename some functions
* scene: Only accept buffer coordinates for damage
* scene: Factor scaling into output transform function
* scene: Apply damage ring as buffer local coordinates
* damage_ring: Add notes about damage being in buffer local coordinates
* damage_ring: Remove wlr_damage_ring_set_bounds
* damage_ring: Stop using ring->{width, height}
* damage_ring: Remove return value of wlr_damage_ring_add/wlr_damage_ring_add_box
* wlr_damage_ring: Clamp damage region to buffer size
* scene: Don't rely on return value of wlr_damage_ring_add
* scene: Use wlr_output_transformed_resolution
* subcompositor: drop unused subsurface state
* xwayland/xwm: implement somewhat asynchronous request flushing
* xwayland/xwm: extract read loop to separate function
* keyboard: add utilities for pointer keys
* render/vulkan: make VK_KHR_external_semaphore_fd optional
* ext-foreign-toplevel-list: add _from_resource()
* render/vulkan: check size when creating shm texture
* render/vulkan: log size when importing too-large DMA-BUF
* linux-dmabuf-v1: use static_assert
* pointer: release pressed buttons on destroy
-------------------------------------------------------------------
Sat Sep 21 01:44:10 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.19.0+dev.20240920T104832.c752270be78d:
* tinywl: drop focused surface check for interactive ops
* x11/backend: Optimize query_version error handling
* input-method-v2: set no keymap format if no keymap is set
* wlr_screencopy_v1: send fine-grained damage events
* backend/drm: Remove call to CRTC realloc on scan
* tearing_control_v1: Free the wlr_tearing_control_v1 on error
* compositor: document surface events
* backend/drm: improve doc comment for match_connectors_with_crtcs_()
* linux-drm-syncobj-v1: Skip release if there is no timeline
* gles2/pass: remove duplicate variable declarations
* backend/drm: add explicit sync support to libliftoff interface
* backend/drm: add explicit sync support to multi-GPU blits
* render/color: Invert ownership model of color_transform types.
* render/color: return tranform in wlr_color_transform_ref()
* backend/drm: remove unnecessary semicolons
* wlr_scene: Assert wlr_scene_rect has nonnegative dimensions
* render/vulkan: use non-coherent memory for read_pixels()
* backend/drm: drop SKIP in match_connectors_with_crtcs()
* backend/drm: rename i param in match_connectors_with_crtcs_()
* backend/drm: drop match_connectors_with_crtcs() return value
* backend/drm: use more descriptive names for match_obj()
* backend/drm: use CRTCs in-order
* types/wlr_output: removing the useless pointer
* scene: resize damage ring on geometry update
* swapchain, damage_ring: Drop buffer age
* output/render: Drop buffer age from wlr_output_begin_render_pass
* scene: update output geom on commit after dropping pending damage
* xdg-shell: add wlr_xdg_toplevel_configure()
* xdg-shell: document struct wlr_xdg_toplevel_configure
* backend/drm: fix a use-after-free
* drm-syncobj-v1: remove buffer release listener on signaller destroy
* render/egl: Release devices before return
* allocator/gbm: Reset errno before gbm_bo_create
* allocator/gbm: Log errno if gbm_bo_create fails
* layer-shell: introduce wlr_layer_surface_v1_get_exclusive_edge()
* layer-shell: add v5 support
* keyboard: simplify releasing keys on finish
* backend/wayland: simplify wl_keyboard.{enter,leave} processing
* backend/drm: don't set vsync present flag if page flip was async
* backend/wayland: process initial events from globals correctly
* linux-drm-syncobj: add missing decls in the header
* linux-drm-syncobj-v1: actually use the requested version
* seat/pointer: reset pressed buttons on "grab-compatible" focus change
* xdg-surface: fix window geometry handling
* compositor: add surface role map hook
* wlr_scene: Introduce wlr_scene_set_gamma_control_manager_v1
* wlr_scene: Introduce wlr_scene_output_needs_frame
* wlr_scene: Ensure we restack all xwayland surfaces to the bottom when scene node is disabled
* wlr_scene: Extract function to get xwayland surface from node
* Revert "wlr_scene: Ensure scene_node_update is updating entire node."
* pointer-constraints: don't init/finish current/pending states
* wlr_scene: Fix WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT when output is transformed
* wlr_scene: Don't special case swapchain buffers
* wlr_scene: Inline output_state_apply_damage
* wlr_scene: Immediately apply pending output commit damage
* wlr_scene: Funnel all damage operations through scene_output_damage
* xdg-popup: don't set a role resource destroy handler
* xdg-foreign: clean up
* xwayland/xwm: listen shell destroy signal
* render/gles2: check for DRM_CAP_SYNCOBJ_TIMELINE
* ext-foreign-toplevel-list: use correct interface and add missing handler
* Fix memory leak in xwayland.c
* Fix memory leak in drm.c
* xwayland: add wlr_xwayland_surface_has_window_type()
* Fix Meson version required for C23 support
* seat/pointer: reset pressed buttons on focus change
* xwm: supply wlr_xwayland pointer to user_event_handler callback
* xwm: add request_close signal
* scene: fix typo in wlr_scene_surface_create() docs
* scene: use numbers instead of stars for doc refs
* wlr_scene: Improve wlr_scene_surface_create documentation
* wlr_scene: Transparently restack xwayland surfaces
* wlr_scene: Ensure scene_node_update is updating entire node.
* wlr_scene: Store update box in update data
* util/box: Introduce wlr_box_contains_box
* seat/pointer: handle duplicate presses/releases correctly
* render: add WLR_RENDER_NO_EXPLICIT_SYNC env var
* cursor: add support for linux-drm-syncobj-v1
* scene: add explicit synchronization for rendered buffers
* scene: add support for linux-drm-syncobj-v1
* linux-drm-syncobj-v1: add helper to signal on buffer release
* scene: add timeline point to wlr_scene_buffer_set_buffer() options
* scene: add wlr_scene_buffer_set_buffer_with_options()
* render/drm_syncobj: add wlr_drm_syncobj_timeline_export()
* render/drm_syncobj: add wlr_drm_syncobj_timeline_transfer()
* backend/drm: add support for explicit sync APIs
* output: add explicit sync API
* render/gles2: implement explicit sync API
* render/egl: add support for explicit sync extensions
* render: add explicit sync API
* wlr_scene: Force blend mode to PREMULTIPLIED if calculate visibility is disabled
* .mailmap: add myself
* wlr_scene: Add 'struct' to comment in wlr_scene_create() to permit auto-linkify.
* wlr_scene: Add documentation to wlr_scene_create about how to destroy the allocated resources.
* xwayland: remove stray empty line
* xwm: expose individual axis for _set_maximized()
* xwayland: set focus to XCB_POINTER_ROOT rather than XCB_NONE
* xwayland: add wlr_xwayland_surface_offer_focus()
* xwayland: add focus_in and grab_focus events
* xwayland: factor out xwm_set_focused_window()
* output-power-management: send zwlr_output_power_v1.failed on output destroy
* tinywl: Update .gitignore
* ci: Remove package 'gmake'
* tinywl: Edit Makefile for bmake compatibility
* render/vulkan: Fix draw rect clip region invalid in blend none mod
-------------------------------------------------------------------
Mon Jul 15 21:43:23 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.19.0+dev.20240715T123006.7550e483ae04:
* docs: update comments for wlr_output API changes
* wlr_output: remove dead function
* build: use fs.relative_to() instead of hand-rolled logic
* ci: use package x11-servers/xwayland instead of x11-servers/xwayland-devel
* Rename wlr_surface_get_extends() to wlr_surface_get_extents()
* wlr_xwayland_surface: fix prefix of two functions
* wlr_surface: fix argument order consistency
* build: bump version to 0.19.0-dev
* build: bump version to 0.18.0
* scene: only skip bottom-most black rects with fractional scaling
* ci: use tinywl built by Meson
* backend/drm: add support for SIZE_HINTS property
* build: use auto_features=disabled for libdrm subproject
* render: init wl_shm version 2
* backend/wayland: use wl_shm.release if available
* shm: add support for wl_shm version 2
* meson: bump wayland dep version to 1.23
* build: require libinput v1.19
* wlr_scene: Don't disable scene nodes at creation time
* wlr_scene: Drop map/unmap listeners from layer_shell_v1
* wlr_scene: Drop map/unmap listeners from drag_icon
* wlr_scene: Drop map/unmap listeners from xdg_shell
-------------------------------------------------------------------
Tue Jul 02 13:17:52 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20240630T090115.67b88e46b04a:
* Fix __VA_OPT__ macro invocations
* wlr_scene: send preferred buffer transform
* build: build with C23 if supported
* Use standard __VA_OPT__ instead of GNU's ##__VA_ARGS__
* backend/drm: fix swapped calloc() arguments in get_or_create_layer()
* backend/drm: fix return value type in create_drm_connector()
* render/color: fix return value type
* Switch to stable tablet-v2 protocol
* build: check eglext.h header version
* render/vulkan: vkMapMemory stage spans up front
* render/vulkan: Fix 3dlut stage span map offset
* render/vulkan: Unref color transform on pass submit
* backend/wayland: introduce wlr_wl_output_set_app_id()
* render/vulkan: Use new span map handling for 3dlut
* render/vulkan: Unmap span before freeing memory
* util: let wlr_box_closest_point() be within 1/65536 of right/bottom edge
* backend/drm: store drm prop lists as structs
* render/vulkan: Recycle memory maps for stage spans
* tinywl: allow specify pkg-config binary
* tinywl: split compilation into two steps
* tinywl: don't try to remove xdg-shell-protocol.c
* backend/drm: Use cached vrr support flag
* wlr_output: Add adaptive_sync_supported
* backend/wayland: destroy ignored tablet proxies
* backend/wayland: dispatch remote display when waiting for a configure event
* backend/session: use "KMS" instead of "DRM" in log messages
* backend/session: log when loading WLR_DRM_DEVICES
* linux-drm-syncobj-v1: new protocol implementation
* render/drm_syncobj: add helpers to wait for timeline points
* render/drm_syncobj: add wlr_drm_syncobj_timeline_import()
* render/drm_syncobj: introduce wlr_drm_syncobj_timeline
* input-method: unmap popup surfaces on deactivate
* xdg-popup: validate positioner on reposition request
* xdg-popup: don't emit parent's new_popup signal too early
* backend/wayland: don't ack outdated configures
* backend/wayland: improve/fix xdg_toplevel (re-)initialization
* backend/wayland: commit null buffer only on unmap
* backend/wayland: don't ack a configure event too early
* backend/wayland: don't request a state too early
* backend/wayland: store output xdg_toplevel title
* add an option to enable/disable libliftoff
* ci: add debugoptimized GCC build
* backend/drm: avoid "maybe uninitialized" warning
* render/color: add fallback stub when LCMS2 is disabled
* backend/drm: add libliftoff log handler
* backend/drm: add support for libliftoff v0.5.0
* fullscreen-shell: deprecate
* build: override versioned name
* seat/keyboard: drop unnecessary check in handle_keyboard_keymap()
* tinywl: update for versioned pkg-config file
* Version pkgconfig, headers, and library for parallel installation
* backend/x11: send correct keyboard layout
* render/allocator: document struct wlr_allocator
* editorconfig: Unset maximum line length for .git
* wlr_scene: Skip direct scanout on color transform
* render/pixman: Fix non-uniform scale with rotation
* render/pixman: Remove half-pixel shift
* output: reset hardware_cursor on failure
* backend/libinput: Fix call of handle_libinput_readable() when WLR_LIBINPUT_NO_DEVICES is set
* backend/x11: don't exit on dri3 DRM FD query failure
* wlr_surface: update get_root_surface() docs
* render/vulkan: don't use UNDEFINED layout for imported DMA-BUFs
-------------------------------------------------------------------
Mon May 13 03:11:25 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20240511T115936.56ebfde540da:
* docs: Add notes about WLR_SCENE_DISABLE_VISIBILITY effectively disabling direct scanout.
* render/vulkan: don't free a descriptor set from an already destroyed lut3d dummy pool
* render/vulkan: free render format setups on destroy
* render/vulkan: free pipeline layouts on destroy
* render/vulkan: fix texture clip region leak
* output: disable hardware cursor when falling back to software
* output: extract hardware cursor disabling logic
* xdg-toplevel: allow edge_none for resizing
* wlr_pointer_gestures_v1: emit destroy signal in destroy function
* wlr_pointer_gestures_v1: init destroy signal
* wlr_scene: Add WLR_SCENE_HIGHLIGHT_TRANSPARENT_REGION env
* scene: fix double scaling of opaque region for blend mode optimization
* alpha-modifier-v1: add a missing NULL check in wlr_alpha_modifier_v1_get_surface_state()
* scene/surface: add support for alpha-modifier-v1
* alpha-modifier-v1: new protocol implementation
* xwayland: remove saved_{width,height}
* ci: convert last remnant from "meson setup" migration
* render/color: split off lcms2 code
* render/pixman: half-pixel shift to match GPUs
* render/pixman: Improve transform performance
* backend/drm: Free drm device name on error
* backend/drm: handle errors when fetching DRM name/version
* renderer: add field to indicate color transform support
* wlr_scene: add color transform argument for rendering
* render/vulkan: add support for output color transforms
* render/vulkan: create plain framebuffers on demand
* render/vulkan: add lut3d output shader option
* render/vulkan: add dummy 3d lookup table to output shader
* render/color: introduce wlr_color_transform
* render/pixman: Fix source crop
* render/pixman: fix flipped transforms
* wlr_scene: Set `wlr_damage_ring_set_bounds` earlier
* wlr_scene: Schedule new frame for WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT in output commit handler
* wlr_scene: Fix WLR_SCENE_DEBUG_DAMAGE_HIGHLIGHT output damage
* scene: do not reset scene_buffer state on buffer release
* renderer: replace get_render_buffer_caps() with struct field
* render: drop wlr_renderer_get_dmabuf_texture_formats()
* render: unify getter for texture formats
* xwayland: add a size-safe wrapper for xcb_send_event
* backend/libinput: avoid potential NULL access in wlr_libinput_get_device_handle
* xcursor/wlr_xcursor: properly clean xcursor in case of realloc failure in load_callback
* seat: add serials to touch up events
* Avoid using wayland-{client,server}.h
* scene: ensure layer surface usable area >0
* vulkan: perform sRGB-to-linear conversion correctly for premultiplied values
* xwayland: add a few docs
* render/vulkan: Fix clang compiler error in 32 bit ARM Android
* backend/drm: Skip multi-gpu outputs in backend tests
* xcursor: catch theme inheritance loops
* wlr_gamma_control: Store gamma size when creating control
* util: fix non-linear behavior of wlr_box_closest_point()
* touch: make cancel functions take a wlr_seat_client
* viewporter: fix outdated docs
* viewporter: fix "has buffer" check
* types/text-input-v3: assert on invalid _leave() and _enter() calls
* drm/backend: add support for cursor hotspots
* screencopy: Add some logging
* screencopy: Remove dead code
* scene: constify subsurface_tree_set_clip()
* tablet-tool: document event data
* security-context: constify lookup_client()
* single-pixel-buffer: make wl_global public
* idle-notify: make wl_global public
* wlr_shm: make wl_global public
* examples: send xdg_toplevel configure events
* backend/libinput: drop stray space
* backend/libinput: drop outdated gesture cap logging
* backend/drm: set adaptive_sync_status again
* output-swapchain-manager: new helper
* backend/drm: implement wlr_backend_impl.{test,commit}
* backend/drm: fix adaptive sync no-op changes
* backend/drm: add drm_connector_prepare()
* backend/drm: move post-commit disable logic to drm_connector_apply_commit()
* backend/drm: drop drm_device_state_init_single()
* backend/drm: unify connector test and commit codepaths
* output-management-v1: add wlr_output_configuration_v1_build_state()
* backend/multi: implement wlr_backend_impl.{test,commit}
* backend: add wlr_backend_{test,commit}()
* backend/drm: rework struct wlr_drm_page_flip for multiple connectors
* backend/drm: add infrastructure for device-wide commits
* backend/drm: track pending atomic state in wlr_drm_connector_state
* backend/drm: drop VRR debug message
* backend/drm: extract post-commit logic into functions
* backend/drm: add wlr_drm_connector_state.connector
* scene: listen to renderer destroy in wlr_scene_buffer
* scene: add scene_buffer_set_texture()
* output: listen to renderer destroy in wlr_output_cursor
* buffer: listen to renderer destroy in wlr_client_buffer
* tablet_v2: destroy tablet seats on manager destroy
* compositor: add wlr_compositor_set_renderer()
* compositor: use compositor to get renderer
* compositor: handle renderer destroy
* tinywl: destroy wlr_renderer, wlr_allocator and wlr_cursor
* wlr_scene: Track damage of null textures
* wlr_scene: Fix crash when committing NULL buffer
* gles2: Avoid crash when glGetInteger64vEXT is missing
* wlr_scene: Add support for custom swapchains
* wlr_scene: Decide when to commit output damage with buffers in damage ring
* wlr_scene: Assert that buffer returned from swapchain is the right size
* scene: simplify scene_node_update() condition when setting buffer
* wlr_scene: Call surface enter scale events on surface create
-------------------------------------------------------------------
Mon Mar 11 18:15:44 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20240309T112117.50eae512d9ce:
* xwayland: add wlr_xwayland_get_xwm_connection
* backend/libinput: check bus type before setting tablet USB IDs
* input-device: drop wlr_input_device.{vendor,product}
* tablet-v2: use wlr_tablet.usb_{vendor,product}_id
* tablet-tool: add usb_vendor_id and usb_product_id to wlr_tablet
* cursor-shape-v1: expose tablet tool in event
* cursor-shape-v1: handle inert tablet tool client
* backend/drm: ensure CRTC is set up in drm_connector_state_init()
* mailmap: map Isaac's old email to the new one
* tinywl: fix wlr_seat use-after-free on exit
* backend/drm: track cursor FB in wlr_drm_connector_state
* backend/drm: add drm_fb_copy()
* backend/drm: clear pending cursor FB in drm_connector_set_cursor()
* backend/drm: fix queued cursor FB overwritten with NULL
* backend/x11: add error logging to query_dri3_drm_fd()
* wlr_tablet_v2: fix destroy listener name
* input-device: unconfuse tablet naming
* cursor: use switch for input device type
* input-device: fix WLR_INPUT_DEVICE_TABLET_TOOL doc comment
* tablet-v2: only send id event is vendor is set
* backend/libinput: use NULL to indicate missing device name
* pointer: drop enum wlr_axis_orientation
* pointer: drop enum wlr_axis_relative_direction
* pointer: use enum wl_pointer_button_state
* pointer: drop enum wlr_axis_source
* input-device: add doc comments
* backend/drm: use CRTC pointers instead of indices in realloc_crtcs()
* backend/drm: improve CRTC reallocation pretty printing
* backend/drm: move primary FB check after pending buffer logic
* backend/drm: fix primary FB check
* output: use output_pending_enabled() in output_basic_test()
* backend/drm: use output_pending_enabled()
* backend/drm: Ensure a primary fb is available when configuring an output
* backend/drm: Remove dead code
* backend/drm: Init connector after we try to allocate a crtc for it
* render/egl: drop wlr_egl_is_current()
* render/egl: drop wlr_egl_save_context()
* render/egl: add save_context parameter to wlr_egl_make_current()
* xwayland: add map_request signal
-------------------------------------------------------------------
Fri Feb 23 09:25:57 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20240222T231336.51c1e4a:
* xwayland/xwm: Initialize client_id_cookie
* gamma-control-v1: Remove dead variable assignment
* render/vulkan: Avoid double-free on calloc error
* render/drm_format_set: Clean up on union failure
* xwayland/xwm: Allocate to the right variable
* xwayland/xwm: Avoid zero-size allocaiton
* drm-lease-v1: Free the wlr_drm_lease_v1 on error
* backend/drm: Remove erroneous free
* backend/drm: Free current_modeinfo on error
* backend/drm: don't destroy previous DRM master blobs
* backend/drm: fix broken link to KMS property docs
* buffer: add single-pixel-buffer-v1 special case in buffer_is_opaque()
* scene: ignore duplicate wlr_scene_output_layout_add_output() calls
-------------------------------------------------------------------
Sun Feb 18 18:19:19 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20240215T154112.842093b:
* Define _POSIX_C_SOURCE globally
* util/log: drop unnecessary _XOPEN_SOURCE
* backend/drm: skip reset after VT switch if possible
* backend/drm: fix typo in restore_drm_device() comment
* backend/drm: move restore logic to drm.c
* backend/drm: atomically reset state after VT switch
* backend/drm: call get_drm_connector_props() when creating connector
* backend/drm: extract logic to build current connector state
* backend/drm: use early return in handle_session_active()
* backend/drm: add destroy_blob()
* backend/drm: drop wlr_drm_backend arg from create_mode_blob()
* backend/drm: add drm_page_flip_create()
* backend/drm: fix fb_damage_clips_arr memory leak
* ext-foreign-toplevel-list-v1: improve/fix update_state()
* backend/drm: drop unnecessary _XOPEN_SOURCE
* Add more POSIX compliance macros to fix uClibc support
* ext-foreign-toplevel-list-v1: new protocol implementation
* pointer-constraints: handle inert pointer resources correctly
* linux_dmabuf_v1: allow callbacks for checking dmabuf import
* xdg-shell: drop automatic surface configuration
* allocator: remove backend parameter in allocator_autocreate_with_drm_fd
* switch: add docs
* backend/session: add docs
* compositor: don't handle size or viewport src change in surface_update_damage()
* compositor: drop wlr_surface.external_damage
* cursor: fix and simplify region mapping
* render/gles2: Fixup dropping has_alpha from pixel_format
* render/pixel-format: Move has_alpha into it's own array
* Create & implement transient seat protocol
* linux-dmabuf-v1: bump to v5
* linux-dmabuf-v1: switch to stable
* linux-dmabuf-v1: fix include guard name
* backend/drm: use wlr_drm_backend.name for fd cloning
* wlr_damage_ring: Replace wlr_damage_ring_rotate_buffer with original list impl
* compositor: don't get buffer from pending buffer resource too early
* backend/drm: add support for atomic tearing page-flips
* scene: release shm buffers once uploaded
* compositor: introduce wlr_surface_reject_pending()
* render/vulkan: correct sRBG gamma expansion in shader
* backend: take wl_event_loop instead of wl_display in wlr_backend_autocreate()
* backend/multi: take wl_event_loop instead of wl_display
* backend/drm: drop wl_display argument
* backend/x11: take wl_event_loop instead of wl_display
* backend/wayland: take wl_event_loop instead of wl_display
* backend/libinput: drop wl_display argument
* backend/headless: take wl_event_loop instead of wl_display
* xwayland: add support for _NET_WM_WINDOW_TYPE_DESKTOP atom
* backend: stop calling wl_display_terminate()
* backend: destroy multi backend when primary backend is
* backend: make attempt_drm_backend() return the primary backend
* backend/multi: emit destroy signal before destroying child backends
* Fix disappearing menus in QT apps
* output: Drop pending state
* xwayland/xwm: associate even on xcb_get_property() failure
* backend/wayland: populate pointer axis relative direction
* backend/libinput: populate pointer axis relative direction
* seat/pointer: add support for axis_relative_direction event
* pointer: add support for axis relative direction
* xdg-shell: assert that configure events carry positive or zero sizes
* layer-shell: forbid set_size with values ≥INT32_MAX
* single-pixel-buffer: send wl_buffer.release
-------------------------------------------------------------------
Thu Jan 18 15:48:23 UTC 2024 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20240117T154437.58bb49a:
* security-context-v1: fix possible leaks on wl_client_create() and state copying errors
* xwayland: close pipe fds on set_cloexec() error
* backend/x11: handle touchpoint allocation failure
* render/drm_format_set: fix possible leak on realloc error
* render/vulkan: fix possible double free
* keyboard: fix type of wlr_keyboard_modifiers.group
* tinywl: depend on the server xdg-shell header
* fix outdated comment in wlr_output.h
* Fix bool return types
* render: stop auto-creating wl_drm
* wl_drm: add deprecation notice
* region: add docs for wlr_region_scale_xy() and wlr_region_confine()
* backend/drm: save current refresh rate
* scene: drop wlr_scene_set_presentation()
* presentation-time: drop wlr_presentation arg
* tearing-control-v1: synchronize state with surface
* session-lock-v1: use wlr_surface_synced
* session-lock-v1: drop negative buffer size checks
* content-type-v1: use wlr_surface_synced
* pointer-constraints-v1: use wlr_surface_synced
* layer-shell-v1: use wlr_surface_synced
* xdg-decoration: use wlr_surface_synced for toplevel
* subcompositor: use wlr_surface_synced
* presentation-time: use wlr_surface_synced
* xdg-shell: use wlr_surface_synced for popups
* xdg-shell: use wlr_surface_synced for toplevel
* xdg-shell: use wlr_surface_synced for wlr_xdg_surface
* compositor: add wlr_surface_role.client_commit
* compositor: add wlr_surface_synced
* compositor: add wlr_surface_state_has_buffer()
* compositor: fix wlr_surface_has_buffer() doc comment
* compositor: remove unnecessary wlr_surface.has_buffer
* compositor: adjust surface_state_move() comment
* pointer-constraints-v1: reset committed on commit
* pointer-constraints-v1: add cursor_hint.enabled
* compositor: reset wlr_surface.current.committed on commit
* backend: fix build against upcoming `gcc-14` (`-Werror=calloc-transposed-args`)
* output-layout: fix missing global for outputs with a custom mode
* input-method: Simplify resetting of input state
* input-method-v2: validate commit serial
* input-method-v2: free current strings on commit
* input-method-v2: drop unnecessary variable and cast
* xcursor: fix duplicate cursor check check in load_callback()
* cursor: drop unnecessary commented code
* cursor: fix initial cursor position for new outputs
* backend/drm: return secondary backend DRM FD
* linux-dmabuf-v1: ignore scanout output for secondary DRM backends
* backend/drm: add wlr_drm_backend_get_parent()
* render/pixman: add wlr_pixman_renderer_get_buffer_image()
* ci: drop stale dependencies
* build: automatically compute soversion
* tinywl: check initialized instead of initial_commit
* tinywl: don't send configures to uninitialized xdg_surfaces
* render/gles2: add wlr_gles2_renderer_get_buffer_fbo()
* compositor: drop surface precommit event
* cursor: send surface scale events
* render: disable linux-dmabuf without DRM FD
* render/vulkan: use _SRGB image view when possible
* render/vulkan: constify vulkan_format_props_find_modifier
* render/vulkan: create VkImage with option for _SRGB view, if possible
* render/vulkan: detect which _UNORM formats support _SRGB views
* render/vulkan: extract shm texture format query into function
* render/vulkan: track and use _UNORM variants of _SRGB formats
* wlr_damage_ring: Fix inverted conditional
* wlr_scene: fix transformed outputs backend damage clearing
* wlr_scene: Apply output damage once
* wlr_scene: Don't damage whole damage ring when exiting direct scanout
* wlr_scene: Use wlr_damage_ring_rotate_buffer()
* wlr_scene: Track output damage separately
* swapchain: Add wlr_swapchain_has_buffer
* renderer: Drop buffer binding
* render: Nuke old read pixels API
* screencopy_v1: Use new read pixels API
* backend/x11: Use wlr_texture_read_pixels
* render: Implement texture_preferred_read_format
* wlr_texture: Introduce wlr_texture_preferred_read_format
* render/vulkan: Implement texture_read_pixels
* render/gles2: Implement texture_read_pixels
* render/pixman: Implement texture_read_pixels
* wlr_texture: Introduce wlr_texture_read_pixels_options helpers
* wlr_texture: Introduce wlr_texture_read_pixels
* output: replace wlr_render_timer arg with wlr_buffer_pass_options
* types/output: emit destroy event before destroying global
* render/gles2: save/restore context when creating/submitting a render pass
* render/gles2: document EGL context gotchas
* output: drop stale references to wlr_output_attach_render()
* render/gles2: reword wlr_gles2_texture comments
* render/gles2: Inline texture invalidation
* render/gles2: Don't attach texture as buffer addon
* render/gles2: Don't track image in texture
* render/gles2: Don't double import dmabuf
* render/gles2: Destroy textures first
* renderer/gles2: Bail rendering to external buffers when binding them
* render/gles2: Lazily create buffer fbo
* backend/drm: remove wlr_drm_renderer.backend
* backend/drm: move drm_plane_finish_surface() to drm.c
* backend/drm: split wlr_drm_fb related functions into separate file
* render: Drop rendering_with_buffer
* output: Drop back_buffer
* output: Drop wlr_output_attach_render
* renderer: Drop wlr_renderer_begin
* damage_ring: add wlr_damage_ring_rotate_buffer()
* render/gles2: check external-only flag in get_or_create_buffer()
* render/gles2: Don't track has_alpha in pixel_format
* backend/drm: use DRM_IOCTL_MODE_CLOSEFB instead of RMFB
* render/egl: fallback to GBM FD if EGLDevice is not available
* render/vulkan: drop current_command_buffer
* xwm: don't do anything except mapping on MapRequest
* backend/x11: don't send ConfigureRequest with the same size
* backend/x11: check buffer format in output_test()
* viewporter: fix src buffer bounds check
* viewporter: listen to client_commit
* viewporter: rename state var in viewport_handle_surface_commit()
* Revert "subcompositor: emit new_subsurface immediately"
* matrix: deprecate
* Cleanup wlr_matrix.h includes
* compositor: deprecate wlr/types/wlr_region.h
* output: Drop transform matrix
* output: fix display destroy listener double removal
* subcompositor: emit new_subsurface immediately
* subcompositor: don't map unadded subsurfaces
* layer-shell: emit new_surface event at the proper time
* xdg-{shell,decoration}: improve events
* output: take wl_event_loop in wlr_output_init()
* output: setup display destroy listener in wlr_output_create_global()
* output: take wl_display in wlr_output_create_global()
* output-layout: take wl_display in constructor
* backend/session: take wl_event_loop instead of wl_display
* xwm: ensure stack list only contains mapped managed surfaces
* xwm: avoid restacking managed surfaces above OR surfaces
* util/transform: add wlr_output_transform_coords()
* util/transform: move over wl_output_transform helpers
* xdg-toplevel: check that title provided actually is UTF-8
* render: drop legacy rendering API
* render/vulkan: drop legacy rendering API
* render/pixman: drop legacy rendering API
* render/gles2: drop legacy rendering API
* output/cursor: drop legacy rendering API
* render: drop legacy render pass
-------------------------------------------------------------------
Tue Nov 21 18:04:47 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.18.0+dev.20231121T201018.5dd614b:
* input-inhibitor: drop
* build: bump version to 0.18.0-dev
* tinywl: fix wlroots dependency constraint in Makefile
* build: bump version to 0.17.0
* render/vulkan: undo alpha premult for 8-bpc ARGB/ABGR
* linux-dmabuf-v1: skip import check on split render/display SoCs
* screencopy: Use box size instead for shm copy
* screencopy: Move frame bounds sanity check into common code
* screencopy: Define proper destination for dmabuf copy
* backend/drm: drop unnecessary flags in legacy interface
* backend/drm: add wlr_drm_connector_state.nonblock
* backend/drm: fix pending page-flip check
-------------------------------------------------------------------
Sun Nov 19 14:30:35 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20231119T153339.c6b4985:
* xcursor: don't store NULL xcursors
* xcursor: fix NULL deref on malloc() fail
-------------------------------------------------------------------
Sat Nov 18 07:29:49 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20231117T143432.b06d58f:
* backend/drm: Destroy page flips on backend destroy
* backend/drm: Track page flips in list
* backend/drm: introduce page-flip tracking struct
* backend/drm: free fb later
* xwayland: fix user_event_handler
* wlr_scene: Update outputs if subpixel status changes
* wlr_scene: Update outputs when primary output is changed
* wlr_scene: Update outputs when output scale/transform changes
* backend/drm: leave CRTCs on when shutting down
* backend/drm: ensure plane surfaces are cleaned up on shutdown
* Add missing type declarations in headers
* wlr_scene: Introduce wlr_scene_subsurface_tree_set_clip
* wlr_scene_surface: Introduce scene_surface_set_clip
* set_buffer_with_surface_state: Take whole surface struct
* wlr_scene_subsurface_tree: Addon to scene
* wlr_scene: Amend scene_buffer.point_accepts_input to take coordinate pointers
* tinywl: don't use "I"/"my" in docs
* tinywl: fix xdg_toplevel_destroy() docs
* tinywl: stop using the word "view" to refer to toplevels
* tinywl: fix crash when previously focused surface is not a toplevel
* xdg-shell: add wlr_xdg_{toplevel,popup}_try_from_wlr_surface()
-------------------------------------------------------------------
Fri Nov 10 18:33:53 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20231106T174655.5de9e1a:
* wlr-output-management: Send custom modes to clients
* ci: halt on UBSan error in smoke test
* xcursor: add fallbacks for legacy names
* Remove unnecessary code
* cursor: log missing XCursor
* wlr_cursor: update cursor when output enable and transform changed
* backend: drop wlr_backend_get_presentation_clock()
* xdg-toplevel: don't send maximized if tiled is requested but not supported
* xwayland: add wlr_xwayland_set_workareas()
* util/token: add docs
* util/token: rename TOKEN_STRLEN to TOKEN_SIZE
* render/vulkan: use VK_KHR_global_priority References: #3386
* xdg-shell: use wlr_surface.unmap_commit
* render/vulkan: remove unused queue_props in renderer
* layer-shell: track surface init state
* layer-shell: don't use wlr_surface_role.unmap hook
* compositor: add wlr_surface.unmap_commit
* layer-shell: check the configured flag earlier
* examples: drop dead client code
-------------------------------------------------------------------
Sun Oct 22 18:33:56 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20231021T172546.47bf87a:
* renderer/vulkan: don't add two alphas together in blend func
* linux_dmabuf_v1: convert to try_from References: wlroots/wlroots#884
* drm: convert to try_from References: wlroots/wlroots#884
* buffer: convert to try_from References: wlroots/wlroots#884
* render/vulkan: undo alpha premult before sRGB encoding/decoding
-------------------------------------------------------------------
Tue Oct 17 13:21:39 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20231016T111444.b560f36:
* Fix output layers order error on wayland backend
* xwayland: stop translating _NET_WM_STRUT_PARTIAL coordinates
* examples: split clients in separate repository
* Revert "backend/drm: Automatic non-blocking commits"
* build: rename libdrm partial dep to be more explicit
* Drop wl_client and user data assertions in bind handlers
* xwayland: add wlr_xwayland_create_with_server()
* xwayland/server: add ready flag
* backend/drm: Automatic non-blocking commits
* docs: add architecture document
* security-context-v1: add commit event
* security-context-v1: new protocol implementation
* xwayland: fix memory leak
* xdg-shell: fix wlr_xdg_popup_destroy() docs
* layer-shell: check for NULL in wlr_layer_surface_v1_destroy()
-------------------------------------------------------------------
Mon Oct 09 19:24:53 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20231009T083135.2cf78f4:
* output: allow_artifacts -> allow_reconfiguration
* scene/output_layout: Add assert for duplicate output insertion
* Add GitLab issue template
* util/addon: make wlr_addon_set_finish() safer
* scene-output-layout: assert lo->output == so->output
* scene_output_layout: Don't destroy output when output layout is destroyed
* output_event_commit: Remove committed and buffer
* wlr_output: Add applied state to commit event
* render/allocator: log message when GBM is disabled
* render: log error when requested renderer is compile-time disabled
* seat: remove wlr_seat_validate_grab_serial()
* xwayland: batch client ID request with other property requests
* xwayland: batch property requests when handling new window
* xwayland: fix double free wlr_xwayland_shell_v1
* render/drm_format_set: use published kernel doc URL
* render/vulkan: constrain blend to output subpass to redrawn region
* util: add struct to track union of rectangles
* renderer: Don't crash when trying to fallback to pixman
* renderer_autocreate_with_drm_fd: Ensure fd isn't bogus
* drop KDE idle protocol support
* xdg-shell: document wlr_xdg_surface's initialized & initial_commit
* contributing: add safety section
* treewide: Migrate from sizeof(struct) to sizeof(*pointer) where practical
* docs: replace the less commonly used "::" with "."
* xdg-surface: fix init state flow
* xdg-surface: assert that xdg_surface isn't inert
* output_defer_present: Calloc right struct
* output: defer fake present events until after commit
* backend/drm: restore pending page-flip check when tearing
* cursor: Unset cursor if texture upload failed
* cursor: Remove dead code
* cursor: Unset cursor image when there is not available xcursor theme
* types/wlr_tearing_control_v1: use safe list iteration on destroy
-------------------------------------------------------------------
Fri Sep 29 14:42:09 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230928T165308.c2aa7fd:
* backend/drm: Add async page flip support to legacy
* staging/tearing-control: Add protocol support
* Fix possible crash in server-decoration when surface destroyed
* wlr_scene: clarify wlr_scene_output ownership semantics
-------------------------------------------------------------------
Thu Sep 21 10:38:06 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230921T022534.98a745d:
* render/pass: Remove empty box early return
* renderer: Use wlr_render_rect_options_get_box
* render/pass: Introduce wlr_render_rect_options_get_box
-------------------------------------------------------------------
Thu Sep 14 09:01:43 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230911T202507.dbc7a5c:
* screencopy_v1: only bind, not render with, buffer in shm copy path
* output: Mutate frame_pending needs_frame when there is an explicit output commit
* render/vulkan: fix validation error with vkCmdBlitImage
* render/vulkan: de-duplicate VkImageUsageFlags
* wlr_scene: Use cached node coordinates where possible
-------------------------------------------------------------------
Fri Sep 08 16:31:44 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230907T015632.9be72ec:
* backend/drm: Compute custom mode correctly
* xdg-popup: validate parent
* tinywl: set minimum wlroots version in Makefile
-------------------------------------------------------------------
Sat Aug 26 17:28:25 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230825T171605.717ded9:
* backend/drm: drop no-op shortcut
* render/pass: ensure rect has positive size
* Unify signal data docs
* render: ensure wlr_render_rect_options->box is nonempty
* output: trigger frame/present events on all commits on enabled output
* output: don't forbid multiple commits per frame
* backend/drm: report !presented if session is inactive
* backend/drm: don't set frame_pending on modeset
* render: only open DRM render node if necessary
* scene_output_layout: make output adding explicit
* output_layout: return wlr_output_layout_output when adding output
* wlr_output: Set current_mode during new custom mode
-------------------------------------------------------------------
Mon Aug 21 19:59:35 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230821T185609.72787db:
* compositor: drop wlr_surface_destroy_role_object()
* xdg-shell: rework roles
* xdg-popup: avoid using wlr_surface_destroy_role_object()
* Don't assume xdg_surface.{toplevel,popup} is non-NULL
* xdg-shell: don't return anything from create_xdg_surface()
* egl: Don't assume display is owned when KHR_display_reference is unsupported
* egl: Remove dead code
* buffer: make wlr_client_buffer functions private
* backend/headless: fix broken output frame events
-------------------------------------------------------------------
Mon Aug 21 11:01:57 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230820T211206.5f69125:
* renderer/vulkan: Defer device lost signal until end of pass
* xdg-decoration: store an xdg_toplevel instead of xdg_surface
* backend/wayland: wait for xdg_surface.configure explicitly
* render: split render pass API into separate header
* wlr_output: Nuke wlr_output_update_enabled
* output: Schedule mode updates to happen with rest of output events
* output: Inline wlr_output_update_{custom,}_mode
* wlr_output: Make wlr_output_update_{custom,}_mode private
* backend/drm: Use output state to set init mode
* backend/drm: Move output variable up in connect_drm_connector
* backend/headless: Use output state to set init custom mode
* backend/wayland: Use output state to set init custom mode
* backend/x11: Use output state to set init custom mode
* output: Add initialization state to wlr_output_init
* output: Extract common commit logic
* examples/embedded: new example
* backend/wayland: add wlr_wl_output_create_from_surface()
* backend/wayland: tag wl_surface
* backend/wayland: take existing wl_display in wlr_wl_backend_create()
-------------------------------------------------------------------
Mon Aug 14 08:35:52 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230814T080839.664ec59:
* renderer: Sanity check texture source bounds
-------------------------------------------------------------------
Sat Aug 12 12:06:16 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230812T101651.aee31ed:
* screencopy_v1: Implement copy regions with gpu blit path
* screencopy_v1: Use new renderer API for gpu blit path
-------------------------------------------------------------------
Mon Aug 07 04:13:36 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230803T144028.c74f89d:
* Avoid using memcpy() to copy structs
* xwayland: drop wlr_xwayland_surface.events.set_pid
* wlr_output: update cursor when scale changed
* wlr_output_cursor: assert renderer isn't NULL
-------------------------------------------------------------------
Sat Jul 29 15:36:20 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230728T142137.d40bcfe:
* xwayland: avoid calling xwm_get_atom_name() when debug logs are off
* types/wlr_drm_lease_v1: downgrade DRM backend error message to debug
* render/vulkan: use renamed glslang binary by default
* compositor: add "mapped" flag doc
* Unmap wlr_surface before making its role object inert
* xwayland/shell: don't listen to wlr_surface.events.destroy
* backend/drm: restore custom modes
* wlr_output: add comments for signal parameters
* xdg-shell: add support for v6
-------------------------------------------------------------------
Mon Jul 24 01:11:55 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230724T010019.04e4e06:
* cursor-shape-v1: new protocol implementation
* wlr_scene: Don't damage when setting opaque region
* wlr_scene: Fix damage tracking with non atomic opaque region configuration
* session-lock: add missing lock_surface_destroy
* wlr_idle_inhibit_manager_v1: add comments for signal parameters
* backend/x11: log output test failure reasons
* backend/wayland: log output test failure reasons
* export-dmabuf, screencopy: schedule_frame -> needs_frame
* data-device: remove undefined grab interface decls
* xdg-shell: update stale docs
-------------------------------------------------------------------
Mon Jul 17 15:53:54 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230717T145522.000081d:
* cursor, output: apply viewport to cursor
* wlr_gamma_control: add missing forward declarations
-------------------------------------------------------------------
Sun Jul 16 17:58:39 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230716T025509.b18c766:
* scene: apply rounding when translating buffer damage
* scene: send wl_surface.preferred_buffer_scale
* backend/drm: stop checking for wlr_client_buffer
* presentation-time: add separate helper for zero-copy
* scene: add wlr_scene_output_sample_event
* scene: rename output_present event to output_sample
-------------------------------------------------------------------
Thu Jul 13 07:37:45 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230712T172012.d8585d6:
* wlr_scene: Fix buffer damage for output state
* add minimalist cairo example
* render/gles2: wrap timer setup in push_gles2_debug()
* render: document wlr_buffer_pass_options.timer
* render: constify struct wlr_buffer_pass_options
* Use wl_container_of() instead of casts
* render/gles2: drop unnecessary cast
-------------------------------------------------------------------
Mon Jul 10 22:15:40 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230710T095702.214df8e:
* scene_output: optionally record and report timings
* input-method-v2: don't remove inert role resource
* xwayland-shell: don't remove inert role resource
* session-lock: don't remove inert role resource
* layer-shell: don't remove inert role resource
* subcompositor: don't remove inert role resource
* xwayland: pass NULL as event data
* xwayland: use initializer for struct wlr_xwayland_resize_event
* xwayland: document event data
* xwayland: drop struct wlr_xwayland_move_event
* xwayland: document associate/dissociate events
-------------------------------------------------------------------
Fri Jul 07 23:35:23 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230707T173111.7a9f8d8:
* Use struct initializers instead of memset()
* viewporter: check for an existing viewport
* license: add copyright line for all contributors
-------------------------------------------------------------------
Mon Jul 03 11:40:46 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230703T094654.6f82871:
* output: drop wlr_output_cursor_set_image()
* cursor: remove usage of wlr_output_cursor_set_image()
* cursor: remove wlr_cursor_set_image()
* xcursor-manager: drop wlr_xcursor_manager_set_cursor_image()
* cursor: add wlr_cursor_set_buffer()
* cursor: stop using set_image() in wlr_cursor_unset_image()
-------------------------------------------------------------------
Sun Jul 02 19:39:15 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230701T100530.bbd53b3:
* screencopy-v1: fix logical->physical region transform
* wlr_scene: Don't recompute node location during rendering
* wlr_scene: Simplify direct scanout handling
* wlr_scene: Wrap render_list nodes in struct
-------------------------------------------------------------------
Fri Jun 30 18:48:41 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230630T172444.9c2c906:
* examples/pointer: use wlr_cursor_set_xcursor()
* cursor: set image for new outputs
* cursor: add cursor_update_outputs()
* cursor: keep track of XCursor manager and name
* cursor: track surface globally, instead of per-output
* cursor: use wlr_cursor_unset_image() in wlr_cursor_set_surface()
* cursor: store wlr_cursor inline in wlr_cursor_state
* backend/drm: use panel_orientation if it is set
* backend/drm: handle output layer damage
* backend/wayland: handle output layer damage
* output-layer: add wlr_output_layer_state.damage
* contributing: add instructions for forking
* util/log: fix buffer overflow
* wlr_scene_buffer: Publicize some state
-------------------------------------------------------------------
Tue Jun 27 16:30:50 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230627T162630.f4ee5ea:
* backend/headless: leave new outputs disabled by default
* backend/x11: leave new outputs disabled by default
* backend/wayland: mark new outputs as disabled
* examples: enable new outputs
* tinywl: enable new outputs
* backend/headless: add support for disabled outputs
* backend/headless: only schedule a new frame if buffer was submitted
* backend/x11: unmap when output is disabled
* backend/wayland: unmap when output is disabled
-------------------------------------------------------------------
Tue Jun 27 16:28:54 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230627T114758.8243399:
* output: Set output mode during main commit
* backend/wayland: Reject non 0 refresh rate mode sets
* backend/x11: Reject non 0 refresh rate mode sets
* backend/drm: Don't add pollute fixed modes list with custom modes
* wlr_scene: Add opaque region blend mode optimization
* examples/tablet: Don't use new render API and old render API together
-------------------------------------------------------------------
Mon Jun 26 13:24:17 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230626T114938.cbcd994:
* backend/drm: remove duplicate needs_frame() in set_cursor()
-------------------------------------------------------------------
Mon Jun 26 09:16:27 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230623T220954.71b57b8:
* fullscreen-shell: set surface role
* output: add wlr_output_state_init()
* compositor: listen to role_resource destroy signal
* compositor: replace role_data with role_resource
* input-method-v2: add popup_surface_from_resource()
* compositor: don't call role unmap hook without an object
* compositor: introduce wlr_surface_set_role_object()
* compositor: fix wlr_surface_set_role() error messages
* backend/drm: fix libliftoff_plane double-free
* xwayland: unset wlr_xwayland.server on destroy
-------------------------------------------------------------------
Thu Jun 22 13:31:12 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230622T145532.d59749a:
* cursor: add support for animated XCursor
* output/swapchain: fix error return value types
* scene: Use wlr_output_state_copy for direct scanout path
* output: Introduce wlr_output_state_copy()
-------------------------------------------------------------------
Wed Jun 21 15:54:01 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230621T113754.38d451b:
* render/vulkan: Don't compute texture.has_alpha until first... ...texture view is dynamically created
-------------------------------------------------------------------
Wed Jun 21 10:45:31 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230621T102356.ecbe48f:
* backend/drm: Fix typo
-------------------------------------------------------------------
Wed Jun 21 04:50:38 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230620T201449.1e68e1f:
* seat: fix keyboard/pointer/touch resource destroy
* output: stop using wlr_output.back_buffer in output_ensure_buffer()
* output: attach buffer to state in output_ensure_buffer()
* wlr_scene: Introduce wlr_scene_buffer_set_filter_mode
* render/vulkan: Initialize to fix compilation error
* allocator: only use DRM auth if we are master
* backend/drm: Use texture blend_mode for multigpu blit
* render: Introduce wlr_render_texture_options.blend_mode
* pixman: Remove dead code
* renderer: Introduce wlr_scale_filter_mode
* output_state: Gamma lut should be freed only if committed
* render/vulkan: Dynamically create texture views
* render/vulkan: Inline init_sampler
* render/vulkan: Dynamically create pipeline layouts
* render/vulkan/pipeline_key: Add blending
* render/vulkan: Handle quad pipeline through generic pipeline path
* render/vulkan: Dynamically handle pipeline creation for textures
-------------------------------------------------------------------
Sat Jun 17 08:22:04 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230615T184033.220402b:
* cursor: add wlr_cursor_unset_image()
* cursor: add wlr_cursor_set_xcursor()
* wlr_scene: Clear damage ring on transform change
* wlr_scene: Clear damage ring on scale change
* wlr_scene: Reset damage ring bounds every frame
* wlr_damage_ring_set_bounds: Ignore duplicate size requests
* wlr_scene: Fix transforms with non 1 scale
* output: add documentation for wlr_output_state
* build: drop proto_inc
* examples: drop unnecessary include_directories
* compositor: add wlr_surface_role.no_object
* backend/libinput: use struct initializers for events
* backend/libinput: ignore multiple events for same pointer button
* output: add wlr_output_state_set_layers()
* tinywl: Drop usage of wlr_output.pending
* examples: Drop usage of wlr_output.pending
* wlr_scene: Don't use direct scanout if trying to commit a new render_format
* examples/output-layers: fix layers not included in commit
* backend/drm: clip FB damage
* wlr_output_state: Consider gamma_lut uninitialized if not committed
* wlr_output_state: Consider buffer uninitialized if not committed
* seat: remove a TODO comment about simulating keyboard events
-------------------------------------------------------------------
Mon Jun 12 14:10:23 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230612T124231.6e8fb55:
* cursor: only reset the cursor when the surface changes
-------------------------------------------------------------------
Mon Jun 12 13:37:54 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230612T141309.05dd08a:
* scene: introduce wlr_scene_output_build_state()
* scene: Don't rely on output current state during rendering
* output: introduce wlr_output_state_set_damage()
* render/vulkan: rename tex_usage to shm_tex_usage
* gamma-control-v1: stop applying gamma LUTs implicitly
* gamma-control-v1: add wlr_gamma_control_v1_send_failed_and_destroy()
* gamma-control-v1: add wlr_gamma_control_v1_apply()
* output: add wlr_output_state_set_gamma_lut()
* gamma-control-v1: add wlr_gamma_control_manager_v1_get_control()
* gamma-control-v1: introduce set_gamma event
* compositor: improve role-specific documentation
* subcompositor: set role_data with wlr_surface_set_role()
* drag: don't set icon's role_data
-------------------------------------------------------------------
Thu Jun 08 04:34:39 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230607T214608.30616bc:
* render/vulkan: reset scissor before post-blend subpass
* render/vulkan: fix blend subpass matrix
* render/vulkan: fix bound pipeline check for output_pipe
* render/vulkan: require format info for shm
* render/vulkan: de-duplicate texture VkImageView init
* render/vulkan: split off YCbCr texture features
* render/vulkan: rename tex_features to shm_tex_features
* cursor: fix applying hotspot offset
-------------------------------------------------------------------
Wed Jun 07 01:06:27 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230606T213807.544c062:
* presentation-time: constify wlr_presentation_feedback_send_presented()
* subcompositor: simplify subsurface_consider_map(), call on add
* Clear input regions if they're ignored
* compositor: add a note about ignored input regions
* wlr_tablet_v2_tool: Tablet tool surfaces are always mapped
* wlr_seat_pointer: cursor surfaces are always mapped
* render/gles2: Handle NULL timer
* renderer: Don't pass NULL options
* Add some missing includes/declarations
* examples/multi-pointer: drop
* render/gles2: implement timer API
* add render timer API
* util: add timespec_to_nsec
* compositor: unmap subsurfaces too on unmap
* backend/wayland: add support for cropping output layers
* backend/wayland: add scaling support for output layers
* examples: Drop quads
* gamma-control: Read ramps using pread
* compositor: notify subsurfaces about a commit in the rendering order
* subcompositor: consider mapping on parent map
-------------------------------------------------------------------
Sat Jun 03 14:06:47 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230603T104312.a2f94b5:
* virtual-keyboard: Handle inert seats
* virtual-pointer: Handle inert seats
* xdg-popup: Handle inert seats
* text-input: Handle inert seats
* primary-selection: Handle inert seats
* keyboard-shortcuts-inhibit: Handle inert seats
* input-method: Handle inert seats
* wlr_idle: Handle inert seats
* tablet: Handle inert seats
* data-control: Handle inert seats
* data-device: Handle inert seats
* seat: Allow binding to inert seats
* output/cursor: fix scale and transform
* cursor: fix wl_pointer.set_cursor hotspot updates
* session-lock: fix buffer check
* session-lock: remove unused wlr_session_lock_surface_v1.events.map
* xwm: check for a buffer before mapping
* compositor: remove wlr_surface_role.precommit
* xwm: use unified map logic
* drag: use unified map logic
* input-method: use unified map logic
* session-lock: use unified map logic
* layer-shell: use unified map logic
* xdg-shell: use unified map logic
* subcompositor: use unified map logic
* compositor: introduce unified map logic
* cursor: unset wlr_output_cursor.texture on surface destroy
* cursor: ignore wlr_cursor_set_surface() with same surface
* xwm: introduce associate/dissociate events
* Revert "xwm: emit new_surface/destroy on associate/dissociate"
-------------------------------------------------------------------
Thu Jun 01 15:02:17 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230601T104256.beb820b:
* render/vulkan: improve error handling in vulkan_begin_render_pass()
* render/vulkan: improve error handling in render_pass_submit()
* backend/drm: introduce wlr_drm_mode_get_info()
* render/vulkan: handle vulkan_record_stage_cb() failures
* backend/drm: move forward decl up for drmModeModeInfo
* output/cursor: use new rendering API
* examples: convert to new rendering API
* backend/drm: use new rendering API
* output: add wlr_output_begin_render_pass()
* wlr_scene: Introduce wlr_scene_buffer_set_opacity
* wlr_scene: Make scene_rect_from_node public
* wlr_scene: Make scene_tree_from_node public
* wlr_scene: Add documentation to wlr_scene_buffer_from_node
-------------------------------------------------------------------
Tue May 30 09:47:00 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230530T094219.e07c77f:
* render/vulkan: implement render pass API
* renderer/gles2: Implement render pass interface
* renderer/gles2: Compute texture coordinates based off of vertex positions
* renderer/gles2: Merge get_buffer and create_buffer
* renderer/gles2: Interpret matrix as column major in shader
-------------------------------------------------------------------
Sun May 28 22:49:32 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230528T145119.3de330e:
* render/vulkan: add 10, 12, and 16-bit YCbCr formats
-------------------------------------------------------------------
Fri May 26 19:10:35 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230526T165058.2c6aeed:
* output: use pending render format if any
* render/vulkan: document TEXTURE_TRANSFORM_* in shader
* render/vulkan: drop unused vulkan_has_extension()
* render/vulkan: drop unused vulkan_change_layout_queue()
-------------------------------------------------------------------
Fri May 26 10:10:34 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230524T130619.4d63427:
* render/egl: check for EGL_EXT_device_query in get_egl_device_from_drm_fd()
* render/vulkan: de-dup pipeline layout initialization
* render/vulkan: add more YCbCr formats
* render/vulkan: require support for linear filter for YCbCr
* render/vulkan: check format support before creating YCbCr sampler
* render/vulkan: generalize YCbCr format support
* render/vulkan: add init_{default,ycbcr}_pipeline_layout()
* render/vulkan: add vulkan_get_pipeline_layout()
* render/vulkan: introduce struct wlr_vk_pipeline_layout
* render/vulkan: use same sampler params for RGBA and NV12
* render/vulkan: use VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE for default sampler
* render/vulkan: use identity swizzle for YCbCr formats
* render/vulkan: fix VkPipelineLayout when texturing NV12
* render/vulkan: extract quad pipeline init to separate function
* util/box: transform empty boxes' origins
* render/vulkan: fix YCbCr format check in vulkan_texture_from_pixels()
* util/box: always treat NULL boxes as empty
* util/box: simplify empty box case in wlr_box_intersection()
* wlr_{box, fbox}_equal: Consider empty boxes NULL
* wlr_{box, fbox}_equal: Handle NULL
* render/vulkan: drop unnecessary comments
* render/pixel-format: add YVYU and VYUY
* render/pixel-format: add support for block-based formats
* render/pixel-format: add docs
-------------------------------------------------------------------
Fri May 19 06:58:07 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230518T112021.a0ebc40:
* linux-dmabuf-v1: fix wlr_drm_format_set leak in feedback_compile()
* dmabuf: Remove assumption that all mods are in fallback tranche
* output_pick_format: Fail if no format could be chosen
* keyboard: use the new data in wlr_keyboard_set_keymap()
* keyboard: add support for resetting the keymap
* keyboard: don't change current keymap on wlr_keyboard_set_keymap() error
* seat/keyboard: allow no keymap
* drm_plane_pick_render_format: return false if no format could be found
* backend_destroy: Similiar logic like DRM backend
* wlr_drm_format_set_copy: Do not allocate heap
-------------------------------------------------------------------
Sat May 13 08:30:31 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230512T150902.10dd416:
* render/vulkan: allow rendering to non-8-bit buffers
* render/vulkan: wait for idle queue before destroying render buffer
-------------------------------------------------------------------
Fri May 12 07:28:10 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230511T144322.47e175a:
* wlr_drm_format_set_intersect: Clear destination before trying to write to it
* wlr_drm_format_set: Store formats on array
* wlr_drm_format: Rework wlr_drm_format_intersect
* wlr_drm_format: Change wlr_drm_format_dup to copy
* wlr_drm_format: Change wlr_drm_format_create to init
* wlr_drm_format: Don't take double pointer in wlr_drm_format_add
* wlr_drm_format: Make structure constant length
* wlr_drm_format_set: Remove redundant text in comment for finish function
* wlr_drm_format: Introduce drm_format_finish
-------------------------------------------------------------------
Thu May 11 07:42:36 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230511T072532.e353c5c:
* render/vulkan: enable NV12 on big-endian
* wlr-export-dmabuf-v1: handle output destroy
* render/vulkan: improve logging when creating texture
-------------------------------------------------------------------
Tue May 09 21:27:05 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230508T091722.18139f4:
* wlr_cursor: Don't multiply hotspot by scale^2
* backend/drm: fix di_info memory leak
* wlr_cursor: Consider surface state when setting new cursor surface
* render/vulkan: increase next descriptor pool size
* output: drop wlr_output_cursor_set_surface
* cursor: add surface handling
* output: add output_cursor_set_texture()
-------------------------------------------------------------------
Thu May 04 23:55:24 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230504T200720.b03f71f:
* render/vulkan: add support for NV12
* drm_format_set_intersect: Require initialized dst and remove assert
* drm_format_set_union: Require initialized dst and remove assert
* xwayland: allow compositor to set withdrawn state
* xwayland: enable use of a xserver subproject
* render/vulkan: fix code style for function brackets
* wlr_compositor: Decide opacity from new has_buffer flag.
* wlr_compositer: Keep track if surface has committed a buffer before.
* drm_format_set: Mark as unstable
* linux_dmabuf_v1: Use wlr_drm_format_set_union
* Add union function for format sets
* output/cursor: fix buffer size when nested and scaled
* render: introduce blend mode
* render/pixman: fix scaling in render_pass_add_texture()
* tinywl: Release everything before destroy
* render/vulkan: use VK_KHR_synchronization2
-------------------------------------------------------------------
Tue Apr 25 23:18:46 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230425T172635.6830bfc:
* render/pixman: implement render pass API
* render/pixman: add begin_pixman_data_ptr_access()
* scene: port to wlr_render_pass
* output: add wlr_output_add_software_cursors_to_render_pass()
* render/pass: add legacy render pass implementation
* render: add render pass helpers
* Add a new renderer API
* xcursor: Resolve warning in xcursor_build_theme_dir
-------------------------------------------------------------------
Mon Apr 24 22:23:14 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20220501T061358.56502be:
* backend/x11: prevent segfault on empty DRI3 response
-------------------------------------------------------------------
Sat Apr 22 18:42:16 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230420T103946.44069df:
* output-layer: add cropping support
* render/vulkan: fix signedness of strcmp() return value
* render/vulkan: use initializer in vulkan_change_layout_queue()
* render/vulkan: remove extra newline
* render/vulkan: use full names for extension command fields
* xcursor: sync with libwayland
* seat: Provide dummy resources for inert seats
* seat: Let client manage its own resources
* wlr_seat: Extract seat_client_create() function
-------------------------------------------------------------------
Sun Apr 16 23:23:19 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230416T140154.eac2eaa:
* wlr_scene: Fix potential use-after-free in wlr_scene_buffer_set_buffer
-------------------------------------------------------------------
Sat Apr 15 15:08:35 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230414T222924.39be67d:
* wlr_scene: Send presentation event before direct scanout output commit
* compositor: add wlr_surface_set_preferred_buffer_transform()
* compositor: add wlr_surface_set_preferred_buffer_scale()
* compositor: pass version in wlr_compositor_create
* compositor: use defunct_role_object error
* subcompositor: use bad_parent error
* subcompositor: simplify get_subsurface handler
* render/gles2: use byte-aligned rows for glReadPixels
* xcursor: adjust style, use calloc()
-------------------------------------------------------------------
Fri Apr 07 03:01:44 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230406T223908.b1e38fc:
* output: Drop output_is_direct_scanout
* output-damage: drop
* output: drop direct scan-out check in output_basic_test()
* scene: check wlr_output_is_direct_scanout_allowed()
* output: add wlr_output_is_direct_scanout_allowed()
* output-layer: add support for scaling buffers
-------------------------------------------------------------------
Fri Mar 31 07:36:55 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230328T225829.89dcecb:
* backend/wayland: only unmap layers when necessary
* backend/wayland: only update layer position when necessary
* backend/wayland: only re-order sub-surfaces when necessary
* output-layer: cache current state
-------------------------------------------------------------------
Sun Mar 26 23:59:36 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230326T071901.59d2743:
* render/vulkan: avoid double-close on sync_file FD after semaphore import
-------------------------------------------------------------------
Sat Mar 25 00:57:44 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230324T114708.12e28c3:
* examples/touch: support touch cancel events
* backend/wayland: support touch cancel events
* backend/drm: log drm_connector_alloc_crtc() failures
* backend/wayland: fix undefined reference to wlr_wl_input_device_get_seat
* examples/touch: fix incorrect event type
* drm_format_set: fix realloc size
* xdg-shell: improve unmapping logic slightly
* output-layer: require all layers in wlr_output_state.layers
* xdg-decoration: send missing protocol errors
* xwm: emit new_surface/destroy on associate/dissociate
-------------------------------------------------------------------
Fri Mar 17 09:38:39 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230316T181311.7d9938c:
* drm_format_set: fix realloc size
* xdg-shell: improve unmapping logic slightly
* output-layer: require all layers in wlr_output_state.layers
* xdg-decoration: send missing protocol errors
* xwm: emit new_surface/destroy on associate/dissociate
* xwm: make atom_map static
* wlr_scene: Skip direct scanout if there is no damage
* xwm: remove misleading comment
* gamma-control-v1: simplify get_gamma_control error handling
* gamma-control-v1: fix handling of duplicate control
-------------------------------------------------------------------
Fri Mar 17 09:37:52 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230316T181311.7d9938c:
* drm_format_set: fix realloc size
* xdg-shell: improve unmapping logic slightly
* output-layer: require all layers in wlr_output_state.layers
* xdg-decoration: send missing protocol errors
* xwm: emit new_surface/destroy on associate/dissociate
* xwm: make atom_map static
* wlr_scene: Skip direct scanout if there is no damage
* xwm: remove misleading comment
* gamma-control-v1: simplify get_gamma_control error handling
* gamma-control-v1: fix handling of duplicate control
-------------------------------------------------------------------
Fri Mar 17 09:24:55 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230316T181311.7d9938c:
* drm_format_set: fix realloc size
-------------------------------------------------------------------
Mon Mar 13 17:34:46 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.17.0+dev.20230312T110936.a3489f2:
* xdg-shell: improve unmapping logic slightly
-------------------------------------------------------------------
Sat Mar 11 07:59:15 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230310T111601.1b6fac4:
* output-layer: require all layers in wlr_output_state.layers
* xdg-decoration: send missing protocol errors
* xwm: emit new_surface/destroy on associate/dissociate
* xwm: make atom_map static
* wlr_scene: Skip direct scanout if there is no damage
* xwm: remove misleading comment
-------------------------------------------------------------------
Mon Mar 06 12:47:30 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230306T132351.38839ac:
* gamma-control-v1: simplify get_gamma_control error handling
* gamma-control-v1: fix handling of duplicate control
* tinywl: init server to zeros
-------------------------------------------------------------------
Fri Mar 03 08:13:12 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230302T213151.5ae17de:
* xdg-shell: improve validation of resize edges
-------------------------------------------------------------------
Thu Mar 02 04:15:14 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230301T160754.97c8ad7:
* backend/wayland: fix leak of some globals
* util/log: prefix WLR_REL_SRC_DIR with underscore
* backend/wayland: destroy zwp_linux_buffer_params_v1 objects
-------------------------------------------------------------------
Tue Feb 28 16:34:00 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230228T144402.a160304:
* backend/drm: use libdisplay-info for CVT mode generation
* backend/drm: use libdisplay-info to parse EDID
* render/vulkan: prefer render node for wlr_renderer_get_drm_fd()
* examples/dmabuf-capture: fix frame_number deprecated in FFmpeg 6.0
* backend: move #ifdefs to nested functions
* backend: make wlr_backend_autocreate() fail when DRM is missing
-------------------------------------------------------------------
Mon Feb 27 05:22:40 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230226T184231.5079000:
* output: allow modeset with buffer while frame is pending
-------------------------------------------------------------------
Fri Feb 24 21:40:19 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230224T182220.ab7eaba:
* output: leverage wlr_output_configure_primary_swapchain()
* output: introduce wlr_output_configure_primary_swapchain()
* vulkan: silence -Wint-conversion on 32-bit architectures
-------------------------------------------------------------------
Thu Feb 23 23:52:27 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230224T000741.8619ffa:
* swapchain: remove allocator listener on destroy
-------------------------------------------------------------------
Thu Feb 23 19:12:03 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230222T110104.254c5fc:
* Switch to "meson setup"
-------------------------------------------------------------------
Tue Feb 21 23:24:56 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230221T171431.b33ab26:
* render/swapchain: make public
-------------------------------------------------------------------
Tue Feb 21 16:10:57 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230221T125526.c667e64:
* backend: disable DRM backend monitor when WLR_DRM_DEVICES is used
* backend: avoid adding NULL backend in attempt_backend_by_name()
* backend: create DRM backend monitor when WLR_BACKENDS is used
* output-layer: document interactions with screen capture
-------------------------------------------------------------------
Tue Feb 21 10:30:23 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230221T101235.bea6bee:
* backend/headless: unconditionally accept all output layers
* backend/drm: drop wlr_drm_layer.pending_{width,height}
* output: expose wlr_output_state_set_buffer()
* output: expose wlr_output_state_finish()
* screencopy-v1: drop unnecessary pixman_region32_t casts
* backend/drm: drop unnecessary pixman_region32_t casts
* xwayland: Send synthetic ConfigureNotify per ICCCM 4.1.5
-------------------------------------------------------------------
Tue Feb 21 09:30:00 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230220T172117.3ef9f91:
* wlr_scene: Add dmabuf_feedback helper
* wlr_scene: Extract considering logic for direct scanout
* wlr_scene: Cleanup header includes
* examples/output-layers: relay feedback events
* linux-dmabuf-v1: add helper for output layer feedback events
* backend/drm: send output layer feedback events
* output-layer: add feedback event
* backend/drm: add support for output layers
* backend/drm: add libliftoff composition layer
* backend/drm: add libliftoff interface
* backend/drm: init wlr_drm_plane for all plane types
* examples/output-layers: new example
* backend/wayland: implement output layers
* output: add wlr_output_set_layers()
* Add wlr_output_layer
* build: enable subproject for libxkbcommon
-------------------------------------------------------------------
Sat Feb 18 17:14:04 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230218T114951.782b5e6:
* Revert "render/egl: skip incompatible EGL devices"
-------------------------------------------------------------------
Sat Feb 18 02:21:09 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230217T102447.58067a2:
* fullscreen-shell: add release request handler
* render/egl: skip incompatible EGL devices
-------------------------------------------------------------------
Wed Feb 15 15:32:03 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230215T103820.822eb07:
* build: set pkgconfig URL
* build: remove unnecessary pkgconfig arguments
* xwayland: Read and publish _NET_WM_STRUT_PARTIAL property
* Switch IRC channel to #wlroots
-------------------------------------------------------------------
Mon Feb 13 04:31:15 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230208T163139.1225f81:
* scene: Add fractional scale handling
* wp-fractional-scale-v1: new protocol implementation
-------------------------------------------------------------------
Wed Feb 08 12:24:25 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230207T112510.c6ecbf0:
* linux-dmabuf-v1: fix missing SCANOUT flag
* linux-dmabuf-v1: use wlr_linux_dmabuf_feedback_v1_init_with_options()
* linux-dmabuf-v1: add wlr_linux_dmabuf_feedback_v1_init_with_options()
* linux-dmabuf-v1: add basic helpers for feedback
* linux-dmabuf-v1: stop using const in feedback
* xdg-activation: accept pointer focus for new tokens
* wlr_scene: Rename wlr_scene_surface_from_buffer
* layer-shell: forbid changing the existing popup parent
* xwayland/shell: actually use wlr_xwayland_surface_v1.link
-------------------------------------------------------------------
Fri Feb 03 06:51:01 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230202T225413.677a3f2:
* render/gles2: default to highp if available
* render/gles2: use correct type for shader type
* backend/wayland: handle wl_registry.global_remove for wl_seat
* backend/wayland: make destroy_wl_seats() handle a single seat
* backend/drm: require hwdata pkg-config file
* ci: install hwdata-dev on Alpine
* backend/wayland: update output mode after commit is done
* backend/wayland: allow superseding a previous commit
* output: don't attach buffer on first commit if disabled
* backend/wayland: don't cache next item when destroying buffers
* subcompositor: fix mapped parent check
* subcompositor: convert to try_from
* ext-session-lock-v1: convert to try_from
* layer-shell-v1: convert to try_from
* input-method-v2: convert to try_from
* xdg-shell: convert to try_from
* xwayland/xwm: reset serial in xwayland_surface_dissociate()
* xwayland/xwm: introduce wlr_xwayland_surface_try_from_wlr_surface()
* examples: use NULL theme name instead of "default"
* examples, tinywl: use "default" cursor instead of "left_ptr"
* xcursors: Alias existing cursor defaults to cursor-spec cursor names
* xdg-shell: rename wlr_xdg_popup.committed to sent_initial_configure
* xdg-shell: rename wlr_xdg_toplevel.added to sent_initial_configure
* xdg-shell: remove unnecessary return
* xdg-shell: reset added/committed flag on unmap
* backend/drm: set "max bpc" property based on pixel format
-------------------------------------------------------------------
Fri Jan 27 01:45:59 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230126T150645.0e54b86:
* seat/keyboard: constify wlr_seat_keyboard_notify_enter()
* seat/keyboard: constify wlr_seat_keyboard_notify_modifiers()
* seat/keyboard: constify args in wlr_seat_keyboard_enter()
* seat/keyboard: constify wlr_seat_keyboard_send_modifiers()
* seat/keyboard: skip wl_array allocation
* tinywl: fix extra whitespace
-------------------------------------------------------------------
Mon Jan 23 19:18:57 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230121T162330.5007e71:
* wlr_scene: Send intersecting list of scene outputs for outputs_update signal
* output-layout: improve closest point for no outputs case
* render/vulkan: check that requested size is smaller than max
* vulkan: increase max stage size to support large buffers
-------------------------------------------------------------------
Thu Jan 19 02:41:21 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230118T183821.324eeaa:
* backend/drm: disable all CRTCs after VT switch
-------------------------------------------------------------------
Wed Jan 18 13:53:55 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230118T065649.10e16db:
* render/vulkan: use correct source offset in read_pixels
-------------------------------------------------------------------
Tue Jan 17 06:58:38 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230116T141944.9c7db71:
* backend/x11: fix delta_discrete value
-------------------------------------------------------------------
Fri Jan 06 17:33:37 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230104T042417.5f264a7:
* subcompositor: Clean up subsurface_consider_map
* subcompositor: Clarify comment on subsurface mapped consideration
-------------------------------------------------------------------
Wed Jan 04 17:09:17 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230104T014749.e0b2bf2:
* tinywl: Nuke view->{x, y}
* tablet-tool: revert bitfield in enum wlr_tablet_tool_tip_state
-------------------------------------------------------------------
Tue Jan 03 16:36:03 UTC 2023 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20230103T105957.bc8260f:
* backend/x11: fix initial value of wlr_x11_buffer.n_busy
* session-lock: send more protocol errors
-------------------------------------------------------------------
Fri Dec 23 16:03:29 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221222T111801.48a8917:
* addon: Remove extra newline from logging
* addon: Add more logging
* presentation-time: finish surface addon
* xwayland/xwm: remove unnecessary surface_id reset
* xwayland/xwm: assert that we're not overwriting when associating
* xwayland/xwm: dissociate even if surface is NULL
* util/addon: ensure the set is empty after finish
* render/vulkan: always finish buffer addon on texture destroy
* render/vulkan: remove NULL renderer check on texture destroy
* cursor: compare to scaled coords
-------------------------------------------------------------------
Mon Dec 19 18:31:56 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221218T135539.1cd53f5:
* xwayland/xwm: constify needles
-------------------------------------------------------------------
Sun Dec 18 15:00:01 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221216T103014.dc7cc98:
* backend/drm: check return value of get_drm_{connector,crtc}_props()
* keyboard: improve documentation
* backend/drm: remove wlr_drm_crtc.legacy_crtc
* backend/drm: fetch fresh legacy CRTC in connector_get_current_mode()
* keyboard: only update LEDs when changed
* backend/drm: drop unused arg in connector_get_current_mode()
* backend/drm: prevent out-of-bounds array access on unknown subpixel
* backend/drm: refuse to switch CRTC for enabled connector
* backend/drm: rename wlr_drm_backend.outputs to connectors
* backend/drm: clear pending cursor FB in drm_connector_commit_state()
* backend/drm: update wlr_drm_connnector.crtc in drm_connector_commit_state()
* backend/drm: print stringified connector status in realloc_crtcs()
* backend/drm: add drm_connector_status_str()
* render/egl: stop advertising render support for external-only formats
* egl: consistently use EGLint for DMA-BUF format
-------------------------------------------------------------------
Sun Dec 11 09:09:44 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221209T164636.8f58c06:
* util/region: forbid "shrinking" a region with wlr_region_expand()
-------------------------------------------------------------------
Fri Dec 09 05:50:18 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221208T165314.32fc23a:
* render/pixman: skip mask for opaque texture rendering
* xwayland: use HAVE_ prefix for xcb_xfixes_set_client_disconnect_mode
* xwayland: remove find_program() fallback when dep is not found
* backend/drm: store pending FB in state
* backend/drm: use separate field to store pending cursor FB
* backend/drm: pass fb as arg in set_plane_props()
* backend/drm: stop using goto in set_plane_props()
* backend/drm: simplify dealloc_crtc() commit
* xdg-shell: use defunct_role_object error
* backend/drm: fix VRR test
* build: unify naming for HAVE_* defines
* backend/libinput: use internal_config
* render/allocator/gbm: use internal_config
* xcursor: use internal_config
* xwayland: use internal_config
* build: use a configuration file for internal features
* backend/x11: ensure buffers are released on shutdown
* backend/wayland: ensure buffers are released on shutdown
* util/env: make env_parse_switch() return a size_t
* util/env: add docs
* render: simplify renderer_autocreate_with_drm_fd()
* render/vulkan: wait for DMA-BUF fences
* render/dmabuf: add dmabuf_export_sync_file()
-------------------------------------------------------------------
Tue Dec 06 11:40:09 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221206T090532.825f1b2:
* tinywl: handle wlr_output.events.request_state
* wlr_xdg_activation_v1: add new_token event
* output-layout: improve API
* output-layout: remove wlr_output_layout_output_state
* output-layout: fix function decl indentation
* xwayland/xwm: replace role with addon
* compositor: add wlr_surface.events.precommit
* addon: Allow NULL owner of addon
* xwayland/xwm: rename xwm_map_shell_surface()
-------------------------------------------------------------------
Sun Dec 04 17:55:48 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221203T165232.c472724:
* compositor: document wlr_surface_{enter,leave,send_frame_done}
* wlr_drm: Add missing wlr_buffer import
* render/vulkan: use initializers for VkSubmitInfo
* render/vulkan: remove stage_cb conditional
* render/vulkan: remove pre_cb in vulkan_end()
* render/vulkan: fix vkCmdClearAttachments validation error
* render/vulkan: fix comma
* render/vulkan: use initializers for VkImageMemoryBarrier
* render/vulkan: fix missing pSignalSemaphores for stage CB
* render/vulkan: move VkDescriptorSetAllocateInfo down
* render/drm_format_set: fill dst in wlr_drm_format_set_copy
* render/vulkan: make shm/dmabuf split clearer in wlr_vk_format_props
* render/vulkan: make vulkan_format_props_find_modifier() return value const
* render/vulkan: check for barrier array alloc failure
* render/vulkan: improve message on format prop error
* render/vulkan: simplify vulkan_format_props_query()
* render/vulkan: extract DMA-BUF format query to separate function
* wl-drm: only advertise formats supporting implicit modifiers
* wl-drm: don't store wlr_renderer
* render/drm-format-set: add wlr_drm_format_set_copy()
* render/vulkan: add 64-bit UNORM and SFLOAT formats
* render/vulkan: add more packed formats
* render/vulkan: add more 8 bits per channel formats
* render/pixel-format: drop unnecessary fields in the table
* render/pixel-format: add various new formats
* render/vulkan: explain format mapping with DRM
* render/vulkan: drop "_format" in wlr_vk_format fields
-------------------------------------------------------------------
Fri Dec 02 01:04:21 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221201T200504.c8eb24d:
* output: drop enable/mode events
* output-layout: stop listening for output mode events
* output-damage: stop listening for output mode events
* scene: stop listening for output enable/mode events
* output_init_render: Allow re-initialization
* wlr_texture: Expose owning renderer
-------------------------------------------------------------------
Wed Nov 30 23:35:26 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221130T141946.f103dc7:
* linux-dmabuf-v1: introduce wlr_linux_dmabuf_v1_create()
* linux-dmabuf-v1: drop wlr_renderer field
* linux-dmabuf-v1: don't use wlr_renderer to send legacy format list
* linux-dmabuf-v1: don't use wlr_renderer to sanity check DMA-BUFs
* linux-dmabuf-v1: add version arg to create()
* linux-dmabuf-v1: add "_with_renderer" suffix to create() function
-------------------------------------------------------------------
Wed Nov 30 13:36:53 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221129T152118.0611c10:
* types/wlr_seat: finish keyboard_state during wlr_seat_destroy
* scene/layer_shell_v1.c: remove redundant comment
* scene/layer_shell_v1.c: set exclusive zone correctly
* wlr_scene: Expand damage cull region with fractional scales
* wlr_scene: Don't cull the entire output when entering direct scanout
* scene: fix output damage expansion condition
* render/vulkan: import semaphore to DMA-BUF instead of blocking
* render/dmabuf: add dmabuf_import_sync_file
* render/vulkan: release stage buffers after command buffer completes
* render/vulkan: destroy textures after command buffer completes
* render/vulkan: drop unused fields from wlr_vk_format_modifier_props
* build: exclude <wlr/types/wlr_drm_lease_v1.h> without DRM backend
* scene: set output damage during direct scan-out
* scene: use wlr_output_state for direct scanout
* render/vulkan: align staging buffers for texture upload
* backend/session: make optional
* backend: use time helpers to implement timeouts
* util/time: use int64_t return value for get_current_time_msec()
* backend: error out when missing DRM and libinput in wlr_backend_autocreate()
* backend/session: disable libseat examples for subproject by default
* shm: add create() function without a wlr_renderer
* render/vulkan: add support for RGB565 texture format
* scene: introduce wlr_scene_buffer.events.outputs_update
* compositor: make renderer optional
* compositor: release current buffer after commit event
* compsitor: document wlr_compositor_create()
* backend/multi: stop pulling <wlr/backend/session.h>
* render/gles2, render/pixman: stop pulling <wlr/backend.h>
* backend: stop pulling <wlr/backend/session.h>
* backend/session: drop unused <libudev.h>
* render: stop pulling <wlr/backend.h>
* seat/pointer: Initialize low_res_value
* Relax 80 column limit
* render/vulkan: update shm texture data in one batch
-------------------------------------------------------------------
Mon Nov 21 05:14:42 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221118T153520.4ff46e6:
* xwayland/xwm: add support for xwayland-shell-v1
* xwayland/shell: add wlr_xwayland_shell_v1_surface_from_serial()
* xwayland/server: delay non-lazy startup
* xwayland/server: add start signal
* xwayland: add wlr_xwayland_shell_v1_destroy()
* xwayland: add wlr_xwayland_shell_v1_set_client()
* xwayland-shell-v1: new protocol implementation
-------------------------------------------------------------------
Thu Nov 17 22:49:06 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221117T195519.f84f7c7:
* wl-drm: use resource interface
* linux-dmabuf-v1: use resource interface
* Nuke deprecated include/wlr/types/wlr_surface.h
* xdg-shell: send invalid_size errors
* output: drop wlr_output_damage_whole()
* backend/drm: don't damage output on CRTC change
* output: call wlr_output_update_enabled() after commit
* allocator/drm_dumb: use libdrm dumb buffer helpers
-------------------------------------------------------------------
Wed Nov 16 16:23:22 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221116T015618.8b12037:
* wlr_seat: clear `drag->seat_client` when destroyed
* backend: rename backend to multi in wlr_backend_autocreate()
* backend: drop wlr_backend_get_session()
* backend: return wlr_session in wlr_backend_autocreate() call
* output: Initialize request_state
* shm: allow accessing multiple shm mapping concurrently
* buffer: drop wlr_shm_client_buffer
* render: use wlr_shm in wlr_renderer_init_wl_shm()
* Introduce wlr_shm
* render/pixel_format: import pixel_format_info_check_stride()
* input-inhibitor: deprecate
* render/vulkan: detect device loss
* render/egl: enable EGL_LOSE_CONTEXT_ON_RESET
* render/gles2: query glGetGraphicsResetStatusKHR
* render: add wlr_renderer.events.lost
* scene: check wlr_renderer_begin return value
* output: check wlr_renderer_begin return value
* render: make wlr_renderer_begin return a bool
* render: allow wlr_renderer_impl.begin to fail
* render: make some wlr_renderer fields private
* render: add docs for wlr_renderer
* content-type-v1: add version param to wlr_content_type_manager_v1_create()
* backend/x11: use request_state when window is resized
* backend/wayland: use request_state when toplevel is resized
* output: introduce request_state event
* content-type-v1: new protocol implementation
* backend/drm: only request page-flip if active
* compositor: drop wlr_surface.{sx,sy}
* backend/drm: fix FPE when disabling output
* render/vulkan: add wlr_vk_texture_has_alpha
* backend/drm: log modesetting commits
* backend/drm: log refresh rate in Hz
* wlr_scene: Add drag icon helper
* layer-shell-v1: specify version in constructor
-------------------------------------------------------------------
Mon Nov 14 08:05:33 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221114T092201.4026da5:
* egl: remove eglQueryWaylandBufferWL define
* xwayland: fix wlr_xwayland_surface_from_wlr_surface() docs
* scene: constify region APIs
* region: constify
* output: constify damage APIs
* output-damage: constify wlr_output_damage_add()
* damage-ring: constify wlr_damage_ring_add()
* buffer: constify wlr_client_buffer_apply_damage()
* render/texture: constify wlr_texture_update_from_buffer()
* util/region: constify
* backend: remove const casts for pixman_region32_t
* build: bump pixman version
* build: add subproject fallback for Pixman
* build: move udev dep to backend/
* render/vulkan: remove hardcoded validation layers
* backend/drm: ensure disconnected outputs are disabled after VT switch
* render/egl: fix uninitialized pointers in init_dmabuf_formats
* render/vulkan: use initializer for VkBufferImageCopy
* render/vulkan: wait for device to become idle in vulkan_destroy()
* render/vulkan: always wait for last stage to complete before rendering
* render/vulkan: use command buffer pool for stage
* render/vulkan: add a command buffer pool
* render/vulkan: switch to timeline semaphores
* render/vulkan: add helper to load command function pointer
* build: bump version to 0.17.0-dev
* build: bump to version 0.16.0
* wlr_scene: Remove duplicate buffer check when submitting a new buffer
* backend/drm: request page-flip event on modeset
* output-damage: deprecate
* wlr_scene: Fix texture reuse
* backend/drm: use pnp.ids to fetch EDID data
* Revert "backend/drm: fetch EDID manufacturer from udev_hwdb"
* damage-ring: add missing headers
* scene: destroy addons before cleaning up internal state
* scene: fix whitespace
* Revert "render/pixman: apply source image cropping"
* render/vulkan: add some interfaces to allow compositors to integrate
* render/pixman: apply source image cropping
* scene: fix output damage expansion
* render/vulkan: use wl_array for wlr_vk_shared_buffer.allocs
* compositor: use the correct input region
* tinywl: handle view unmap while grabbed
* render/vulkan: fix and add missing wl_list comments
* render/vulkan: simplify texture VkPipelineShaderStageCreateInfo
* render/vulkan: use struct initializers
* render/vulkan: simplify extension checks
* compositor: enforce surface destruction order
* compositor: drop role object NULL checks in handlers
* xwayland/xwm: use role object destroy handler
* xdg-shell: use role object destroy handler
* drag-icon: use role object destroy handler
* input-method: use role object destroy handler
* session-lock: use role object destroy handler
* subcompositor: use role object destroy handler
* layer-shell: use role object destroy handler
* compositor: introduce wlr_surface_destroy_role_object()
* xdg-shell: fix geometry types
* scene: fix buffer source box transforming
* render/vulkan: drop outdated comments
* render/vulkan: remove exts arg from vulkan_instance_create()
* render/vulkan: add caching to vulkan_read_pixels
-------------------------------------------------------------------
Thu Nov 03 16:51:40 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221102T190023.0545461:
* xwayland: split headers
* backend/drm: get possible CRTCs in create_drm_connector()
* backend/drm: extract create_drm_connector()
-------------------------------------------------------------------
Sun Oct 30 15:19:42 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221028T134903.4d04144:
* render/gles2: de-duplicate vertex shaders
* render/gles2: move color uniform from quad.vert to quad.frag
* render/gles2: move shaders to individual files
-------------------------------------------------------------------
Thu Oct 27 23:18:07 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221027T164303.bc416ed:
* render/gles2: log error on shader compilation failure
-------------------------------------------------------------------
Wed Oct 26 18:50:57 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221025T101915.f83b380:
* render/gles2: remove stale gles2_texture_from_wl_drm() prototype
-------------------------------------------------------------------
Mon Oct 24 17:41:14 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221024T161925.a773231:
* wlr-output-management: implement adaptive sync
-------------------------------------------------------------------
Sun Oct 23 16:42:13 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221022T191321.c2d2773:
* wlr_scene: Handle fractional scaling better
-------------------------------------------------------------------
Sat Oct 22 12:08:45 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221021T095218.6d90518:
* egl: add WLR_EGL_NO_MODIFIERS
-------------------------------------------------------------------
Thu Oct 20 11:57:05 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221020T104350.ccf4e04:
* output: clarify custom modes warning
* output: try to use fixed mode in wlr_output_set_custom_mode()
-------------------------------------------------------------------
Thu Oct 20 10:42:07 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221019T092603.2ee59e1:
* xwyland/xwm: simplify unpaired_link handling
* backend/drm: fetch current CRTC once on startup
* xwayland: Simplify net_wm_edges_to_wlr
* render/vulkan: add missing entries in vulkan_strerror()
* backend/drm: log failures in drm_surface_blit()
* backend/drm: drop drm_crtc_page_flip()
* backend/drm: log when restoring mode after VT switch fails
* backend/drm: fix EINVAL atomic commits after VT switch
* backend/drm: extract current mode logic into separate function
-------------------------------------------------------------------
Sun Oct 16 10:21:45 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221015T122055.eeb7a81:
* backend/drm: extract connect_drm_connector() logic
* wlr_scene: Destroy the texture when setting a new buffer.
* backend/drm: use atomic API to fetch current connector's CRTC
* idle-notify-v1: new protocol implementation
* xdg-toplevel: send invalid_parent error
* wlr_scene: use wl_container_of() instead of casts
* backend/drm: use wl_container_of() instead of casts for wlr_drm_mode
* backend/drm/legacy: Fix whitespace
* backend: use global output name counters
* Fixed false allocation failed
* render/vulkan: drop wlr_vk_instance.extensions
* output: fix crash in output_test_with_back_buffer()
* wlr_scene: Apply source box translation
* wlr_scene: Ignore disabled outputs
* wlr_scene: Fix not updating the scene node when setting a new buffer
* wlr_scene: Be resilient against overflow conditions
* render/gles2: assert that GL_OES_EGL_image_external is supported
* backend/drm: drop drm_connector_set_mode()
-------------------------------------------------------------------
Mon Oct 10 00:57:21 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221009T120757.ab83419:
* render/vulkan: Fix type-punned pointer warning/error
* backend/drm: allocate connector CRTC on lease creation
* drm-lease-v1: reject the lease request by default
* drm-lease-v1: send finished event on failure in submit request
* drm-lease-v1: fix error codepath
* output: allocate swapchain on first commit
* output/render: make output_ensure_buffer() no-op when missing renderer
* output/render: early return in output_ensure_buffer()
* tablet-v2: fix event parameters
* backend/drm: nuke wlr_drm_connector.desired_enabled
* backend/drm: drop unnecessary wlr_drm_connector.crtc checks
* render/vulkan: implement vulkan_preferred_read_format
* render/vulkan: Implement vulkan_read_pixels
* output: add a swapchain NULL check in wlr_output_commit_state()
* output-damage: drop unused pending_attach_render
* output-damage: drop precommit listener
* output-damage: fix setting pending_attach_render
-------------------------------------------------------------------
Thu Oct 06 20:11:25 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20221004T171309.052ea7b:
* build: alphabetically sort protocol lists
* render: drop wlr_renderer_read_pixels() flags
* screencopy-v1: simplify frame_dma_copy() error path
* screencopy-v1: fix frame_shm_copy() error path
* backend/drm: remove outdated TODO
* backend/drm: don't unconditionally set desired_enabled
* foreign-toplevel-management: fix indentation
* render/allocator/drm_dumb: drop finish_buffer()
* render/allocator/drm_dumb: fix error handling
* render/allocator/drm_dumb: get format info before allocating
* render/allocator/drm_dumb: check modifier list
* render/allocator/drm_dumb: advertise LINEAR instead of INVALID modifier
* render/pixman: advertise support for linear format modifier
* screencopy-v1: make sure wlr_buffer enum is visible
* render: don't fall back to Pixman if we have a render node
* render: don't automatically fall back to Vulkan
* output: fix typo in error message
* render/vulkan: use addon for wlr_vk_texture
* render/vulkan: use addon for wlr_vk_render_buffer
* backend/drm: fix missing wlr_output_state.allow_artifacts
* output: add wlr_output_state.allow_artifacts
-------------------------------------------------------------------
Thu Sep 29 19:29:20 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220925T125438.baf3fa2:
* meson: update default options for libdrm
-------------------------------------------------------------------
Tue Sep 27 04:35:09 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220923T214803.bcc6a58:
* render: drop trailing whitespace
* screencopy-v1: use wlr_buffer APIs
* screencopy-v1: rename wlr_screencopy_frame_v1.stride
* screencopy-v1: use DRM format code for shm buffers
* screencopy-v1: rename wlr_screencopy_frame_v1.{format,fourcc}
* backend/libinput: Fix SIGSEGV found in low-memory fuzzing
* backend/drm: pass through mode picture aspect ratio
* output: add wlr_output_mode.picture_aspect_ratio
-------------------------------------------------------------------
Thu Sep 22 04:49:11 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220921T142509.68c8cef:
* cursor: Don't warp to (0,0) when last output is disconnected
* cursor: Add a more general check for infinite/NaN cursor position
* output: fix back buffer checks
-------------------------------------------------------------------
Thu Sep 22 04:42:09 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220921T013530.800ea7d:
* backend/drm: de-duplicate wlr_drm_mode creation
* output: rejigger attach/clear for back buffer
* output: drop back_buffer variable in wlr_output_commit_state()
* output: inline output_attach_render()
* render/vulkan: add error handling for vulkan_find_mem_type()
* render/egl: add support for EGL_KHR_display_reference
* output: fix wlr_output_set_gamma() with zero size
-------------------------------------------------------------------
Wed Sep 21 09:22:34 UTC 2022 - llyyr.public@gmail.com
- Downgrade to version 0.16.0+dev.20220917T082024.ebd4c83
-------------------------------------------------------------------
Wed Sep 21 00:11:18 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220919T104626.0556aa0c:
* output: rejigger attach/clear for back buffer
* output: drop back_buffer variable in wlr_output_commit_state()
* output: inline output_attach_render()
* render/vulkan: add error handling for vulkan_find_mem_type()
* render/egl: add support for EGL_KHR_display_reference
* output: fix wlr_output_set_gamma() with zero size
* xdg-toplevel: validate resize_edge
* single-pixel-buffer-v1: fix header guard name
* buffer: split into multiple files
* Only set max_bpc when full modesetting is being done.
* Initialize connectors current mode to the mode used by KMS on startup.
* wlr_drm_lease_v1: Fix use-after-free in backend_destroy()
* output/cursor: downgrade error messages
* render/vulkan: improve format logging
* output/render: log human-readable format
* render/allocator/gbm: log human-readable format and modifier
* render/egl: improve DMA-BUF format/modifier logging
* meson: replace join_paths() with / operator
-------------------------------------------------------------------
Tue Sep 13 05:44:15 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220912T184436.42ae1e75:
* subcompositor: consider mapping after adding
* subcompositor: move+rename subsurface_parent_commit()
-------------------------------------------------------------------
Mon Sep 12 08:36:38 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220911T092008.4cc3abb9:
* xdg-foreign-v2: s/unmap/destroy
* xdg-foreign-v1: s/unmap/destroy
* xdg-foreign-v2: return wlr_xdg_toplevel in verify_is_toplevel()
* xdg-foreign-v1: return wlr_xdg_toplevel in verify_is_toplevel()
* backend/wayland: drop output_set_custom_mode()
* wlr_virtual_pointer_v1: fix discrete scrolling
* render/vulkan: remove unnecessary casts
* render/vulkan: fix format features check for shm textures
* render/vulkan: drop wlr_vk_device.extensions
* render/vulkan: drop ext params from vulkan_device_create()
* egl: modify egl_init_display function definition
* pixel_format: RGBA4444 and RGBA5551 have alpha components
* compositor: fix wlr_surface_set_role return value docs
* wlr_scene: Clarify surface commit frame events
* wlr_scene: Consider screen position when culling background
-------------------------------------------------------------------
Thu Sep 01 20:14:29 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220830T175350.fd0b0276:
* output: remove unknown adaptive sync state
* backend/x11: report adaptive sync as enabled
* backend/wayland: report adaptive sync as enabled
* output: fail commits if adaptive sync cannot be enabled
* output-layout: improve wlr_output_layout_output_in_direction()
* output-layout: avoid uninitialized wlr_box fields
* cursor: avoid uninitialized wlr_box fields
* wlr_compositor: Don't leak region32 when calculating opaque region
* wlr_scene: Don't leak a region32 when texture failed to upload
* wlr_scene: More sanity checking
-------------------------------------------------------------------
Mon Aug 29 14:43:57 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220829T134842.7333a460:
* util/set: overhaul
* util/array: unclutter
* render/vulkan: fix memory type detection
* output: clean up after modifierless test failure
* wlr_scene: Only consider visible parts of the node when culling background
* scene/wlr_scene:fix judgment of invisible node
* wlr_compositor: Use wlr_fbox_equal
* wlr-output-management: fix broken asserts
* wlr-output-management: Implement version 3 release requests
* wlr_scene: Initialize region32 before trying to use it
* Use env helpers
* util: Introduce env helpers
* wlr_scene: Improve awkward code style
* wlr_scene: Cull background
* wlr_scene: Only enable black rect optimization if culling is enabled
* wlr_scene: Simplify calculate_visibilty option
* wlr_scene: Convert render_list to wl_array
* util/array: Add array_realloc for wl_array
* types/wlr_xdg_output_v1: Fix wl_output.done bug.
-------------------------------------------------------------------
Fri Aug 19 12:27:45 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220818T071616.346e5242:
* Remove wlr_signal_emit_safe
* Use wl_signal_emit_mutable
* build: remove libkms option and disable tests for libdrm fallback
* wlr_scene: fix color value when filtering black boxes
-------------------------------------------------------------------
Mon Aug 15 20:28:59 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220815T073709.bea4bd43:
* wlr_scene: Use wlr_box_equal
* wlr_scene: Use wlr_fbox_equals
* util/box: Introduce wlr_fbox_equal
* util/box: Introduce wlr_box_equal
* wlr_scene: Remove unused typedef
* wlr_scene: Account for occlusion by other scene nodes when calculating visibility
* wlr_scene: Calculate output intersections based on node visibility
* wlr_scene/surface: Hook through opaque metadata
* wlr_scene: Introduce buffer opaque region metadata
* wlr_scene: Rewrite direct scan out logic to rely on visibility
* wlr_scene: Don't render non visible parts of textures/rects
* wlr_scene: Only send frame done events for visible buffers
* wlr_scene_set_buffer_with_damage: Only damage the visible parts of the node
* wlr_scene: Rework damage handling
* wlr_scene: Add per scene node visibility
* wlr_scene: Damage scene on node destroy by disabling node
* wlr_scene: Introduce scene_nodes_in_box
* surface: implement wl_surface.offset
* surface: add WLR_SURFACE_STATE_OFFSET
* render: replace wlr_texture_write_pixels with update_from_buffer
* backend/wayland: fix touch device not added on startup
* backend/drm: drop enum wlr_drm_connector_status
* backend/drm: drop WLR_DRM_CONN_NEEDS_MODESET
* backend/drm: remove unused WLR_DRM_CONN_CLEANUP
* wlr_scene: Add option to disable direct scanout
-------------------------------------------------------------------
Sun Aug 07 05:59:12 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220806T002344.3baf2a6b:
* scene/layer_shell: Ignore unmapped exclusion zone
* xdg_shell: Destroy popups after unmap event
* Set mapped before firing map/unmap events
* single-pixel-buffer-v1: new protocol implementation
* xdg-shell: add support for v5
-------------------------------------------------------------------
Thu Jul 28 10:29:13 UTC 2022 - llyyr.public@gmail.com
- Update to version 0.16.0+dev.20220728T022531.30bf8a43:
* seat/pointer: fix uninitialized variable warning
* seat/pointer: rework sending axis events
-------------------------------------------------------------------
Mon Jul 25 18:26:41 UTC 2022 - llyyr <llyyr.public@gmail.com>
- Build from git HEAD