2551 Commits (9e3576426d8d8a5fbfb38938106219c6c7da641d)

Author SHA1 Message Date
Simon Ser ce089498cc scene: use wlr_output_state for direct scanout
2 years ago
Simon Ser 76b3687739 shm: add create() function without a wlr_renderer
2 years ago
Kirill Primak 060df4c6c0 scene: introduce wlr_scene_buffer.events.outputs_update
2 years ago
Simon Ser 42016fa262 compositor: make renderer optional
2 years ago
Simon Ser 1978a91717 compositor: release current buffer after commit event
2 years ago
Guido Günther 8a56490229 seat/pointer: Initialize low_res_value
2 years ago
Simon Ser f84f7c7710 wl-drm: use resource interface
2 years ago
Simon Ser 772066a174 linux-dmabuf-v1: use resource interface
2 years ago
Kirill Primak c2fb5289c2 xdg-shell: send invalid_size errors
2 years ago
Simon Ser 6c3d6be74b output: drop wlr_output_damage_whole()
2 years ago
Simon Ser ef5e2cc5e3 output: call wlr_output_update_enabled() after commit
2 years ago
bi4k8 8b12037cad wlr_seat: clear `drag->seat_client` when destroyed
2 years ago
Alexander Orzechowski 265439600e output: Initialize request_state
2 years ago
Simon Ser 270b8dd342 shm: allow accessing multiple shm mapping concurrently
2 years ago
Simon Ser 6c277e3c39 buffer: drop wlr_shm_client_buffer
2 years ago
Simon Ser 0ae3c7b1a2 Introduce wlr_shm
2 years ago
Simon Ser 48541d2f2e scene: check wlr_renderer_begin return value
2 years ago
Simon Ser 45159f8708 output: check wlr_renderer_begin return value
2 years ago
Simon Ser bf623ec782 content-type-v1: add version param to wlr_content_type_manager_v1_create()
2 years ago
Simon Ser ff55663906 output: introduce request_state event
2 years ago
Simon Ser 024627e872 content-type-v1: new protocol implementation
2 years ago
Simon Ser 258bf9be1e compositor: drop wlr_surface.{sx,sy}
2 years ago
Alexander Orzechowski c8a5dfcc87 wlr_scene: Add drag icon helper
2 years ago
Simon Ser 9f793d3503 layer-shell-v1: specify version in constructor
2 years ago
Simon Ser 2b22a10478 scene: constify region APIs
2 years ago
Simon Ser c5d79bfb26 region: constify
2 years ago
Simon Ser fe4225d5de output: constify damage APIs
2 years ago
Simon Ser 9e10e9af7f output-damage: constify wlr_output_damage_add()
2 years ago
Simon Ser fb7bd920a6 damage-ring: constify wlr_damage_ring_add()
2 years ago
Simon Ser 93597952aa buffer: constify wlr_client_buffer_apply_damage()
2 years ago
Alexander Orzechowski c58ad0f171 wlr_scene: Remove duplicate buffer check when submitting a new buffer
2 years ago
Alexander Orzechowski ea40ba4f6a wlr_scene: Fix texture reuse
2 years ago
Simon Ser 440d7fa072 scene: destroy addons before cleaning up internal state
2 years ago
Simon Ser 24c149fefb scene: fix whitespace
2 years ago
Kirill Primak 123a08b448 scene: fix output damage expansion
2 years ago
Kirill Primak 388de59df3 compositor: use the correct input region
2 years ago
Kirill Primak c09d3450d4 compositor: enforce surface destruction order
2 years ago
Kirill Primak 099b9de752 compositor: drop role object NULL checks in handlers
2 years ago
Kirill Primak acd5a64fd1 xdg-shell: use role object destroy handler
2 years ago
Kirill Primak 92fbfda2ca drag-icon: use role object destroy handler
2 years ago
Kirill Primak 75af6a0a39 input-method: use role object destroy handler
2 years ago
Kirill Primak bcf6b2bbf8 session-lock: use role object destroy handler
2 years ago
Kirill Primak 2518ace573 subcompositor: use role object destroy handler
2 years ago
Kirill Primak 3da2cf3eb3 layer-shell: use role object destroy handler
2 years ago
Kirill Primak 756260ac05 compositor: introduce wlr_surface_destroy_role_object()
2 years ago
Kirill Primak 1243a855d4 xdg-shell: fix geometry types
2 years ago
Kirill Primak 92e3c5b798 scene: fix buffer source box transforming
2 years ago
Isaac Freund a773231c42 wlr-output-management: implement adaptive sync
2 years ago
Alexander Orzechowski c2d2773df5 wlr_scene: Handle fractional scaling better
2 years ago
Simon Ser f0ee563416 output: try to use fixed mode in wlr_output_set_custom_mode()
2 years ago
Alexander Orzechowski c07424411a wlr_scene: Destroy the texture when setting a new buffer.
2 years ago
Simon Ser 3a949ea8eb idle-notify-v1: new protocol implementation
2 years ago
Kirill Primak a049d66dd7 xdg-toplevel: send invalid_parent error
2 years ago
Alexander Orzechowski 5ba6cf517b wlr_scene: use wl_container_of() instead of casts
2 years ago
Simon Ser 650f955507 output: fix crash in output_test_with_back_buffer()
2 years ago
Alexander Orzechowski 99f55303aa wlr_scene: Apply source box translation
2 years ago
Alexander Orzechowski ceff381747 wlr_scene: Ignore disabled outputs
2 years ago
Alexander Orzechowski f0e31e806f wlr_scene: Fix not updating the scene node when setting a new buffer
2 years ago
Alexander Orzechowski dd9cfd3e2f wlr_scene: Be resilient against overflow conditions
2 years ago
Simon Ser 5b0719b17c drm-lease-v1: reject the lease request by default
2 years ago
Simon Ser 11d073ab09 drm-lease-v1: send finished event on failure in submit request
2 years ago
Simon Ser 5c382f6344 drm-lease-v1: fix error codepath
2 years ago
Simon Ser 3be6658ee7 output: allocate swapchain on first commit
2 years ago
Simon Ser e92b272616 output/render: make output_ensure_buffer() no-op when missing renderer
2 years ago
Simon Ser 7d8284ec10 output/render: early return in output_ensure_buffer()
2 years ago
Kirill Primak 7eedbde878 tablet-v2: fix event parameters
2 years ago
Kirill Primak ff9c52801f output: add a swapchain NULL check in wlr_output_commit_state()
2 years ago
Kirill Primak dd0665d822 output-damage: drop precommit listener
2 years ago
Kirill Primak b9155c5b80 output-damage: fix setting pending_attach_render
2 years ago
Simon Ser 6832ae14aa render: drop wlr_renderer_read_pixels() flags
2 years ago
Simon Ser 50cc1ef4d3 screencopy-v1: simplify frame_dma_copy() error path
2 years ago
Simon Ser 0af4affd0b screencopy-v1: fix frame_shm_copy() error path
2 years ago
Kirill Primak b7e2a2584e foreign-toplevel-management: fix indentation
2 years ago
Simon Ser e40d492b78 output: fix typo in error message
2 years ago
Simon Ser a0345f2854 output: add wlr_output_state.allow_artifacts
2 years ago
Simon Ser c153ae3c5d screencopy-v1: use wlr_buffer APIs
2 years ago
Simon Ser f03da48491 screencopy-v1: rename wlr_screencopy_frame_v1.stride
2 years ago
Simon Ser 77b829e15f screencopy-v1: use DRM format code for shm buffers
2 years ago
Simon Ser 4885c08f38 screencopy-v1: rename wlr_screencopy_frame_v1.{format,fourcc}
2 years ago
John Lindgren 68c8cef38e cursor: Don't warp to (0,0) when last output is disconnected
2 years ago
John Lindgren 5417a182e5 cursor: Add a more general check for infinite/NaN cursor position
2 years ago
Simon Ser 8e8b9a7217 output: fix back buffer checks
2 years ago
Simon Ser 0556aa0c59 output: rejigger attach/clear for back buffer
2 years ago
Simon Ser 0213da60bb output: drop back_buffer variable in wlr_output_commit_state()
2 years ago
Simon Ser 679d5ba699 output: inline output_attach_render()
2 years ago
Simon Ser 2ad25b1460 output: fix wlr_output_set_gamma() with zero size
2 years ago
Kirill Primak ebd4c83cd6 xdg-toplevel: validate resize_edge
2 years ago
Simon Ser 69c47717c2 buffer: split into multiple files
2 years ago
John Lindgren 1facdeabe5 wlr_drm_lease_v1: Fix use-after-free in backend_destroy()
2 years ago
Simon Ser 7d9c595f19 output/cursor: downgrade error messages
2 years ago
Simon Ser b5a474189e output/render: log human-readable format
2 years ago
Kirill Primak 42ae1e75aa subcompositor: consider mapping after adding
2 years ago
Kirill Primak 3abedaf211 subcompositor: move+rename subsurface_parent_commit()
2 years ago
Kirill Primak 4cc3abb966 xdg-foreign-v2: s/unmap/destroy
2 years ago
Kirill Primak ba7bbab3ab xdg-foreign-v1: s/unmap/destroy
2 years ago
Simon Ser d8ef9a95de xdg-foreign-v2: return wlr_xdg_toplevel in verify_is_toplevel()
2 years ago
Simon Ser 053bb42a6d xdg-foreign-v1: return wlr_xdg_toplevel in verify_is_toplevel()
2 years ago
Consolatis 0cff058f38 wlr_virtual_pointer_v1: fix discrete scrolling
2 years ago
Alexander Orzechowski 2e06ff5688 wlr_scene: Clarify surface commit frame events
2 years ago
Alexander Orzechowski 35d94d779c wlr_scene: Consider screen position when culling background
2 years ago
Kirill Primak 26e1812ab3 output-layout: improve wlr_output_layout_output_in_direction()
2 years ago
Kirill Primak 2ea80eb115 output-layout: avoid uninitialized wlr_box fields
2 years ago
Kirill Primak 4462f5dcb3 cursor: avoid uninitialized wlr_box fields
2 years ago
Alexander Orzechowski 138d21464d wlr_compositor: Don't leak region32 when calculating opaque region
2 years ago
Alexander Orzechowski 78cf39b6bd wlr_scene: Don't leak a region32 when texture failed to upload
2 years ago
Alexander Orzechowski fe9e193ab5 wlr_scene: More sanity checking
2 years ago
Kirill Primak 7333a4602a util/set: overhaul
2 years ago
Kirill Primak 20c208d46a util/array: unclutter
2 years ago
Isaac Freund d94d1bf0ea
output: clean up after modifierless test failure
2 years ago
Alexander Orzechowski fa7d2cb8d6 wlr_scene: Only consider visible parts of the node when culling background
2 years ago
yiqiang 6a11256cd0 scene/wlr_scene:fix judgment of invisible node
2 years ago
Alexander Orzechowski 525506559a wlr_compositor: Use wlr_fbox_equal
2 years ago
Isaac Freund d452a729cb
wlr-output-management: fix broken asserts
2 years ago
Isaac Freund 4c1afb126b wlr-output-management: Implement version 3 release requests
2 years ago
Alexander Orzechowski d3cb6b73a2 wlr_scene: Initialize region32 before trying to use it
2 years ago
Alexander Orzechowski 8bd7170fd9 Use env helpers
2 years ago
Alexander Orzechowski e7477c7114 wlr_scene: Improve awkward code style
2 years ago
Alexander Orzechowski 9bba4284e4 wlr_scene: Cull background
2 years ago
Alexander Orzechowski 6d1b8b376d wlr_scene: Only enable black rect optimization if culling is enabled
2 years ago
Alexander Orzechowski 4d4f823263 wlr_scene: Simplify calculate_visibilty option
2 years ago
Kenny Levinsen 7c575922c0 wlr_scene: Convert render_list to wl_array
2 years ago
Mark Bolhuis 9ab819684d types/wlr_xdg_output_v1: Fix wl_output.done bug.
2 years ago
Alexander Orzechowski ef4baea0e2 Use wl_signal_emit_mutable
2 years ago
yiqiang 3621c14b82 wlr_scene: fix color value when filtering black boxes
2 years ago
Alexander Orzechowski bea4bd43e3 wlr_scene: Use wlr_box_equal
2 years ago
Alexander Orzechowski bcf7a79357 wlr_scene: Use wlr_fbox_equals
2 years ago
Alexander Orzechowski 919e67da7d wlr_scene: Account for occlusion by other scene nodes when calculating visibility
2 years ago
Alexander Orzechowski ce57485e6a wlr_scene: Calculate output intersections based on node visibility
2 years ago
Alexander Orzechowski 342830e99c wlr_scene/surface: Hook through opaque metadata
2 years ago
Alexander Orzechowski 18417026be wlr_scene: Introduce buffer opaque region metadata
2 years ago
Alexander Orzechowski 0a9a941ba3 wlr_scene: Rewrite direct scan out logic to rely on visibility
2 years ago
Alexander Orzechowski 14f4cfffba wlr_scene: Don't render non visible parts of textures/rects
2 years ago
Alexander Orzechowski d16d341381 wlr_scene: Only send frame done events for visible buffers
2 years ago
Alexander Orzechowski 6d62300324 wlr_scene_set_buffer_with_damage: Only damage the visible parts of the node
2 years ago
Alexander Orzechowski c6246272fd wlr_scene: Rework damage handling
2 years ago
Alexander Orzechowski 028606512d wlr_scene: Add per scene node visibility
2 years ago
Alexander Orzechowski f411ca040e wlr_scene: Damage scene on node destroy by disabling node
2 years ago
Alexander Orzechowski 7f17774d18 wlr_scene: Introduce scene_nodes_in_box
2 years ago
Simon Ser c2359d0321 surface: implement wl_surface.offset
2 years ago
Simon Ser 42d68d7532 surface: add WLR_SURFACE_STATE_OFFSET
2 years ago
Simon Ser 98cf38601f render: replace wlr_texture_write_pixels with update_from_buffer
2 years ago
Alexander Orzechowski f72aeacd6e wlr_scene: Add option to disable direct scanout
2 years ago
Kenny Levinsen 3baf2a6bcf scene/layer_shell: Ignore unmapped exclusion zone
2 years ago
Kenny Levinsen 7abe8352db xdg_shell: Destroy popups after unmap event
2 years ago
Kenny Levinsen 668b2740ff Set mapped before firing map/unmap events
2 years ago
Simon Ser b24b50ec0c single-pixel-buffer-v1: new protocol implementation
2 years ago
Simon Ser f1e05a6493 xdg-shell: add support for v5
2 years ago
Quantum 30bf8a4303 seat/pointer: fix uninitialized variable warning
2 years ago
Kirill Primak 7298c42139 seat/pointer: rework sending axis events
2 years ago
José Expósito add44b3e2e seat: support low-resolution clients
3 years ago
José Expósito 40dc5121aa seat: support high-resolution clients
3 years ago
José Expósito 65c436407f pointer: transform low-res to high-res axis events
3 years ago
Alexander Orzechowski 5dc1d4671d wlr_scene: Maintain damage highlight regions per output
3 years ago
Alexander Orzechowski fdfdd01a79 wlr_scene: Use direct assignment for damage indicator timestamps
3 years ago
Kirill Primak 694b8c6683 scene: add missing output damage listener
3 years ago
Kirill Primak 97f0347780 scene: switch to wlr_damage_ring
3 years ago
Kirill Primak e0accb2d50 types: add wlr_damage_ring
3 years ago
Simon Ser 10a821a87d output: fix missing buffer when using direct scanout
3 years ago
Kenny Levinsen 03dc7e2df5 wlr_{keyboard,pointer,touch}: Update event docs
3 years ago
Isaac Freund 91943a68a6 wlr_input_device: remove anon union field
3 years ago
Kirill Primak 5c4384a133 xdg-popup: use configure fields
3 years ago
Kirill Primak 8d2fa15e9d xdg-toplevel: post no memory on strdup() fail
3 years ago
Kirill Primak ec8b49c93f subcompositor: consider map on creation
3 years ago
Rouven Czerwinski 2a1d7d40f4 cursor: re-enable NULL buffer for cursor
3 years ago
Simon Ser d89285f783 output-management-v1: add wlr_output_head_v1_state_apply()
3 years ago
Simon Ser 29291cb47c render/texture: drop wlr_texture_is_opaque
3 years ago
Kirill Primak e7b217efb9 xdg-shell: improve shell version check
3 years ago
Johan Malm d57d2e0e36 scene/layer_shell_v1.c: fix bug in width/height calculations
3 years ago
Simon Ser 96b594110d matrix: remove wlr_matrix_projection()
3 years ago
Simon Ser c2e4ba1dd0 output: use state setters in wlr_output_set_*
3 years ago
Simon Ser 43a9b0fbb9 output: compare state before commit
3 years ago
Simon Ser 6688a3d9ea output: add output state setters
3 years ago
Consolatis 0173275f7e scene/output_layout: Fix crash in scene_output_layout_output_destroy
3 years ago
Simon Ser 09498499f6 output: fix make/model/serial memory leak
3 years ago
Isaac Freund 0deef6fe44 output: fix leak of empty back buffer lock
3 years ago
Simon Ser 99f63b03e7 Remove remaining wl_signal_emit calls
3 years ago
Alexander Orzechowski 808e660291 wlr_output_commit_state: Make sure to clear the back buffer
3 years ago
Alexander Orzechowski cc5a02e75d wlr_scene_buffer: Update primary_output on output destroy
3 years ago
Alexander Orzechowski 4772eec93d wlr_scene_buffer: Call output enter/leave after primary_output calculation
3 years ago
Simon Ser e383c1f1db xdg-shell: add support for v4
3 years ago
Simon Ser 18595000f3 compositor: send WL_SURFACE_ERROR_INVALID_SIZE for non-cursor surfaces
3 years ago
Kirill Primak 1284f85da4 scene/output-layout: add initial outputs
3 years ago
Kirill Primak 0c2eed533e scene/output-layout: improve ownership logic
3 years ago
Kirill Primak d3bc17d5d1 scene: add wlr_scene_output.events.destroy
3 years ago
Simon Ser 638c5cda51 output: drop wlr_output_cursor.events.destroy
3 years ago
Simon Ser 1ab3e582ac output: re-implement set_image with set_buffer
3 years ago
Simon Ser 459a642e83 output: introduce wlr_output_cursor_set_buffer
3 years ago
Simon Ser e3e2a34cd8 output: remove noop backend check in wlr_output_cursor_set_image
3 years ago
Alexander Orzechowski 71f8a48d38 wlr_scene: Move children list from wlr_scene_node to wlr_scene_tree
3 years ago
Alexander Orzechowski cb2dbc327e wlr_scene: Inline wlr_scene_node_state
3 years ago
Alexander Orzechowski ccd0f85c2a wlr_scene: Only allow parenting on a wlr_scene_tree
3 years ago
Alexander Orzechowski 9eb71146ae wlr_scene: Refactor wlr_scene (the root element) to encase a wlr_scene_tree
3 years ago
Simon Ser 43020963d4 relative-pointer-v1: don't allocate when inert
3 years ago
Simon Ser 1feb8edd21 relative-pointer-v1: remove unnecessary log messages
3 years ago
Simon Ser 17fbf60bd1 relative-pointer-v1: remove unnecessary comments
3 years ago
Consolatis 98c5f58a38 wlr_scene: Fix scaling with default source_box
3 years ago
Rouven Czerwinski 988fe5bda9 relative_pointer: handle inert pointer objects
3 years ago
Simon Ser d483dd2f4c output: add wlr_output_commit_state
3 years ago
Simon Ser 501ac5398d output: add output_state_{init,finish}
3 years ago
Simon Ser b21c26a1c9 output: add wlr_output_event_precommit.state
3 years ago
Simon Ser c4253fef9c output: add wlr_output_test_state
3 years ago
Simon Ser 9e25d3074d output: pass wlr_output_state to rendering functions
3 years ago
Simon Ser 927661d246 output: pass wlr_output_state to output_pending_resolution
3 years ago
Simon Ser 25dd3cc0cd output: pass wlr_output_state to backend
3 years ago
Kirill Primak c1ec71903c xdg-shell: bump version to 3
3 years ago
Kirill Primak 1761c3bbe2 xdg-popup: add reposition support
3 years ago
Kirill Primak 8a0835c59c xdg-positioner: add v3 parameters
3 years ago
Kirill Primak 6f1fce9cb4 xdg-popup: use current/pending state pattern
3 years ago
Kirill Primak 4a968576e4 xdg-popup: add proper configure flow
3 years ago
Simon Ser 4d7f1aeb73 linux-dmabuf-v1: fix MOD_INVALID handling in feedback tranches
3 years ago
Simon Ser be86145322 output: turn make/model/serial into char *
3 years ago
Alexander Orzechowski 41124592dd wlr_scene: Hook up HIGHLIGHT logic
3 years ago
Alexander Orzechowski b6fc882782 wlr_scene: Hook up RERENDER logic
3 years ago
Alexander Orzechowski 17f5414b1a wlr_scene: Parse out WLR_SCENE_DEBUG_DAMAGE
3 years ago
Manuel Stoeckl 9cae874513 screencopy-v1: Fix frame stride for formats with bpp != 32
3 years ago
Kirill Primak ee122c9c2a scene/output: check for NULL in destructor
3 years ago
Guido Günther 17b2b06633 seat: Allow to cancel touches
3 years ago
Alexander Orzechowski dc9bc5683a wlr_scene: Refactor wlr_scene_surface to be a helper on top of wlr_scene_buffer
3 years ago
Alexander Orzechowski 5f43e1732a wlr_scene: Introduce addons to scene nodes
3 years ago
Alexander Orzechowski 20cc1ce0b9 wlr_scene: Change out surface specific iterator functions
3 years ago
Alexander Orzechowski 5f56246571 wlr_scene: Pull scene_node_get_root into a private header
3 years ago
Alexander Orzechowski 39c059b70e wlr_scene: Make scene_buffer_from_node public
3 years ago
Alexander Orzechowski 73a656e8ac wlr_scene: Add a function to also specify damage when applying a buffer to wlr_scene_buffer
3 years ago
Alexander Orzechowski 34be5da072 wlr_scene: Add a way to choose when input interactions happen on a buffer
3 years ago
Alexander Orzechowski 09c7fe0f90 wlr_scene: Add frame_done signal for wlr_scene_buffer
3 years ago
Alexander Orzechowski a53eccf2af wlr_scene: Add primary_output property to wlr_scene_buffer
3 years ago
Alexander Orzechowski dfeb1309a8 wlr_scene: Add presentation signal for wlr_scene_buffer
3 years ago
Alexander Orzechowski 7e383c6a6a wlr_scene: Make wlr_scene_render_output private
3 years ago
Alexander Orzechowski 933ff0e60c wlr_scene: Fix missing calls to scene_node_update_outputs
3 years ago
Alexander Orzechowski c46b53d0b0 wlr_scene: Add output_enter/output_leave signals
3 years ago
Alexander Orzechowski 6ddb9e51bd wlr_scene_output: Send output leave events before destroying the output
3 years ago
Alexander Orzechowski 61dab42c70 wlr_scene: Add setter for buffer of a wlr_scene_buffer
3 years ago
Alexander Orzechowski 039a31df9a wlr_scene: Allow buffer in wlr_scene_buffer to be NULL
3 years ago
Simon Ser 8fe3aa29da xdg-shell: specify version in wlr_xdg_shell_create
3 years ago
Kirill Primak 8b0d4947cc xdg-toplevel: store states on the stack
3 years ago
Simon Ser 410c08cdc6 drm-lease-v1: skip device on wlr_drm_backend_get_non_master_fd failure
3 years ago
Simon Ser 6c350799b2 Zero-initialize structs in init functions
3 years ago
Ferdinand Bachmann d3a2ea33e5 types/seat/wlr_seat.c: fix focused_client being null after seat_client recreation
3 years ago
Ferdinand Bachmann 2d4e813530 types/wlr_pointer_gestures_v1.c: get client from seat client instead of resource
3 years ago
Ferdinand Bachmann eedb9df531 types/wlr_pointer_gestures_v1: null-check both focused_surface and focused_client
3 years ago
Kirill Primak 4ba8458255 scene/output-layout: fix scene destroy handler
3 years ago
Kirill Primak dec2565f2b xdg-toplevel: don't schedule configures on state requests
3 years ago
Kirill Primak 04aa44b4df xdg-foreign-v2: treat unmapped parents as NULL
3 years ago
Kirill Primak dac040f87f xdg-foreign-v1: treat unmapped parents as NULL
3 years ago
Kirill Primak bf3f60ff73 xdg-toplevel: treat unmapped parents as NULL
3 years ago
Guido Günther dd03d839ab xdg-activation: Deduplicate token creation code
3 years ago
Leonardo Hernández Hernández 4519117a68 seat: take wlr_keyboard in wlr_seat_set_keyboard()
3 years ago
Guido Günther 4cc2a03620 layer-shell: Make wlr_layer_surface_v1_from_resource public
3 years ago
Simon Zeni aaf787ee56 types/wlr_touch: uniformize events name
3 years ago
Simon Zeni e732c5c895 types/wlr_tablet_tool: uniformize events name
3 years ago
Simon Zeni 9a17200446 types/wlr_keyboard: uniformize events name
3 years ago
Simon Zeni bd6c000d14 types/wlr_pointer: uniformize events name
3 years ago
Simon Zeni a92e5f8d46 types/wlr_input_device: move output_name field to wlr_pointer and wlr_touch
3 years ago
Alexander Orzechowski 74381f3bc3 types/wlr_output: Handle subpixel hints through output commits
3 years ago
Simon Ser 68f2f8cf92 Revert "scene: try to import buffers as textures before rendering"
3 years ago
Kirill Primak 2d623724c3 xdg-positioner: fix sliding regression
3 years ago
Simon Zeni 4c8ecfcd4a types/wlr_virtual_pointer_v1: remove destroy event
3 years ago
Simon Zeni 45c8771735 types/wlr_virtual_keyboard_v1: remove destroy event
3 years ago
Simon Zeni eae8952e17 types/wlr_keyboard: remove destroy event
3 years ago
David96 7a2c96dcbd types/wlr_tablet_tool: remove name ambiguity
3 years ago
Sebastian Krzyszkowiak 13fcdba75c wlr_output_layout_contains_point: handle outputs that aren't in the layout
3 years ago
Alexander Orzechowski f330759ba4 wlr_output_damage: Don't schedule a new frame if damage region does not intersect with output
3 years ago
Alexander Orzechowski fbd4d40318 wlr_output_damage: Use wlr_output_damage_add for wlr_output_damage_add_box
3 years ago
Simon Zeni cfed039c9a types/wlr_input_device: move init and finish function to private API
3 years ago
Simon Zeni 1bb2631c5c types/wlr_input_device: remove wlr_input_device_destroy
3 years ago
Simon Zeni 10cbb9fbe1 interface/wlr_touch: rework destroy sequence
3 years ago
Simon Zeni 8d3cb94b41 interface/wlr_tablet_tool: rework destroy sequence
3 years ago
Simon Zeni a5b032cb1e interface/wlr_tablet_pad: rework destroy sequence
3 years ago
Simon Zeni 0d2be496a8 interface/wlr_switch: rework destroy sequence
3 years ago
Simon Zeni 51cd3c0726 interface/wlr_pointer: rework destroy sequence
3 years ago
Simon Zeni 7dc4a3ecd7 interface/wlr_keyboard: rework destroy sequence
3 years ago
Simon Ser 39b68ea47a buffer: extract interface to separate header
3 years ago
Simon Zeni c84744321e types/wlr_virtual_pointer_v1: fix wlr_pointer destroy sequence
3 years ago
Simon Zeni cdb3e80b39 types/wlr_virtual_keyboard_v1: fix wlr_keyboard destroy sequence
3 years ago
Simon Zeni e279266f71 interfaces: remove wlr_input_device_impl
3 years ago
Simon Zeni 1acc931cf0 types/wlr_switch: constify impl
3 years ago
Simon Zeni f1181c34ed types/wlr_tablet_pad: constify impl
3 years ago
Kirill Primak 511f137f8f xdg-positioner: rewrite unconstraining, untie from xdg-popup
3 years ago
Kirill Primak 5879e77d68 xdg-positioner: rename structs
3 years ago
Kirill Primak b5b15b2625 xdg-{toplevel,popup}: extract destructors
3 years ago
Simon Zeni edfb332b24 types/wlr_touch: add base wlr_input_device
3 years ago
Simon Zeni 7dfee50350 types/wlr_tablet_tool: add base wlr_input_device
3 years ago
Simon Zeni a662743610 types/wlr_tablet_pad: add base wlr_input_device
3 years ago
Simon Zeni 0f3b38365d types/wlr_switch: add base wlr_input_device
3 years ago
Simon Zeni d5480efc7a types/wlr_pointer: add base wlr_input_device
3 years ago
Simon Zeni a1978b1299 types/wlr_keyboard: add base wlr_input_device
3 years ago
Simon Zeni 130c3bcf63 types/wlr_input_device: call the specialized input device destroy function on destroy
3 years ago
Simon Zeni fd80329c53 interfaces/wlr_input_device: introduce wlr_input_device_finish
3 years ago
Simon Zeni 71577e351e types/wlr_input_device: default vendor and product id to 0
3 years ago
Roman Gilg cff4abc5b1 output: clear buffer created for test
3 years ago
Isaac Freund 252b2348bd
wlr_cursor: constify map to region box arguments
3 years ago
Kirill Primak c1a2c09ade xdg-popup: send invalid_positioner to the right resource
3 years ago
Kirill Primak 7ed60c54a0 xdg-surface: avoid emitting signals with their owner object
3 years ago
Kirill Primak 34a71eae31 xdg-shell: drop wlr_xdg_toplevel_set_fullscreen_event
3 years ago
Kirill Primak fd3a2a0906 xdg-surface: minor consistency renaming
3 years ago
Kirill Primak 88f3040438 xdg-popup: destroy popup-less grab
3 years ago
Kirill Primak d2b36b7bd1 xdg-shell: fix potential use-after-free
3 years ago
Kirill Primak c35d14ecfa xdg-shell: extract role-specific unmap logic
3 years ago
Kirill Primak e59aa3e0e7 xdg-toplevel: change object type in event structs
3 years ago
Kirill Primak 1e4c1a3b58 xdg-toplevel: change parent type to xdg-toplevel
3 years ago
Kirill Primak 27c8865a4d xdg-shell: unify function arguments' names
3 years ago
Kirill Primak 41412cadbe xdg-popup: fix functions' main argument type
3 years ago
Kirill Primak affe0d8713 xdg-toplevel: fix functions' main argument type
3 years ago
Kirill Primak ee52c32915 xdg-shell: fix create_xdg_popup() param type
3 years ago
Kirill Primak 05dd990e43 xdg-shell: rename surface role handlers
3 years ago
Alexander Orzechowski cddc1c1bd9 xdg-foreign: Fix crash on destroy of degenerate surface
3 years ago
Isaac Freund 9de992b9fe
ext-session-lock-v1: new protocol implementation
3 years ago
Kenny Levinsen 1e3662ce57 scene: Add layer_shell_v1 helper
3 years ago
Simon Ser 3db1bcbe64 scene: try to import buffers as textures before rendering
3 years ago
Kirill Primak 3cfe29b598 cursor: ensure mapping box is always initialized
3 years ago
Kirill Primak ba6ba4b07a cursor: store mapped_box as value
3 years ago
Kirill Primak 49fa060442 output-layout: remove useless types/fields
3 years ago
Kirill Primak 498f30aad1 output-layout: make wlr_output_layout_get_box() take a box as parameter
3 years ago
Isaac Freund 2c59435e82
xdg-output: remove dead code
3 years ago
Kirill Primak 77951968dc subsurface: unlock cached state on commit if desynced
3 years ago
Kirill Primak da2491d416 compositor: damage the whole buffer on viewport src change
3 years ago
Simon Ser 1d1b845410 subcompositor: destroy subsurface with parent
3 years ago
Simon Ser 7ce966a5d4 subcompositor: document subsurface_from_resource
3 years ago
Isaac Freund 1bd0ea3a80
foreign-toplevel: send enter if needed on output bind
3 years ago
Tadeo Kondrak 5091118bed input_method_v2: improve mapping detection
3 years ago
Kirill Primak 50827ed7f5 surface: improve role precommit hook
3 years ago
Kirill Primak 617eb4fb93 surface: deprecate wlr_surface.h
3 years ago
Kirill Primak 36b5d5888c surface: move impl to types/wlr_{sub,}compositor.c
3 years ago
Kirill Primak 4ec683ad1c surface: introduce events.client_commit
3 years ago
Kirill Primak b6f43ab2e1 subcompositor: split out from compositor
3 years ago
Kirill Primak 83ab5055fd scene/subsurface_tree: fix handling subsurface destruction
3 years ago
Simon Ser 812951f5bc scene: schedule an output frame on wl_surface.frame
3 years ago
Isaac Freund 92d137c78a layer-shell: fix type of margins
3 years ago
Stacy Harper 8e566f716c layer-shell: don't set committed flag if the property didn't change
3 years ago
Isaac Freund 07ccc6e0b3
scene: add wlr_scene_set_presentation()
3 years ago
Simon Ser 4377b55292 util/global: remove wl_display arg from wlr_global_destroy_safe
3 years ago
Guido Günther 4c59f7d46a xdg-activation: Allow to submit tokens
3 years ago
David Rosca 31914928d2
seat: Only resend keyboard/pointer enter to focused clients
3 years ago
Isaac Freund 1c3e0816f3
scene: fix wlr_scene_send_frame_done() API
3 years ago
Isaac Freund fecde72be3 scene: add wlr_scene_send_frame_done()
3 years ago
Isaac Freund fb1f613510 scene: add primary output to wlr_scene_surface
3 years ago
Isaac Freund 0215dffba5 scene: send surface enter/leave output events
3 years ago
Simon Ser e3fefda023 output: add support for protocol interface version 4
3 years ago
Kirill Primak 0fcc842291 subsurface: don't add to parent list immediately
3 years ago
Kirill Primak 7964bdae76 surface: fix non-buffer damage handling
3 years ago
Kirill Primak df7d280343 subsurface: apply position change at the right moment
3 years ago
Kirill Primak f463ca669a subsurface: simplify and fix parent commit handling
3 years ago
Simon Ser 36a2b19485 output: introduce wlr_output_set_name
3 years ago
Simon Ser c50c4fc5cc linux-dmabuf-v1: add per-surface feedback
3 years ago
Simon Ser 1d8340754b linux-dmabuf-v1: implement v4
3 years ago
Kirill Primak c9f3c2b4f7 surface: fix damage transformation
3 years ago
tiosgz ca1af8119c Fix wlr_scene_node_lower_to_bottom
3 years ago
Simon Ser efeb8346cf output: drop front_buffer
3 years ago
Simon Ser 45069fb623 screencopy-v1: use wlr_output_event_commit.buffer
3 years ago
Simon Ser 60b7267e18 export-dmabuf-v1: use wlr_output_event_commit.buffer
3 years ago
Simon Ser f016eca97c output: add wlr_output_event_commit.buffer
3 years ago
Simon Ser 0d32118a80 output: fix modifier stripping
3 years ago
Simon Ser ba974a4e9f scene: add wlr_scene_get_scene_output
3 years ago
Simon Zeni dd84c5a1cc types/wlr_drm_lease_v1: add NULL check to drm lease resource destroy
3 years ago
Simon Ser 697a1cd0f5 output: add wlr_output_get_primary_formats
3 years ago
Simon Ser 2540de494e output: don't leave dangling cursor_front_buffer
3 years ago
Simon Ser 456b971099 output: destroy swapchain when disabled
3 years ago
Rouven Czerwinski 6bfb930aa7 linux-dmabuf-v1: fix implicit check
3 years ago
John Lindgren bff5b2c559 Insert new outputs at the end of the list
3 years ago
Jonathan Wong 0fb479ca61 Added whitespace between "output" and "(not"
3 years ago
Rouven Czerwinski d37eb5c2ea linux-dmabuf-v1: filter out LINEAR if implicit
3 years ago
Simon Ser 254ab890e7 scene: add support for viewporter
3 years ago
Simon Ser affe9eda57 Require INVALID for implicit format modifiers
3 years ago
Simon Ser 585a908a01 scene: add wlr_scene_xdg_surface_create
3 years ago
Isaac Freund c9ba9e82b6
wlr_drag: emit destroy after wl_data_device.leave
3 years ago
Simon Ser 3d73b899ff linux-dmabuf-v1: hide wlr_linux_buffer_params_v1
3 years ago
Simon Ser 6bb8973309 drm-lease-v1: listen to lease destroy event
3 years ago
Simon Ser 86f5ecf468 backend/drm: introduce wlr_drm_lease
3 years ago
Manuel Stoeckl d0bb7df630 output: remove XRGB8888 cursor fallback format
3 years ago
Manuel Stoeckl e879d566bb output: Add function to set preferred render format
3 years ago
Manuel Stoeckl 3d7d6ec06f output: use XRGB8888 format instead of ARGB8888
3 years ago
Manuel Stoeckl 7508f87fcb output: lift up output format fallback logic
3 years ago
Simon Ser 33eba9080c output: fix renderer buffer cap sanity check in wlr_output_init_render
3 years ago
Simon Zeni 5a98eae0dc types/wlr_scene: use renderer from wlr_output
3 years ago
Simon Zeni d07c87f668 types/wlr_screencopy_v1: use renderer from output
3 years ago
Simon Ser 142d10e591 output: add wlr_output_init_render
3 years ago
Simon Ser a04cfca4da Remove support for DMA-BUF flags
3 years ago
Simon Ser 9a4e1095ca linux-dmabuf-v1: properly validate flags
3 years ago
Isaac Freund ab16861e86 text-input: fix type of send_preedit_string() args
3 years ago
Simon Ser 76bab68e70 output: drop wlr_output_export_dmabuf
3 years ago
Simon Ser fa77aeb80e screencopy-v1: stop using wlr_output_export_dmabuf
3 years ago
Simon Ser f20c49d78a export-dmabuf-v1: stop using wlr_output_export_dmabuf
3 years ago
Isaac Freund e326b76959
text-input/input-method: handle strdup() failure
3 years ago
Simon Ser eb5f23d6d0 scene: fix calloc size mismatch
3 years ago
Isaac Freund 8634dd3e6a
output: fix leak of wlr_drm_format
3 years ago
tiosgz cc2ebd9fc0 scene/subsurface_tree: hide unmapped subsurfaces
3 years ago
Ronan Pigott e2aff8a9b0 xdg-activation-v1: add data field and emit token destroy events
3 years ago
Ronan Pigott 6ad0f819e2 xdg-activation-v1: enable compositors to request their own tokens
3 years ago
Simon Ser b2f6ff45c2 output: fix stack variable lifetime in wlr_output_send_present
3 years ago
Simon Ser 3b96aa04db sceeencopy-v1: listen to output destroy in capture_output
3 years ago
Simon Ser a80f2b2816 scene: inline subsurface_tree_destroy
3 years ago
Simon Ser bf42630d32 output: refuse to enable with zero mode
3 years ago
Simon Ser 3d6ca9942d xdg-foreign-v2: use error enum
3 years ago
Simon Ser fb393ddf84 output: split into multiple files
3 years ago
Simon Ser a4ccca0834 scene: add support for direct scan-out
3 years ago
Simon Ser db4c93028d scene: add wlr_scene_output_for_each_surface
3 years ago
Kirill Primak 6c3a71d9f6 presentation-time: use a surface addon
3 years ago
Simon Ser f7ea33da0a scene: remove surface commit listener when node is destroyed
3 years ago
Kirill Primak 2edf468aeb presentation-time: don't send presented on discard
3 years ago
Kirill Primak 2af8cc769a output: add presented flag to presentation event
3 years ago
Kirill Primak 1089b7b8d6 output: disallow NULL event for wlr_output_send_present()
3 years ago
Isaac Freund 4fae8f7be3 scene: add functions to place node on top/bottom
3 years ago
Isaac Freund 2a8d385386 scene: assert that node != sibling in place above/below
3 years ago
Kirill Primak c3e54021f8 xdg-decoration: refactor configure/state flow
3 years ago
Kirill Primak cdaab82020 layer-shell: move NULL buffer check to role precommit handler
3 years ago
Kirill Primak 28248dd83b xdg-shell: remove redundant NULL buffer check
3 years ago
tiosgz ce66244fd2 surface_at: check if surfaces are mapped
3 years ago
tiosgz 893434b2d4 for_each_surface: only iterate mapped surfaces
3 years ago
Simon Ser 1d7e438d8a Revert "Require INVALID for implicit format modifiers"
3 years ago
Simon Ser ea7357b703 Require INVALID for implicit format modifiers
3 years ago
Simon Ser 744a5c2fef xdg-shell: stop clearing wlr_xdg_surface state on unmap
3 years ago
Simon Ser 665a164f27 xdg-shell: rename wlr_xdg_surface.next_configure_serial
3 years ago
Simon Ser 0e34208344 xdg-shell: introduce wlr_xdg_surface.current
3 years ago
Kirill Primak db4afc2408 xdg-surface: add pending state
3 years ago
José Expósito 20d9448257 wlr_pointer_gestures: hold gestures (protocol v3)
3 years ago
José Expósito 5f3e490c80 wlr_pointer_gestures: update protocol to version 2
3 years ago
José Expósito 4c3e307ec8 cursor: emit hold gesture events
3 years ago
José Expósito d069a783bc pointer: add hold pointer event definition
3 years ago
Kirill Primak 754f40f9cb layer-shell: add `committed` bitmask
3 years ago
Kirill Primak 59fa3637c3 layer-shell: refactor configure/state flow
3 years ago
Simon Ser 3c26244340 scene: add wlr_scene_buffer_set_transform
3 years ago
Simon Ser 43833fba64 scene: add wlr_scene_buffer_set_dest_size
3 years ago
Simon Ser 3d4afbe945 scene: use scene_node_get_size in wlr_scene_node_at
3 years ago
Simon Ser 27b529f8a0 scene: add scene_node_get_size helper
3 years ago
Simon Ser 63040d6744 scene: add wlr_scene_buffer_set_source_box
3 years ago
Simon Ser 7939bf8cc6 scene: add wlr_scene_buffer
3 years ago
Simon Ser f6f0e010d1 scene: unify intersection logic in wlr_scene_node_at
3 years ago
Simon Ser b25759cd20 scene: drop default case in wlr_scene_node_at
3 years ago
Tadeo Kondrak 30d3c76817 Implement input_method_v2 popups
3 years ago
Simon Ser 2e590026e9 scene: add wlr_scene_subsurface_tree_create
3 years ago
Simon Ser 597ba2b932 surface: add addon set
3 years ago
Simon Ser 211b3b760e scene: add wlr_scene_tree
3 years ago
Kirill Primak ccc84f11a4 xdg surface: check adding configure_idle for NULL
3 years ago
Kirill Primak 0e2d369106 xdg-surface: simplify configure mechanism
3 years ago
Kirill Primak b72a217fcc xdg-toplevel: refactor configure/state flow
3 years ago
Simon Zeni 9579d62a16 types/buffer: make {begin,end}_data_ptr_access part of the public API
3 years ago
Kirill Primak 52da68b591 xdg popup: move function to a file it belongs to
3 years ago
Simon Ser 4e7a8707cc buffer: add data_ptr access flags
3 years ago
Andri Yngvason 105fdecd0c screencopy: Handle shm copy in commit event handler
3 years ago
Andri Yngvason 04d234bac1 screencopy: Use output->front_buffer instead of wlr_output_export_dmabuf
3 years ago
Simon Ser a181a37b12 scene: add wlr_scene_attach_output_layout
3 years ago
Simon Ser 7832005a1f scene: move source to subdir
3 years ago
Quantum 679f5ed966 scene: fix compile error in release builds
3 years ago
Simon Ser 44f0f7a0a7 scene: add damage tracking support
3 years ago
Simon Ser 9195b77e14 scene: add wlr_scene_node_coords
3 years ago
Simon Ser 04d105760d scene: add wlr_scene_output_commit
3 years ago
Simon Ser 968c1df7e9 scene: add scene outputs
3 years ago
Simon Ser 872993f95d scene: fix wlr_scene_render_output offset
3 years ago
Simon Zeni 3984c81faa types: introduce wlr_drm_lease_v1
3 years ago
Simon Ser 04304c322e output-damage: fix damage on modeset
3 years ago
Simon Ser 88919464ef surface: fix abort on NULL buffer attach
3 years ago
Simon Ser ba0525c5c0 surface: drop wlr_surface_state.buffer_resource
3 years ago
Simon Ser 0978a702d7 surface: ensure buffer is reset to NULL in surface_state_move
3 years ago
Simon Ser 0fe3b45361 viewporter: hide wlr_viewport
3 years ago
Simon Ser bb82b6dada buffer: make wlr_client_buffer_apply_damage return a bool
3 years ago
Simon Ser cbe099dcc7 buffer: take a wlr_buffer in wlr_client_buffer_apply_damage
3 years ago
Kirill Primak 610f0c0805 surface: inline surface_commit_pending()
3 years ago
Kirill Primak cf56596565 surface: change surface_finalize_state() to surface_finalize_pending()
3 years ago
Kirill Primak ba55c7c4ff surface: rename impl and its functions
3 years ago
Kirill Primak 90e62390d9 surface: move subsurface lists to state
3 years ago
Simon Ser 3ac99fa4dc subsurface: move parent link to state
3 years ago
Simon Ser 56b6b80b9a subsurface: rename wlr_subsurface_state to wlr_subsurface_parent_state
3 years ago
Kirill Primak 242c23743f surface: cache frame callback lists again
3 years ago
Simon Ser d290b13871 seat: avoid copying the keymap for each client
3 years ago
Simon Ser 62924cc523 keyboard: add wlr_keyboard.keymap_fd
3 years ago
Devin J. Pohly 00c2bae1d3 scene: remove redundant empty-region check in render_texture()
3 years ago
Devin J. Pohly 9ed16e39fa scene: replace surface_at() with node_at()
3 years ago
Devin J. Pohly b7cd06e8fa scene: add RECT node type
3 years ago
Devin J. Pohly 526652a554 scene: iterate nodes instead of surfaces when rendering
3 years ago
Devin J. Pohly 7ec9523ea3 scene: stricter assertions on reparent
3 years ago
Devin J. Pohly d5263be355 scene: make graph loops fatal when debugging
3 years ago
Devin J. Pohly 0f534e32e4 scene: ensure node cannot be reparented below itself
3 years ago
Devin J. Pohly a1d462fa81 scene: add node reparent function
3 years ago
Simon Ser e4d0ec9ee1 scene: add wlr_scene_node_surface_at
3 years ago
Simon Ser 97954154bc scene: allow nodes to have arbitrary parents
3 years ago
Simon Ser 86e9309808 scene: add wlr_scene_node_toggle
3 years ago
Simon Ser c7d489b5b6 Introduce new scene-graph API
3 years ago
Kirill Primak 5f645598d8 subsurface: unlock surface on destroy
3 years ago
Simon Ser 3ce2ea9e16 Move allocator stuff into new directory
3 years ago
Kirill Primak 72a156b18a surface: fix wlr_surface_get_buffer_source_box()
3 years ago
Kirill Primak 109405729b surface: fix place_below handling
3 years ago
Rouven Czerwinski aa78c50bf1 output: check output enabled before sending frame
3 years ago
Isaac Freund 3364eec07e layer-shell: replace close() with destroy()
3 years ago
Simon Ser 93964012e6 buffer: add addon set
3 years ago
Simon Ser 20404ed8bb surface: drop surface_state_copy
3 years ago
Simon Ser 3f9e4f7a44 surface: kill wlr_surface.previous
3 years ago
Kirill Primak 111d4eafd7 util/addon: find both by owner and impl
3 years ago
Kirill Primak debd6c5f0b wlr_output_layout: use wlr_addons
3 years ago
Kirill Primak 11f799e88e wlr_outputs: add wlr_addon_set
3 years ago
Tudor Brindus 033c9cab74 input/pointer: try harder to not send duplicate motion events
3 years ago
Simon Ser c27263c105 seat: allow compositors to not load a keymap
3 years ago
Simon Ser df0e75ba05 output: try skipping buffer allocation if the backend allows it
3 years ago
Simon Ser 923258b0be backend/drm: preserve mode order from kernel
3 years ago
Kirill Primak f12bacf4b4 surface: don't cache frame callback lists
3 years ago
Quantum 456c6e2279 viewporter: remove crop and scale state upon destruction
3 years ago
Simon Ser 3132c0ab10 output: drop wlr_output_state.buffer_type
3 years ago
Simon Ser f211bc983a output-damage: stop using enum wlr_output_state_buffer_type
3 years ago
Simon Ser 4ddde1a7bd output: drop wlr_output_impl.{attach,rollback}_render
3 years ago
Simon Ser 6aadf811aa output: fallback to modifier-less allocation on modeset test failure
3 years ago
Simon Ser 0fb55c76d0 output: allocate and attach empty buffer on modeset
3 years ago