emersion
8a77d1b6a2
Listen to cursor surface commit & destroy events
2017-10-08 23:11:59 +02:00
emersion
9b83caa658
Add wlr_output_set_cursor_surface
2017-10-08 21:21:06 +02:00
emersion
65d57920e5
rootston: handle request_set_cursor
2017-10-08 20:37:47 +02:00
emersion
78d3582b70
Add request_set_cursor event
2017-10-08 20:32:43 +02:00
emersion
7b6d785f52
Rename wlr_surface->signals to events
2017-10-08 19:12:28 +02:00
Drew DeVault
82a6598ca7
Merge pull request #243 from acrisci/feature/input-bounds
...
Use wl_surface input bounds for input handling
2017-10-08 12:52:53 -04:00
Drew DeVault
8dcf3bfdf7
Merge pull request #239 from emersion/center-views
...
Center views in rootston
2017-10-08 12:51:42 -04:00
Tony Crisci
db15ab77b4
use input bounds for pointer events
2017-10-08 12:33:39 -04:00
emersion
518ef46ef2
Activate new views
2017-10-08 18:19:05 +02:00
emersion
3774d6c2c0
Center wl shell views
2017-10-08 17:59:38 +02:00
emersion
3c6f2f29bf
Do not remove the commit listener
2017-10-08 17:28:19 +02:00
Drew DeVault
9e1ff2dce9
Merge pull request #140 from emersion/screenshooter
...
Add screenshooter
2017-10-08 10:06:41 -04:00
emersion
d09d01236b
Center xdg shell views
2017-10-08 12:17:25 +02:00
Scott Anderson
c0e5feea37
Add GL/EGL extension loader generator
2017-10-08 13:23:41 +13:00
emersion
0ce3135304
Move read_pixels from output to renderer
2017-10-08 02:11:56 +02:00
Tony Crisci
4f848000af
Merge branch 'master' into feature/xdg-popup
2017-10-07 13:04:04 -04:00
emersion
a87f016017
Remove cairo dependency, write raw pixels
2017-10-07 19:01:11 +02:00
Tony Crisci
4680943e74
xdg-seat: keyboard grabs
2017-10-07 12:52:02 -04:00
emersion
d4cc82f11a
Call glReadPixels right before swapping buffers
2017-10-07 16:22:03 +02:00
emersion
05096ab458
rootston: create screenshooter interface
2017-10-07 16:22:03 +02:00
emersion
d0db6a80ab
Add post_frame event to wlr_output, use wlr_drm_plane_make_current in wlr_drm_output_read_pixels
2017-10-07 16:22:02 +02:00
emersion
35f9700251
First attempt to implement screenshooter
2017-10-07 16:22:02 +02:00
emersion
1c8b72e0cd
Add screenshooter skeleton
2017-10-07 16:22:02 +02:00
Versus Void
9cab66f0f9
Make xwayland compile-time optional
2017-10-06 21:50:25 +00:00
Versus Void
decd87043f
Add config option to disable Xwayland
2017-10-06 21:48:50 +00:00
Drew DeVault
08ccc7f653
Merge pull request #221 from versusvoid/wayland-xkb_state_update_mask
...
Use xkb_state_update_mask() with Wayland backend
2017-10-06 15:16:10 -04:00
Versus Void
568b270cdf
Use xkb_state_update_mask() with Wayland backend
...
Fix #158
2017-10-06 22:02:29 +00:00
emersion
69aff9b35e
Implement wlr_xdg_toplevel_v6_send_close
2017-10-06 16:03:35 +02:00
emersion
972e9dbd1b
Add close command, add close for xwayland
2017-10-06 16:03:35 +02:00
Tony Crisci
67ea307753
xdg-shell: cleanup
2017-10-06 07:52:18 -04:00
Tony Crisci
48ae4fc588
rootston: handle grab end
2017-10-06 07:32:59 -04:00
Tony Crisci
4657f10dd2
Merge branch 'master' into feature/xdg-popup
2017-10-06 07:04:27 -04:00
Tony Crisci
d3ebf99b0f
xdg-popup: basic pointer grab
2017-10-06 06:54:43 -04:00
Versus Void
641d08ce7e
Transform hotspot with cursor
...
Fix #188
2017-10-06 09:07:08 +03:00
Drew DeVault
b2d478a418
Merge pull request #189 from emersion/xwayland-hints
...
xwayland: add support for window hints
2017-10-05 16:27:30 -04:00
emersion
12b9b1a4bd
Copy xcb_icccm structs into wlroots
2017-10-05 22:23:37 +02:00
Tony Crisci
17b134e178
wlr-seat: pointer grab interface
2017-10-05 13:30:46 -04:00
Drew DeVault
d74a6d254f
Merge pull request #198 from emersion/rootston-move-resize-rotate
...
rootston: force move, resize and rotate
2017-10-05 13:12:29 -04:00
emersion
454a6a902b
Parse _MOTIF_HINTS
2017-10-05 19:11:28 +02:00
emersion
fc61e82795
Use pointers for xwayland hints and size_hints
2017-10-05 19:11:28 +02:00
emersion
267f24753f
Add support for WM_HINTS
2017-10-05 19:10:24 +02:00
emersion
ca68ef37f0
Add padding if xcb_icccm is not available
2017-10-05 19:10:24 +02:00
emersion
ed9796ec68
xwayland: parse normal hints
2017-10-05 19:10:23 +02:00
emersion
ef5914bdb6
xwayland: add wlr_xwayland_surface->motif_hints
2017-10-05 19:10:23 +02:00
Versus Void
c5df6ca900
Fix memory leaks
2017-10-05 20:01:56 +00:00
Tony Crisci
30eabf38b8
Merge branch 'master' into feature/xdg-popup
2017-10-03 18:58:38 -04:00
emersion
f9dbc1841d
rootston: add meta-key to config file
2017-10-03 22:14:25 +02:00
Versus Void
606311c755
Reset buffer resource pointer on destroy signal
2017-10-03 19:57:54 +00:00
emersion
9b88f25208
rootston: rotate views!
2017-10-03 21:06:32 +02:00
emersion
521e893528
Add modifiers signal, remove wlr_keyboard_update_modifiers
2017-10-03 14:03:26 +02:00
emersion
d3d9aca40c
Add modifiers support in wayland backend, parse modifiers in rootston config
2017-10-03 08:46:11 +02:00
emersion
3a8fdebaaa
Fix modifiers handling, add wlr_keyboard_get_modifiers
2017-10-03 08:46:11 +02:00
emersion
2fccff16eb
Begin modifiers support
2017-10-03 08:46:11 +02:00
emersion
238ded1578
Use a command string rather than an action enum
2017-10-03 08:46:10 +02:00
emersion
97d0fe8976
Parse bindings in config, execute bindings
2017-10-03 08:46:10 +02:00
emersion
d32018f1ac
Use keysyms instead of keycodes
2017-10-03 08:46:10 +02:00
emersion
ab6c1f88e6
Add keyboard state to rootston
2017-10-03 08:46:09 +02:00
Tony Crisci
e003296c23
xdg-popup: render popups in the right place
2017-10-02 19:10:36 -04:00
Tony Crisci
97cdcccaf0
xdg-surface: get popup
2017-10-02 19:10:36 -04:00
Drew DeVault
87a0cb7ba3
Merge pull request #182 from ascent12/drm-multi-gpu
...
DRM Multi-GPU
2017-10-02 08:46:06 -04:00
Scott Anderson
f193623ca1
Change iface prefix to suffix
2017-10-02 21:44:33 +13:00
Drew DeVault
f2ea691b93
Add basic drawing tablet support to rootston
2017-10-01 11:21:55 -04:00
Scott Anderson
f6f9c40965
Minor fixes
2017-10-01 22:44:24 +13:00
Scott Anderson
009c3747a8
Multi-GPU DRM
2017-10-01 22:29:25 +13:00
Scott Anderson
fa3d0ed929
Change wlr_session to open every GPU
2017-10-01 16:47:05 +13:00
Scott Anderson
eaef028976
Add renderer pointer inside drm_surface
2017-10-01 15:55:25 +13:00
Tony Crisci
8f41c497a7
Merge branch 'master' into feature/subcompositor
2017-09-30 13:29:31 -04:00
Tony Crisci
8b7ae61ad4
subsurface handle parent destroy
2017-09-30 13:24:59 -04:00
Tony Crisci
4c1bd9bde8
input events for subsurfaces
2017-09-30 12:59:45 -04:00
emersion
7f5d0624d6
Add x, y, width, height arguments to wlr_xwayland_surface_configure
2017-09-30 16:33:04 +02:00
Tony Crisci
19e30aab9b
subcompositor protocol errors
2017-09-30 08:55:40 -04:00
Tony Crisci
93f79378f7
subsurface stacking requests
2017-09-30 08:55:40 -04:00
Tony Crisci
86bc4840a0
subsurface commit and render
2017-09-30 08:55:40 -04:00
Tony Crisci
cb2d05e83b
subsurface sync and position
2017-09-30 08:55:40 -04:00
Tony Crisci
7f39578824
cleanup wlr_surface.[ch]
2017-09-30 08:55:40 -04:00
Tony Crisci
68eeebc647
subsurface implementation stubs
2017-09-30 08:55:40 -04:00
emersion
74f2d0cd63
Completely fix resize offset
2017-09-30 14:02:09 +02:00
emersion
77d28183b5
Partially fix resize offset
2017-09-30 13:54:51 +02:00
emersion
28d4b475dc
Add edges support, remove get_input_bounds
2017-09-30 13:22:42 +02:00
Scott Anderson
4101b89700
Rename wlr_drm_output to wlr_drm_connector
2017-09-30 23:31:08 +13:00
emersion
33a97576ca
Add view_resize
2017-09-30 11:57:39 +02:00
Scott Anderson
22e77d9195
Rename backend to drm
2017-09-30 22:22:26 +13:00
Scott Anderson
ec5b95e08f
Add pointer to backend from DRM outputs
2017-09-30 22:01:59 +13:00
emersion
97679b8e12
React to xdg shell resize requests
2017-09-30 10:39:06 +02:00
Scott Anderson
096249a2a1
Split DRM rendering to its own file
2017-09-30 20:52:58 +13:00
Scott Anderson
d0708b1a3a
Split DRM internal interface to its own header
2017-09-30 19:11:41 +13:00
Scott Anderson
610b0493ac
Rename files to remove pointless drm prefix
2017-09-30 19:03:34 +13:00
Scott Anderson
c8a8ff66f2
Removed unused fields
2017-09-30 18:53:05 +13:00
Drew DeVault
a48dedba3d
Merge pull request #170 from emersion/xwayland
...
Improve xwayland, batch 2
2017-09-29 17:25:58 -04:00
emersion
4ccb83bf33
xwayland: add wlr_xwayland_surface_close
2017-09-29 23:18:12 +02:00
emersion
5002d968f3
xwayland: add window_type support
2017-09-29 23:03:01 +02:00
emersion
b78ae54158
xwayland: add pid support
2017-09-29 22:43:14 +02:00
emersion
97346e7a1b
xwayland: add state support
2017-09-29 22:26:03 +02:00
emersion
7c9f3240f6
xwayland: add set_parent event
2017-09-29 20:22:35 +02:00
emersion
d8c86431e0
xwayland: add signals for configure, set_{class,title}
2017-09-29 18:28:38 +02:00
emersion
f2b03b2ec1
Add reply->type checks, add XCB_ATOM_WM_TRANSIENT_FOR
2017-09-29 16:44:22 +02:00
emersion
47d767dbc4
xwayland: expose wlr_xwayland_surface_configure
2017-09-29 16:19:06 +02:00
emersion
e3917af69d
xwayland: read window title & class
2017-09-29 15:57:21 +02:00
Scott Anderson
1b18b0a27d
Fix time and transform
2017-09-29 16:31:04 +13:00
Scott Anderson
6bf508df81
Add closing with WM button
2017-09-29 16:15:09 +13:00
Scott Anderson
8027232ae5
Add timer for rendering loop
2017-09-29 16:15:09 +13:00
Scott Anderson
9ca5b0cae8
Add basic input
2017-09-29 16:15:09 +13:00
Scott Anderson
3a5b150df2
Basic rendering
2017-09-29 16:15:09 +13:00
Scott Anderson
bbe90d41bb
Add EGL for X11
2017-09-29 16:15:09 +13:00
Scott Anderson
517ba0bc16
Change egl_get_config to always use visual id
2017-09-29 16:15:09 +13:00
Scott Anderson
7ad2a57feb
Open X11 Window
2017-09-29 16:12:13 +13:00
Scott Anderson
a598e6d026
Add X11 backend skeleton
2017-09-29 16:12:13 +13:00
Drew DeVault
ada7fde6fb
DRY up focus and implement z ordering
2017-09-28 19:48:55 -04:00
Drew DeVault
10240af6ea
Handle input device removal
2017-09-28 19:05:38 -04:00
emersion
b7927078e9
x11 -> xwayland, window -> surface, fix some calloc sizes and wrong types
2017-09-28 23:26:31 +02:00
Drew DeVault
c92199a953
Merge pull request #163 from emersion/wl_shell-fixes
...
wl_shell fixes
2017-09-28 13:29:49 -04:00
Drew DeVault
220a6e9bf6
Add xwayland activate and fix EGL bug
2017-09-28 09:11:16 -04:00
Drew DeVault
906a816abf
Fix rootston keyboard, add Xwayland
2017-09-28 08:54:57 -04:00
emersion
9d405cffa7
Use enums instead of uint32_t where applicable
2017-09-28 13:12:01 +02:00
emersion
3d03ef2d02
role -> state
2017-09-28 12:45:47 +02:00
emersion
27ca8eaced
Fix typo: s/transcient/transient/
2017-09-28 12:38:41 +02:00
Drew DeVault
7cf4ee128e
Merge remote-tracking branch 'origin/master' into rootston
2017-09-27 20:25:34 -04:00
emersion
a04462ba8b
wl_shell: listen for wlr_surface destroy signal
2017-09-28 01:31:31 +02:00
emersion
63f277f3b9
rootston: handle request_move
2017-09-28 00:29:37 +02:00
emersion
d6c6b7c506
class_ -> class, free more stuff in destroy_shell_surface
2017-09-27 23:47:39 +02:00
emersion
241fec4d87
wl_shell: add wlr_wl_shell_surface_{configure,popup_done}
2017-09-27 23:45:09 +02:00
emersion
14ab56b6c5
wl_shell: implement set_popup request
2017-09-27 23:10:33 +02:00
emersion
663bfe4cd8
wlr_wl_shell: implement all requests except set_popup
2017-09-27 21:15:31 +02:00
emersion
e001e40022
Set view->surface
2017-09-27 15:03:35 +02:00
emersion
acf58e04de
Fix segfault, add wl_shell view
2017-09-27 14:48:53 +02:00
Drew DeVault
d7d73cd298
Merge pull request #144 from ascent12/drm-dp-mst
...
DisplayPort MST
2017-09-27 07:58:01 -04:00
emersion
ed9a43c213
Add first try to add wl_shell to rootston
2017-09-26 23:59:25 +02:00
Drew DeVault
e6a6634bc5
Minor tweaks to (broken) keyboard support
2017-09-25 08:47:00 -04:00
Drew DeVault
f4387b437f
Merge branch 'master' into rootston
2017-09-25 08:29:51 -04:00
Drew DeVault
61e451ea1b
Move keyboard logic to wlr_{keyboard,seat}
2017-09-24 14:12:56 -04:00
Drew DeVault
b84d59403f
Initial keyboard support in rootston
2017-09-23 18:32:03 -04:00
Drew DeVault
0ca7932c3f
Implement xdg surface request_move
2017-09-23 18:18:19 -04:00
Drew DeVault
eaf6c0ccf4
Implement pointer motion and buttons
2017-09-23 17:48:13 -04:00
Drew DeVault
d89272dbbd
Merge pull request #156 from acrisci/feature/wlr-keyboard-events
...
[wip] wlr-seat-keyboard: keyboard events
2017-09-23 15:00:52 -04:00
Drew DeVault
57c50c78f0
Implement wlr_cursor in rootston
2017-09-23 14:53:15 -04:00
Tony Crisci
84a8f1b42d
add keys array param to seat keyboard enter
2017-09-23 14:41:57 -04:00
Tony Crisci
3895593998
wlr-seat: keyboard layout
2017-09-23 14:09:54 -04:00
Drew DeVault
e81e99d16d
Render XDG shell surfaces
2017-09-23 11:13:18 -04:00
Drew DeVault
7523de7c61
Wire up pointer, start on cursor
2017-09-23 10:36:32 -04:00
Drew DeVault
0699aa62d8
Initial pass on roots_input
2017-09-23 10:13:05 -04:00
emersion
4809b7b3e4
Fix some include guard names in interfaces/
2017-09-23 13:10:10 +02:00
emersion
427bdb5b55
Use more consistent include guard names
2017-09-23 10:26:01 +02:00
Scott Anderson
025b3ee515
Add error recovery for failed page flips
2017-09-23 18:27:14 +12:00
Scott Anderson
459d138fa2
Add timeout to DRM cleanup
...
This prevents a potential infinite loop preventing us from closing
properly.
2017-09-23 16:32:25 +12:00
Drew DeVault
b6d7c3ed8e
Initialize display, backend; add frame handling
2017-09-23 00:30:39 -04:00
Drew DeVault
550748681d
Establish rootston headers & main
2017-09-22 23:30:40 -04:00
Tony Crisci
30b5d76426
wlr-seat: keyboard modifiers
2017-09-22 17:09:47 -04:00
Tony Crisci
cef1f60522
wlr-seat-keyboard: basic events
2017-09-22 16:28:11 -04:00
Drew DeVault
e5e6dab7fd
Fix use of serial on motion_request
2017-09-22 11:11:53 -04:00
Tony Crisci
e38248f34c
wlr-seat: implement cursor axis events
...
Axis events for the cursor are generated with the scroll wheel.
2017-09-22 10:30:09 -04:00
Scott Anderson
8cb49f4d68
Add stdbool.h
2017-09-22 14:17:29 +12:00
Drew DeVault
d558745633
Handle tablet motion in example compositor
2017-09-21 18:51:33 -04:00
Tony Crisci
7a3edf6e62
use double for cursor coordinates
2017-09-21 11:38:04 -04:00
Tony Crisci
8b74450b39
wlr_seat: pointer events
2017-09-20 19:43:49 -04:00
Tony Crisci
aeaa983631
wlr_seat: formatting cleanup
2017-09-19 15:38:06 -04:00
Tony Crisci
5b9373a791
xdg-toplevel-v6 set parent
2017-09-16 20:07:19 -04:00
Tony Crisci
2573c429ee
reset pending geometry on ack configure
2017-09-16 19:32:23 -04:00
Tony Crisci
94f4f1878d
xdg-surface-v6: implement ping
2017-09-16 12:35:49 -04:00
Tony Crisci
0f865c547a
xdg-toplevel-v6: seat events
2017-09-16 08:31:08 -04:00
Tony Crisci
27161a673f
xdg-shell new surface and ack configure events
2017-09-15 08:53:08 -04:00
Tony Crisci
569b147bba
schedule configure request on toplevel first commit
2017-09-15 07:50:13 -04:00
Tony Crisci
a0bdbc92ba
xdg-shell-toplevel configure requests
2017-09-14 16:27:14 -04:00
Tony Crisci
45a3b761a6
xdg-surface-v6: add events
2017-09-14 08:39:57 -04:00
Tony Crisci
50f4275298
implement xdg-toplevel state properties
2017-09-13 09:19:10 -04:00
Tony Crisci
353629b034
xdg-surface geometry
2017-09-13 08:44:32 -04:00
Tony Crisci
2fd5c7999b
set title and app_id
2017-09-13 07:57:16 -04:00
Tony Crisci
9d2dc8447a
use wlr_surface on shell struct and listen to events
2017-09-13 07:57:16 -04:00
Tony Crisci
b2c71287f2
set toplevel role on wlr_surface
2017-09-13 07:57:14 -04:00
Tony Crisci
c5f8f81e58
xdg_surface: handle wlr_surface destroy
2017-09-11 17:24:55 -04:00
Tony Crisci
74e9578889
add surface destroy signal
2017-09-11 13:01:53 -04:00
emersion
6f98b5a337
Add set_gamma and get_gamma_size to wlr_output_impl
2017-09-06 18:53:08 +02:00
emersion
cd125377fc
Add wlr_output_{set_gamma,get_gamma_size}
2017-09-06 17:34:09 +02:00
emersion
1b588e7c1f
Add gamma_control skeleton
2017-09-06 14:48:27 +02:00
Tony Crisci
e733b0e643
Rename wlr_output_layout_init()
...
Rename wlr_output_layout_init() to wlr_output_layout_create() to be consistent
with the rest of the api.
2017-09-05 17:53:29 -04:00
Tony Crisci
57c18c38bb
wlr_cursor: handle layout changes
...
Add the layout `destroy` and `change` events.
When a layout is destroyed, detach is from the wlr_cursor.
When a layout is changed, warp the cursor to the closest layout boundary.
2017-09-05 07:48:28 -04:00
Tony Crisci
d84deb0742
add wlr_output destroy event
2017-08-31 07:47:44 -04:00
Tony Crisci
40bd6bcc43
implement output layout auto configuration
2017-08-31 07:47:44 -04:00
Drew DeVault
6daf9e9ab2
Merge pull request #120 from acrisci/feature/wlr-cursor
...
wlr_cursor
2017-08-29 12:12:18 -05:00
Tony Crisci
b6031d1065
refactor wlr_output_layout_closest_point
2017-08-29 12:36:39 -04:00
Tony Crisci
9b65d0b3f0
refactor and rename wlr_geometry to wlr_box
2017-08-29 12:36:39 -04:00
Tony Crisci
a51b76083e
rename wlr_cursor_init to wlr_cursor_create
2017-08-29 12:36:39 -04:00
Tony Crisci
1fb8bc9340
wlr_cursor.c: fix formatting
2017-08-29 12:36:39 -04:00
Tony Crisci
3449777a8d
wlr_output_layout.c: fix style
2017-08-29 12:36:39 -04:00
Drew DeVault
30611894f2
Implement tablet_tool support in pointer example
2017-08-28 22:12:35 -04:00
Tony Crisci
5c845f14ed
handle input device destroy
2017-08-28 10:29:53 -04:00
Tony Crisci
df0ee7f25f
implement tablet tool devices
2017-08-28 10:23:14 -04:00
Tony Crisci
5e06d61e42
implement touch up and touch down
2017-08-27 17:35:12 -04:00
Dominique Martinet
871646d225
Double-fork for xwayland execution
...
The intermediate fork needs to wait for SIGUSR1 for when Xserver is
ready, or SIGCHLD if the exec didn't work out.
Also change the exit() to _exit() as that is apparently more appropriate
for forks (and waitpid's status was wrong without it for some reason)
Fixes #122 .
2017-08-27 21:41:08 +02:00
Tony Crisci
c914697676
add device to touch events
2017-08-27 11:44:55 -04:00
Tony Crisci
ed126b0881
add touch events
2017-08-27 11:34:25 -04:00
Tony Crisci
ac503a47a7
intersect cursor and device regions
2017-08-26 11:55:24 -04:00
Tony Crisci
0a97b68278
implement cursor and device geometry mapping
2017-08-26 08:32:11 -04:00
Tony Crisci
98f4cdfccb
implement wlr_cursor_map_input_to_output
2017-08-26 08:32:11 -04:00
Tony Crisci
13e895d943
implement wlr_cursor_map_to_output
2017-08-26 08:32:11 -04:00
Tony Crisci
a4810203cc
change output layout coords to double type
2017-08-26 08:32:11 -04:00
Tony Crisci
0cba06dcef
implement wlr_cursor_warp
2017-08-26 08:32:11 -04:00
Tony Crisci
dd68f680e4
handle cursor to output edge cases
2017-08-26 08:32:11 -04:00
Tony Crisci
e3d47376dc
add wlr_cursor basic implementation
2017-08-26 08:32:11 -04:00
Scott Anderson
d16b2977f6
Remove single GPU assumptions from wlr_session
2017-08-26 14:50:16 +12:00
Scott Anderson
fb93628bda
Merge wlr_udev into wlr_session
2017-08-26 14:02:04 +12:00