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
e00c492a05
Add dtrace probe infrastructure
2020-04-02 00:33:19 +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
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
26cef852b6
Replace libuv with aml
2020-03-21 16:46:10 +00:00
Andri Yngvason
8ff7128714
output: Add coordinate transformations
2020-03-07 14:13:59 +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
e5512114f8
render: Only compile the shader that is being used
2020-02-11 21:55:05 +00:00
Andri Yngvason
e6b1ca8044
keyboard: Assign state to keys rather than symbols
...
The keys are pressed and released, not the symbols. This fixes tracking
of the state of a key through modifier changes. E.g. A capital 'A' may
be received from the client while the shift key is pressed, but if the
shift key is released before the 'a' key, the 'a' symbol is generated.
2020-01-25 13:19:08 +00:00
Andri Yngvason
ec7fee42c5
Create an integer set data structure
2020-01-25 13:17:24 +00:00
Andri Yngvason
a1ee09386a
pointer: Add output position to absolute coordinates
...
This fixes mouse issues when there are multiple outputs
2020-01-24 21:14:29 +00:00
Andri Yngvason
7eaece7c0a
Restructure input initialisation
2020-01-24 20:56:47 +00:00
Andri Yngvason
d0bee5c651
output: Add function to find display by name
2020-01-24 20:18:37 +00:00
Andri Yngvason
df936b9dac
Add xdg_output_v1 for more output info
2020-01-24 20:08:57 +00:00
Andri Yngvason
c1210f1426
Create a simple config loader
2020-01-18 17:58:40 +00:00
Andri Yngvason
9eb851cf92
screencopy: Adjust rate limiting based on capturing delay
2020-01-14 20:40:57 +00:00
Andri Yngvason
38d7b9cf4d
screencopy: Simplify rate limiting
2020-01-14 20:12:58 +00:00
Andri Yngvason
017edc6ae1
Handle seat removal
2020-01-14 19:18:33 +00:00
Andri Yngvason
3735efe3d4
time-util: Add #pragma once and copyright notice
2020-01-14 19:02:02 +00:00
Andri Yngvason
ffce795c6f
dmabuf: Limit frame rate to 20 FPS
2020-01-04 15:05:15 +00:00
Andri Yngvason
a6f979e93a
Add seat selection
2019-12-31 14:01:22 +00:00
Andri Yngvason
2b00400b8a
Add option to select keyboard layout
2019-12-30 10:15:12 +00:00
Andri Yngvason
e82e3a92b5
screencopy: Add rate limiting
...
The smoothing filter allows for short bursts of higher frame rate in
order to reduce latency.
2019-12-29 11:47:33 +00:00
Andri Yngvason
c794ca3822
smooth: Use integers rather than floats to store tme
2019-12-29 10:36:08 +00:00
Andri Yngvason
baad0ecd68
Extract time functions into own module
2019-12-29 10:06:25 +00:00
Andri Yngvason
61657c97ba
Add an exponential smoothing filter
2019-12-29 10:02:31 +00:00
Andri Yngvason
09772ddf5b
Clean up some resources
2019-12-27 14:41:54 +00:00
Andri Yngvason
b2bbc9ac0b
Implement keyboard backend
2019-12-25 11:05:05 +00:00
Andri Yngvason
82bdbb82c0
Add virtual pointer backend
2019-12-22 21:42:10 +00:00
Andri Yngvason
25187cbfb2
Add option for output selection
2019-10-13 12:58:56 +00:00
Andri Yngvason
ba3dc617f4
output: Add missing copyright statement
2019-10-13 12:48:12 +00:00
Andri Yngvason
59fa4cfeaa
Move output handling into its own source file
2019-10-13 12:47:02 +00:00