rust: Be compatible with older Rust

This commit is contained in:
Dorota Czaplejewicz
2019-11-20 10:07:46 +00:00
parent af6ad1fce6
commit b252f7659b

View File

@ -466,7 +466,11 @@ fn create_action<H: WarningHandler>(
Keysym(String), Keysym(String),
}; };
let submission = match (&symbol_meta.action, &symbol_meta.keysym, &symbol_meta.text) { let submission = match (
&symbol_meta.action,
&symbol_meta.keysym,
&symbol_meta.text
) {
(Some(action), None, None) => SubmitData::Action(action.clone()), (Some(action), None, None) => SubmitData::Action(action.clone()),
(None, Some(keysym), None) => SubmitData::Keysym(keysym.clone()), (None, Some(keysym), None) => SubmitData::Keysym(keysym.clone()),
(None, None, Some(text)) => SubmitData::Text(text.clone()), (None, None, Some(text)) => SubmitData::Text(text.clone()),
@ -497,16 +501,16 @@ fn create_action<H: WarningHandler>(
} }
} }
type SD = SubmitData;
match submission { match submission {
SD::Action(Action::SetView(view_name)) => ::action::Action::SetLevel( SubmitData::Action(
Action::SetView(view_name)
) => ::action::Action::SetLevel(
filter_view_name( filter_view_name(
name, view_name.clone(), &view_names, name, view_name.clone(), &view_names,
warning_handler, warning_handler,
) )
), ),
SD::Action(Action::Locking { SubmitData::Action(Action::Locking {
lock_view, unlock_view lock_view, unlock_view
}) => ::action::Action::LockLevel { }) => ::action::Action::LockLevel {
lock: filter_view_name( lock: filter_view_name(
@ -522,8 +526,10 @@ fn create_action<H: WarningHandler>(
warning_handler, warning_handler,
), ),
}, },
SD::Action(Action::ShowPrefs) => ::action::Action::ShowPreferences, SubmitData::Action(
SD::Keysym(keysym) => ::action::Action::Submit { Action::ShowPrefs
) => ::action::Action::ShowPreferences,
SubmitData::Keysym(keysym) => ::action::Action::Submit {
text: None, text: None,
keys: vec!(::action::KeySym( keys: vec!(::action::KeySym(
match keysym_valid(keysym.as_str()) { match keysym_valid(keysym.as_str()) {
@ -538,7 +544,7 @@ fn create_action<H: WarningHandler>(
} }
)), )),
}, },
SD::Text(text) => ::action::Action::Submit { SubmitData::Text(text) => ::action::Action::Submit {
text: { text: {
CString::new(text.clone()) CString::new(text.clone())
.map_err(|e| { .map_err(|e| {