Commit Graph

215 Commits

Author SHA1 Message Date
emersion e4a8831bf1
Fix GCC build 2017-10-07 19:30:00 +02:00
emersion c9909a45ab
Code style 2017-10-07 19:22:55 +02:00
emersion 63af97800f
Use ImageMagick to write PNG screenshot 2017-10-07 19:12:47 +02:00
emersion a87f016017
Remove cairo dependency, write raw pixels 2017-10-07 19:01:11 +02:00
emersion d4cc82f11a
Call glReadPixels right before swapping buffers 2017-10-07 16:22:03 +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 641d08ce7e Transform hotspot with cursor
Fix #188
2017-10-06 09:07:08 +03:00
Versus Void e88f3887ca Move wlr-example.ini.example to rootston.ini.example and reference it from examples' config parser 2017-10-02 16:17:34 +00:00
Versus Void 84de02986a Add examples/wlr-example.ini.example with option descriptions for examples 2017-10-02 15:17:35 +03:00
Drew DeVault aa8a4f12b7 Fix keyboard handling in examples 2017-10-01 11:35:22 -04:00
Drew DeVault e3af7d508f Remove example compositor 2017-09-28 17:44:14 -04:00
Drew DeVault 906a816abf Fix rootston keyboard, add Xwayland 2017-09-28 08:54:57 -04:00
emersion 4e70d36e61
examples/compositor: fix handle_output_frame 2017-09-28 01:36:23 +02:00
emersion e001e40022
Set view->surface 2017-09-27 15:03:35 +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
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
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
emersion c38d7949ef
Use wl_display_next_serial 2017-09-22 19:26:11 +02:00
Drew DeVault e5e6dab7fd Fix use of serial on motion_request 2017-09-22 11:11:53 -04:00
Drew DeVault 087894ae99 Merge pull request #152 from acrisci/feature/wlr-seat-axis-events
wlr-seat cursor axis events
2017-09-22 10:43:48 -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
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
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
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 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
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 27161a673f xdg-shell new surface and ack configure events 2017-09-15 08:53:08 -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 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
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
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 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
Tony Crisci 6904ed8bd9 bugfix: warp cursor to current position on output add 2017-09-05 07:52:17 -04:00
Tony Crisci 6d26fda57c use monotonic clock time for animations 2017-08-31 23:43:02 -04:00
Tony Crisci 35eee80f9b remove unused outputs list in output-layout.c 2017-08-31 07:47:44 -04:00
Tony Crisci fa3d4ecc84 fix layout hotplugging issue in output-layout.c 2017-08-31 07:47:44 -04:00
Tony Crisci f8e4ba3f5f cleanup output-layout example 2017-08-31 07:47:44 -04:00
Tony Crisci 40bd6bcc43 implement output layout auto configuration 2017-08-31 07:47:44 -04:00
Tony Crisci 368f74e4df Refactor meson build files
Use tabs for indentation and break up function calls over 80 col.
2017-08-30 14:30:47 -04:00
Tony Crisci 6699024b44 handle empty config file 2017-08-29 12:43:33 -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 34f4a7b972 pointer.c: fix formatting 2017-08-29 12:36:39 -04:00
Tony Crisci 1193dd564b config fixes 2017-08-29 12:36:36 -04:00
Drew DeVault 30611894f2 Implement tablet_tool support in pointer example 2017-08-28 22:12:35 -04:00
Tony Crisci 4fbe322fa6 fix memory errors 2017-08-28 11:07:54 -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
Tony Crisci ed126b0881 add touch events 2017-08-27 11:34:25 -04:00
Tony Crisci dc7e32552d config: fix uninitialized variables and accept trailing for geom 2017-08-26 11:53:16 -04:00
Tony Crisci 0a97b68278 implement cursor and device geometry mapping 2017-08-26 08:32:11 -04:00
Tony Crisci d0cf8d0d01 add device configuration 2017-08-26 08:32:11 -04:00
Tony Crisci 699d489f93 add cursor configuration 2017-08-26 08:32:11 -04:00
Tony Crisci b3a43e2261 add configuration file 2017-08-26 08:32:11 -04:00
Tony Crisci 54f87146c3 refactor example config and add ini.c 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 a4810203cc change output layout coords to double type 2017-08-26 08:32:11 -04:00
Tony Crisci e3d47376dc add wlr_cursor basic implementation 2017-08-26 08:32:11 -04:00
Dominique Martinet 1458a95e65 example compositor: loop through xwayland surfaces 2017-08-23 22:03:49 +02:00
Dominique Martinet eb5b9cc6da xwayland: move & split internal header file 2017-08-23 22:03:49 +02:00
Dominique Martinet b2bab1af5c xwayland: split xwm structure out, initial xwm.c 2017-08-23 22:03:49 +02:00
Dominique Martinet 60451521bd start xwayland in example compositor 2017-08-23 22:03:49 +02:00
Dominique Martinet 2948f53721 example compositor: handle keyboard after we're done with init
the libinput backend does wl_display roundtrips, during which there is a
small window where keystrokes can be handled before the rest of the example
compositor is ready.
Setting the callback later ensures we're not called at this point
2017-08-20 14:19:30 +02:00
Dominique Martinet 1ca08dc4cb wlr_compositor: change _init/finish to _create/destroy 2017-08-19 23:17:39 +02:00
Dominique Martinet 4110788159 move wl_compositor into wlroots as wlr_compositor 2017-08-19 21:56:51 +02:00
Dominique Martinet 5885679e33 examples: separate compositor_fini from run
compositor_fini destroys the display, but it is an error to destroy it
before e.g. wlr_seat that references it.
This lets us order destroy calls properly, following first-in-last-out
logic.
2017-08-19 09:31:06 +02:00
Dominique Martinet f24b3df980 wlr renderer/texture: rename init to create when it does alloc 2017-08-19 08:33:31 +02:00
Tony Crisci f03be94309 rename wlr_cursor to wlr_xcursor
This is for the implementation of another type that should be called wlr_cursor.
2017-08-18 19:48:55 -04:00
Tony Crisci e3edb08126 bring output configuration into shared.h 2017-08-18 19:31:16 -04:00
Tony Crisci 769549c652 Refactor example output config
Put all the config parsing into shared.h so it is shared among the examples.
2017-08-18 17:44:10 -04:00
nyorain f2a9098691 Fix wlr_data_device_manager 2017-08-18 19:58:36 +02:00
nyorain 86314caa5b Implement wlr_data_{source,device,device_manager} 2017-08-18 18:56:21 +02:00
Drew DeVault 3138c5ddf0 Clean up wlr_output_layout 2017-08-17 21:06:28 -04:00
Tony Crisci 854a9381ca improve collision detection algorithm 2017-08-17 21:05:13 -04:00
Tony Crisci 59a71f59b9 reconfigure output on resolution change 2017-08-17 21:05:13 -04:00
Tony Crisci e0b409760d fix output resolution callback 2017-08-17 21:05:13 -04:00
Tony Crisci 128f06405b vt change bugfix 2017-08-17 21:05:13 -04:00
Tony Crisci d9ebf0615a add output resolution notify to example shared 2017-08-17 21:05:13 -04:00
Tony Crisci 5a9baf487e add helper methods for intersection 2017-08-17 21:05:13 -04:00
Tony Crisci dfb6a12036 layout-output example: only render if its on the output 2017-08-17 21:05:13 -04:00
Tony Crisci 2e9e237f9d layout-output example: handle empty config 2017-08-17 21:05:13 -04:00
Tony Crisci 44181b57ac Add wlr_output_layout implementation
An output layout consists of a mapping of outputs to their position in a global
coordinate system that usually cooresponds to the output position in physical
space in front of the user.

Add an example that allows configuration of an output layout and demonstrates
its boundaries with a bouncing image.
2017-08-17 21:05:13 -04:00
nyorain edbaa7d6ac Update keyboard modifiers in example compositor 2017-08-17 14:34:31 +02:00