14
14
15
15
use libc;
16
16
use wlroots_sys:: { self , wlr_backend, wlr_backend_is_wl, wlr_backend_is_x11,
17
- wlr_backend_is_drm, wlr_backend_is_headless, wlr_backend_is_multi} ;
17
+ wlr_backend_is_drm, wlr_backend_is_headless, wlr_backend_is_multi,
18
+ wlr_backend_is_libinput} ;
18
19
19
- use super :: { WaylandBackend , X11Backend , DRMBackend , HeadlessBackend , MultiBackend } ;
20
+ use super :: { WaylandBackend , X11Backend , DRMBackend , HeadlessBackend , MultiBackend , LibInputBackend } ;
20
21
21
22
/// A custom function to set up the renderer.
22
23
pub type UnsafeRenderSetupFunction = unsafe extern "C" fn ( * mut wlroots_sys:: wlr_egl ,
@@ -32,6 +33,7 @@ pub enum Backend {
32
33
X11 ( X11Backend ) ,
33
34
DRM ( DRMBackend ) ,
34
35
Headless ( HeadlessBackend ) ,
36
+ LibInput ( LibInputBackend ) ,
35
37
Multi ( MultiBackend )
36
38
}
37
39
@@ -48,6 +50,8 @@ impl Backend {
48
50
Backend :: Headless ( HeadlessBackend { backend } )
49
51
} else if wlr_backend_is_multi ( backend) {
50
52
Backend :: Multi ( MultiBackend { backend } )
53
+ } else if wlr_backend_is_libinput ( backend) {
54
+ Backend :: LibInput ( LibInputBackend { backend } )
51
55
} else {
52
56
panic ! ( "Unknown backend {:p}" , backend)
53
57
}
@@ -59,7 +63,8 @@ impl Backend {
59
63
Backend :: X11 ( X11Backend { backend } ) |
60
64
Backend :: DRM ( DRMBackend { backend } ) |
61
65
Backend :: Headless ( HeadlessBackend { backend } ) |
62
- Backend :: Multi ( MultiBackend { backend } ) => backend
66
+ Backend :: Multi ( MultiBackend { backend } ) |
67
+ Backend :: LibInput ( LibInputBackend { backend } ) => backend
63
68
}
64
69
}
65
70
}
0 commit comments