aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-09-02 08:53:50 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2024-09-01 23:47:19 -0700
commit332af8b062d93aa542c639d663199fde568172f7 (patch)
tree66fe6d8babbfaaf0723d6f186d46abfb48a64d71
parentb7901579d586b6c68119ef65bc184a7369492791 (diff)
downloadniri-332af8b062d93aa542c639d663199fde568172f7.tar.gz
niri-332af8b062d93aa542c639d663199fde568172f7.tar.bz2
niri-332af8b062d93aa542c639d663199fde568172f7.zip
Rearrange some CLI and IPC enum values
-rw-r--r--niri-ipc/src/lib.rs24
-rw-r--r--src/cli.rs8
-rw-r--r--src/ipc/server.rs22
3 files changed, 27 insertions, 27 deletions
diff --git a/niri-ipc/src/lib.rs b/niri-ipc/src/lib.rs
index e6058ca1..97f67ba7 100644
--- a/niri-ipc/src/lib.rs
+++ b/niri-ipc/src/lib.rs
@@ -19,6 +19,12 @@ pub enum Request {
Version,
/// Request information about connected outputs.
Outputs,
+ /// Request information about workspaces.
+ Workspaces,
+ /// Request information about the configured keyboard layouts.
+ KeyboardLayouts,
+ /// Request information about the focused output.
+ FocusedOutput,
/// Request information about the focused window.
FocusedWindow,
/// Perform an action.
@@ -34,12 +40,6 @@ pub enum Request {
/// Configuration to apply.
action: OutputAction,
},
- /// Request information about workspaces.
- Workspaces,
- /// Request information about the focused output.
- FocusedOutput,
- /// Request information about the keyboard layout.
- KeyboardLayouts,
/// Start continuously receiving events from the compositor.
///
/// The compositor should reply with `Reply::Ok(Response::Handled)`, then continuously send
@@ -71,16 +71,16 @@ pub enum Response {
///
/// Map from connector name to output info.
Outputs(HashMap<String, Output>),
- /// Information about the focused window.
- FocusedWindow(Option<Window>),
- /// Output configuration change result.
- OutputConfigChanged(OutputConfigChanged),
/// Information about workspaces.
Workspaces(Vec<Workspace>),
- /// Information about the focused output.
- FocusedOutput(Option<Output>),
/// Information about the keyboard layout.
KeyboardLayouts(KeyboardLayouts),
+ /// Information about the focused output.
+ FocusedOutput(Option<Output>),
+ /// Information about the focused window.
+ FocusedWindow(Option<Window>),
+ /// Output configuration change result.
+ OutputConfigChanged(OutputConfigChanged),
}
/// Actions that niri can perform.
diff --git a/src/cli.rs b/src/cli.rs
index 99d22e63..238ffe9d 100644
--- a/src/cli.rs
+++ b/src/cli.rs
@@ -62,10 +62,12 @@ pub enum Msg {
Outputs,
/// List workspaces.
Workspaces,
- /// Print information about the focused window.
- FocusedWindow,
+ /// Get the configured keyboard layouts.
+ KeyboardLayouts,
/// Print information about the focused output.
FocusedOutput,
+ /// Print information about the focused window.
+ FocusedWindow,
/// Perform an action.
Action {
#[command(subcommand)]
@@ -86,8 +88,6 @@ pub enum Msg {
#[command(subcommand)]
action: OutputAction,
},
- /// Get the configured keyboard layouts.
- KeyboardLayouts,
/// Start continuously receiving events from the compositor.
EventStream,
/// Print the version of the running niri instance.
diff --git a/src/ipc/server.rs b/src/ipc/server.rs
index 9c292b34..dcdfc3fb 100644
--- a/src/ipc/server.rs
+++ b/src/ipc/server.rs
@@ -255,6 +255,17 @@ async fn process(ctx: &ClientCtx, request: Request) -> Reply {
let outputs = ipc_outputs.values().cloned().map(|o| (o.name.clone(), o));
Response::Outputs(outputs.collect())
}
+ Request::Workspaces => {
+ let state = ctx.event_stream_state.borrow();
+ let workspaces = state.workspaces.workspaces.values().cloned().collect();
+ Response::Workspaces(workspaces)
+ }
+ Request::KeyboardLayouts => {
+ let state = ctx.event_stream_state.borrow();
+ let layout = state.keyboard_layouts.keyboard_layouts.clone();
+ let layout = layout.expect("keyboard layouts should be set at startup");
+ Response::KeyboardLayouts(layout)
+ }
Request::FocusedWindow => {
let state = ctx.event_stream_state.borrow();
let windows = &state.windows.windows;
@@ -294,11 +305,6 @@ async fn process(ctx: &ClientCtx, request: Request) -> Reply {
Response::OutputConfigChanged(response)
}
- Request::Workspaces => {
- let state = ctx.event_stream_state.borrow();
- let workspaces = state.workspaces.workspaces.values().cloned().collect();
- Response::Workspaces(workspaces)
- }
Request::FocusedOutput => {
let (tx, rx) = async_channel::bounded(1);
ctx.event_loop.insert_idle(move |state| {
@@ -325,12 +331,6 @@ async fn process(ctx: &ClientCtx, request: Request) -> Reply {
let output = result.map_err(|_| String::from("error getting active output info"))?;
Response::FocusedOutput(output)
}
- Request::KeyboardLayouts => {
- let state = ctx.event_stream_state.borrow();
- let layout = state.keyboard_layouts.keyboard_layouts.clone();
- let layout = layout.expect("keyboard layouts should be set at startup");
- Response::KeyboardLayouts(layout)
- }
Request::EventStream => Response::Handled,
};