Remove unneeded searches in ConfigUpdateUser

This commit is contained in:
Josh Megnauth 2024-09-07 02:17:27 -04:00
parent 70b8cae87e
commit 047e393eb8
No known key found for this signature in database
GPG key ID: 70813183462EFAD3

View file

@ -818,12 +818,10 @@ impl cosmic::Application for App {
let data_idx = Self::user_data_index(&self.flags.user_datas, &username); let data_idx = Self::user_data_index(&self.flags.user_datas, &username);
self.selected_username = NameIndexPair { username, data_idx }; self.selected_username = NameIndexPair { username, data_idx };
self.surface_images.clear(); self.surface_images.clear();
// TODO: Remove search if let Some(session) = data_idx.and_then(|i| {
if let Some(session) = self self.flags
.flags
.user_datas .user_datas
.iter() .get(i)
.find(|user| user.name == self.selected_username.username)
.and_then(|UserData { uid, .. }| { .and_then(|UserData { uid, .. }| {
NonZeroU32::new(*uid).and_then(|uid| { NonZeroU32::new(*uid).and_then(|uid| {
self.flags self.flags
@ -833,7 +831,7 @@ impl cosmic::Application for App {
.and_then(|conf| conf.last_session.as_deref()) .and_then(|conf| conf.last_session.as_deref())
}) })
}) })
{ }) {
session.clone_into(&mut self.selected_session); session.clone_into(&mut self.selected_session);
}; };
match &self.socket_state { match &self.socket_state {
@ -846,15 +844,15 @@ impl cosmic::Application for App {
} }
} }
Message::ConfigUpdateUser => { Message::ConfigUpdateUser => {
let Some(user_entry) = self let Some(user_entry) = self.selected_username.data_idx.and_then(|i| {
.flags self.flags
.user_datas .user_datas
.iter() .get(i)
.find(|user| user.name == self.selected_username.username)
.and_then(|UserData { uid, .. }| { .and_then(|UserData { uid, .. }| {
NonZeroU32::new(*uid).map(|uid| self.flags.greeter_config.users.entry(uid)) NonZeroU32::new(*uid)
.map(|uid| self.flags.greeter_config.users.entry(uid))
}) })
else { }) else {
log::error!("Couldn't find user: {:?}", self.selected_username.username); log::error!("Couldn't find user: {:?}", self.selected_username.username);
return Command::none(); return Command::none();
}; };