nvim_api/types/
mouse_action.rs1use nvim_types as nvim;
2use serde::{Deserialize, Serialize};
3
4#[derive(Copy, Clone, Debug, Eq, PartialEq, Hash, Serialize, Deserialize)]
5#[serde(rename_all = "lowercase")]
6pub enum MouseAction {
7 Down,
8 Drag,
9 Left,
10 Press,
11 Release,
12 Right,
13 Up,
14}
15
16impl From<MouseAction> for nvim::String {
17 fn from(action: MouseAction) -> nvim::String {
18 use MouseAction::*;
19 nvim::String::from(match action {
20 Down => "down",
21 Drag => "drag",
22 Left => "left",
23 Press => "press",
24 Release => "release",
25 Right => "right",
26 Up => "up",
27 })
28 }
29}