0.9.0
wlroots 0.9.0 includes the following breaking changes:
layer_shell: set layer of existing surface #1842
The layer of a layer surface may now be changed at runtime. The layer
field has been removed from struct wlr_layer_surface_v1
and introduced to struct wlr_layer_surface_v1_state
.
backend/drm: add support for custom modes #1881
wlr_drm_connector_add_mode
now returns the new mode instead of a bool.
Simplify globals implementation by removing destructors #1915
Destructors and resource lists for static globals have been removed.
Improve presentation-time API #1919
Instead of calling wlr_presentation_surface_sampled
at render time and wlr_presentation_send_surface_presented
at presentation time, most compositors now just need to call wlr_presentation_surface_sampled_on_output
at render time. Compositors that call wlr_buffer_ref
need to call wlr_presentation_surface_sampled
when they ref the buffer, wlr_presentation_feedback_send_presented
when this buffer has been presented for the first time and then wlr_presentation_feedback_destroy
.
output: re-introduce atomic mode, enabled, scale and transform #1797
- Compositors now need to call
wlr_output_commit
afterwlr_output_enable
,wlr_output_set_mode
,wlr_output_set_custom_mode
,wlr_output_set_transform
orwlr_output_set_scale
wlr_output_set_mode
no longer implicitly enables the output, compositors need to callwlr_output_enable
as well- Compositors now need to call
wlr_output_rollback
afterwlr_output_attach_render
if they decide not to render
Alynx Zhou (1):
Skip assign when sub_x or sub_y is NULL in wlr_surface_surface_at
Andri Yngvason (3):
output: Add commit sequence number
protocol/screencopy: Add damage reporting
screencopy: Implement damage reporting
Brian Ashworth (2):
Introduce wlr_keyboard_group
wlr_keyboard_group: fix mem leak in refresh_state
Danilo Spinella (1):
Add new define EGL_NO_X11 for newer mesa library
Dorota Czaplejewicz (1):
virtual_keyboard: Accept keycode 0
Drew DeVault (1):
Introduce wlr_renderer_get_egl
Ferdinand Bachmann (1):
Add missing include required by mesa and libglvnd change
György Kurucz (1):
Fix heap-use-after-free in wlr_send_tablet_v2_tablet_pad_leave
Ilia Bozhinov (1):
wlr_box: properly calculate closest point for non-positive area boxes
Ivan Molodetskikh (1):
output: add block_idle_frame
Jan Beich (1):
examples: set mode when creating shm object
Jason (2):
Amend typos
Amend typo
Josef Gajdusek (1):
virtual-pointer: Add support for the wlr-virtual-pointer-unstable-v1
Manuel Stoeckl (1):
output: fix cursor wl_surface.{enter,leave} tracking
Ronan Pigott (2):
session/logind: support CanGraphical property
render/gles2: do not set GL_TEXTURE_MAG_FILTER
Rouven Czerwinski (1):
backend/drm: print preferred mode
Scott Anderson (8):
backend/x11: Give X11 a real rendering loop
session/logind: Clean up add_signal_matches
render/gles: Simplify textures a bit
backend: Do not attempt DRM on X11/WL failure
backend/x11: Drop required present version
backend/x11: Revert usage of present extension
meson: Various improvements
meson: Remove tag generation
Scott Moreau (3):
xwayland: Expose configure request mask
build: Pass library as first argument to pkgconfig.generate()
xwayland: Clean up if Xwayland fails to start
Simon Ser (51):
build: workaround for meson disabler object not working with if not
render/egl: support formats with zero modifiers
backend/drm: use modifiers for our GBM buffers
build: simplify by using disabler deps
backend/wayland: add support for direct scan-out
render/gles2: don't unset the current EGL surface when destroying texture
protocol: sync layer-shell with upstream
backend/drm: track gbm_bo during direct scan-out
render/egl: prevent use-after-free when destroying current surface
backend/drm: retry without modifiers for the primary plane
backend/drm: add support for custom modes
output-management-v1: add assertion as a safety net
render: remove EGL includes from wlr_texture.h
render/gles2: provide public API to access GL texture
backend/wayland: add support for relative-pointer-unstable-v1
backend/wayland: expose remote objects
output: add wlr_output_event_present.commit_seq
Add -Wmissing-prototypes
output: set wlr_output.commit_seq before firing the commit event
output: fix off-by-one wlr_output_event_present.commit_seq
presentation-time: make API more flexible
presentation-time: add helper for common case
backend/wayland: add support for presentation-time
render: remove return in wlr_texture_get_size
Simplify globals implementation by removing destructors
Revert "output: add block_idle_frame"
keyboard: emit key events without keymap
backend/drm, backend/libinput: listen to session destroy
backend/drm: fix segfault in init_drm_surface
backend/drm: add BenQ to manufacturer list
buffer: improve error handling
surface: don't unref the current buffer on failure
output: fix wlr_output_preferred_mode fallback
Refactor EGL/GL API loading
ci: add xorgproto dep to Arch build
render: fix EGL extensions not loaded
Revert "ci: add xorgproto dep to Arch build"
ci: add a build run with all features disabled
output: add description
xdg-output-v1: use wlr_output.description
output-management-v1: use wlr_output.description
output: re-introduce atomic mode, enabled, scale and transform
backend/drm: modeset before enabling an output
output: clear pending bit if pending == current
output: refuse to commit a buffer or modeset a disabled output
tinywl: enable and commit output when modesetting
xdg-shell: fix inert xdg_surface handling
xdg-shell: make wlr_xdg_surface_from_resource reject NULL
output: only advertise current mode
backend/drm: don't modeset with a NULL mode after TTY switch
render: guard rendering operations between begin() and end()
Timidger (2):
layer_shell: set layer of existing surface
Use layer shell v2
Ting-Wei Lan (1):
backend/session/freebsd: Fix the way to get TTY path
myfreeweb (1):
Send tablet tool frame on proximity_out
n3rdopolis (2):
Update environment variable documentation to include more backends
note libinput as well