aboutsummaryrefslogtreecommitdiff
path: root/src/api/schema/events.rs
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-07-26 02:45:44 +0300
committerGitHub <noreply@github.com>2026-07-26 02:45:44 +0300
commit8843bbb0c4dc4e6b52ca5d0a6592ce80be56a19c (patch)
tree9387a75a8ae34fd864de83355412331c4f22a2b9 /src/api/schema/events.rs
parent547aba8e0ab310623f1986d3026658f708d432bd (diff)
fix: improve sidebar worktree hierarchy and reordering (#1873)
* fix: clarify sidebar worktree hierarchy refs #1694 * feat: reorder worktree groups as a unit refs #1694
Diffstat (limited to 'src/api/schema/events.rs')
-rw-r--r--src/api/schema/events.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/api/schema/events.rs b/src/api/schema/events.rs
index 50b5d522..52ac6c96 100644
--- a/src/api/schema/events.rs
+++ b/src/api/schema/events.rs
@@ -26,6 +26,8 @@ pub enum Subscription {
WorkspaceRenamed {},
#[serde(rename = "workspace.moved")]
WorkspaceMoved {},
+ #[serde(rename = "workspace.reordered")]
+ WorkspaceReordered {},
#[serde(rename = "workspace.closed")]
WorkspaceClosed {},
#[serde(rename = "workspace.focused")]
@@ -196,6 +198,7 @@ pub enum EventKind {
WorkspaceClosed,
WorkspaceRenamed,
WorkspaceMoved,
+ WorkspaceReordered,
WorkspaceFocused,
WorktreeCreated,
WorktreeOpened,
@@ -226,6 +229,7 @@ impl EventKind {
EventKind::WorkspaceClosed => "workspace.closed",
EventKind::WorkspaceRenamed => "workspace.renamed",
EventKind::WorkspaceMoved => "workspace.moved",
+ EventKind::WorkspaceReordered => "workspace.reordered",
EventKind::WorkspaceFocused => "workspace.focused",
EventKind::WorktreeCreated => "worktree.created",
EventKind::WorktreeOpened => "worktree.opened",
@@ -257,6 +261,7 @@ pub const KNOWN_EVENT_KINDS: &[EventKind] = &[
EventKind::WorkspaceClosed,
EventKind::WorkspaceRenamed,
EventKind::WorkspaceMoved,
+ EventKind::WorkspaceReordered,
EventKind::WorkspaceFocused,
EventKind::WorktreeCreated,
EventKind::WorktreeOpened,
@@ -284,6 +289,7 @@ pub const PLUGIN_HOOK_EVENT_KINDS: &[EventKind] = &[
EventKind::WorkspaceClosed,
EventKind::WorkspaceRenamed,
EventKind::WorkspaceMoved,
+ EventKind::WorkspaceReordered,
EventKind::WorkspaceFocused,
EventKind::WorktreeCreated,
EventKind::WorktreeOpened,
@@ -437,6 +443,12 @@ pub enum EventData {
insert_index: usize,
workspaces: Vec<WorkspaceInfo>,
},
+ WorkspaceReordered {
+ workspace_ids: Vec<String>,
+ #[serde(default, skip_serializing_if = "Option::is_none")]
+ before_workspace_id: Option<String>,
+ workspaces: Vec<WorkspaceInfo>,
+ },
WorkspaceFocused {
workspace_id: String,
},