diff options
| author | Nathan Reiner <nathan@nathanreiner.xyz> | 2024-08-10 19:06:46 +0200 |
|---|---|---|
| committer | Nathan Reiner <nathan@nathanreiner.xyz> | 2024-08-10 19:06:46 +0200 |
| commit | 63cfcbe7a7745b276de58ec92e0141b958c44feb (patch) | |
| tree | 990e33a83756e27187033579ee2f85d5c79169d5 /src/widgets | |
| parent | b747ca8af52129876b577a4f20f7105a05c6b002 (diff) | |
use unsafe blocks instead of mutexes
Diffstat (limited to 'src/widgets')
| -rw-r--r-- | src/widgets/luaeditor/mod.rs | 12 | ||||
| -rw-r--r-- | src/widgets/sheetview/mod.rs | 15 |
2 files changed, 13 insertions, 14 deletions
diff --git a/src/widgets/luaeditor/mod.rs b/src/widgets/luaeditor/mod.rs index a24c6e7..d553734 100644 --- a/src/widgets/luaeditor/mod.rs +++ b/src/widgets/luaeditor/mod.rs @@ -38,12 +38,12 @@ impl LuaEditor { if populate { match event.code { - KeyCode::Char(c) => GlobalState::instance_mut().editor.buffer.insert(c), + KeyCode::Char(c) => GlobalState::get().editor.buffer.insert(c), KeyCode::Backspace => { - GlobalState::instance_mut().editor.buffer.delete(); + GlobalState::get().editor.buffer.delete(); } KeyCode::Enter => { - GlobalState::instance_mut().editor.buffer.insert('\n'); + GlobalState::get().editor.buffer.insert('\n'); } _ => {} } @@ -51,7 +51,7 @@ impl LuaEditor { } pub fn render_cursor(&self) -> Option<TuiCursor> { - let state = GlobalState::instance(); + let state = GlobalState::get(); let buffer = &state.editor.buffer; let nr_width = (buffer.lines().len().to_string().len() + 1).max(4) as u16; let x = buffer.cursor().x() @@ -73,10 +73,10 @@ impl Widget for &mut LuaEditor { Self: Sized, { { - let state = GlobalState::instance(); + let state = GlobalState::get(); let buffer = &state.editor.buffer; - let config = GlobalConfig::instance(); + let config = GlobalConfig::get(); let theme = &config.theme.editor; let inner_area = self.bar.area(area); diff --git a/src/widgets/sheetview/mod.rs b/src/widgets/sheetview/mod.rs index fe2aa5a..9b6b5bd 100644 --- a/src/widgets/sheetview/mod.rs +++ b/src/widgets/sheetview/mod.rs @@ -33,7 +33,7 @@ impl SheetView { } pub fn handle_key_event(&mut self, event: KeyEvent) { - let mode = { GlobalState::instance().view.mode }; + let mode = { GlobalState::get().view.mode }; match mode { Mode::Command => match event.code { KeyCode::Enter => { @@ -41,11 +41,11 @@ impl SheetView { // TODO: push errors to buffer } - GlobalState::instance_mut().view.cancel_mode(); + GlobalState::get().view.cancel_mode(); self.bar.set_input_mode(false); } KeyCode::Esc => { - GlobalState::instance_mut().view.cancel_mode(); + GlobalState::get().view.cancel_mode(); self.bar.set_input_mode(false); } _ => self.bar.handle_keyevent(event), @@ -53,7 +53,7 @@ impl SheetView { _ => { ViewKeyMap::handle(event); - let mode = { GlobalState::instance().view.mode }; + let mode = { GlobalState::get().view.mode }; if let Mode::Command = mode { self.bar.set_input_mode(true) } @@ -68,11 +68,10 @@ impl Widget for &mut SheetView { Self: Sized, { let mode = { - let theme = GlobalConfig::instance().theme.view.clone(); + let theme = GlobalConfig::get().theme.view.clone(); - let state = GlobalState::instance(); - let lock = state.view.active_sheet().unwrap(); - let sheet = lock.read().unwrap(); + let state = GlobalState::get(); + let sheet = state.view.active_sheet().unwrap(); let cursor = &state.view.cursor; let sheet_area_inner = self.bar.area(area); |