summaryrefslogtreecommitdiff
path: root/src/widgets
diff options
context:
space:
mode:
authorNathan Reiner <nathan@nathanreiner.xyz>2024-08-10 19:06:46 +0200
committerNathan Reiner <nathan@nathanreiner.xyz>2024-08-10 19:06:46 +0200
commit63cfcbe7a7745b276de58ec92e0141b958c44feb (patch)
tree990e33a83756e27187033579ee2f85d5c79169d5 /src/widgets
parentb747ca8af52129876b577a4f20f7105a05c6b002 (diff)
use unsafe blocks instead of mutexes
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/luaeditor/mod.rs12
-rw-r--r--src/widgets/sheetview/mod.rs15
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);