@@ -251,17 +251,14 @@ impl Page {
251251                    // if we're changing terminal, we want to update the COSMIC system actions shortcut 
252252                    // for terminal 
253253                    if  category == Category :: Terminal  && self . shortcuts_config . is_some ( )  { 
254-                         let  shortcuts = self . shortcuts_config . as_ref ( ) . unwrap ( ) ; 
255-                         let  system_actions = shortcuts. get :: < SystemActions > ( "system_actions" ) ; 
256-                         match  system_actions { 
257-                             Err ( e)  => { 
258-                                 // we don't have system_actions set? 
259-                                 println ! ( "{}" ,  e) ; 
260-                             } 
261-                             Ok ( mut  actions)  => { 
262-                                 // get the current terminal option, which should default to cosmic-term 
263-                                 let  current_terminal = actions. get ( & System :: Terminal ) ; 
264-                                 if  current_terminal. is_some ( )  { 
254+                         if  let  Some ( shortcuts)  = self . shortcuts_config . as_ref ( )  { 
255+                             let  system_actions = shortcuts. get :: < SystemActions > ( "system_actions" ) ; 
256+                             match  system_actions { 
257+                                 Err ( e)  => { 
258+                                     // we don't have system_actions set? 
259+                                     println ! ( "{}" ,  e) ; 
260+                                 } 
261+                                 Ok ( mut  actions)  => { 
265262                                    let  default_paths = default_paths ( ) ; 
266263                                    let  mut  resolved_path = None ; 
267264
@@ -275,16 +272,17 @@ impl Page {
275272                                    } 
276273
277274                                    // if we find a valid .desktop file, we can grab its exec 
278-                                     if  resolved_path . is_some ( )  { 
279-                                         let  desktop_entry = DesktopEntry :: from_path ( resolved_path. unwrap ( ) ,  Some ( & get_languages_from_env ( ) ) ) ; 
280-                                         if  desktop_entry . is_ok ( )  { 
281-                                             // grab the  exec, add it to system_actions and commit 
282-                                             let  exec =  String :: from ( desktop_entry . unwrap ( ) . exec ( ) . unwrap ( ) ) ; 
283-                                             actions . insert ( System :: Terminal ,  exec ) ; 
284- 
285-                                             if   let   Err ( e )  = shortcuts . set ( "system_actions ",  actions )   { 
286-                                                 println ! ( "{}" ,  e ) ; 
275+                                     if  let   Some ( resolved_path )  = resolved_path  { 
276+                                         let  desktop_entry = DesktopEntry :: from_path ( resolved_path,  Some ( & get_languages_from_env ( ) ) ) ; 
277+                                         if  let   Ok ( desktop_entry )  = desktop_entry  { 
278+                                             if   let   Some ( exec)  = desktop_entry . exec ( )   { 
279+                                                 actions . insert ( System :: Terminal ,   String :: from ( exec) ) ; 
280+ 
281+                                                  if   let   Err ( e )  = shortcuts . set ( "system_actions" ,  actions )   { 
282+                                                      println ! ( "{} ",  e ) ; 
283+                                                 } 
287284                                            } 
285+ 
288286                                        } 
289287                                    } 
290288                                } 
0 commit comments