Commit Graph

937 Commits

Author SHA1 Message Date
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
Drew DeVault b6cf9b14a4 Fix possibly uninitialized variable 2017-09-22 09:36:02 -04:00
Drew DeVault 21f5b92973 Add super+click to move windows around without xdg
Though it still doesn't work for non-XDG windows because we need to
build common window state managemnet within the reference compositor.
2017-09-22 09:34:52 -04:00
Tony Crisci 00cc20b0a8 wlr-seat: add guards for no pointer resource 2017-09-22 09:29:17 -04:00
Drew DeVault 800a1ec679 Use time_usec for event serials
Fixes #151
2017-09-22 09:24:07 -04:00
Drew DeVault 7ae5268679 Implement xdg request_move in reference compositor 2017-09-22 09:19:27 -04:00
Scott Anderson 8cb49f4d68 Add stdbool.h 2017-09-22 14:17:29 +12:00
Drew DeVault f296cc7dba Merge pull request #149 from acrisci/feature/wlr-seat-pointer
wlr-seat pointer events
2017-09-21 19:54:59 -04:00
Drew DeVault d558745633 Handle tablet motion in example compositor 2017-09-21 18:51:33 -04:00
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