1014 Commits (cc3c5ebb674987a33d5d8c227756f66af61ec243)

Author SHA1 Message Date
emersion 79da4c175e
backend/headless: remove useless destructor
7 years ago
emersion 6e7c0b57f6
cursor: use NAN for unspecified axes, refactor absolute warping code
7 years ago
emersion 126f12e428
xdg-shell: fix invalid xdg-positioner cast
7 years ago
emersion 43012f3740
compositor: redesign how resources are managed
7 years ago
Drew DeVault 979b1b22d5
Merge pull request #914 from emersion/misc-segfault-fixes
7 years ago
emersion 874909dca6
xdg-shell: fix invalid wlr_xdg_positioner alloc
7 years ago
emersion fcb7ad925d
layer-shell: fix use-after-free when client requests an invalid layer
7 years ago
Drew DeVault 93ebd33aa8
Merge pull request #890 from agx/layer-shell-empty-output-crash
7 years ago
Guido Günther d81f0170a3 layer-shell: Don't crash when the compositor didn't find a suitable output
7 years ago
Drew DeVault fecb971518
Merge pull request #902 from emersion/various-memory-leaks
7 years ago
emersion 449f06556a
Destroy wlr_surface with wlr_renderer
7 years ago
emersion d47713ac0f
compositor: destroy subsurface resources with wlr_subcompositor
7 years ago
emersion 89a9c96fab
compositor: make wlr_compositor_destroy destroy resources
7 years ago
emersion 625a7a48dc
Don't use the wlr_ prefix for static functions
7 years ago
emersion b0d99f5c67
Remove wlr_ prefix from local symbols
7 years ago
emersion 8e2f3056f8
layer-shell: fix small memory leak
7 years ago
emersion bc0bfde5ee
cursor: allow to call wlr_cursor_wrap_absolute with zero
7 years ago
emersion 38064f1d18
Fix protocol error when a client destroys and re-creates a subsurface
7 years ago
Drew DeVault 941f88ce23 Fix popup positioning & double popups
7 years ago
Drew DeVault 52baf3dd8a Move get_geometry call back to xdg-shell
7 years ago
Drew DeVault 0a0627f5d0 Finish forward-porting @acrisci's positioner work
7 years ago
Drew DeVault 2e3d901ac5 Forward-port xdg-shell-v6 positioner improvements
7 years ago
Drew DeVault 278aa84619 Basic layer popup rendering
7 years ago
Drew DeVault d3cdb00208 Add (shitty) support for popups to layer example
7 years ago
Drew DeVault 6b7b64ec1e Generalize xdg-shell popups and add to layer-shell
7 years ago
Drew DeVault 625bc7b8b3 assert(surface->output); after new_surface emit
7 years ago
Drew DeVault 177b548b15 Update layer shell with optional wl_output
7 years ago
emersion 3bce5dfc9f
Fix segfaults in wlr_surface_is_*
7 years ago
emersion bfcd3f3707
Add wlr_subcompositor
7 years ago
emersion fa84b267e0
Remove wlr_surface::subsurface
7 years ago
Markus Ongyerth c8ccb1bef3 reorder xkb state handling in wlr_keyboard
7 years ago
emersion 94fa6c88f4
output: don't emit the mode event if it hasn't changed
7 years ago
emersion 1b802d9251
Make wlr_renderer_scissor take normal coords instead of upside-down ones
7 years ago
Drew DeVault 8f4039d799
Merge pull request #861 from emersion/fix-output-transform-compose
7 years ago
emersion 31c8bdc277
Fix wlr_output_transform_compose
7 years ago
emersion fa0be972bb
Fix wlr_xdg_surface_surface_at for popups
7 years ago
Drew DeVault bef5c1fd56
Merge pull request #850 from emersion/remove-backend-egl
7 years ago
emersion d2ebbd103c
backend: remove wlr_backend_get_egl
7 years ago
Drew DeVault bf68854a38 Fix destruction of popups without grabs
7 years ago
Drew DeVault ae4cef9e41
Merge pull request #825 from emersion/surface-iterators
7 years ago
Drew DeVault ec0ce8ae1c Fix sending updates to xdg-output resources
7 years ago
Drew DeVault 6710de9878 Merge branch 'master' into xwayland-dnd
7 years ago
emersion 4a9a9eae9a
Add surface iterators
7 years ago
emersion 19b576734e
Merge pull request #834 from emersion/surface-is-subsurface
7 years ago
emersion aced024819
Add wlr_surface_is_subsurface and wlr_subsurface_from_surface
7 years ago
Drew DeVault abfe7923c4 Add wlr_xdg_output_manager
7 years ago
emersion 3ea425d4e2
Fix xdg-shell popups, add wlr_xdg_surface_surface_at
7 years ago
emersion c9d21106b4
Add wlr_xdg_surface_v6_surface_at and wlr_wl_shell_surface_surface_at
7 years ago
emersion 1a8b24bdd2
rootston: fix view_at
7 years ago
emersion d16127b3cb
Fix wlr_surface_subsurface_at, change it to be wlr_surface_surface_at
7 years ago
Drew DeVault 36e94b2a8e Actually fix input inhibitor destructor
7 years ago
Drew DeVault 1fa3ca3152 Revert "Add destructor to inhibitor"
7 years ago
Drew DeVault 657d2c9a69 Add destructor to inhibitor
7 years ago
Drew DeVault ef4e833f13 Add wlr_input_inhibitor
7 years ago
emersion 58ac05c276
Merge branch 'master' into xwayland-dnd
7 years ago
Drew DeVault 333ab59902 Add wlr_surface_is_*_surface
7 years ago
emersion 8836b4f024
Merge branch 'master' into xwayland-dnd
7 years ago
Tony Crisci 5a47da1ea6 annotate wlr-output-layout coord variables
7 years ago
Drew DeVault 1778818a50 Don't destroying all layer surfaces on client d/c
7 years ago
Drew DeVault e19ee6d469 Add wlr_surface_point_accepts_input
7 years ago
emersion 6bbf507082
surface: fix texture not updated on commit
7 years ago
emersion d5f46f4db4
data-device: redesign wlr_data_source
7 years ago
Drew DeVault 4137d9fc80 Destroy layer surfaces on client destroyed
7 years ago
emersion 743466d475
data-device: add seat.drag_source
7 years ago
emersion a316396eab
Merge pull request #720 from acrisci/xdg-positioner
7 years ago
Tony Crisci 2e63d1a0ca toplevel_box to toplevel_sx_box
7 years ago
Tony Crisci cf13a6d9c6 address toplevel coords issue
7 years ago
Tony Crisci 967bccffcd remove xdg-positioner wlr wrappers
7 years ago
Tony Crisci 8b967fc573 bug: dont slide over too far
7 years ago
Tony Crisci bf5ae85683 return early when no dest_x/y in output layout closest point
7 years ago
Tony Crisci bd828e23de dont allocate xdg-positioner attrs
7 years ago
Tony Crisci 376d1cc0da rename xdg-positioner structs
7 years ago
emersion 3effe153bc
xwayland: make wayland → xwayland work
7 years ago
Tony Crisci 4ab88a5330 xdg-positioner bugfix
7 years ago
Tony Crisci 0bfcce50a9 xdg-positioner: honor constraint flags
7 years ago
Tony Crisci dbffda7549 xdg-positioner wlr abstractions
7 years ago
emersion 2a34b154e6
xwayland: send DND_DROP
7 years ago
emersion 73394deb76
xwayland: send DND_POSITION
7 years ago
emersion 0d7a81ccdf
xwayland: send DND_ENTER
7 years ago
Drew DeVault 324b9d910d Remove width_mm from wlr_touch events
7 years ago
Drew DeVault a35a5786b0 Remove width_mm from wlr_pointer events
7 years ago
Tony Crisci 41e54ba632 Merge branch 'master' into xdg-positioner
7 years ago
Tony Crisci 330ee08126
Merge pull request #744 from emersion/texture-redesign
7 years ago
Drew DeVault 7d89e7e58d Assign layer surface role
7 years ago
Drew DeVault 96a8df2f9a Fix ack configure/configure flow
7 years ago
Drew DeVault 52fe2688ea Address @emersion's feedback
7 years ago
Drew DeVault e841e5602b Address @emersion's feedback
7 years ago
Drew DeVault 86ca4bea6d Fix layer rendering/layout bugs
7 years ago
Drew DeVault d1c0e6fe2c Add layer_surface.close
7 years ago
Drew DeVault 4bf936360d Arrange & render layer surfaces
7 years ago
Drew DeVault fcf8c6c8a2 Fix issues preventing layer from getting allocated
7 years ago
Drew DeVault 88eec637a4 Address feedback
7 years ago
Drew DeVault 1628730b09 Add wlr_layer_surface_configure
7 years ago
Drew DeVault 4a8c0c0784 Destroy layer surfaces when client is destroyed
7 years ago
Drew DeVault b06105b564 Implement layer surface requests
7 years ago
Drew DeVault 3ba57fccd1 Wire up layer surface resources to stubs
7 years ago
Drew DeVault f29d8b55ae Initial scaffolding of layer shell
7 years ago
Tony Crisci 8371e2f41d implement flip_x
7 years ago
emersion 171e28eaff
xdg-shell: don't destroy role resources on unmap, move toplevel fields
7 years ago
Tony Crisci bbd0e23fa7 xdg-positioner constraint detection
7 years ago
emersion 334bab543d
xdg-shell-v6: move toplevel specific fields in wlr_xdg_toplevel_v6
7 years ago
emersion adf4fb08dd
Merge branch 'master' into texture-redesign
7 years ago
emersion 5233801530
xdg-shell-v6: don't destroy role resources on unmap
7 years ago
Tony Crisci 4da18f7fc3 xdg-positioner attrs
7 years ago
Tony Crisci 5617a59598
Merge pull request #741 from emersion/unmapped-surface-destroy
7 years ago
emersion c63d94483b
Redesign wlr_texture
7 years ago
Tony Crisci f53575e3a3 unified xdg-surface close
7 years ago
Guido Günther b1852096c5 linux-dmabuf: Support multi plane formats like NV12
7 years ago
Guido Günther 805039457a wlr_surface: fix indentation
7 years ago
Tony Crisci 30b8fb5572 Merge branch 'master' into xdg-positioner
7 years ago
Dominique Martinet e86cd4dc33 wlr_pointer: fix potential null deref
7 years ago
Dominique Martinet de955a0f63 xdg_popup_grab: add listener on seat destroy
7 years ago
emersion 731ee24089
xdg-shell, xdg-shell-v6: don't emit unmap if surface is unmapped
7 years ago
emersion c41de2d1be
render: split render.h into wlr_renderer.h and wlr_texture.h
7 years ago
emersion 6ecb0eefcb
render/gles2: transpose matrices before binding them
7 years ago
Drew DeVault 1956d3cedb
Merge pull request #722 from emersion/matrix-redesign
7 years ago
Tony Crisci 09413aa7f1
Merge pull request #711 from emersion/map-unmap
7 years ago
emersion 7894fca224
matrix: rename wlr_matrix_texture to wlr_matrix_projection
7 years ago
emersion e607d0f7ee
xdg-shell: add map/unmap support
7 years ago
emersion 42cc575266
xdg-shell-v6: fix wl_list_remove called twice
7 years ago
emersion 361d7c857e
xdg-shell-v6: don't leak wlr_xdg_surface_v6_configure.toplevel_state
7 years ago
emersion 1914a1aa2b
surface: drop wlr_surface_get_matrix
7 years ago
emersion 8b58e1a3ad
Merge branch 'master' into matrix-redesign
7 years ago
emersion 824a95ad19
matrix: use 2D matrices
7 years ago
emersion de0e40d621
Merge pull request #698 from agx/linux-dmabuf
7 years ago
Guido Günther eb4337b5ee Wire up linux_dmabuf in rootston
7 years ago
Guido Günther 14cdb6153f Add initial linux_dmabuf protocol support
7 years ago
emersion d26b67cb06
matrix: unify API, don't use array pointers
7 years ago
emersion b6a3f240c7
matrix: move to types/
7 years ago
Tony Crisci 8836b167bf store xdg-positioner properties on the popup
7 years ago
Tony Crisci b2926a6c62 differentiate xdg-toplevel roles
7 years ago
emersion ace738dbca
xdg-shell-v6: next_geometry and geometry fields are not longer pointers in wlr_xdg_surface_v6
7 years ago
emersion 149209b72e
xdg-shell-v6: rename toplevel and popup fields in wlr_xdg_surface_v6 for consistency
7 years ago
emersion 657e5c8c0d
xdg-shell-v6: changed wlr_xdg_surface_v6_configure.toplevel_state to be NULL if surface isn't a toplevel
7 years ago
emersion e74ddaaf10
xdg-shell-v6: redesign the configure/ack_configure workflow
7 years ago
Tony Crisci 647c2e68ba
Merge pull request #696 from emersion/fix-output-layout-destroy-global
7 years ago
emersion adec3f5c0f
xdg-shell-v6: add unmap support, add more protocol errors
7 years ago
emersion 8e3d294d6a
output: fix trailing cursor at (0, 0) on startup
7 years ago
emersion 3f072bedd9
xdg-shell-v6: add map signal
7 years ago
emersion a951fbb264
output: don't move hidden cursors
7 years ago
Scott Anderson 3c9fc7c68e Add const to x11 and input interfaces
7 years ago
emersion aa2b62fbff
output-layout: fix output global not destroyed
7 years ago
Drew DeVault 0820557c8c
Merge pull request #693 from emersion/fix-output-bind-multiple
7 years ago
emersion 90148e64ab
Fix clients binding multiple times to the same output
7 years ago
Drew DeVault 3296365ce5
Merge pull request #659 from agx/alpha
7 years ago
Guido Günther d08792bfff Add alpha to wlr_render_with_matrix
7 years ago
Tony Crisci b7b86a9591
Merge pull request #641 from Ongy/idle-inhibit
7 years ago
Markus Ongyerth 67285c1d57 idle-inhibit: style adjustments and motivation
7 years ago
emersion b1e2718dd7
xwayland: fix some use-after-free in xwm
7 years ago
Tony Crisci 1c1b5b1b17
Merge pull request #662 from emersion/surface-resize-frame-done
7 years ago
emersion f0404f6d75
surface: don't reset frame_callback_list on resize
7 years ago
Markus Ongyerth a715826751 move activity_notify into events in wlr_idle
7 years ago
Markus Ongyerth 87a7afb641 idle-inhibit: second feedback pass
7 years ago
Markus Ongyerth 3016133f91 idle-inhibit: feedback pass
7 years ago
emersion 4eaffc3e45
primary-selection: fix crash in device_handle_set_selection
7 years ago
Drew DeVault 1d9be89e2d
Revert "ELF Visibility"
7 years ago
Drew DeVault 09cfa39392
Merge pull request #632 from acrisci/output-layout-adjacent
7 years ago
Scott Anderson 86269052eb Explicitly export EFL symbols
7 years ago
Drew DeVault c951000198 Remove XXX comment
7 years ago
Tony Crisci 9933b7ad95 fix direction determination
7 years ago
Tony Crisci d2c7defa10 Merge branch 'master' into output-layout-adjacent
7 years ago
Markus Ongyerth 50d573b2ca implements the idle_inhibit protocol type
7 years ago
Dominique Martinet 4941befeb0
Merge pull request #1 from emersion/martinetd/xdg_shell
7 years ago
emersion 4b354745fe
xdg-shell: wrap wl_resource_get_user_data
7 years ago
emersion 717bdccb6e
Merge remote-tracking branch 'upstream/master' into martinetd/xdg_shell
7 years ago
Drew DeVault 8c1cc45c7d
Merge pull request #629 from emersion/safe-wl-resource-get-user-data
7 years ago
Dominique Martinet ac78bdb6bc xdg shells: fix typo s/positives/positive/
7 years ago
Dominique Martinet 56ab3e9b10 xdg_shell stable: fix zero-sized positioner anchor_rect
7 years ago
Dominique Martinet 714f90a9d0 xdg_shell stable: allow zero-sized positioner set_anchor_rect
7 years ago
Dominique Martinet d1b28ec812 wayland protocol headers: use double-quote for includes
7 years ago
Dominique Martinet 6ae96c4832 wlr_xdg_shell: (style) add break to final switch case
7 years ago
Tony Crisci 85871cb666 add wlr_output_layout_adjacent_output
7 years ago
Rodrigo Lourenço 168e26489a Add missing dependencies
7 years ago
Dominique Martinet 1080bf69f8 xdg_shell: add input validatoin for positioner anchor/gravity
7 years ago
Dominique Martinet 7d26a6debd xdg-shell stable: copy-pasta implementation
7 years ago
emersion 392d54a35d
Wrap wl_resource_get_user_data into safer helper functions
7 years ago
emersion c2e1474010
Reformat all #include directives
7 years ago
emersion 36ead80cd1
Make wlr_signal_emit_safe private
7 years ago
emersion 10ecf871f2
Remove wlr_backend.events.{output_remove,device_remove}
7 years ago
emersion 5e58d46cc1
Add wlr_signal_emit_safe
7 years ago
emersion a9632341bf
output_damage: listen to transform and scale output events
7 years ago
emersion ec837e3c9e
Introduce wlr_output_damage
7 years ago
emersion bf6d245400
Swap buffers with damage
7 years ago
emersion cdd55b5d19
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Vincent Vanlaer 8dcb2f2d6b Prevent cursor from getting stuck at infinity
7 years ago
emersion 1cea73d2d8
rootston: fix rotated views damage tracking
7 years ago
emersion faa57341ca
output: replace raw GL calls by wlr_renderer_* calls
7 years ago
emersion 3d3ea32137
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
emersion 8eed857292
output: add destroy signal for wlr_output_cursor
7 years ago
emersion edb4c8d858
output: damage whole output when fullscreen surface size changes
7 years ago
emersion a295c805c4
output: fix output_damage_whole for scaled outputs
7 years ago
emersion babdd6ccf7
backend: fix use-after-free when destroying backends
7 years ago
emersion 704130cc11
output: fix performance issues with wlr_output_schedule_frame
7 years ago
emersion d498855b9d
backend/drm: fix hw cursor position on rotated and scaled outputs
7 years ago
emersion 51c22d39a4
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
emersion 2cc989e097
output: restrict provided damage to output bounds
7 years ago
Tony Crisci ed5b1fdedd
Merge pull request #580 from emersion/screenshooter-renderer-backport
7 years ago
emersion 7881d039b6
rootston: fix output_damage_whole
7 years ago
emersion 5bbff20b8d
Fix assertion failed in data_source_notify_finish
7 years ago
emersion e049610b47
surface: copy buffer damage to surface damage
7 years ago
emersion 1ee61dbd0f
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
emersion 485aa87468
output: fix fullscreen on transformed outputs
7 years ago
emersion 861d5bdff2
surface: fix damage when resizing a surface in QT apps
7 years ago
Guido Günther 1633b8d793 wlr_keyboard: use correct printf format string for keymap_size
7 years ago
emersion 7adf13e284
Fix flickering when switching VT
7 years ago
emersion 7111dd79ef
rootston: damage tracking for rotated views
7 years ago
emersion a011a1cb07
screenshooter: request a buffer swap
7 years ago
emersion 8d58ed502b
output: add wlr_output_schedule_frame
7 years ago
emersion ece2c1e4e2
Damage tracking for transformed outputs
7 years ago
emersion 6281deb90f
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Markus Ongyerth f946c10cb1 re-adds wlr_output_update_enabled
7 years ago
emersion 4fa90b0511
Backport screenshooter fixes from the renderer redesign v1
7 years ago
Markus Ongyerth 3cf7225cec decouples outputenable state and wl_output global
7 years ago
emersion 4d282c8590
rootston: damage tracking for drag icons
7 years ago
emersion 3f1c4f5be7
rootston: damage tracking for wl_shell
7 years ago
emersion a8cb02f585
surface: add damage when subsurface moves
7 years ago
emersion f5507ec677
cursor: fix segfault when destroying a wlr_output_layout with a wlr_cursor attached
7 years ago
emersion 59c53e8333
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
emersion 66ae4071a7
rootston: damage tracking for xdg popups
7 years ago
Johannes Schramm dcc743047b style: include brackets for if/while/for, even if it's a single statement
7 years ago
emersion eeffe11337
surface: add wlr_surface new_subsurface and wlr_subsurface destroy events
7 years ago
emersion 0365b587f0
output: add damage tracking via buffer age
7 years ago
emersion 4ca38b84ed
backend/drm: fix hardware cursors not moving
7 years ago
emersion ddafcb86a2
surface: add resize damage
7 years ago
emersion e29a0df8c1
output: fix software cursors damage tracking
7 years ago
emersion a0f24b809e
output: add damage event
7 years ago
emersion 443bd4cd89
output: fullscreen surface damage tracking
7 years ago
emersion f061a1da63
output: fix software cursor artifacts
7 years ago
emersion 59ba8f35ed
rootston: use surface damage
7 years ago
emersion bde255933e
output: add wlr_output::damage, fixes #572
7 years ago
Tony Crisci b6f29e87e8 dont use pointer for modifiers
7 years ago
Tony Crisci 43896af90f Merge branch 'master' into modifier-fixes
7 years ago
Drew DeVault b331c5c2c5
Merge pull request #549 from emersion/output-enabled
7 years ago
emersion 0eebaf98d0
drm: do not pageflip when enabling output
7 years ago
Heghedus Razvan 21cc5e6fef Add idle protocol
7 years ago
emersion 33c427a6aa
output_layout: disabled outputs are just like enabled outputs
7 years ago
Tony Crisci b40a5f084a keyboard grab enter with modifiers
7 years ago
Tony Crisci 2bd3a75f80 fix send modifiers in wlr-seat set keyboard
7 years ago
Tony Crisci 670d336099 Merge branch 'master' into modifier-fixes
7 years ago
Tony Crisci 9765232096 update xkb state on layout change
7 years ago
Tony Crisci ca0f456d6c wlr-keyboard set layout error handling
7 years ago
Tony Crisci fcab1e87ed fix data-device keyboard grab signature
7 years ago
emersion 8ebd7d4dbe
output: rename resolution event to mode
7 years ago
emersion 6fe380a176
output_layout: handle output enable event
7 years ago
Markus Ongyerth 6834067ef5 sends the modifiers on wlr_seat_set_keyboard
7 years ago
Tony Crisci 0ef2df21f2 compositor modifier hook
7 years ago
emersion d9ecfbaf32
Add wlr_output enable event
7 years ago
emersion 771263380c
Add wlr_output::enabled
7 years ago
Tony Crisci ce3a48c316
Merge pull request #542 from emersion/abstract-data-source
7 years ago
emersion c599d8024c
Remove serial validation TODOs
7 years ago