wlroots 0.16 tracking #2
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
I'm planning to incrementally update to wlroots 0.16.x then to 0.17.x to have the least amount of things being a catastrophe. this issue is for tracking everything that wlroots marks as potentially breaking for 0.16.0
checklist
a check indicates that I have either checked off the thing as not an issue or addressed it
wlr_layer_surface_v1_state.margin.{top,bottom,left,right}
type has been changed fromuint32_t
toint32_t
as specified by the protocol.wlr/types/wlr_box.h
has been removed; usewlr/util/box.h
instead.wlr_subcompositor
is not created automatically anymore on callingwlr_compositor_create()
; usewlr_subcompositor_create()
.wlr/types/wlr_surface.h
has been deprecated; usewlr/types/compositor.h
andwlr/types/wlr_subcompositor.h
.wlr_compositor.events.destroy
signal is now fired with NULL argument.wlr_surface_role.precommit
now also takesconst wlr_surface_state *
state which is to be applied, and the signal is emitted right before the actual commit, not whenwl_surface.commit
request is received.wlr_output_layout_get_box()
now returns nothing and takesstruct wlr_box *
as a parameter. If the function fails, the box is emptied.wlr_xdg_toplevel_*()
functions now takewlr_xdg_toplevel
as the main parameter.wlr_xdg_popup_*()
functions now takewlr_xdg_popup
as the main parameter.wlr_xdg_toplevel_*_event
structs now have awlr_xdg_toplevel
field instead ofwlr_xdg_surface
.wlr_xdg_toplevel::parent
is nowwlr_xdg_toplevel
instead ofwlr_xdg_surface
.wlr_xdg_toplevel_set_fullscreen_event
is removed.wlr_xdg_surface
signals now have NULL as their argument.wlr_xdg_toplevel
signals which don't have an associated event struct now have NULL as their argument.wlr_xdg_positioner
has been renamed towlr_xdg_positioner_rules
.wlr_positioner_invert_x()
wlr_positioner_invert_y()
wlr_xdg_popup_get_anchor_point()
wlr_xdg_positioner_get_geometry()
has been renamed towlr_xdg_positioner_rules_get_geometry()
and now takeswlr_box *
as a parameter.wlr_headless_input_device
has been removed, compositors can define their own devices for headless backend.vendor_id
andproduct_id
are defaulted to 0 and set when needed by the libinput backend.struct wlr_input_device *base
field.wlr_input_device_impl
has been removed.wlr_input_device_destroy
has been removed.wlr_input_device
interface has been made private.destroy
function and implementation has been removed.finish
functions to clean input devices up before destruction.wlr_keyboard
,wlr_virtual_keyboard_v1
andwlr_virtual_pointer_v1
destroy events are removed in favor of the basewlr_input_device
destroy event.output_name
,width_mm
andheight_mm
have been moved fromwlr_input_device
to related specialized input devices.wlr_{input type}_{event type}_event
format.wlr_input_device
has been removed, the newwlr_*_from_input_device
functions can be used instead.wlr_tablet.name
has been removed,wlr_input_device.name
must be used instead.wlr_output_set_subpixel
calls must now be followed by awlr_output_commit
call to be applied.wlr_seat_set_keyboard()
now takes awlr_keyboard *
instead ofwlr_input_device
.wlr_xwayland_surface_hints
andwlr_xwayland_surface_size_hints
have been replaced byxcb_icccm_wm_hints_t
andxcb_size_hints_t
respectively.wlr_xwayland_surface.hints
_urgency has been removed, usexcb_icccm_wm_hints_get_urgency
instead.wlr_xdg_shell_create()
. This allows for wlroots to implement newer versions without a breaking change requiring compositors to implement the newer version as well.wlr_scene_surface_create()
,wlr_scene_xdg_surface_create()
, etc. now createwlr_scene_buffer
nodes with associated helpers.Use
wlr_scene_surface_from_buffer()
to get a scene surface from awlr_scene_buffer
.wlr_xdg_popup.geometry
has been moved towlr_xdg_popup_state
and is now double-buffered.wlr_xdg_popup_unconstrain()
now schedules a configure.wlr_xdg_popup.positioner_rules
is removed.WLR_SCENE_NODE_ROOT
node type is removed, the root node is now a glorifiedwlr_scene_tree
.wlr_scene_node_state
has been inlined intowlr_scene_node
.wlr_scene_tree
now has the children linked list, not thewlr_scene_node
wlr_scene_tree
.wlr_scene_subsurface_tree_create()
now return awlr_scene_tree
.wlr_output.events.destroy
instead.mapped
flag is now consistently set before emittingmap
/unmap
signals. This affects compositors which rely on a specific state of the flag on those events.WLR_SURFACE_STATE_OFFSET
must be used instead ofWLR_SURFACE_STATE_BUFFER
.wlr_output_test()
to check if an output supports adaptive sync.wlr_xdg_toplevel_state.{,min_,max_}{width,height}
,wlr_xdg_toplevel_configure.{,bounds.}{width,height}
, andwlr_xdg_toplevel_show_window_menu_event.{x,y}
have been changed fromuint32_t
toint32_t
.wlr_output_damage
API has been deprecated. Usewlr_damage_ring
(wlr/types/wlr_damage_ring.h
) instead.currently having issues with lingering popups, gonna see what's up with that
might update to 0.17.0 to see if that might do anything