aboutsummaryrefslogtreecommitdiff
path: root/src/app/input
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-07-04 16:10:33 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-07-04 16:51:10 +0300
commit89fe8975db69e3c92623d531b50ad791878e28fe (patch)
treeafb25105516213e6362468b0b4bc55690ac03d77 /src/app/input
parent5d9212a55acf4db05b8c5cdf3fee3c56ac404cf7 (diff)
refactor: route tui runtime mutations through typed adapters
Diffstat (limited to 'src/app/input')
-rw-r--r--src/app/input/modal.rs30
-rw-r--r--src/app/input/navigate.rs53
2 files changed, 35 insertions, 48 deletions
diff --git a/src/app/input/modal.rs b/src/app/input/modal.rs
index ba1fd2d4..82d393d6 100644
--- a/src/app/input/modal.rs
+++ b/src/app/input/modal.rs
@@ -933,14 +933,12 @@ impl App {
match self.state.mode {
Mode::RenameWorkspace if !self.state.workspaces.is_empty() && !new_name.is_empty() => {
let workspace_id = self.public_workspace_id(self.state.selected);
- self.dispatch_runtime_mutation(
+ self.runtime_workspace_rename(
"tui.workspace.rename",
- crate::api::schema::Method::WorkspaceRename(
- crate::api::schema::WorkspaceRenameParams {
- workspace_id,
- label: new_name,
- },
- ),
+ crate::api::schema::WorkspaceRenameParams {
+ workspace_id,
+ label: new_name,
+ },
);
}
Mode::RenameTab if self.state.creating_new_tab => {
@@ -950,15 +948,15 @@ impl App {
} else {
Some(new_name)
};
- self.dispatch_runtime_mutation(
+ self.runtime_tab_create(
"tui.tab.create_named",
- crate::api::schema::Method::TabCreate(crate::api::schema::TabCreateParams {
+ crate::api::schema::TabCreateParams {
workspace_id: None,
cwd: None,
focus: true,
label,
env: Default::default(),
- }),
+ },
);
}
Mode::RenameTab if !new_name.is_empty() => {
@@ -976,14 +974,12 @@ impl App {
.is_some_and(|name| new_name == name);
if !keep_auto_name {
if let Some(tab_id) = self.public_tab_id(ws_idx, tab_idx) {
- self.dispatch_runtime_mutation(
+ self.runtime_tab_rename(
"tui.tab.rename",
- crate::api::schema::Method::TabRename(
- crate::api::schema::TabRenameParams {
- tab_id,
- label: new_name,
- },
- ),
+ crate::api::schema::TabRenameParams {
+ tab_id,
+ label: new_name,
+ },
);
}
}
diff --git a/src/app/input/navigate.rs b/src/app/input/navigate.rs
index 53aa8a5d..b278daac 100644
--- a/src/app/input/navigate.rs
+++ b/src/app/input/navigate.rs
@@ -109,16 +109,14 @@ impl App {
let previous_mode = self.state.mode;
match action {
NavigateAction::NewWorkspace => {
- self.dispatch_runtime_mutation(
+ self.runtime_workspace_create(
"tui.key.workspace.create",
- crate::api::schema::Method::WorkspaceCreate(
- crate::api::schema::WorkspaceCreateParams {
- cwd: None,
- focus: true,
- label: None,
- env: Default::default(),
- },
- ),
+ crate::api::schema::WorkspaceCreateParams {
+ cwd: None,
+ focus: true,
+ label: None,
+ env: Default::default(),
+ },
);
leave_navigate_mode(&mut self.state);
}
@@ -223,17 +221,15 @@ impl App {
if self.state.prompt_new_tab_name {
super::modal::open_new_tab_dialog(&mut self.state);
} else {
- self.dispatch_runtime_mutation(
+ self.runtime_tab_create(
"tui.key.tab.create",
- crate::api::schema::Method::TabCreate(
- crate::api::schema::TabCreateParams {
- workspace_id: None,
- cwd: None,
- focus: true,
- label: None,
- env: Default::default(),
- },
- ),
+ crate::api::schema::TabCreateParams {
+ workspace_id: None,
+ cwd: None,
+ focus: true,
+ label: None,
+ env: Default::default(),
+ },
);
leave_navigate_mode(&mut self.state);
}
@@ -330,12 +326,7 @@ impl App {
NavigateAction::Help => super::modal::open_keybind_help(&mut self.state),
NavigateAction::Settings => super::settings::open_settings(&mut self.state),
NavigateAction::ReloadConfig => {
- self.dispatch_runtime_mutation(
- "tui.server.reload_config",
- crate::api::schema::Method::ServerReloadConfig(
- crate::api::schema::EmptyParams::default(),
- ),
- );
+ self.runtime_server_reload_config("tui.server.reload_config");
leave_navigate_mode(&mut self.state);
}
NavigateAction::OpenNotificationTarget => {
@@ -368,12 +359,12 @@ impl App {
pub(crate) fn move_workspace_via_api(&mut self, source_ws_idx: usize, insert_idx: usize) {
let workspace_id = self.public_workspace_id(source_ws_idx);
- self.dispatch_runtime_mutation(
+ self.runtime_workspace_move(
"tui.workspace.move",
- crate::api::schema::Method::WorkspaceMove(crate::api::schema::WorkspaceMoveParams {
+ crate::api::schema::WorkspaceMoveParams {
workspace_id,
insert_index: insert_idx,
- }),
+ },
);
}
@@ -420,12 +411,12 @@ impl App {
let Some(tab_id) = self.public_tab_id(ws_idx, source_tab_idx) else {
return;
};
- self.dispatch_runtime_mutation(
+ self.runtime_tab_move(
"tui.tab.move",
- crate::api::schema::Method::TabMove(crate::api::schema::TabMoveParams {
+ crate::api::schema::TabMoveParams {
tab_id,
insert_index: insert_idx,
- }),
+ },
);
}