mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-22 07:02:28 +00:00
bda1b41ee2
This new helper assists compositors in allocating buffers for modesets. It degrades to different allocation parameters as needed, and should help with screens not turning on when multiple outputs are connected on some hardware (e.g. Intel). For simplicity, the old logic to try allocating with explicit modifiers first and then fallback to implicit modifiers later is left as-is. We'll probably want to have more complicated logic instead in the future: try the fallback on one output at a time, and try dropping modifiers one by one instead of using implicit modifiers (at the cost of some combinatorial explosion). Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/1873 Co-authored-by: Kenny Levinsen <kl@kl.wtf>
103 lines
2.5 KiB
Meson
103 lines
2.5 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',
|
|
'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',
|
|
'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_compositor.c',
|
|
'wlr_content_type_v1.c',
|
|
'wlr_cursor_shape_v1.c',
|
|
'wlr_cursor.c',
|
|
'wlr_damage_ring.c',
|
|
'wlr_data_control_v1.c',
|
|
'wlr_drm.c',
|
|
'wlr_export_dmabuf_v1.c',
|
|
'wlr_foreign_toplevel_management_v1.c',
|
|
'wlr_ext_foreign_toplevel_list_v1.c',
|
|
'wlr_fullscreen_shell_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_matrix.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_fractional_scale_v1.c',
|
|
'wlr_switch.c',
|
|
'wlr_tablet_pad.c',
|
|
'wlr_tablet_tool.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_foreign_v1.c',
|
|
'wlr_xdg_foreign_v2.c',
|
|
'wlr_xdg_foreign_registry.c',
|
|
'wlr_xdg_output_v1.c',
|
|
'wlr_tearing_control_v1.c',
|
|
)
|
|
|
|
if features.get('drm-backend')
|
|
wlr_files += files(
|
|
'wlr_drm_lease_v1.c',
|
|
)
|
|
endif
|