Uli Schlachter
95fbce096c
Fix clippy::unnecessary-lazy-evaluations warnings
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2020-12-27 12:32:48 +01:00
Uli Schlachter
9e14e43bd8
Fix writing /tmp/.X{}.lock
...
Here is a lock file not created by smithay:
$ xxd /tmp/.X0-lock
00000000: 2020 2020 2020 2035 3537 0a 557.
And this is a lock file created by smithay:
$ xxd /tmp/.X23-lock
00000000: 2020 2020 3130 3733 3332 107332
As you see, the difference is a trailing newline (0x0a).
Lock files 1 to 22 where also created by smithay, because I started it a
couple of times. Reading these lock files fails, since the code expects
a file with at least 11 bytes of content: It uses read_exact() with a
buffer of length 11 in the Err()-branch of the match that this commit
modifies.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2020-12-26 14:21:29 +01:00
Uli Schlachter
e427787353
xwayland: Use pipe instead of signal
...
Handling SIGUSR1 requires setting a signal handler, which is a global
resource. This can also cause problems in the presence of threads, since
every thread needs to set up a signal handler. This commit instead
changes the code to use a pipe instead (actually a UnixStream). When the
child closes the pipe, the parent wakes up and knows "to do something".
Fixes: https://github.com/Smithay/smithay/issues/246
Signed-off-by: Uli Schlachter <psychon@znc.in>
2020-12-25 22:29:39 +01:00
Victor Berger
36e11284c2
New clippy fixes
2020-11-02 10:24:55 +01:00
Victor Berger
8fde779806
Dependencies updates
2020-11-02 10:24:55 +01:00
Eric Anholt
78d28165c3
Update nix to 0.19 ( #237 )
2020-10-31 18:33:18 +01:00
Victor Berger
d3429fa37d
anvil: send frame callback before blocking to draw on winit
2020-10-26 12:52:28 +01:00
Victor Berger
5421b9675c
anvil: send millisecond time in frame callback
...
This is what the protocol requires, and apps rely on it to figure
out how long time elapsed between draws.
2020-10-26 12:52:28 +01:00
Arnout Engelen
04625405a0
typo: functionnalities -> functionalities
2020-09-24 13:30:42 +02:00
Jonas Platte
bcc8f13b2b
Fix most rustc & clippy warnings
2020-09-16 12:56:32 +02:00
Jonas Platte
c4f64489e8
Update wayland-rs to 0.28
2020-09-16 12:56:32 +02:00
Mateus Carmo M de F Barbosa
d5931c5957
Add unit tests for SerialCounter
2020-08-27 13:07:01 +02:00
Mateus Carmo M de F Barbosa
2a351d0879
Use Serial type for all serials
2020-08-27 13:07:01 +02:00
Mateus Carmo M de F Barbosa
0a0399a339
Implement Serial type to take wrap-around into account
2020-08-27 13:07:01 +02:00
Victor Berger
737b1f00cf
Dependecies update
2020-08-07 11:59:36 +02:00
Victor Berger
467972700e
ci: document public dependencies as well
2020-07-16 13:28:07 +02:00
Victor Berger
2e3a520400
ci: run apt-get update in doc-generation
2020-07-14 20:54:57 +02:00
Victor Berger
77cc680f65
ci: use nightly to build doc for doclinks
2020-07-14 20:29:49 +02:00
Victor Berger
49dda88c63
backend.input: keep sub-pixel precision in events
...
libinput provides sub-pixel precision for pointer motion & touch events.
Keep this precision by switching all coordinates values from input
events to f64 (rather than i32 or u32). Otherwise, values are rounded
and part of the movment is lost.
Potentially fixes #224
2020-07-13 17:56:20 +02:00
Victor Berger
25365ed69a
tempfile is only needed with wayland_frontend feature
2020-07-12 16:38:05 +02:00
Victor Berger
b06aecf868
Disable image default features
2020-07-12 16:38:05 +02:00
Victor Berger
1871b5ddae
Make slog-stdlog into an optional dependency
...
slog-stdlog has a significant dependency tree and is basically unsued if
the downstream crate of Smithay always provides a logger (like anvil),
so it is not really needed.
2020-07-12 16:38:05 +02:00
Victor Brekenfeld
b75d6524ce
Merge pull request #221 from Smithay/anvil/outputs
...
anvil: support multiple outputs
2020-06-28 15:16:15 +02:00
Victor Brekenfeld
9c3c3d939e
cargo fmt & lint
2020-06-28 00:25:15 +02:00
Victor Brekenfeld
3fd336aba5
anvil: GliumDrawer handle hardware cursors and track state
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
a1f14cb571
reexports: reexport winit
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
107b18a4c1
logind: do not include dbus code without dbus dependency
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
51b5b39b75
cursor: allow cursor clearing on CursorBackend
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
bf011e8071
anvil: Introduce BufferTextures
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
d603a9ccfb
egl: Do not store and release WlBuffer for EGLImages
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
4930e7e8b2
anvil: create a texture per backend
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
f84d6cb180
anvil/udev: do not upload a cursor every frame
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
7e75a68e57
anvil: allow swapping monitors via shortcut
2020-06-28 00:23:24 +02:00
Victor Brekenfeld
33fb393383
anvil: clamp input to current output instead of full hd
2020-06-28 00:23:22 +02:00
Victor Brekenfeld
d7f800c76d
anvil: create and render to multiple outputs independently
2020-06-28 00:05:01 +02:00
Victor Brekenfeld
9fd8dd9cec
anvil: allow draw_windows to take optional output coordinates
2020-06-28 00:05:01 +02:00
Hilmar Gústafsson
e402af4855
Update dbus to 0.8.3
...
Older versions of dbus fail to compile due to API differences
2020-06-24 09:19:09 +02:00
Kirill Chibisov
102f41c1e1
wayland.seat: Send modifiers event right after enter event
...
wl_keyboard.modifiers must be sent after wl_keyboard.enter event,
otherwise it's a protocol violation.
2020-06-14 18:38:08 +02:00
Victor Brekenfeld
44570700fb
Merge pull request #220 from Smithay/feature/drm_send
...
drm: Make surfaces `Send`
2020-06-13 17:54:15 +02:00
Victor Brekenfeld
7b4459f649
drm: Make surfaces `Send`
2020-06-11 18:57:05 +02:00
Victor Brekenfeld
68f3c0642d
Merge pull request #219 from Smithay/docs/drm
...
More documentation for the drm code
2020-06-11 12:26:38 +02:00
Victor Brekenfeld
cc67764c23
make clippy happy
2020-06-11 12:16:43 +02:00
Victor Brekenfeld
3c048075f4
docs: Add more explanations to various graphics code
2020-06-07 22:42:33 +02:00
Victor Brekenfeld
a3459cda31
docs: Add more explanations to the eglstream-drm-code
2020-06-07 22:42:33 +02:00
Victor Brekenfeld
978415987f
docs: Add more explanations to the gbm-drm-code
2020-06-07 22:42:33 +02:00
Victor Brekenfeld
dcb3bb79a7
docs: Add more explanations to the atomic-drm-code
2020-06-07 22:42:33 +02:00
Victor Brekenfeld
7e8f6b2955
docs: Add more explanations to the legacy-drm-code
2020-06-07 22:42:33 +02:00
Victor Brekenfeld
fa42a0a223
docs: Add a more fleshed out backend::drm module documentation
2020-06-07 22:42:33 +02:00
Victor Berger
05992b9d11
wayland.seat: Send key event before modifier event
2020-05-23 21:37:35 +02:00
Victor Berger
a717fa36cd
backend.session: Migrate to using Signaler
...
Change the session backend to rely on Signaler to propagate its
signals. Also introduce the Linkable trait to allow generic composition
of objects needing to listen for signals.
2020-05-23 21:37:22 +02:00