emersion
adf4fb08dd
Merge branch 'master' into texture-redesign
7 years ago
emersion
5233801530
xdg-shell-v6: don't destroy role resources on unmap
...
The motivation for this is:
- `get_popup` and `get_toplevel` allocate role-specific resources.
- On the first non-null commit, the surface gets mapped.
- On a null commit, the surface gets unmapped. It can be mapped
again with a non-null commit.
- When the role object (xdg-toplevel or xdg-popup) is
destroyed, the surface is unmapped and role-specific resources
are destroyed. The client can call `get_popup` or `get_toplevel`
again on that surface.
- When the xdg-surface object is destroyed, the surface is
unmapped, role-specific resources are destroyed and the surface
itself is destroyed.
7 years ago
Drew DeVault
891610081f
Merge pull request #751 from emersion/rotated-surface-damage
...
Fix damage tracking for rotated surfaces
7 years ago
emersion
4555fc8a54
Fix damage tracking for rotated surfaces
...
It was broken because the damage extents were rotated about its
own center, not about the center of the surface.
This adds a new wlr_region_rotated_bounds that rotates regions.
This allows us to have only one code path (for both non-rotated
views and rotated views) and optimizes rendering for rotated
views.
7 years ago
Tony Crisci
4da18f7fc3
xdg-positioner attrs
7 years ago
emersion
793c3b3047
render: add simple functions to render rectangles and ellipses
7 years ago
emersion
c63d94483b
Redesign wlr_texture
...
- Textures are now immutable (apart from those created from raw
pixels), no more invalid textures
- Move all wl_drm stuff in wlr_renderer
- Most of wlr_texture fields are now private
- Remove some duplicated DMA-BUF code in the DRM backend
- Add more assertions
- Stride is now always given as bytes rather than pixels
- Drop wl_shm functions
Fun fact: this patch has been written 10,000 meters up in the air.
7 years ago
Tony Crisci
f53575e3a3
unified xdg-surface close
7 years ago
Tony Crisci
30b8fb5572
Merge branch 'master' into xdg-positioner
7 years ago
emersion
a854c2f246
Merge branch 'master' into gles2-renderer-redesign
7 years ago
Drew DeVault
ef3769851f
Merge pull request #740 from emersion/egl-debug
...
render/egl: use EGL_KHR_debug
7 years ago
Dominique Martinet
de955a0f63
xdg_popup_grab: add listener on seat destroy
7 years ago
emersion
b1f93bc5cc
render/egl: use EGL_KHR_debug
7 years ago
emersion
3581573bdc
render/gles2: make wlr_renderer_begin take viewport size
...
This allows raw GL calls outside wlr_renderer to be removed.
7 years ago
emersion
95e86e675a
render/gles2: remove global state, use OpenGL debug extension
7 years ago
emersion
c41de2d1be
render: split render.h into wlr_renderer.h and wlr_texture.h
7 years ago
Drew DeVault
a76cef475b
Merge pull request #733 from emersion/fix-matrix-transpose
...
Don't use OpenGL matrix transposition
7 years ago
Drew DeVault
8d490fdb34
Write some more docs
7 years ago
emersion
6ecb0eefcb
render/gles2: transpose matrices before binding them
...
Setting glUniformMatrix3fv's transpose parameter to GL_TRUE is
not allowed for OpenGL ES 2.
This adds a wlr_matrix_transpose function.
7 years ago
Drew DeVault
1956d3cedb
Merge pull request #722 from emersion/matrix-redesign
...
Matrix redesign
7 years ago
Tony Crisci
09413aa7f1
Merge pull request #711 from emersion/map-unmap
...
Add map/unmap to xdg-shell
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
876f07e9f1
renderer: replace wlr_texture_get_matrix by wlr_render_texture
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
...
Add initial linux_dmabuf protocol support
7 years ago
Guido Günther
14cdb6153f
Add initial linux_dmabuf protocol support
...
Tested with
./weston-simple-dmabuf-drm
./weston-simple-dmabuf-drm --import-immediate=1
./weston-simple-dmabuf-drm --y-inverted=1
(and combinations)
Supports only single plane XRGB dmabufs for now.
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
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
Guido Günther
2d0db16942
render: Flip textures in case of inverted_y
7 years ago
emersion
3f072bedd9
xdg-shell-v6: add map signal
7 years ago
Drew DeVault
bfc0e95d2c
Add mode support to libinput backend
...
And extend tablet example with tilt and ring support
7 years ago
Scott Anderson
3c9fc7c68e
Add const to x11 and input interfaces
7 years ago
Dominique Martinet
7d1870c6f1
move xwm.h out of include/wlr
...
xwm.h was meant to be private, so move it to include/xwayland/xwm.h
We had an ifdef WLR_HAS_XCB_ICCCM in xwayland.h which was easy to move
to xwm, it is not safe to use the WLR_HAS_* in the public headers.
I checked a few of our current users and none rely on xwm.h being
public as expected (rootston, sway, hsroots)
7 years ago
emersion
c2ba1869ce
Merge pull request #670 from Ongy/xwayland_unmanaged
...
add xwayland unmanaged tests to support dmenu
7 years ago
Markus Ongyerth
bb676013ed
add xwayland unmanaged tests to support dmenu
...
This adds `wlr_xwayland_surface_is_unamanged`, to allow compositors more
fine grained control over XWayland focus.
A surface that is unmanaged should not receive focus, while other
windows that are just override redirect may want it (dmenu).
The way unamanged is determined is taken from wlc.
7 years ago
Drew DeVault
3296365ce5
Merge pull request #659 from agx/alpha
...
Make wlr_render_with_matrix use alpha
7 years ago
Guido Günther
d08792bfff
Add alpha to wlr_render_with_matrix
...
so we can use the alpha channel to e.g. blend in textures
7 years ago
Tony Crisci
b7b86a9591
Merge pull request #641 from Ongy/idle-inhibit
...
Add idle-inhibit implementation
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
emersion
bd9583a7e8
Merge pull request #652 from agx/symbols-file
...
Add symbols file
7 years ago
Markus Ongyerth
a715826751
move activity_notify into events in wlr_idle
...
This moves the `struct wl_signal activity_notify` in `struct wlr_idle`
into a local `struct {} events` to keep consistency with other modules
in the library.
7 years ago
Markus Ongyerth
87a7afb641
idle-inhibit: second feedback pass
7 years ago
Guido Günther
2688f6163f
Rename _strip_path to wlr_strip_path
...
since it's a public function
7 years ago
Markus Ongyerth
3016133f91
idle-inhibit: feedback pass
7 years ago
Drew DeVault
1d9be89e2d
Revert "ELF Visibility"
7 years ago
Drew DeVault
09cfa39392
Merge pull request #632 from acrisci/output-layout-adjacent
...
add wlr_output_layout_adjacent_output
7 years ago
Scott Anderson
f27c0b44b8
Remove usec_to_msec from public API
7 years ago
Tony Crisci
9a8808f8cf
move direction to wlr_output_layout.h
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
...
This adds the types/wlr_idle_inhibit_v1 implementation.
7 years ago
emersion
717bdccb6e
Merge remote-tracking branch 'upstream/master' into martinetd/xdg_shell
7 years ago
Tony Crisci
85871cb666
add wlr_output_layout_adjacent_output
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
...
This ensures we're not incorrectly casting a resource.
Fixes #628
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
5a8f098eea
output, output_damage: add docs
7 years ago
emersion
ec837e3c9e
Introduce wlr_output_damage
7 years ago
emersion
bf6d245400
Swap buffers with damage
7 years ago
emersion
faa57341ca
output: replace raw GL calls by wlr_renderer_* calls
7 years ago
emersion
ddb1779f9f
render: make wlr_renderer_clear take a float[4] for the color
7 years ago
emersion
3d3ea32137
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Drew DeVault
39d5e78d37
Fix typo in xcursor.h
7 years ago
Drew DeVault
8cf622f074
Improve xcursor docs
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
704130cc11
output: fix performance issues with wlr_output_schedule_frame
7 years ago
emersion
2a855e6282
rootston: fix urxvt damage on HiDPI outputs
...
util/region: add wlr_region_expand
7 years ago
emersion
d498855b9d
backend/drm: fix hw cursor position on rotated and scaled outputs
...
output: add wlr_output_transformed_resolution
7 years ago
emersion
d0961a02af
render: add wlr_renderer_scissor docs
7 years ago
emersion
51c22d39a4
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Tony Crisci
ed5b1fdedd
Merge pull request #580 from emersion/screenshooter-renderer-backport
...
Backport screenshooter fixes from the renderer redesign v1
7 years ago
emersion
7111dd79ef
rootston: damage tracking for rotated views
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
a98ece68d3
util: add docs for wlr_region_scale
7 years ago
emersion
4223fbc763
rootston: damage tracking scale support
7 years ago
emersion
6281deb90f
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
emersion
7a2e9a17ba
Merge pull request #579 from Ongy/dpms_decouple
...
decouples outputenable state and wl_output global
7 years ago
Markus Ongyerth
f946c10cb1
re-adds wlr_output_update_enabled
...
Re-add the wlr_output_update_enabled to make sure
wlr_output::events.enable is called when the output enabled state
changes.
7 years ago
emersion
4fa90b0511
Backport screenshooter fixes from the renderer redesign v1
...
This backports some changes to #319 to fix the screenshooter data
format. This also adds wlr_backend_get_renderer which will be
useful to support multiple renderers.
7 years ago
Markus Ongyerth
3cf7225cec
decouples outputenable state and wl_output global
...
This decouples wlr_output_enable and the wl_global.
The previously internal functions wlr_output_(destroy/create)_global are
exposed and used automatically in the wlr_output_layout to create/tear
down the global.
The compositor can handle them itself if it wants to, but I think this
is the right moment to create/destroy the wl_output when the
wlr_output_layout is used.
7 years ago
emersion
4d282c8590
rootston: damage tracking for drag icons
7 years ago
emersion
415a2b7c56
render: add wlr_renderer_clear and wlr_renderer_scissor
7 years ago
emersion
3f1c4f5be7
rootston: damage tracking for wl_shell
7 years ago
Tony Crisci
85a6939cf2
rename matrix model box to project box
7 years ago
emersion
59c53e8333
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Tony Crisci
d13114520a
move matrix model code to matrix.h
7 years ago