Commit graph

2628 commits

Author SHA1 Message Date
Tony Crisci
446adda1a3 compositor.c: implement cursor motion absolute 2017-09-21 17:51:31 -04:00
Tony Crisci
91323a9b9b compositor.c: add guards for unconfigured surfaces 2017-09-21 14:05:14 -04:00
Tony Crisci
675a71dce7 compositor.c: determine xdg position by window geom 2017-09-21 13:48:46 -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
Drew DeVault
ec1e6fe568 Merge pull request #148 from acrisci/feature/xdg-toplevel-layout-position
compositor.c: xdg-surface layout position
2017-09-19 14:57:38 -04:00
Tony Crisci
b01909ae15 compositor.c: xdg-surface layout position
Add data structures to compositor.c xdg-surface implementation that allows them
to be rendered in the correct position in the layout, spanning outputs if
necessary.
2017-09-19 14:47:28 -04:00
Drew DeVault
9fa822c666 Fix minor typos 2017-09-17 18:29:52 -04:00
Drew DeVault
29539645cc Merge pull request #145 from acrisci/feature/xdg-shell-toplevel
xdg shell toplevel
2017-09-17 09:45:21 -04:00
Tony Crisci
f46befec7c use wl_list_for_each_safe() to unlink client surfaces 2017-09-17 09:42:27 -04:00
Tony Crisci
94d4b9249c xdg-shell-v6 misc cleanup 2017-09-16 20:31:34 -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
49a24225a2 toplevel protocol errors 2017-09-16 18:22:25 -04:00
Tony Crisci
94f4f1878d xdg-surface-v6: implement ping 2017-09-16 12:35:49 -04:00
Tony Crisci
c912de6390 compositor.c: implement xdg-toplevel-v6 request events 2017-09-16 09:23:05 -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
4752b84f4e wlr_xdg_shell_v6.c: fix formatting 2017-09-11 16:26:51 -04:00
Tony Crisci
74e9578889 add surface destroy signal 2017-09-11 13:01:53 -04:00
Drew DeVault
94da69a064 Merge pull request #138 from acrisci/feature/compositor-cursor
compositor example basic cursor and layout
2017-09-11 22:22:59 +09:00
Scott Anderson
1682c0d983 Remove non-blocking flag on modesetting commits
This seems to make hotplugging DisplayPort MST connectors more reliable.
2017-09-10 00:13:39 +12:00
Scott Anderson
6717b78bd6 Retry atomic commit on failure
So we don't lose any previously "good" properties that were set.
2017-09-09 23:10:18 +12:00
Scott Anderson
0aa00da1f3 Check for disappearing DRM connectors
DisplayPort MST connectors will disappear when they're disconnected, so
we need to check for that.
2017-09-09 23:09:51 +12:00
Drew DeVault
f4faa731f0 Merge pull request #143 from Ongy/signal_remove
fixes use after free caused by signal lists
2017-09-08 23:11:36 +09:00
Markus Ongyerth
935b6d871e fixes use after free caused by signal lists
A structs throughout the code use implementation specific free
functions.
When those functions are not used, they simply call free() on their
data, but this leaves around wl_signals linked into listeners.
When those listeners try to remove themself from the list, they write
into the now free memory.

This commit adds calls to remove the signals from those lists, so the
listeners can safely call wl_list_remove
2017-09-08 16:02:26 +02:00
Tony Crisci
31bd8e089b compositor.c: working pointer 2017-09-07 08:13:37 -04:00
Tony Crisci
9d9aaad020 compositor.c: fix formatting 2017-09-07 08:13:37 -04:00
Drew DeVault
c59ccbde51 Merge pull request #137 from emersion/gamma_control
Add gamma_control interface
2017-09-07 10:18:28 +09:00
emersion
7d43d662f5
Fix gamma_size event sent to wrong resource 2017-09-06 22:22:40 +02: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
Drew DeVault
586ae674ae Merge pull request #136 from acrisci/bug/rename-output-layout-create
Rename wlr_output_layout_init()
2017-09-06 08:29:55 +09:00
Drew DeVault
8230a72aad Merge pull request #135 from acrisci/bug/cursor-device-create-destroy
wlr_cursor_device create and destroy
2017-09-06 08:29:40 +09:00
Drew DeVault
f05c83efe8 Merge pull request #134 from acrisci/feature/refactor-device-configuration
pointer.c: refactor device configuration
2017-09-06 08:28:49 +09: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
6c24300d13 wlr_cursor_device create and destroy
Refactor wlr_cursor_device creation and destruction into their own functions.

Properly unsubscribe from signals in the wlr_cursor_device_destroy function.
2017-09-05 17:48:02 -04:00
Tony Crisci
500bcc49c4 move device configuration to config.h 2017-09-05 17:18:37 -04:00
Tony Crisci
0cdd7fac02 pointer.c: refactor device configuration 2017-09-05 08:24:53 -04:00