Dominique Martinet
2910972b25
xwm.h: fix guard ifdef and remove wlr_ prefix from xwm_atoms_contains
7 years ago
Dominique Martinet
d9a724c4a2
xcb errors: init errors context at start
...
`xcb_errors_context_new` is more than just a malloc, it does a few
xcb requests so we benefit from not generating a new context everytime
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
emersion
1171368cfc
Merge pull request #687 from agx/roots_view.alpha
...
rootston: drop saved.alpha from roots_view
7 years ago
Guido Günther
f97ef3f5d4
rootston: drop saved.alpha from roots_view
...
It's currently unused.
7 years ago
Markus Ongyerth
a65ef8ea86
restore dpms state on drm resume
...
If there is no current mode, set outputs to dpms off in drm resume.
Sets current mode to null on disable to ensure this can be checked.
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
e2ea1ebe48
rootston: Add alpha channel to views
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
Guido Günther
e6ca78b0e4
rootston: add view_create
...
so we can do basic view setup. Will be used to initialize alpha.
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
ca3a947864
rootston: fix user-after-free in output_handle_destroy
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
Drew DeVault
868ad5af69
Merge pull request #647 from ascent12/elf_visibility
...
ELF Visibility
7 years ago
Scott Anderson
86269052eb
Explicitly export EFL symbols
7 years ago
Drew DeVault
566c98846a
Merge pull request #645 from agx/x11-window-title
...
x11 backend: set window title
7 years ago
Guido Günther
15afef6cbc
x11 backend: set window title
...
This makes windows identifiable in the window list
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
Drew DeVault
664d7bfe4e
Merge pull request #618 from VincentVanlaer/atomic-gamma
...
Add atomic gamma control
7 years ago
emersion
bf6d245400
Swap buffers with damage
7 years ago
Vincent Vanlaer
ab011406ad
Add atomic gamma lut size fetching
...
Legacy gamma lut size now uses the new legacy_crtc member of
wlr_drm_crtc. This was Previously doen using old_crtc in
wlr_drm_connector, but since this refers to the crtc that was connected to
the ouput, this could give the wrong result.
7 years ago
Vincent Vanlaer
cc1229e75e
Add atomic gamma setting
7 years ago
emersion
cdd55b5d19
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Vincent Vanlaer
74264d4f62
Rename roots_seat_cancel_transform
7 years ago
Vincent Vanlaer
90eb50d9aa
Merge roots_seat_cancel_* into one function
7 years ago
Vincent Vanlaer
7ae8800a63
Cancel rootston move/resize/rotate on escape press
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
emersion
bb4aeb3b2f
backend/drm: support updating cursor when session is paused
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
a7cba7d83f
rootston: damage whole output when entering/leaving fullscreen
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
1ee61dbd0f
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Patrick Steinhardt
52cb19d99d
rootston: fix compilation without XWayland support
...
In case wlroots is not being compiled with XWayland support, we will not
have an xwayland surface in our roots view. While we make sure to pay
attention to that in some places, we are not being consistent and try to
access the xwayland surface in other places. Obviously, this leads to a
compiler error due to the field not being present.
Fix the issue by sprinkling in a few additional ifdefs where required.
7 years ago
emersion
63736be214
rootston: fix damage tracking for SSD
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
3f96427d08
Merge branch 'output-damage' of github.com:emersion/wlroots into output-damage
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
emersion
2ad7df8680
rootston: damage tracking for drag icons
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
9d87d4e336
take roots_view out of input.h
7 years ago
Tony Crisci
9076ecd91f
take seat.h out of view.h
7 years ago
Tony Crisci
85a6939cf2
rename matrix model box to project box
7 years ago
Tony Crisci
e8c407d00e
rename wlr_deco_part to roots_deco_part
7 years ago
Tony Crisci
4183271475
make it work with rotation
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
Tony Crisci
7474f00591
Merge branch 'master' into decorations
7 years ago
emersion
66ae4071a7
rootston: damage tracking for xdg popups
7 years ago
emersion
d8b36357e4
rootston: add roots_view_child::destroy
7 years ago
emersion
a636d72fc7
rootston: track subsurface damage
7 years ago
emersion
eeffe11337
surface: add wlr_surface new_subsurface and wlr_subsurface destroy events
7 years ago
emersion
c6aab6f56c
Add docs and comments
7 years ago
emersion
0365b587f0
output: add damage tracking via buffer age
7 years ago
emersion
4ca38b84ed
backend/drm: fix hardware cursors not moving
...
This adds back `wlr_output::needs_swap`. This allows a backend to
request buffer swaps even if the output isn't damaged. This is
needed by the DRM backend to trigger pageflips when the cursor
moves.
7 years ago
emersion
e29a0df8c1
output: fix software cursors damage tracking
7 years ago
emersion
b296481007
rootston: remove repaint timer, listen for damage instead
7 years ago
emersion
a0f24b809e
output: add damage event
7 years ago
emersion
7f9f918b78
rootston: damage output on mode change
7 years ago
emersion
443bd4cd89
output: fullscreen surface damage tracking
7 years ago
emersion
bde255933e
output: add wlr_output::damage, fixes #572
7 years ago
emersion
8b3f3ddb7f
rootston: fix double-buffering artifacts
7 years ago
emersion
96d6f34edd
rootston: replace view_damage with view_apply_damage and view_damage_whole
7 years ago
emersion
01bcc2ab01
rootston: damage views when moved
7 years ago
emersion
5089f2d9fb
rootston: do not swap buffers when output isn't damaged
7 years ago
emersion
1a084807ce
rootston: do not redraw if output has no damage
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
Tony Crisci
61bd79200c
basic decorations
7 years ago
Tony Crisci
3751a17321
decorate xwayland views
7 years ago
Tony Crisci
dc701b72fc
abstract box matrix
7 years ago
Drew DeVault
b331c5c2c5
Merge pull request #549 from emersion/output-enabled
...
Add wlr_output::enabled
7 years ago
Tony Crisci
c690420501
Merge pull request #562 from emersion/xwayland-fullscreen-render-children
...
xwayland: render children window in fullscreen
7 years ago
Tony Crisci
e46d2dd0f8
Merge pull request #556 from raazvvann/heghe/idle-protocol
...
Idle protocol
7 years ago
emersion
65b28b3823
xwayland: render children window in fullscreen
7 years ago
Markus Ongyerth
dfae5ff98f
Update comment for wlr_headless_backend_create
7 years ago
Markus Ongyerth
c00e9d1416
adds remote argument to wayland backend create
...
Add a remote display name argument to wlr_wl_backend_create.
If NULL is passed to the wayland backend at all times, creating a
wayland backend *after* the compositor was started up, would require
changing the WAYLAND_DISPLAY environment variable.
7 years ago
Heghedus Razvan
440cf7112d
Include idle protocol in rootston
...
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
7 years ago
Heghedus Razvan
21cc5e6fef
Add idle protocol
...
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
7 years ago
emersion
53ba9b4eec
Fix output enable in DRM backend
7 years ago
Tony Crisci
b40a5f084a
keyboard grab enter with modifiers
7 years ago
emersion
8ebd7d4dbe
output: rename resolution event to mode
7 years ago
Tony Crisci
0ef2df21f2
compositor modifier hook
7 years ago
emersion
be3a7b0017
Disable outputs in rootston config
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
...
Abstract data sources
7 years ago
Drew DeVault
b23bd8ea28
Merge pull request #544 from emersion/fix-views-outside-output-layout
...
Fix views outside output layout
7 years ago
Drew DeVault
d438a877fd
Merge pull request #545 from emersion/fix-output-destroy
...
Free fullscreen surface and cursors when destroying output
7 years ago
Calvin Lee
5a26ed645a
Allow configurable verbosity
7 years ago
emersion
9ac9ba861f
Free fullscreen surface and cursors when destroying output
7 years ago
emersion
1fe1d64042
Fix views outside output layout
7 years ago
emersion
38ed3b4245
seat: rename selection_source to selection_data_source, remove unused data_device
7 years ago
emersion
b20aed66d6
Abstract wlr_primary_selection_source
7 years ago
emersion
f237b5c7a7
Make wlr_data_source abstract.
...
This removes some fields specific to sources coming from clients.
This adds some drag'n'drop-related callbacks.
7 years ago
Dominique Martinet
ec952931a1
wlr_xwayland: preserve end of struct on restart
...
This is more robust than trying to recopy a few fields.
Note: wlr_xwayland->events.ready now resets after each trigger, so one can
hook on it again and be called when restart is ready
7 years ago
Dominique Martinet
689004ff21
rootston seat: implement part of roots_seat_destroy
...
... and have it listen to seat destroy notifier
7 years ago
Dominique Martinet
e0eafa0429
xwayland: listen to wlr_seat destroy signal
7 years ago
Dominique Martinet
58488ec5ce
wlr_seat: add destroy signal
7 years ago
Dominique Martinet
bb0d888f25
xwayland selection: further cleanup on Xwayland exit
...
This is necessary if our last primary/clipboard selection was on Xwayland,
and we try to paste to native wayland after Xwayland died
7 years ago
Drew DeVault
c23bd2ab7a
Further fixes to header install dir
7 years ago
Drew DeVault
9c163b7d38
Merge pull request #531 from acrisci/keyboard-num-keycodes
...
wlr-keyboard: keep track of number of keycodes pressed
7 years ago
Tony Crisci
e8b810ce3e
keep track of number of keycodes pressed
7 years ago
Björn Esser
71e42dae90
libwlroots: Add shared library versioning
7 years ago
Björn Esser
48ecbff691
include: Generate and install version-header
7 years ago
Björn Esser
892f7a5db0
include: Install headers in an isolated include-dir
7 years ago
Björn Esser
ff13849624
config: Avoid clash with other config-headers
7 years ago