2520 Commits (9e426e70e68cc292f55dbd2c496bcfd6bea32caf)

Author SHA1 Message Date
Simon Ser 72787db98a compositor: drop wlr_surface_destroy_role_object()
1 year ago
Kirill Primak bd5c4f4a4a xdg-shell: rework roles
1 year ago
Kirill Primak e5300c225e xdg-popup: avoid using wlr_surface_destroy_role_object()
1 year ago
Kirill Primak 10ba8ebc70 Don't assume xdg_surface.{toplevel,popup} is non-NULL
1 year ago
Kirill Primak f0cc712af1 xdg-shell: don't return anything from create_xdg_surface()
1 year ago
Leonardo Hernández Hernández bdc34401ba
xdg-decoration: store an xdg_toplevel instead of xdg_surface
1 year ago
Alexander Orzechowski 568b1943b9 wlr_output: Nuke wlr_output_update_enabled
1 year ago
Alexander Orzechowski 63351cf81f output: Schedule mode updates to happen with rest of output events
1 year ago
Alexander Orzechowski f042de3f51 output: Inline wlr_output_update_{custom,}_mode
1 year ago
Alexander Orzechowski f1ba70ffa6 wlr_output: Make wlr_output_update_{custom,}_mode private
1 year ago
Alexander Orzechowski 6cda3e251c output: Add initialization state to wlr_output_init
1 year ago
Alexander Orzechowski 8f67446cc7 output: Extract common commit logic
1 year ago
Alexander Orzechowski aee31edaad screencopy_v1: Implement copy regions with gpu blit path
1 year ago
Alexander Orzechowski b4cbaa4549 screencopy_v1: Use new renderer API for gpu blit path
1 year ago
Simon Ser c74f89d4f8 Avoid using memcpy() to copy structs
1 year ago
JiDe Zhang 73db481037 wlr_output: update cursor when scale changed
1 year ago
JiDe Zhang 61903ed66b wlr_output_cursor: assert renderer isn't NULL
1 year ago
Simon Zeni 60ca6f17eb types/wlr_drm_lease_v1: downgrade DRM backend error message to debug
1 year ago
Kirill Primak 7df11ada5e Unmap wlr_surface before making its role object inert
1 year ago
Leonardo Hernández Hernández e8d545a977
xdg-shell: add support for v6
1 year ago
Simon Ser 04e4e06986 cursor-shape-v1: new protocol implementation
1 year ago
Alexander Orzechowski fd540f6d07 wlr_scene: Don't damage when setting opaque region
1 year ago
Alexander Orzechowski a32180afa7 wlr_scene: Fix damage tracking with non atomic opaque region configuration
1 year ago
Rouven Czerwinski 63f5851b6f session-lock: add missing lock_surface_destroy
1 year ago
Rose Hudson 71daec9441 export-dmabuf, screencopy: schedule_frame -> needs_frame
1 year ago
Simon Ser 000081db19 cursor, output: apply viewport to cursor
1 year ago
Ronan Pigott b18c76642a scene: apply rounding when translating buffer damage
1 year ago
Leonardo Hernández Hernández 4de9c9c47f scene: send wl_surface.preferred_buffer_scale
1 year ago
Simon Ser 67447d6cb4 presentation-time: add separate helper for zero-copy
1 year ago
Simon Ser fe84bfc8d9 scene: add wlr_scene_output_sample_event
1 year ago
Simon Ser 88942d43fd scene: rename output_present event to output_sample
1 year ago
Alexander Orzechowski d8585d661c wlr_scene: Fix buffer damage for output state
1 year ago
Simon Ser fe06e5f49a Use wl_container_of() instead of casts
1 year ago
Rose Hudson 214df8eda0 scene_output: optionally record and report timings
1 year ago
Kirill Primak f4eaab12a0 input-method-v2: don't remove inert role resource
1 year ago
Kirill Primak dc7686c114 session-lock: don't remove inert role resource
1 year ago
Kirill Primak 7f2ed1e62c layer-shell: don't remove inert role resource
1 year ago
Kirill Primak 7d176b6237 subcompositor: don't remove inert role resource
1 year ago
Simon Ser 7a9f8d8d6b Use struct initializers instead of memset()
1 year ago
Kirill Primak 4966857f21 viewporter: check for an existing viewport
1 year ago
Simon Ser 6f8287128b output: drop wlr_output_cursor_set_image()
1 year ago
Simon Ser f8d70fbece cursor: remove usage of wlr_output_cursor_set_image()
1 year ago
Simon Ser 0fc532f8de cursor: remove wlr_cursor_set_image()
1 year ago
Simon Ser 18bafbfc57 xcursor-manager: drop wlr_xcursor_manager_set_cursor_image()
1 year ago
Simon Ser 71c87ff4b8 cursor: add wlr_cursor_set_buffer()
1 year ago
Simon Ser bb91787b5f cursor: stop using set_image() in wlr_cursor_unset_image()
1 year ago
Manuel Stoeckl bbd53b3b46 screencopy-v1: fix logical->physical region transform
1 year ago
Alexander Orzechowski 57a0313779 wlr_scene: Don't recompute node location during rendering
1 year ago
Alexander Orzechowski 48f2a7a3a1 wlr_scene: Simplify direct scanout handling
1 year ago
Alexander Orzechowski 9613b3bc8a wlr_scene: Wrap render_list nodes in struct
1 year ago
Simon Ser 53b07b5b72 cursor: set image for new outputs
1 year ago
Simon Ser d5581e42d4 cursor: add cursor_update_outputs()
1 year ago
Simon Ser d1d6cd9008 cursor: keep track of XCursor manager and name
1 year ago
Simon Ser 69c44de22f cursor: track surface globally, instead of per-output
1 year ago
Simon Ser c46fabe45c cursor: use wlr_cursor_unset_image() in wlr_cursor_set_surface()
1 year ago
Simon Ser f0b8a68654 cursor: store wlr_cursor inline in wlr_cursor_state
1 year ago
Alexander Orzechowski 8243399385 output: Set output mode during main commit
1 year ago
Alexander Orzechowski ea3c6fde3a wlr_scene: Add opaque region blend mode optimization
1 year ago
Kirill Primak 71b57b8d27 fullscreen-shell: set surface role
1 year ago
Simon Ser be05097968 output: add wlr_output_state_init()
1 year ago
Simon Ser 8a5b5e6f28 compositor: listen to role_resource destroy signal
1 year ago
Simon Ser 89cb484220 compositor: replace role_data with role_resource
1 year ago
Simon Ser 00f1870d35 input-method-v2: add popup_surface_from_resource()
1 year ago
Kirill Primak fc9b58e84d compositor: don't call role unmap hook without an object
1 year ago
Kirill Primak 0f67580aab compositor: introduce wlr_surface_set_role_object()
1 year ago
Kirill Primak 0040c78c0b compositor: fix wlr_surface_set_role() error messages
1 year ago
Simon Ser d59749aa44 cursor: add support for animated XCursor
1 year ago
Simon Ser 6dd8b092e9 output/swapchain: fix error return value types
1 year ago
Alexander Orzechowski b5eaa47049 scene: Use wlr_output_state_copy for direct scanout path
1 year ago
Alexander Orzechowski 4b7c526578 output: Introduce wlr_output_state_copy()
1 year ago
Simon Ser 1e68e1f661 seat: fix keyboard/pointer/touch resource destroy
1 year ago
Simon Ser c4d4409deb output: stop using wlr_output.back_buffer in output_ensure_buffer()
1 year ago
Simon Ser b625a13156 output: attach buffer to state in output_ensure_buffer()
1 year ago
Alexander Orzechowski 2ac31fc630 wlr_scene: Introduce wlr_scene_buffer_set_filter_mode
1 year ago
Alexander Orzechowski 64c0272f81 output_state: Gamma lut should be freed only if committed
1 year ago
Simon Ser 220402b717 cursor: add wlr_cursor_unset_image()
1 year ago
Simon Ser da04b066ea cursor: add wlr_cursor_set_xcursor()
1 year ago
Alexander Orzechowski 58a2f8bd5c wlr_scene: Clear damage ring on transform change
1 year ago
Alexander Orzechowski 61667404ce wlr_scene: Clear damage ring on scale change
1 year ago
Alexander Orzechowski 96b95bf775 wlr_scene: Reset damage ring bounds every frame
1 year ago
Alexander Orzechowski 4391845910 wlr_damage_ring_set_bounds: Ignore duplicate size requests
1 year ago
Alexander Orzechowski 3896b6b107 wlr_scene: Fix transforms with non 1 scale
1 year ago
Kirill Primak 753f3cc4fa compositor: add wlr_surface_role.no_object
1 year ago
Simon Ser 670915eeea output: add wlr_output_state_set_layers()
1 year ago
Alexander Orzechowski 0925a500d1 wlr_scene: Don't use direct scanout if trying to commit a new render_format
1 year ago
Alexander Orzechowski a09bb1314d wlr_output_state: Consider gamma_lut uninitialized if not committed
1 year ago
Alexander Orzechowski b80e67d6e6 wlr_output_state: Consider buffer uninitialized if not committed
1 year ago
Simon Ser 6e8fb5509f cursor: only reset the cursor when the surface changes
1 year ago
Alexander Orzechowski 05dd08afe5 scene: introduce wlr_scene_output_build_state()
1 year ago
Alexander Orzechowski 7e67b8152b scene: Don't rely on output current state during rendering
1 year ago
Alexander Orzechowski ae7bad86dd output: introduce wlr_output_state_set_damage()
1 year ago
Simon Ser 36376e2ddf gamma-control-v1: stop applying gamma LUTs implicitly
2 years ago
Simon Ser ec9b79ef19 gamma-control-v1: add wlr_gamma_control_v1_send_failed_and_destroy()
2 years ago
Simon Ser 026fc6eda0 gamma-control-v1: add wlr_gamma_control_v1_apply()
2 years ago
Simon Ser 5d5cf34486 output: add wlr_output_state_set_gamma_lut()
2 years ago
Simon Ser 6e635d2fd3 gamma-control-v1: add wlr_gamma_control_manager_v1_get_control()
2 years ago
Simon Ser 70c1a57248 gamma-control-v1: introduce set_gamma event
2 years ago
Kirill Primak 63f3802e0f subcompositor: set role_data with wlr_surface_set_role()
2 years ago
Kirill Primak 24a479a501 drag: don't set icon's role_data
2 years ago
Kirill Primak 31d958f70a cursor: fix applying hotspot offset
2 years ago
Simon Ser 544c0622fa presentation-time: constify wlr_presentation_feedback_send_presented()
2 years ago
Kirill Primak 25a62a3775 subcompositor: simplify subsurface_consider_map(), call on add
2 years ago
Kirill Primak 2acc74a3db Clear input regions if they're ignored
2 years ago
Alexander Orzechowski 9f28366b55 wlr_tablet_v2_tool: Tablet tool surfaces are always mapped
2 years ago
Alexander Orzechowski d700bd2d7c wlr_seat_pointer: cursor surfaces are always mapped
2 years ago
Rose Hudson 9e8947e4d5 add render timer API
2 years ago
Kirill Primak 37b5f8a89e compositor: unmap subsurfaces too on unmap
2 years ago
Kenny Levinsen 15f2f6642f gamma-control: Read ramps using pread
2 years ago
Kirill Primak b61d5922f1 compositor: notify subsurfaces about a commit in the rendering order
2 years ago
Kirill Primak 49e9be62ae subcompositor: consider mapping on parent map
2 years ago
Väinö Mäkelä a2f94b500c virtual-keyboard: Handle inert seats
2 years ago
Väinö Mäkelä f9f17b6236 virtual-pointer: Handle inert seats
2 years ago
Väinö Mäkelä 07e27ba854 xdg-popup: Handle inert seats
2 years ago
Väinö Mäkelä 0601813ab6 text-input: Handle inert seats
2 years ago
Väinö Mäkelä bcb69b1827 primary-selection: Handle inert seats
2 years ago
Väinö Mäkelä 247e86dca9 keyboard-shortcuts-inhibit: Handle inert seats
2 years ago
Väinö Mäkelä 16948c7369 input-method: Handle inert seats
2 years ago
Väinö Mäkelä 126222884d wlr_idle: Handle inert seats
2 years ago
Väinö Mäkelä f988a75a80 tablet: Handle inert seats
2 years ago
Väinö Mäkelä 5120addfbb data-control: Handle inert seats
2 years ago
Väinö Mäkelä f97f4496de data-device: Handle inert seats
2 years ago
Väinö Mäkelä 0e5f76186e seat: Allow binding to inert seats
2 years ago
Simon Ser 52b93f7eb4 output/cursor: fix scale and transform
2 years ago
Simon Ser 09c87cec3f cursor: fix wl_pointer.set_cursor hotspot updates
2 years ago
Kirill Primak 8c0eeb6a86 session-lock: fix buffer check
2 years ago
Kirill Primak e75407fd4d session-lock: remove unused wlr_session_lock_surface_v1.events.map
2 years ago
Kirill Primak d086ee1b9e compositor: remove wlr_surface_role.precommit
2 years ago
Kirill Primak af4181f388 drag: use unified map logic
2 years ago
Kirill Primak 743da5c0ae input-method: use unified map logic
2 years ago
Kirill Primak 229abfae0c session-lock: use unified map logic
2 years ago
Kirill Primak c63f3659c5 layer-shell: use unified map logic
2 years ago
Kirill Primak b0437fc416 xdg-shell: use unified map logic
2 years ago
Kirill Primak c590bb600f subcompositor: use unified map logic
2 years ago
Kirill Primak 6b40e08148 compositor: introduce unified map logic
2 years ago
Simon Ser 6668c822b3 cursor: unset wlr_output_cursor.texture on surface destroy
2 years ago
Simon Ser 9c9e3f6263 cursor: ignore wlr_cursor_set_surface() with same surface
2 years ago
Simon Ser 5bcd537ff4 output/cursor: use new rendering API
2 years ago
Simon Ser 93a6acae9f output: add wlr_output_begin_render_pass()
2 years ago
Alexander Orzechowski 95062904c7 wlr_scene: Introduce wlr_scene_buffer_set_opacity
2 years ago
Alexander Orzechowski 2346b90a9f wlr_scene: Make scene_rect_from_node public
2 years ago
Alexander Orzechowski 88f80c4a7c wlr_scene: Make scene_tree_from_node public
2 years ago
Simon Ser 2c6aeed7d6 output: use pending render format if any
2 years ago
Alexander Orzechowski d495fb8c04 wlr_{box, fbox}_equal: Consider empty boxes NULL
2 years ago
Simon Ser 96f3f3c92e render/pixel-format: add support for block-based formats
2 years ago
Simon Ser a0ebc401d0 linux-dmabuf-v1: fix wlr_drm_format_set leak in feedback_compile()
2 years ago
Austin Shafer 43b25fd34e dmabuf: Remove assumption that all mods are in fallback tranche
2 years ago
Alexander Orzechowski c4bed48fcc output_pick_format: Fail if no format could be chosen
2 years ago
Kirill Primak 75293d5fb0 keyboard: use the new data in wlr_keyboard_set_keymap()
2 years ago
Simon Ser e2647c5151 keyboard: add support for resetting the keymap
2 years ago
Simon Ser e725f234d7 keyboard: don't change current keymap on wlr_keyboard_set_keymap() error
2 years ago
Simon Ser 69aeccddb7 seat/keyboard: allow no keymap
2 years ago
Alexander Orzechowski 300bd80772 wlr_drm_format_set: Store formats on array
2 years ago
Alexander Orzechowski 90d08f8f1c wlr_drm_format: Rework wlr_drm_format_intersect
2 years ago
Alexander Orzechowski 340700cb70 wlr_drm_format: Change wlr_drm_format_dup to copy
2 years ago
Alexander Orzechowski e427e019c4 wlr_drm_format: Don't take double pointer in wlr_drm_format_add
2 years ago
Alexander Orzechowski b45396c790 wlr_drm_format: Introduce drm_format_finish
2 years ago
Simon Ser 2a1234a820 wlr-export-dmabuf-v1: handle output destroy
2 years ago
Alexander Orzechowski 18139f4d87 wlr_cursor: Don't multiply hotspot by scale^2
2 years ago
Alexander Orzechowski 47a250ae12 wlr_cursor: Consider surface state when setting new cursor surface
2 years ago
Simon Ser d933f5204b output: drop wlr_output_cursor_set_surface
2 years ago
Simon Ser 78afce5e2d cursor: add surface handling
2 years ago
Simon Ser b64e7e88bf output: add output_cursor_set_texture()
2 years ago
Alexander Orzechowski 1ee75786b4 drm_format_set_union: Require initialized dst and remove assert
2 years ago
Alexander Orzechowski ec796afb6e wlr_compositor: Decide opacity from new has_buffer flag.
2 years ago
Alexander Orzechowski 394accbe4a wlr_compositer: Keep track if surface has committed a buffer before.
2 years ago
Alexander Orzechowski cbe8876050 linux_dmabuf_v1: Use wlr_drm_format_set_union
2 years ago
Simon Ser bf8ae8a036 output/cursor: fix buffer size when nested and scaled
2 years ago
Simon Ser d7fcc1e96f scene: port to wlr_render_pass
2 years ago
Simon Ser 587852056c output: add wlr_output_add_software_cursors_to_render_pass()
2 years ago
Simon Ser 44069dfd5e output-layer: add cropping support
2 years ago
Andri Yngvason 00489b11a0 seat: Provide dummy resources for inert seats
2 years ago
Andri Yngvason 3898bb482d seat: Let client manage its own resources
2 years ago
Andri Yngvason 1689a3503b wlr_seat: Extract seat_client_create() function
2 years ago
Alexander Orzechowski eac2eaa6a9 wlr_scene: Fix potential use-after-free in wlr_scene_buffer_set_buffer
2 years ago
Alexander Orzechowski 39be67df46 wlr_scene: Send presentation event before direct scanout output commit
2 years ago
Simon Ser dae2deb3c9 compositor: add wlr_surface_set_preferred_buffer_transform()
2 years ago
Simon Ser 42edd36785 compositor: add wlr_surface_set_preferred_buffer_scale()
2 years ago
Simon Ser 0bb574239d compositor: pass version in wlr_compositor_create
2 years ago
Kirill Primak 87e7584dd4 compositor: use defunct_role_object error
2 years ago
Kirill Primak fac7a5cc9d subcompositor: use bad_parent error
2 years ago
Kirill Primak 49435cb27b subcompositor: simplify get_subsurface handler
2 years ago
Alexander Orzechowski b1e38fc7ea output: Drop output_is_direct_scanout
2 years ago
Simon Ser 9ef98452a3 output-damage: drop
2 years ago
Simon Ser 7abda952d0 output: drop direct scan-out check in output_basic_test()
2 years ago
Simon Ser ec5135cb09 scene: check wlr_output_is_direct_scanout_allowed()
2 years ago
Simon Ser 079ff9e6fb output: add wlr_output_is_direct_scanout_allowed()
2 years ago
Simon Ser 835208db98 output-layer: add support for scaling buffers
2 years ago
Simon Ser e00c4cd7dc output-layer: cache current state
2 years ago
Kirill Primak a3489f2c64 xdg-shell: improve unmapping logic slightly
2 years ago
Simon Ser 1b6fac4aa6 output-layer: require all layers in wlr_output_state.layers
2 years ago
Isaac Freund 87969c1c7c
xdg-decoration: send missing protocol errors
2 years ago
Alexander Orzechowski 9ac94516b8 wlr_scene: Skip direct scanout if there is no damage
2 years ago
Simon Ser 38839ac536 gamma-control-v1: simplify get_gamma_control error handling
2 years ago
Simon Ser 9108717d5d gamma-control-v1: fix handling of duplicate control
2 years ago
Isaac Freund 5ae17de23f
xdg-shell: improve validation of resize edges
2 years ago
Simon Ser 5079000e49 output: allow modeset with buffer while frame is pending
2 years ago
Simon Ser ab7eabac84 output: leverage wlr_output_configure_primary_swapchain()
2 years ago
Simon Ser fef8ab22e3 output: introduce wlr_output_configure_primary_swapchain()
2 years ago
Simon Ser b33ab26fe7 render/swapchain: make public
2 years ago
Simon Ser 7215bd1e0f output: expose wlr_output_state_set_buffer()
2 years ago