Commit Graph

68 Commits

Author SHA1 Message Date
Ferdinand Schober
151ff34383 remove debug log 2024-07-14 12:04:39 +02:00
Ferdinand Schober
8e94a64570 ignore requests with capture / emulation disabled
otherwise the server would hang when trying to enable clients
2024-07-14 12:02:14 +02:00
Ferdinand Schober
7e77e0c3f5 sync port 2024-07-12 18:09:23 +02:00
Ferdinand Schober
69afbe1674 simplify 2024-07-12 18:02:32 +02:00
Ferdinand Schober
d02d8d5ab9 move assert to correct location 2024-07-12 17:55:12 +02:00
Ferdinand Schober
54943d9057 fix possible panic because channels are dropped 2024-07-12 17:53:20 +02:00
Ferdinand Schober
9227bde6bf sync capture + emulation status 2024-07-12 17:44:24 +02:00
Ferdinand Schober
f052efe086 add missing dns request notify 2024-07-12 17:18:18 +02:00
Ferdinand Schober
e063f4ffb4 restructure server 2024-07-12 17:09:45 +02:00
Ferdinand Schober
73a57ee892 cleanup 2024-07-12 01:29:03 +02:00
Ferdinand Schober
335a1fc3e2 simplify 2024-07-12 01:01:09 +02:00
Ferdinand Schober
2a2cbce17d cleanup 2024-07-11 17:18:31 +02:00
Ferdinand Schober
f1dc3a5708 clean 2024-07-11 17:07:29 +02:00
Ferdinand Schober
69a5eec944 cleanup 2024-07-11 16:59:09 +02:00
Ferdinand Schober
4c30f032f4 cleanup 2024-07-11 16:47:36 +02:00
Ferdinand Schober
2d26bd6a0b improve cancellation 2024-07-11 16:34:41 +02:00
Ferdinand Schober
d73ced7b16 wire frontend 2024-07-11 15:12:59 +02:00
Ferdinand Schober
3f7dae65a2 fmt 2024-07-11 00:51:49 +02:00
Ferdinand Schober
8ba178dce0 simplify cancellation of service 2024-07-11 00:42:32 +02:00
Ferdinand Schober
6a4dd740c3 code cleanup + purge anyhow in library code (#157) 2024-07-10 00:33:49 +02:00
Ferdinand Schober
4db2d37f32 split into input-{event,capture,emulation} 2024-07-02 22:07:37 +02:00
Ferdinand Schober
b6b16063a8 Configurable emulation backend (#151) 2024-07-01 20:09:16 +02:00
Ferdinand Schober
3528ef4fae Configurable capture backend (#150)
capture backend can now be configured via the `capture_backend` cli argument / config entry
2024-06-29 00:10:36 +02:00
Ferdinand Schober
799b45104a enter hook command (#130)
new configuration option `enter_hook` can now be used to spawn a command when a client is entered
2024-05-12 13:01:07 +02:00
Ferdinand Schober
c76d9ef7af implement dns indicator (#119) 2024-05-03 13:00:00 +02:00
Ferdinand Schober
5318f5a02d Separate config state (#118)
* change internal api
* frontend now keeps and more correctly reflects backend state
2024-05-03 11:27:06 +02:00
Ferdinand Schober
77aa96e09a defer creation of input capture / emulation (#117) 2024-04-26 23:59:00 +02:00
Ferdinand Schober
3e96b42067 use slab instead of reinventing the wheel (#112) 2024-04-26 00:10:04 +02:00
Ferdinand Schober
279e582698 Rename FrontendEvent to FrontendRequest (#111)
* rename frontend event and notify
* simplify event names
2024-04-25 22:18:43 +02:00
Ferdinand Schober
742b1585d7 rename producer, consumer to emulation and capture (#98)
input emulation / input capture is clearer than event consumer and producer
2024-03-21 20:26:57 +01:00
Ferdinand Schober
9afe7da0dd Libei Input Capture (#94) 2024-03-20 14:03:52 +01:00
Ferdinand Schober
9e56c546cd make release bind configurable (#95)
closes #85
2024-03-18 09:20:28 +01:00
Ferdinand Schober
017bc43176 refactor timer task 2024-01-19 02:07:03 +01:00
Ferdinand Schober
36001c6fb2 refactor udp task 2024-01-19 02:03:30 +01:00
Ferdinand Schober
2803db7073 refactor dns task 2024-01-19 02:01:45 +01:00
Ferdinand Schober
622b04b36c refactor frontend task 2024-01-19 01:58:49 +01:00
Ferdinand Schober
61ff05c95a refactor consumer task 2024-01-19 01:51:09 +01:00
Ferdinand Schober
ecab3a360d refactor producer task 2024-01-18 23:46:06 +01:00
Ferdinand Schober
6674af8e63 allow incoming requests from arbitrary ports (#78)
closes #77
2024-01-18 22:36:33 +01:00
Ferdinand Schober
e2c47d3096 fix: initial dns resolve was not working 2024-01-17 00:22:24 +01:00
Ferdinand Schober
535cd055b9 fix initial activation 2024-01-16 19:49:34 +01:00
Ferdinand Schober
118c0dfc73 cleanup 2024-01-16 16:58:47 +01:00
Ferdinand Schober
7897db6047 remove unneccessary enumerate request 2024-01-16 16:15:23 +01:00
Ferdinand Schober
347256e966 fix frontend channel buffer size 2024-01-16 16:03:33 +01:00
Ferdinand Schober
d90eb0cd0f Activate on startup (#70)
Frontends are now properly synced among each other and on startup the correct state is reflected.

Closes #75 
Closes #68
2024-01-16 12:59:39 +01:00
Ferdinand Schober
d54b3a08e1 ignore double press / release events (#71)
This should fix most of the remaining issues with stuck keys in KDE
2024-01-12 13:13:23 +01:00
Ferdinand Schober
767fc8bd6b comment about pointer relase in sending state
Figured out, why it sometimes happened that the pointer is released in
sending state. However nothing we can do about it.

(not a real issue)
2024-01-08 16:54:14 +01:00
Ferdinand Schober
fa15048ad8 ignore every event except Enter in receiving mode (#65)
Modifier or other key events are still sent by some compositors after leaving the window which causes them to be pressed on both devices.
Now an Enter event must be produced before any further events are sent out (except disconnect)
2024-01-05 18:00:30 +01:00
Ferdinand Schober
6cdb607b11 Fix Error handling in layershell producer (#61)
previous error handling resulted in a softlock when the connection
to the compositor was lost
2024-01-01 22:07:21 +01:00
Ferdinand Schober
f5827bb31c fix port changing 2024-01-01 14:55:29 +01:00