Migrate to parking_lot
This commit is contained in:
1 parent
bf805b79e5
commit
66f8a83dec
13 files changed
+85
-73
No files matched your search
@@ -11,9 +11,11 @@ use iced::widget::{button, column, row, scrollable, space, text, text_input};
|
||||
use iced::{Element, Task};
|
||||
use iced_core::Length::Fill;
|
||||
use iced_core::{Padding, Theme, color};
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::sync::Arc;
|
||||
use parking_lot::Mutex;
|
||||
use std::time::Duration;
|
||||
|
||||
|
||||
pub struct RepetitionSettingsState {
|
||||
set: DeckSettings,
|
||||
index: usize,
|
||||
@@ -23,10 +25,10 @@ pub struct RepetitionSettingsState {
|
||||
}
|
||||
|
||||
impl RepetitionSettingsState {
|
||||
pub(crate) fn new(index: usize, p1: Arc<Mutex<AppState>>) -> RepetitionSettingsState {
|
||||
pub(crate) fn new(index: usize, state: Arc<Mutex<AppState>>) -> RepetitionSettingsState {
|
||||
let set;
|
||||
{
|
||||
let local_state = p1.lock().unwrap();
|
||||
let local_state = state.lock();
|
||||
set = local_state.decks[index].clone();
|
||||
}
|
||||
let filter_state = set.check_filter();
|
||||
@@ -34,7 +36,7 @@ impl RepetitionSettingsState {
|
||||
RepetitionSettingsState {
|
||||
index,
|
||||
set,
|
||||
state: p1,
|
||||
state,
|
||||
real_delete: false,
|
||||
correct_filter: filter_state,
|
||||
}
|
||||
@@ -55,7 +57,7 @@ impl NavigatedPage<RepetitionSettingsMessage> for RepetitionSettingsState {
|
||||
match message {
|
||||
Back => {}
|
||||
Save => {
|
||||
let mut state = self.state.lock().unwrap();
|
||||
let mut state = self.state.lock();
|
||||
update_deck(&mut self.set, &state.connection);
|
||||
state.decks[self.index] = self.set.clone();
|
||||
}
|
||||
@@ -73,7 +75,7 @@ impl NavigatedPage<RepetitionSettingsMessage> for RepetitionSettingsState {
|
||||
self.correct_filter = self.set.check_filter();
|
||||
}
|
||||
TryFilter => {
|
||||
let state = self.state.lock().unwrap();
|
||||
let state = self.state.lock();
|
||||
let count = self.set.get_word_list(&state).len();
|
||||
self.set.count = Some(count);
|
||||
}
|
||||
@@ -85,7 +87,7 @@ impl NavigatedPage<RepetitionSettingsMessage> for RepetitionSettingsState {
|
||||
RootMessage::RepetitionSettings(RevertDeleteSet)
|
||||
});
|
||||
}
|
||||
let mut state = self.state.lock().unwrap();
|
||||
let mut state = self.state.lock();
|
||||
delete_set(&self.set, &state.connection);
|
||||
state.decks.remove(self.index);
|
||||
return Task::done(RootMessage::RepetitionSettings(Back));
|
||||
|
||||
Reference in new issue
Block a user