wlroots/types/meson.build
YaoBing Xiao 04501f8d8b types/scene: split wlr_scene into modular components
Refactor the scene graph implementation by splitting wlr_scene.c
into multiple focused units: buffer, node, rect and tree. Introduce
corresponding public headers for each component.

This reduces the size and complexity of the core scene file, improves
code organization and makes individual parts of the scene graph easier
to maintain and extend.

As part of this refactor, drop unnecessary pointer indirection when
passing scene trees (e.g. &scene->tree → scene->tree) and update all
call sites accordingly.

No functional changes intended.
2026-04-30 14:19:18 +08:00

121 lines
3.1 KiB
Meson

wlr_files += files(
'data_device/wlr_data_device.c',
'data_device/wlr_data_offer.c',
'data_device/wlr_data_source.c',
'data_device/wlr_drag.c',
'ext_image_capture_source_v1/base.c',
'ext_image_capture_source_v1/output.c',
'ext_image_capture_source_v1/foreign_toplevel.c',
'ext_image_capture_source_v1/scene.c',
'output/cursor.c',
'output/output.c',
'output/render.c',
'output/state.c',
'output/swapchain.c',
'scene/drag_icon.c',
'scene/subsurface_tree.c',
'scene/surface.c',
'scene/wlr_scene.c',
'scene/output_layout.c',
'scene/xdg_shell.c',
'scene/layer_shell_v1.c',
'scene/wlr_scene_node.c',
'scene/wlr_scene_tree.c',
'scene/wlr_scene_buffer.c',
'scene/wlr_scene_rect.c',
'seat/wlr_seat_keyboard.c',
'seat/wlr_seat_pointer.c',
'seat/wlr_seat_touch.c',
'seat/wlr_seat.c',
'tablet_v2/wlr_tablet_v2_pad.c',
'tablet_v2/wlr_tablet_v2_tablet.c',
'tablet_v2/wlr_tablet_v2_tool.c',
'tablet_v2/wlr_tablet_v2.c',
'xdg_shell/wlr_xdg_popup.c',
'xdg_shell/wlr_xdg_positioner.c',
'xdg_shell/wlr_xdg_shell.c',
'xdg_shell/wlr_xdg_surface.c',
'xdg_shell/wlr_xdg_toplevel.c',
'buffer/buffer.c',
'buffer/client.c',
'buffer/dmabuf.c',
'buffer/readonly_data.c',
'buffer/resource.c',
'wlr_alpha_modifier_v1.c',
'wlr_color_management_v1.c',
'wlr_color_representation_v1.c',
'wlr_compositor.c',
'wlr_content_type_v1.c',
'wlr_cursor.c',
'wlr_cursor_shape_v1.c',
'wlr_damage_ring.c',
'wlr_data_control_v1.c',
'wlr_drm.c',
'wlr_export_dmabuf_v1.c',
'wlr_ext_background_effect_v1.c',
'wlr_ext_data_control_v1.c',
'wlr_ext_foreign_toplevel_list_v1.c',
'wlr_ext_image_copy_capture_v1.c',
'wlr_ext_workspace_v1.c',
'wlr_fixes.c',
'wlr_foreign_toplevel_management_v1.c',
'wlr_fractional_scale_v1.c',
'wlr_gamma_control_v1.c',
'wlr_idle_inhibit_v1.c',
'wlr_idle_notify_v1.c',
'wlr_input_device.c',
'wlr_input_method_v2.c',
'wlr_keyboard.c',
'wlr_keyboard_group.c',
'wlr_keyboard_shortcuts_inhibit_v1.c',
'wlr_layer_shell_v1.c',
'wlr_linux_dmabuf_v1.c',
'wlr_linux_drm_syncobj_v1.c',
'wlr_output_layer.c',
'wlr_output_layout.c',
'wlr_output_management_v1.c',
'wlr_output_power_management_v1.c',
'wlr_output_swapchain_manager.c',
'wlr_pointer_constraints_v1.c',
'wlr_pointer_gestures_v1.c',
'wlr_pointer.c',
'wlr_presentation_time.c',
'wlr_primary_selection_v1.c',
'wlr_primary_selection.c',
'wlr_region.c',
'wlr_relative_pointer_v1.c',
'wlr_screencopy_v1.c',
'wlr_security_context_v1.c',
'wlr_server_decoration.c',
'wlr_session_lock_v1.c',
'wlr_shm.c',
'wlr_single_pixel_buffer_v1.c',
'wlr_subcompositor.c',
'wlr_switch.c',
'wlr_tablet_pad.c',
'wlr_tablet_tool.c',
'wlr_tearing_control_v1.c',
'wlr_text_input_v3.c',
'wlr_touch.c',
'wlr_transient_seat_v1.c',
'wlr_viewporter.c',
'wlr_virtual_keyboard_v1.c',
'wlr_virtual_pointer_v1.c',
'wlr_xcursor_manager.c',
'wlr_xdg_activation_v1.c',
'wlr_xdg_decoration_v1.c',
'wlr_xdg_dialog_v1.c',
'wlr_xdg_foreign_v1.c',
'wlr_xdg_foreign_v2.c',
'wlr_xdg_foreign_registry.c',
'wlr_xdg_output_v1.c',
'wlr_xdg_system_bell_v1.c',
'wlr_xdg_toplevel_icon_v1.c',
'wlr_xdg_toplevel_tag_v1.c',
)
if features.get('drm-backend')
wlr_files += files(
'wlr_drm_lease_v1.c',
)
endif