Guido Günther
eb4337b5ee
Wire up linux_dmabuf in rootston
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
emersion
dd8a7a29e1
rootston: don't center view if maximized
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
e74ddaaf10
xdg-shell-v6: redesign the configure/ack_configure workflow
7 years ago
emersion
125138f1a0
rootston: unmap view after emitting destroy signal in view_destroy
7 years ago
emersion
c1c88bfe5d
rootston: destroy seat view on unmap
7 years ago
emersion
42637a52cf
rootston: don't segfault when getting size of an unmapped xdg-shell view
7 years ago
emersion
6ac3534df6
rootston: add destroy to view interface
7 years ago
emersion
1f8854f217
rootston: remove xdg-shell-v6 map/unmap listeners on destroy
7 years ago
emersion
9d6e17fb11
rootston: fix segfault in handle_tablet_tool_destroy
7 years ago
emersion
3f072bedd9
xdg-shell-v6: add map signal
7 years ago
Cedric Sodhi
ebdabc2030
Make X11 fully optional
...
Make X11 Backend (in addition to XWayland) optional and small bug fix on XWayland includes.
7 years ago
emersion
c27fd1e1ee
rootston: add view_map and view_unmap
7 years ago
Markus Ongyerth
14bb550bff
set alpha to 1.0 for drag icons
7 years ago
Markus Ongyerth
333110515e
set fullscreen alpha to 1
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
202a728ee9
rootstion: handle alpha in server side decorations
7 years ago
Guido Günther
9864f1c136
rootston: wire up window alpha keybinding
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
emersion
69409ea3cb
Merge pull request #654 from emersion/send-frame-done
...
rootston: send frame done events unconditionally
7 years ago
emersion
ca3a947864
rootston: fix user-after-free in output_handle_destroy
7 years ago
emersion
5dba27216c
rootston: fix use-after-free in handle_keyboard_destroy
7 years ago
emersion
00e647e161
rootston: fix sending frame done to undefined view
7 years ago
emersion
dc77b4c8c6
rootston: don't send frame done if wlr_output manages the surface
7 years ago
emersion
6f8eca2b3a
rootston: send frame done events unconditionally
7 years ago
Markus Ongyerth
50d573b2ca
implements the idle_inhibit protocol type
...
This adds the types/wlr_idle_inhibit_v1 implementation.
7 years ago
Dominique Martinet
7d26a6debd
xdg-shell stable: copy-pasta implementation
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
ec837e3c9e
Introduce wlr_output_damage
7 years ago
Dominique Martinet
5aee2afc7b
rootston: allow scale < 1 as well
...
Since we support fractional scale, having scale=0.5 can make sense
(and, as far as I can tell, works fine)
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
84234b4311
Merge branch 'master' into cancel-grab
7 years ago
Drew DeVault
78dc0c7de1
Merge pull request #611 from DonOregano/fix-resize-freeze
...
Make pointer button release outside window still count down the button_count
7 years ago
Vincent Vanlaer
712665b83b
Fix style error
7 years ago
Vincent Vanlaer
099c80e7d6
Fix jitter when quickly resizing windows
...
Surfaces and views get resized only on commit, therefore we may only
change the position of a window if there are no pending commits.
7 years ago
Lars Hagström
b181f793c3
Make pointer button release outside window still count down the button_count.
...
When double-clicking a maximized window title, so that the windows size is restored and the mouse pointer ends up _outside_ the window it becomes impossible to move windows.
The reason is that the button_count variable is not counted down if the mouse button is released outside the window, so the button_count remains incremented even after the button is released.
This patch adds a call to wlr_seat_pointer_notify_button if the mouse button is released outside the window.
(I am a complete noob to wlroots, so be kind...)
7 years ago
Vincent Vanlaer
90eb50d9aa
Merge roots_seat_cancel_* into one function
7 years ago
Vincent Vanlaer
147e5c0f8f
Refactor roots_cursor_press_button
...
Removed the button_count check when resizing/moving/rotating ends,
since all buttons presses are now properly tracked.
7 years ago
Vincent Vanlaer
6567a35903
Update seat pointer on meta move/resize/rotate
...
This will send the button pressed event to the client. This shouldn't
be a problem since sebsequent pointer movements are not sent to the
client. Thus the client will not for example start selecting text when
it is being resized using the compositor keybindigns.
7 years ago
Vincent Vanlaer
7ae8800a63
Cancel rootston move/resize/rotate on escape press
7 years ago
Vincent Vanlaer
7e3bb39d49
Always notify seat on button press
...
When the cursor is not over a view, wlr_seat_pointer_notify_button is
not called. However, this function does the bookkeeping of the pointer
state with regards to the number of pressed buttons. Because this
function also sends updates to the focused view, it has been moved
down, after the focus has been updated.
7 years ago
Fabian Geiselhart
ee6cbe2efd
Comments should talk about colons not semicolons
7 years ago
emersion
1cea73d2d8
rootston: fix rotated views damage tracking
7 years ago
emersion
1842487d61
rootston: fix crash when closing a fullscreened xwayland view
7 years ago
emersion
6ba36cc52f
rootston: do not rely on current view size when accumulating damage
7 years ago
emersion
ddb1779f9f
render: make wlr_renderer_clear take a float[4] for the color
7 years ago
emersion
402587ed65
rootston: use output renderer
7 years ago
emersion
5aa642485d
rootston: do not render views fullscreened on other outputs
7 years ago
emersion
4d6e7f510e
rootston: fix artifacts when leaving fullscreen in a rotated view
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
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
4cc58288cb
rootston: fix damage when changing views z-index
7 years ago
emersion
20e6861021
Do not flush damage if swapping buffers failed
...
This should solve issues with multiple outputs on DRM backend.
7 years ago
emersion
be888df4c3
rootston: fix build without xwayland
7 years ago
emersion
1ee61dbd0f
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Patrick Steinhardt
d05143950b
rootston: move together XWayland setup code
...
The XWayland code for creating the cursor as well as creating the
surface itself are currently split up into two ifdef'ed sections in
`desktop_create()`. Move together these two sections in order to avoid
having multiple ifdefs as well as making it clearer that they do in fact
serve the same purpose of setting up the XWayland environment.
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
692d33bf8b
rootston: fix clipped SSD for rotated views
7 years ago
emersion
63736be214
rootston: fix damage tracking for SSD
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
8d58ed502b
output: add wlr_output_schedule_frame
7 years ago
emersion
ece2c1e4e2
Damage tracking for transformed outputs
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
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
Tony Crisci
a4d601e3d6
decorations: respect motif hints
7 years ago
Tony Crisci
fc627afd18
fix decorations on wayland backend
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
Tony Crisci
e8c407d00e
rename wlr_deco_part to roots_deco_part
7 years ago
Tony Crisci
54776dd19c
fix cursor issue
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
emersion
f704c3d42b
rootston: fix damage tracking for fullscreen xwayland views
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
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
bc001e90e9
rootston: fix artifacts when un-maximizing a view
7 years ago
emersion
d6c74d8a16
rooston: restrict damage to output extents
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
7f9f918b78
rootston: damage output on mode change
7 years ago
emersion
977a401fa1
rootston: damage tracking for fullscreen views
7 years ago
emersion
59ba8f35ed
rootston: use surface damage
7 years ago
emersion
3ba447a8f9
rootston: fix damage test
7 years ago
emersion
bed7522108
rootston: fix segfault when destroying unmapped xwayland view
...
This happens when closing chromium for instance.
7 years ago
emersion
bde255933e
output: add wlr_output::damage, fixes #572
7 years ago
emersion
baa17ec755
rootston: damage whole output when created
7 years ago
emersion
8b3f3ddb7f
rootston: fix double-buffering artifacts
7 years ago
emersion
7c11d3e372
rootston: fix repaint timer for outputs with refresh rate
7 years ago
emersion
96d6f34edd
rootston: replace view_damage with view_apply_damage and view_damage_whole
7 years ago
emersion
7f5a538cb7
rootston: fix segfault when rendering surface outside output
7 years ago
emersion
5017d7f762
rootston: only draw damaged regions
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
emersion
6e9c652fc4
rootston: hide cursor if seat has no pointer
7 years ago
Tony Crisci
61bd79200c
basic decorations
7 years ago
emersion
7f56ccd713
rootston: set real seat capabilities
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
Drew DeVault
66d4d2928f
Remove unnecessary wlr_backend_destroy
7 years ago
Heghedus Razvan
440cf7112d
Include idle protocol in rootston
...
Signed-off-by: Heghedus Razvan <heghedus.razvan@gmail.com>
7 years ago
emersion
e56b82e896
rootston: add toggle_outputs command
7 years ago
emersion
77fc0505e6
rootston: do not attempt to render disabled outputs
7 years ago
Tony Crisci
b40a5f084a
keyboard grab enter with modifiers
7 years ago
Tony Crisci
0ef2df21f2
compositor modifier hook
7 years ago
emersion
be3a7b0017
Disable outputs in rootston config
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
Calvin Lee
5a26ed645a
Allow configurable verbosity
7 years ago
emersion
1fe1d64042
Fix views outside output layout
7 years ago
Dominique Martinet
a477e5d302
roots_seat_destroy: also destroy seat in public function
...
Rework the functions a bit so that the handler does the bulk of the work
except for destroying the seat itself, and the main public function
just explicitely calls the handler and destroys the seat
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
Björn Esser
ff13849624
config: Avoid clash with other config-headers
7 years ago
Tony Crisci
815d71a3aa
validate grab serial for shell events
7 years ago
Tony Crisci
069f120b70
rootston: remove input event ring buffer
7 years ago
emersion
a79dc7df51
Merge pull request #524 from acrisci/role-committed
...
[wip] Role committed
7 years ago
Tony Crisci
68328700c7
wl-shell: role committed
7 years ago
Tony Crisci
d5ffa26564
xdg-shell: role-committed func
7 years ago
Tony Crisci
cbd76cb46f
Merge pull request #521 from acrisci/nop-command
...
add nop command
7 years ago
Björn Esser
57a09c8ca4
config: Put all defines into config.h
7 years ago
Tony Crisci
ebf27f2027
add nop command
7 years ago
Dominique Martinet
e85c2827c8
rootston: add arbitrary libinput config 'tap_enabled'
...
This ought to be enough to serve as an example for other compositors to
use.
7 years ago
Drew DeVault
eb410e0b6e
Merge pull request #508 from emersion/fix-rootston-seat-button-count
...
Fix rootston seat button count
7 years ago
emersion
a95d09d561
Add missing gtk-primary-selection interfaces
7 years ago
emersion
9e2d936b4a
Fix rootston seat button count
7 years ago
Tony Crisci
9871cde604
rootston: server backend check
7 years ago
Tony Crisci
ee39dff1e7
rootston: handle backend creation failed
7 years ago
emersion
4a36ba4bdd
Destroy multi backend on display destroy
7 years ago
Tony Crisci
c838679393
fix memory leaks
7 years ago
Drew DeVault
c91523c578
Merge pull request #499 from emersion/unknown-keymap
...
Do not segfault when loading an unknown keymap
7 years ago
emersion
2c31cac116
Do not segfault when loading an unknown keymap
7 years ago
emersion
db73c54f11
rootston: revert to auto backend
7 years ago
Drew DeVault
f3769a4b1f
Merge pull request #496 from emersion/headless-backend
...
Headless backend
7 years ago
Drew DeVault
10c72f4bf6
Merge pull request #487 from emersion/xwm-selection
...
xwm clipboard sync, 2nd edition
7 years ago
emersion
bc5bdb7793
Add headless input devices
7 years ago
emersion
0256de0002
Add full refresh rate support to custom modes
7 years ago
emersion
3970264ccf
Initialize headless backend
7 years ago
emersion
51db087210
Introduce fractional scaling
7 years ago
emersion
6b42bfad18
Merge branch 'master' into xwm-selection
7 years ago
Drew DeVault
23fb663ea4
Merge pull request #453 from emersion/surface-transform
...
Add surface transforms support
7 years ago
emersion
466e86b7b2
Merge branch 'master' into surface-transform
7 years ago
emersion
75ef7860bb
Merge branch 'master' into display-destroy
7 years ago
emersion
6ef0219763
Merge branch 'master' into xwm-selection
7 years ago
emersion
3b4b8953d9
Update output layout when scale or transform changes
7 years ago
emersion
c67a5824b8
Merge branch 'master' into display-destroy
7 years ago
emersion
529675b7b0
Add wlr_output_set_custom_mode
7 years ago
emersion
925497fbea
Set default cursor image in rootston
7 years ago
Tony Crisci
b275d44bc3
rootston xcursor fixes
7 years ago
emersion
a3c0f97810
Make keyboard repeat info configurable
7 years ago
Tony Crisci
35188834db
Merge branch 'master' into feature/xwm-selection
7 years ago
Tony Crisci
4c60072be5
move get_resize_name to xcursor
7 years ago
Tony Crisci
d74ac69f7b
bring edges into wlr
7 years ago
emersion
91d72040e5
Configure outputs with make, model, serial in rootston
...
Added fallbacks in DRM backend in case EDID extension data for model and serial is missing.
Updates #403
7 years ago
emersion
dfe11a2b0e
Add display destroy listener in screenshooter, destroy display in rootston
7 years ago
emersion
bf2b58eb6d
Add wlr_output_set_scale
...
Fixes #465
7 years ago
Tony Crisci
86df909256
xwayland: remove xwayland param from xsurface methods
7 years ago
Drew DeVault
3f70043d00
Merge pull request #458 from acrisci/refactor/wlr-decoration-modes
...
wrap server decoration modes
7 years ago
Tony Crisci
344ca222db
wrap server decoration modes
7 years ago
Tony Crisci
20545b09fa
rootston: use wl-shell surface commit
7 years ago
emersion
eb763439f7
optimize a bit rootston renderer if there's no surface transform
7 years ago
emersion
d1b29a54b9
Refactor: rename matrices in rootston
7 years ago
emersion
acc8f36894
Fix pointer input for transformed surfaces
7 years ago
emersion
f4754ad1a2
Fix surface transforms
7 years ago
Tony Crisci
5d7eb438d9
Merge pull request #437 from emersion/fullscreen
...
Fullscreen support
7 years ago
Tony Crisci
903ba1c9b3
rootston: maximize command
7 years ago
Tony Crisci
fc17c74516
xwayland: clean up seat setting
7 years ago
Tony Crisci
b0683874e9
xwm: send selection data
7 years ago
Tony Crisci
39e2ea8420
xwm: get selection targets
7 years ago