11use crate :: blur:: box_blur_multi_pass;
22use crate :: config:: OverlayConfig ;
33use crate :: input_listener:: { start_alt_listener, AltState } ;
4+ use crate :: state:: State ;
45use anyhow:: { Context , Result } ;
56use smithay_client_toolkit:: {
67 compositor:: { CompositorHandler , CompositorState } ,
@@ -914,7 +915,7 @@ fn run_single_overlay(
914915 Ok ( ( ) )
915916}
916917
917- pub fn start ( shortcuts : Vec < KeyBinding > , config : OverlayConfig ) -> Result < ( ) > {
918+ pub fn start ( state : Arc < State > ) -> Result < ( ) > {
918919 let ctrl_receiver = match start_alt_listener ( ) {
919920 Ok ( rx) => {
920921 log:: info!( "Successfully started libinput Alt key listener" ) ;
@@ -936,10 +937,10 @@ pub fn start(shortcuts: Vec<KeyBinding>, config: OverlayConfig) -> Result<()> {
936937 Ok ( AltState :: Pressed ) => {
937938 log:: debug!( "==> Alt pressed alone - spawning new overlay thread" ) ;
938939
939- let shortcuts_clone = shortcuts . clone ( ) ;
940+ let shortcuts_clone = state . clone_keybindings ( ) ;
940941 let flag = Arc :: new ( AtomicBool :: new ( false ) ) ;
941942 let flag_clone = Arc :: clone ( & flag) ;
942- let config_clone = config . clone ( ) ;
943+ let config_clone = state . clone_config ( ) ;
943944
944945 let handle = std:: thread:: spawn ( move || {
945946 if let Err ( e) = run_single_overlay ( shortcuts_clone, flag_clone, config_clone) {
0 commit comments