Commit Graph

424 Commits (15d09b0f9f971792c1a09a5e53640951b8b74aac)

Author SHA1 Message Date
Jim Ramsay d04da7edb7 Log output selection and list of outputs
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2022-10-10 08:28:09 +00:00
Jim Ramsay a2d9afc90f Log signal handler
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2022-10-10 08:28:09 +00:00
Jim Ramsay c74c0e67d9 Log removal of seats and outputs
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2022-10-10 08:28:09 +00:00
Jim Ramsay 7c03f0d6e7 Log the listening address and port
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2022-10-10 08:28:09 +00:00
Andri Yngvason 9e85093a6d keyboard: Prefer lower keycodes
Xwayland can't handle keycodes above 255, so in order to play nice with X11,
we try to use the lowest possible keycode that's applicable for the given
shift level.

Fixes #148
2022-09-14 21:34:22 +00:00
Consolatis 34e95378e1 main: Prevent capture restart if idle
This prevents restarting the capture on dimension change when idle.
Previously the capture was running after the dimensions had changed
which caused starting the capture once a client connects to fail.

Fixes #152
2022-08-23 16:49:45 +00:00
Consolatis f3247ad933 Prevent capture and performance counter when idle
Fixes #80
2022-08-21 16:29:08 +00:00
Andri Yngvason 069d2de873 pointer: Add horizontal scrolling 2022-07-28 20:14:50 +00:00
Andri Yngvason fbf2dee187 main: Fix typo in help text 2022-07-28 20:14:27 +00:00
Andri Yngvason 28963df226 Make enabling of screencopy-dmabuf a runtime option 2022-07-09 17:34:40 +00:00
shironeko 4209a4deb2 main: check data_control exist before using it
fixes #141
2022-07-02 15:19:15 +00:00
Andri Yngvason 5e3c53b8db screencopy: Add pts to dtrace probes 2022-06-26 13:54:59 +00:00
Andri Yngvason 7c75c8919c Use neatvnc logging facilities 2022-06-25 16:14:18 +00:00
Andri Yngvason 43164f799d main: Add options to change log level 2022-06-25 16:03:11 +00:00
Andri Yngvason 099bdb8e17 main: Disallow setting seat name and disabling input 2022-05-30 18:35:04 +00:00
Andri Yngvason d1057f481f main: Extract input related object binding into function
Nesting those in an if-clause exceeded the 80 character limit and looked
bad on my screen.
2022-05-30 18:28:31 +00:00
shironeko c07f4483b2 Disable seat completely when using disable-input 2022-05-30 18:20:18 +00:00
Andri Yngvason 57f31be52e main: Add a placeholder buffer
In theory, this should allow clients to connect when the output is turned off.
2022-04-23 12:06:33 +00:00
Andri Yngvason dfc34bbe9d screencopy: Attach pts to nvnc fbs 2022-04-14 17:08:21 +00:00
Joel Jensen 5ed57b90b4 When remote input is disabled, also disable clipboard management 2022-04-03 21:04:54 +00:00
Andri Yngvason ce183e82e5 Clean up input managers and input backends separately
When inputs are disabled, managers may exist while backends don't.
2022-01-30 13:11:07 +00:00
Consolatis e9e7c1a33f Function without virtual keyboard, mouse protocol
Some compositors have a working screencopy protocol implementation but
are missing virtual keyboard and/or virtual mouse protocols. On those
compositors, don't just outright fail but instead provide a new option
to disable all remote input: --disable-input.

This is useful for using a different system (like a tablet) as
additional screen without the system providing any kind of input.
2022-01-30 13:07:04 +00:00
Andri Yngvason 3b26a43b97 pixels: Remove unused function 2022-01-27 23:16:44 +00:00
Andri Yngvason fba97621e2 main: Exit on failed keyboard initialisation
Fixes #122
2022-01-01 13:58:55 +00:00
Andri Yngvason f614e4aea7 main: Set upper bounds on pointer manager version 2021-12-15 23:29:47 +00:00
Andri Yngvason 87584ef934 screencopy: Set upper bounds on protocol version 2021-12-15 23:24:26 +00:00
Andri Yngvason 85563d59f8 main: Pin wl_output version to 3
Otherwise, things will crash when the compositor adds support for a
newer version.
2021-12-15 23:13:58 +00:00
Andri Yngvason 7581cf0bc4 Correct transform for y-inverted buffers 2021-09-25 00:24:38 +00:00
Andri Yngvason 1a41154b8c Remove left-over #include 2021-09-21 23:14:42 +00:00
Andri Yngvason 0d05b08fb0 Remove damage-refinery
It has been moved into neatvnc
2021-09-20 21:34:40 +00:00
Andri Yngvason 61ebb57696 Let neatvnc handle buffer transforms 2021-09-20 01:03:15 +00:00
Andri Yngvason 87c040c919 Align with nvnc_fb_pool API change 2021-09-05 00:47:34 +00:00
Andri Yngvason 6c3d9bbb9f Use new NeatVNC buffer submission API 2021-09-04 21:04:00 +00:00
Ryan Farley 81192ac74d Support UNIX domain sockets
Makes use of the functionality added in
https://github.com/any1/neatvnc/pull/49 to support UNIX domain sockets
with a command line flag.
2021-04-06 14:19:28 +00:00
Andri Yngvason 2dc16d2e07 Also exit on ECONNRESET 2020-12-31 13:28:15 +00:00
Andri Yngvason e3af211523 keyboard: Show warning when multiple layouts are specified 2020-12-27 19:34:06 +00:00
Andri Yngvason 0178c13627 keyboard: Always use layout index 0
Layout switching isn't supported anyhow. Better not to confuse things.
2020-12-27 19:26:54 +00:00
Andri Yngvason b9142a94ae Add xkb config options 2020-12-26 21:32:06 +00:00
Andri Yngvason d0aa51aa6e keyboard: Pass struct xkb_rule_names to keyboard_init 2020-12-26 21:07:49 +00:00
Andri Yngvason 482ebaf168 keyboard: Match shift levels to keycodes when needed 2020-12-26 17:19:34 +00:00
Andri Yngvason 2957f6f3a2 keyboard: Split keyboard_feed_code() into more functions 2020-12-26 17:19:34 +00:00
Arnavion a9b2d93568 Don't free the front buffer if screencopy fails
It is possible for `screencopy_failed` to be called without
the front buffer ever being set, such as when the output is dpms-off.

Fixes #65
2020-12-19 12:53:33 +00:00
Andri Yngvason d757e6db88 Add handler for raw key events 2020-11-29 20:50:39 +00:00
Andri Yngvason d978d94041 keyboard: Extract function 'keyboard_feed_code()' 2020-11-29 18:58:21 +00:00
NickSica 6a73f293fc Add PAM authentication 2020-11-03 22:18:46 +00:00
Andri Yngvason fa4dc0f169 Limit usage text to 80 characters per line 2020-10-17 18:16:12 +00:00
Flakebi 98d703bfa8 Fix de-neo layout
- Add possibility to specify layout variant with -k <layout>-<variant>
- Add ISO_Level5_Shift and ISO_Level5_Lock to modifier keys
2020-10-17 18:06:12 +00:00
Antonin Décimo 41f30bf7ca Fix use-after-free in error path 2020-10-01 09:57:14 +00:00
Andri Yngvason 4a098e27f9 Don't init data_control if it's not supported by compositor 2020-09-22 20:08:10 +00:00
Andri Yngvason 30295bb715 data-control: Destroy data device on exit 2020-09-22 20:01:11 +00:00
Andri Yngvason 5c30d7752c data-control: Clean up whole receive context in aml_free_fn
This takes care of the case where wayvnc exits before the whole offer
has been processed.
2020-09-22 19:53:05 +00:00
Andri Yngvason 9a2f761a02 data-control: Don't free data-control-manager twice 2020-09-22 19:37:35 +00:00
Andri Yngvason 630e2e67bc data-control: Make offer handling asynchronous 2020-09-22 03:12:46 -06:00
Scott Moreau 3ee9aac35e Add basic clipboard support
Uses wlr-data-control-unstable-v1 protocol to interface with the clipboard
making copy/paste of text to/from host clipboard possible.
2020-09-22 03:11:03 -06:00
Andri Yngvason 8038e65597 Clean up aml on nvnc init failure 2020-08-23 13:25:45 +00:00
Andri Yngvason dcf3b5869c Clean up config on exit 2020-08-23 13:18:47 +00:00
Andri Yngvason 7ef8d0b0ae Exit if enabling auth fails 2020-08-23 13:10:59 +00:00
Andri Yngvason 69d36dd7ef buffer: Fix buffer attribute comparison 2020-07-28 17:32:14 +00:00
Jan Beich 72dd8a159c shm: guard fallback on FreeBSD < 13 as well
../src/shm.c:35:13: warning: unused function 'randname' [-Wunused-function]
static void randname(char *buf)
            ^
2020-07-27 20:04:42 +00:00
Jan Beich 6916780389 buffer: guard gbm.h after 3742dc7144
../src/buffer.c:25:10: fatal error: 'gbm.h' file not found
 #include <gbm.h>
          ^~~~~~~
2020-07-27 19:51:59 +00:00
Andri Yngvason 3742dc7144 Add build option for enabling screencopy-dmabuf 2020-07-26 15:12:14 +00:00
Andri Yngvason ca069ea738 buffer: Add function to get available buffer types 2020-07-26 14:26:58 +00:00
Andri Yngvason f8344fda16 main: Suppress unused variable warnings in release build 2020-07-26 13:47:40 +00:00
Andri Yngvason ef6756d0f4 keyboard: suppress unused variable warnings in release build 2020-07-26 13:47:20 +00:00
Andri Yngvason 8ff47ee559 Add a way to learn the version of wayvnc and its dependencies 2020-07-26 11:49:02 +00:00
Andri Yngvason c53ab3bbf5 Report average damaged area per frame in performance ticker 2020-07-25 22:51:37 +00:00
Andri Yngvason 0be56b2100 Add documentation for performance counters 2020-07-25 22:21:48 +00:00
Andri Yngvason c8ba15c455 Add performance counters 2020-07-25 22:17:13 +00:00
Andri Yngvason 85fca04e27 Resize buffers on modeset 2020-07-19 14:38:35 +00:00
Andri Yngvason 4a5838c180 screencopy: Release front buffer on screencopy_stop() 2020-07-19 14:37:48 +00:00
Andri Yngvason c79eb98e68 output: Add callbacks for change notification 2020-07-19 13:56:10 +00:00
Andri Yngvason f9b3d98f83 pixels: Fix endian macros, take 3 2020-07-18 09:23:42 +00:00
Andri Yngvason bed4b7261e screencopy: Disable linux-dmabuf code path
I need to iron out some kinks before it's made the default
2020-07-17 16:27:46 +00:00
Andri Yngvason 0c86f9cf53 screencopy: Don't delay if time_left == 0 2020-07-17 16:22:17 +00:00
Andri Yngvason ce86f51699 screencopy: Fix pixel format of shm buffers 2020-07-16 18:10:12 +00:00
Andri Yngvason 14768ca6e3 pixels: Add function to convert from wl_shm format to fourcc 2020-07-16 18:09:18 +00:00
Andri Yngvason fbd8020778 pixels: Fix more endienness macros 2020-07-16 17:46:44 +00:00
Jan Beich 1bc095bd75 pixels: detect endianness via compiler defines
../src/pixels.c:24:10: fatal error: 'endian.h' file not found
 #include <endian.h>
          ^~~~~~~~~~
../src/pixels.c:58:6: error: expected value in expression
 #elif
      ^
2020-07-16 14:34:56 +00:00
Andri Yngvason 2cb9f663a0 Align with aml API changes 2020-07-11 21:33:02 +00:00
Andri Yngvason 184ed0a7ef Allow the user to adjust the FPS limit 2020-07-11 20:53:31 +00:00
Andri Yngvason 73ade6b84e Add dtrace probes for rendering and damage checking 2020-07-11 20:53:31 +00:00
Andri Yngvason e5272618ba Destroy wl_registry on exit 2020-07-11 20:53:31 +00:00
Andri Yngvason 0268b52c53 Use native pixel format 2020-07-11 20:53:31 +00:00
Andri Yngvason c0f1036f97 pixels: Add more formats and take into account endianness 2020-07-11 20:53:31 +00:00
Andri Yngvason ef74911298 Exit on mode change intead of crashing 2020-07-11 20:53:31 +00:00
Andri Yngvason 9d2e22b9bd pixels: Add copyright notice 2020-07-11 20:53:31 +00:00
Andri Yngvason 9a9c7c8be6 buffer: Cleanup dmabuf params after use 2020-07-11 20:53:31 +00:00
Andri Yngvason 1406ce1cf8 Clean up damage refinery on exit 2020-07-11 20:53:31 +00:00
Andri Yngvason cd7594320b Clean up gbm device on exit 2020-07-11 20:53:31 +00:00
Andri Yngvason 4c14c11de4 transform-util: Add copyright notice 2020-07-11 20:53:31 +00:00
Andri Yngvason b8df02838e pixman-renderer: Add copyright notice 2020-07-11 20:53:31 +00:00
Andri Yngvason ee3b6d74cf buffer: Add copyright notice 2020-07-11 20:53:31 +00:00
Andri Yngvason 7b6372ef49 damage-refinery: Add copyright notice 2020-07-11 20:53:31 +00:00
Andri Yngvason 843368c993 screencopy: Actually use y-inversion flag 2020-07-11 20:53:31 +00:00
Andri Yngvason 46fdbfb109 screencopy: Set the rate limit to 30 Hz 2020-07-11 20:53:31 +00:00
Andri Yngvason 2b522ee596 Remove frame-capture abstraction 2020-07-11 20:53:31 +00:00
Andri Yngvason b0ec79acf8 Move damage hints into buffer abstraction 2020-07-11 20:53:31 +00:00
Andri Yngvason 0615cd44c6 buffer: Add damage field 2020-07-11 20:53:31 +00:00
Andri Yngvason 0edaded063 Remove dead code 2020-07-11 20:53:30 +00:00
Andri Yngvason 84c57a7333 buffer: Fix pool release/acquire 2020-07-11 20:52:01 +00:00
Andri Yngvason f68bb825e1 buffer: Fix error check and use non-linear 2020-07-11 20:52:01 +00:00
Andri Yngvason 0178dd8a39 screencopy: map dmabuf after it's ready 2020-07-11 20:52:01 +00:00
Andri Yngvason 19eb9af7e5 buffer: Unmap before release/destroy 2020-07-11 20:52:01 +00:00
Andri Yngvason 3fc07f571d screencopy: Use linux-dmabuf if available 2020-07-11 20:52:01 +00:00
Andri Yngvason 70216b5829 main: Add gbm and linux-dmabuf 2020-07-11 20:52:01 +00:00
Andri Yngvason 4a21939b43 buffer: Use create_immed 2020-07-11 20:52:01 +00:00
Andri Yngvason 4fa019d31f buffer: Add DMA-BUFs 2020-07-11 20:52:01 +00:00
Andri Yngvason 9b136c90de buffer: Add specific handling for different buffers 2020-07-11 20:52:01 +00:00
Andri Yngvason 480392e40c buffer: Add buffer type to interface 2020-07-11 20:52:01 +00:00
Andri Yngvason 59cc119d76 main: Refine damage hints 2020-07-11 20:52:01 +00:00
Andri Yngvason fe590f3940 damage-refinery: Use damage hint 2020-07-11 20:52:01 +00:00
Andri Yngvason e398dcc235 damage-refinery: Hash directly instead of copying 2020-07-11 20:52:01 +00:00
Andri Yngvason 439d3997d4 damage-refinery: Use negative stride to handle y-inversion 2020-07-11 20:52:01 +00:00
Andri Yngvason c515a29951 Create hash based damage checker 2020-07-11 20:52:01 +00:00
Andri Yngvason 946ace1760 Fix damage transform 2020-07-11 20:52:01 +00:00
Andri Yngvason 12555bea13 pixman-renderer: Use negative stride for y-inversion 2020-07-11 20:52:01 +00:00
Andri Yngvason 1cafc25655 Transform damage coordinates 2020-07-11 20:52:01 +00:00
Andri Yngvason 6b1dc2e6c3 Add utilities for managing output transforms 2020-07-11 20:52:01 +00:00
Andri Yngvason 507b76dfbd Create pixman renderer 2020-07-11 20:52:01 +00:00
Andri Yngvason 29f1669d55 buffer: Leave pixman out of buffers 2020-07-11 20:52:01 +00:00
Andri Yngvason e65cae43c2 Extract pixel format conversion into own file 2020-07-11 20:52:01 +00:00
Andri Yngvason a6e1ba25ea Render using pixman 2020-07-11 20:52:00 +00:00
Andri Yngvason 4fb472f611 Create a buffer abstraction 2020-07-11 20:52:00 +00:00
Andri Yngvason 0a139a1ac4 Align with aml API changes 2020-07-06 16:46:30 +00:00
Andri Yngvason 4f1bca55c3 Exit when main selected seat/output goes away 2020-06-12 23:15:22 +00:00
Andri Yngvason 041ac60ef6 renderer: Add more error messages 2020-06-10 22:09:22 +00:00
Andri Yngvason ff882b7774 keyboard: Ignore shift level on modifiers 2020-05-26 22:19:48 +00:00
Andri Yngvason ff1223e4f9 keyboard: Fix comparison of signed and unsigned value 2020-05-18 20:38:48 +00:00
Andri Yngvason 9b48290d09 Improve error handling in wayland dispatch 2020-05-10 12:21:10 +00:00
Andri Yngvason 151e916752 renderer: Set GL_PACK_ALIGNMENT to 1
Otherwise row stride will multiple of 4, even for damage data.
2020-05-10 12:21:10 +00:00
Andri Yngvason 0761a5b818 damage: Fix uninitialised value 2020-05-10 12:21:10 +00:00
Andri Yngvason 4f5933c07f dmabuf: Limit rate to 30 FPS 2020-05-03 19:58:50 +00:00
Andri Yngvason f5453ffe1e keyboard: Relax matching criteria on shift level
Clients behave differently when it comes to sending release events for keys,
so it's hard to rely on any one kind of behaviour.
2020-05-01 17:34:22 +00:00
Andri Yngvason 405268fc58 keyboard: Log keyboard symbol lookup errors 2020-05-01 17:19:14 +00:00
Andri Yngvason 6e889211db renderer: Run glFinish() before glReadPixels() 2020-04-26 14:15:57 +00:00
Andri Yngvason 8cc8c198d2 renderer: Run glFinish() after rendering dmabuf frame 2020-04-26 14:14:06 +00:00
Andri Yngvason 06a249897b dmabuf: Show a debug message when frames are held for too long. 2020-04-26 14:14:06 +00:00
Andri Yngvason 04569b01f2 dmabuf: Add dtrace probes 2020-04-26 11:24:29 +00:00
Andri Yngvason 9d6310cb14 dmabuf: Remove rate limiting 2020-04-26 10:39:58 +00:00
Andri Yngvason 6becbacbe5 Align with NeatVNC interface changes 2020-04-12 21:46:48 +00:00
Andri Yngvason 1fc664a014 Remove call to nvnc_set_dimensions() 2020-04-12 16:14:18 +00:00
Andri Yngvason f9deca5c9c shm: Add copyright notice
Putting a proper license on this to appease package maintainers.
2020-04-12 13:08:42 +00:00
Greg V 3f62295214 keyboard: rename keymap_len to keymap_size 2020-04-09 15:39:09 +03:00
Greg V fa49aca45a keyboard: check that write finished writing everything
(Use loop to write until the end)
2020-04-09 15:38:13 +03:00
Greg V ccc582cd58 keyboard: allocate shm with *actually* correct size
strlen returns "the number of characters that precede the terminating NUL".
We do need to send the \0 byte, since xkbcommon on the receiving end
*is* expecting a C string. And e.g. wlroots does strlen+1.
2020-04-09 15:37:18 +03:00
Andri Yngvason 14d62d0029 Fix transformations
This fixes #29
2020-04-09 11:50:48 +00:00
Andri Yngvason 58a181ccbc Redesign update/rendering loop
Every change to the framebuffer is now copied into a single buffer
inside a single callback. This simplifies things a lot, and might even
perform better.
2020-04-07 23:37:31 +00:00
Greg V d610076614 shm: support memfd and SHM_ANON 2020-04-06 02:07:25 +03:00
Greg V 720b127dee keyboard: allocate shm with correct size
This was working on Linux because shm_open there returns a regular file,
but this is required on FreeBSD where shm_open returns a memory-backed fd.
2020-04-06 00:26:22 +03:00
Andri Yngvason be401b5e4a Report error when binding to address fails
This fixes #21
2020-04-04 22:38:23 +00:00
Andri Yngvason 6e521a07a0 Merge frames rather than dropping them when encoder is too slow 2020-04-04 21:03:49 +00:00
Andri Yngvason 238c196e6b Capture a new frame immediately when a client requests a whole frame 2020-04-04 15:01:38 +00:00
Andri Yngvason ee4917f200 Make sure that frames being written to are not in use by the encoder 2020-04-04 13:14:07 +00:00
Andri Yngvason 8ce312e9eb renderer: Add dtrace probes 2020-04-02 00:55:18 +00:00
Andri Yngvason 075680994e screencopy: Add dtrace probes 2020-04-02 00:34:00 +00:00
Andri Yngvason dc7adf8f3b renderer: Use ATTR_INDEX_ constants for glEnableVertex* 2020-03-29 14:05:33 +00:00
Andri Yngvason e85f219aff Make sure damage buffer is properly aligned 2020-03-29 13:09:28 +00:00
Andri Yngvason b14a0b854b Rotate NeatVNC framebuffers rather than allocating new ones 2020-03-28 19:23:03 +00:00
Andri Yngvason 2bb17c8215 Blit the whole frame when a new client connects 2020-03-28 15:20:59 +00:00
Andri Yngvason e7586e8753 Only copy the damaged region from GPU 2020-03-28 15:05:04 +00:00
Andri Yngvason 1ebd9a7647 damage: Respect frame boundaries 2020-03-28 14:34:12 +00:00
Andri Yngvason b6ca7aff8c Join process_frame() and update_vnc() 2020-03-28 14:09:29 +00:00
Andri Yngvason bfbc81bf04 Use GPU damage checker 2020-03-28 13:07:33 +00:00
Andri Yngvason 52c18ffe23 damage: Add asynchronous damage checking 2020-03-28 13:05:59 +00:00
Andri Yngvason 7f5431d922 Move rendering calls into frame-capture 2020-03-28 11:44:40 +00:00
Andri Yngvason c91816f247 Implement damage buffer conversion 2020-03-28 10:59:21 +00:00
Andri Yngvason b0a6b6bd2a renderer: Swap FPOs rather than textures 2020-03-28 10:59:21 +00:00
Andri Yngvason ae90348ece renderer: Save previous rendered frame rather than previous imported frame
We can't keep dmabufs very long.
2020-03-26 21:43:35 +00:00
Andri Yngvason b5f1ff0898 renderer: Render to texture 2020-03-26 18:49:37 +00:00
Andri Yngvason 7e709c23e9 renderer: Add damage renderer 2020-03-25 23:21:11 +00:00
Andri Yngvason 6536cbd56f renderer: Add damage shaders 2020-03-25 23:21:11 +00:00
Andri Yngvason 557f0f365b renderer: Set up texture bindings on render() 2020-03-25 21:27:57 +00:00
Andri Yngvason a8fd0d6765 renderer: Show error when linking shaders fails 2020-03-25 21:07:36 +00:00
Andri Yngvason 996729f9bb renderer: Show error message when shader compilation failse 2020-03-25 20:44:54 +00:00
Andri Yngvason 13216fa507 renderer: Add u_tex1 to shaders 2020-03-25 20:26:15 +00:00
Andri Yngvason 49c584f80d renderer: Move shader setup into render() 2020-03-24 22:57:02 +00:00
Andri Yngvason 4da96d0dc1 renderer: Split buffer import and rendering 2020-03-24 22:48:13 +00:00
Andri Yngvason 9d058c85ce Renderer: Keep last texture 2020-03-24 22:07:49 +00:00
Andri Yngvason b39e7535ee renderer: Use FBO instead of pbuffer
This is in preperation for damage checking on the GPU
2020-03-24 19:17:23 +00:00
Andri Yngvason a12ce12ba6 Exit when compositor goes away 2020-03-22 20:29:13 +00:00
Andri Yngvason 26cef852b6 Replace libuv with aml 2020-03-21 16:46:10 +00:00
Andri Yngvason 7ea17d04aa Apply output transformation to pointer coordinates 2020-03-07 14:19:02 +00:00
Andri Yngvason e8279e57f5 Apply output transform to damage hint coordinates 2020-03-07 14:15:09 +00:00
Andri Yngvason 8ff7128714 output: Add coordinate transformations 2020-03-07 14:13:59 +00:00
Andri Yngvason 433ee722ec render: Implement rest of transforms 2020-03-07 12:16:01 +00:00
Andri Yngvason c32993d87d Use transformed geometry for frame buffers 2020-03-05 22:05:14 +00:00
Andri Yngvason 9642e086d8 render: Set glViewport based on output transform 2020-03-05 22:05:14 +00:00
Andri Yngvason e01f75bfbd output: Add functions to get transformed geometry 2020-03-05 22:05:14 +00:00
Andri Yngvason 35ffc2dac7 output: Add transform 2020-03-05 22:05:14 +00:00
Andri Yngvason a3d4189a0b render: Add output transforms 2020-03-05 22:05:14 +00:00
Andri Yngvason a327a2f6dd render: Add 2D projections 2020-03-05 18:46:27 +00:00
Andri Yngvason 1bf618a098 render: Fetch uniform locations in one place 2020-03-05 18:20:54 +00:00
Andri Yngvason 6b3b448405 render: Move shader_program into shader struct 2020-03-05 18:14:50 +00:00
Andri Yngvason 1e6c89d9a9 output: Use non-scaled geometry
This fixes #16
2020-03-04 21:40:33 +00:00
Andri Yngvason a70a2b1bc4 pointer: Remove output position from coordinates
This is no longer required as the input is mapped to the output in the
compositor.
2020-02-21 23:28:36 +00:00
Andri Yngvason 10e5c08752 Map input to the selected output 2020-02-21 23:28:33 +00:00
Dan Shick 4ad4c712b2 Fix shader path, meson doesn't include trailing slash in prefix 2020-02-11 18:41:59 -05:00
Andri Yngvason 4d6f477d71
Merge pull request #14 from danshick/cursor_overlay_flag
Added cli flag to change overlay_cursor option, defaulting to false
2020-02-11 23:49:35 +01:00
Dan Shick e53b4dfc9d Add option to enable cursor overlay rendering 2020-02-11 17:45:01 -05:00
Andri Yngvason e5512114f8 render: Only compile the shader that is being used 2020-02-11 21:55:05 +00:00