diff --git a/src/input.rs b/src/input.rs index 49092430..00ed0725 100644 --- a/src/input.rs +++ b/src/input.rs @@ -1,5 +1,4 @@ /// Module for handling input -use std::io::Read; use std::sync::mpsc::Sender; use crate::os_input_output::OsApi; @@ -9,9 +8,8 @@ use crate::AppInstruction; use crate::CommandIsExecuting; struct InputHandler { - buffer: [u8; 10], // TODO: more accurately mode: InputMode, - stdin: Box, + os_input: Box, command_is_executing: CommandIsExecuting, send_screen_instructions: Sender, send_pty_instructions: Sender, @@ -27,9 +25,8 @@ impl InputHandler { send_app_instructions: Sender, ) -> Self { InputHandler { - buffer: [0; 10], // TODO: more accurately mode: InputMode::Normal, - stdin: os_input.get_stdin_reader(), + os_input, command_is_executing, send_screen_instructions, send_pty_instructions, @@ -57,16 +54,10 @@ impl InputHandler { assert_eq!(self.mode, InputMode::Normal); loop { - self.buffer = [0; 10]; - let _ = self - .stdin - .read(&mut self.buffer) - .expect("failed to read stdin"); - - match self.buffer { - [7, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + let stdin_buffer = self.os_input.read_from_stdin(); + match stdin_buffer.as_slice() { + [7] => { // ctrl-g - // debug_log_to_file(format!("switched to command mode")); self.mode = InputMode::Command; return; } @@ -75,7 +66,7 @@ impl InputHandler { .send(ScreenInstruction::ClearScroll) .unwrap(); self.send_screen_instructions - .send(ScreenInstruction::WriteCharacter(self.buffer)) + .send(ScreenInstruction::WriteCharacter(stdin_buffer)) .unwrap(); } } @@ -92,15 +83,12 @@ impl InputHandler { } loop { - self.buffer = [0; 10]; - let _ = self - .stdin - .read(&mut self.buffer) - .expect("failed to read stdin"); + let stdin_buffer = self.os_input.read_from_stdin(); // uncomment this to print the entered character to a log file (/tmp/mosaic/mosaic-log.txt) for debugging - // debug_log_to_file(format!("buffer {:?}", self.buffer)); - match self.buffer { - [7, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + // debug_log_to_file(format!("buffer {:?}", stdin_buffer)); + + match stdin_buffer.as_slice() { + [7] => { // Ctrl-g // If we're in command mode, this will let us switch to persistent command mode, to execute // multiple commands. If we're already in persistent mode, it'll return us to normal mode. @@ -108,49 +96,47 @@ impl InputHandler { InputMode::Command => self.mode = InputMode::CommandPersistent, InputMode::CommandPersistent => { self.mode = InputMode::Normal; - // debug_log_to_file(format!("switched to normal mode")); return; } _ => panic!(), } } - [27, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [27] => { // Esc self.mode = InputMode::Normal; - // _debug_log_to_file(format!("switched to normal mode")); return; } - [106, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [106] => { // j self.send_screen_instructions .send(ScreenInstruction::ResizeDown) .unwrap(); } - [107, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [107] => { // k self.send_screen_instructions .send(ScreenInstruction::ResizeUp) .unwrap(); } - [112, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [112] => { // p self.send_screen_instructions .send(ScreenInstruction::MoveFocus) .unwrap(); } - [104, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [104] => { // h self.send_screen_instructions .send(ScreenInstruction::ResizeLeft) .unwrap(); } - [108, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [108] => { // l self.send_screen_instructions .send(ScreenInstruction::ResizeRight) .unwrap(); } - [122, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [122] => { // z self.command_is_executing.opening_new_pane(); self.send_pty_instructions @@ -158,7 +144,7 @@ impl InputHandler { .unwrap(); self.command_is_executing.wait_until_new_pane_is_opened(); } - [110, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [110] => { // n self.command_is_executing.opening_new_pane(); self.send_pty_instructions @@ -166,7 +152,7 @@ impl InputHandler { .unwrap(); self.command_is_executing.wait_until_new_pane_is_opened(); } - [98, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [98] => { // b self.command_is_executing.opening_new_pane(); self.send_pty_instructions @@ -174,24 +160,24 @@ impl InputHandler { .unwrap(); self.command_is_executing.wait_until_new_pane_is_opened(); } - [113, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [113] => { // q self.mode = InputMode::Exiting; return; } - [27, 91, 53, 126, 0, 0, 0, 0, 0, 0] => { + [27, 91, 53, 126] => { // PgUp self.send_screen_instructions .send(ScreenInstruction::ScrollUp) .unwrap(); } - [27, 91, 54, 126, 0, 0, 0, 0, 0, 0] => { + [27, 91, 54, 126] => { // PgDown self.send_screen_instructions .send(ScreenInstruction::ScrollDown) .unwrap(); } - [120, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [120] => { // x self.command_is_executing.closing_pane(); self.send_screen_instructions @@ -199,7 +185,7 @@ impl InputHandler { .unwrap(); self.command_is_executing.wait_until_pane_is_closed(); } - [101, 0, 0, 0, 0, 0, 0, 0, 0, 0] => { + [101] => { // e self.send_screen_instructions .send(ScreenInstruction::ToggleActiveTerminalFullscreen) diff --git a/src/os_input_output.rs b/src/os_input_output.rs index b1787df8..94b7b98d 100644 --- a/src/os_input_output.rs +++ b/src/os_input_output.rs @@ -5,7 +5,8 @@ use nix::sys::signal::{kill, Signal}; use nix::sys::termios::{cfmakeraw, tcdrain, tcgetattr, tcsetattr, SetArg, Termios}; use nix::sys::wait::waitpid; use nix::unistd::{read, write, ForkResult, Pid}; -use std::io::{Read, Write}; +use std::io::prelude::*; +use std::io::{stdin, Write}; use std::os::unix::io::RawFd; use std::path::PathBuf; use std::process::{Child, Command}; @@ -147,7 +148,7 @@ pub trait OsApi: Send + Sync { fn write_to_tty_stdin(&mut self, pid: RawFd, buf: &mut [u8]) -> Result; fn tcdrain(&mut self, pid: RawFd) -> Result<(), nix::Error>; fn kill(&mut self, pid: RawFd) -> Result<(), nix::Error>; - fn get_stdin_reader(&self) -> Box; + fn read_from_stdin(&self) -> Vec; fn get_stdout_writer(&self) -> Box; fn box_clone(&self) -> Box; } @@ -182,12 +183,14 @@ impl OsApi for OsInputOutput { fn box_clone(&self) -> Box { Box::new((*self).clone()) } - fn get_stdin_reader(&self) -> Box { - // TODO: stdin lock, right now it's not done because we don't have where to put it - // if we put it on the struct, we won't be able to clone the struct - // if we leave it here, we're referencing a temporary value - let stdin = ::std::io::stdin(); - Box::new(stdin) + fn read_from_stdin(&self) -> Vec { + let stdin = stdin(); + let mut stdin = stdin.lock(); + let buffer = stdin.fill_buf().unwrap(); + let length = buffer.len(); + let read_bytes = Vec::from(buffer); + stdin.consume(length); + read_bytes } fn get_stdout_writer(&self) -> Box { let stdout = ::std::io::stdout(); diff --git a/src/screen.rs b/src/screen.rs index ff447718..53655216 100644 --- a/src/screen.rs +++ b/src/screen.rs @@ -55,7 +55,7 @@ pub enum ScreenInstruction { NewPane(RawFd), HorizontalSplit(RawFd), VerticalSplit(RawFd), - WriteCharacter([u8; 10]), + WriteCharacter(Vec), ResizeLeft, ResizeRight, ResizeDown, @@ -383,21 +383,10 @@ impl Screen { let terminal_output = self.terminals.get_mut(&pid).unwrap(); terminal_output.handle_event(event); } - pub fn write_to_active_terminal(&mut self, bytes: [u8; 10]) { + pub fn write_to_active_terminal(&mut self, mut bytes: Vec) { if let Some(active_terminal_id) = &self.get_active_terminal_id() { - // this is a bit of a hack and is done in order not to send trailing - // zeros to the terminal (because they mess things up) - // TODO: fix this by only sending around the exact bytes read from stdin - let mut trimmed_bytes = vec![]; - for byte in bytes.iter() { - if *byte == 0 { - break; - } else { - trimmed_bytes.push(*byte); - } - } self.os_api - .write_to_tty_stdin(*active_terminal_id, &mut trimmed_bytes) + .write_to_tty_stdin(*active_terminal_id, &mut bytes) .expect("failed to write to terminal"); self.os_api .tcdrain(*active_terminal_id) diff --git a/src/tests/fakes.rs b/src/tests/fakes.rs index 0afba192..c17d03fc 100644 --- a/src/tests/fakes.rs +++ b/src/tests/fakes.rs @@ -1,6 +1,6 @@ use crate::terminal_pane::PositionAndSize; -use ::std::collections::HashMap; -use ::std::io::{Read, Write}; +use ::std::collections::{HashMap, VecDeque}; +use ::std::io::Write; use ::std::os::unix::io::RawFd; use ::std::path::PathBuf; use ::std::sync::atomic::{AtomicBool, Ordering}; @@ -21,68 +21,6 @@ pub enum IoEvent { TcDrain(RawFd), } -pub struct FakeStdinReader { - pub input_chars: Vec<[u8; 10]>, - pub read_position: usize, - last_snapshot_time: Arc>, - started_reading_from_pty: Arc, -} - -impl FakeStdinReader { - pub fn new( - input_chars: Vec<[u8; 10]>, - last_snapshot_time: Arc>, - started_reading_from_pty: Arc, - ) -> Self { - FakeStdinReader { - input_chars, - read_position: 0, - last_snapshot_time, - started_reading_from_pty, - } - } -} - -impl Read for FakeStdinReader { - fn read(&mut self, buf: &mut [u8]) -> Result { - loop { - if self.started_reading_from_pty.load(Ordering::Acquire) == false { - ::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS); - } else { - let last_snapshot_time = { *self.last_snapshot_time.lock().unwrap() }; - if last_snapshot_time.elapsed() > MIN_TIME_BETWEEN_SNAPSHOTS { - break; - } else { - ::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS - last_snapshot_time.elapsed()); - } - } - } - let read_position = self.read_position; - match self.input_chars.get(read_position) { - Some(bytes_to_read) => { - for (i, byte) in bytes_to_read.iter().enumerate() { - buf[i] = *byte; - } - self.read_position += 1; - Ok(bytes_to_read.len()) - } - None => { - // what is happening here? - // - // Here the stdin loop is requesting more input than we have provided it with in - // the fake input chars. - // Normally this should not happen, because each test quits in the end. - // There is one case (at the time of this writing) in which it does happen, and - // that's when we quit by closing the last pane. In this case the stdin loop might - // get a chance to request more input before the app quits and drops it. In that - // case, we just give it no input and let it keep doing its thing until it dies - // very shortly after. - Ok(0) - } - } - } -} - #[derive(Clone)] pub struct FakeStdoutWriter { output_buffer: Arc>>, @@ -125,6 +63,7 @@ impl Write for FakeStdoutWriter { pub struct FakeInputOutput { read_buffers: Arc>>, input_to_add: Arc>>>, + stdin_commands: Arc>>>, stdin_writes: Arc>>>, pub stdout_writer: FakeStdoutWriter, // stdout_writer.output is already an arc/mutex io_events: Arc>>, @@ -144,6 +83,7 @@ impl FakeInputOutput { read_buffers: Arc::new(Mutex::new(HashMap::new())), stdin_writes: Arc::new(Mutex::new(HashMap::new())), input_to_add: Arc::new(Mutex::new(None)), + stdin_commands: Arc::new(Mutex::new(VecDeque::new())), stdout_writer, last_snapshot_time, io_events: Arc::new(Mutex::new(vec![])), @@ -156,8 +96,12 @@ impl FakeInputOutput { self.possible_tty_inputs = tty_inputs; self } - pub fn add_terminal_input(&mut self, input: &[[u8; 10]]) { - self.input_to_add = Arc::new(Mutex::new(Some(input.to_vec()))); + pub fn add_terminal_input(&mut self, input: &[&[u8]]) { + let mut stdin_commands: VecDeque> = VecDeque::new(); + for command in input.iter() { + stdin_commands.push_back(command.iter().copied().collect()) + } + self.stdin_commands = Arc::new(Mutex::new(stdin_commands)); } pub fn add_terminal(&mut self, fd: RawFd) { self.stdin_writes.lock().unwrap().insert(fd, vec![]); @@ -253,19 +197,31 @@ impl OsApi for FakeInputOutput { fn box_clone(&self) -> Box { Box::new((*self).clone()) } - fn get_stdin_reader(&self) -> Box { - let mut input_chars = vec![[0; 10]]; - if let Some(input_to_add) = self.input_to_add.lock().unwrap().as_ref() { - for bytes in input_to_add { - input_chars.push(*bytes); + fn read_from_stdin(&self) -> Vec { + loop { + let last_snapshot_time = { *self.last_snapshot_time.lock().unwrap() }; + if last_snapshot_time.elapsed() > MIN_TIME_BETWEEN_SNAPSHOTS { + break; + } else { + ::std::thread::sleep(MIN_TIME_BETWEEN_SNAPSHOTS - last_snapshot_time.elapsed()); + } + } + match self.stdin_commands.lock().unwrap().pop_front() { + Some(command) => command, + None => { + // what is happening here? + // + // Here the stdin loop is requesting more input than we have provided it with in + // the fake input chars. + // Normally this should not happen, because each test quits in the end. + // There is one case (at the time of this writing) in which it does happen, and + // that's when we quit by closing the last pane. In this case the stdin loop might + // get a chance to request more input before the app quits and drops it. In that + // case, we just give it no input and let it keep doing its thing until it dies + // very shortly after. + vec![] } } - let reader = FakeStdinReader::new( - input_chars, - self.last_snapshot_time.clone(), - self.started_reading_from_pty.clone(), - ); - Box::new(reader) } fn get_stdout_writer(&self) -> Box { Box::new(self.stdout_writer.clone()) diff --git a/src/tests/integration/basic.rs b/src/tests/integration/basic.rs index 54a174cc..adbe4082 100644 --- a/src/tests/integration/basic.rs +++ b/src/tests/integration/basic.rs @@ -22,7 +22,7 @@ pub fn starts_with_one_terminal() { y: 0, }; let mut fake_input_output = get_fake_os_input(&fake_win_size); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -44,7 +44,12 @@ pub fn split_terminals_vertically() { y: 0, }; let mut fake_input_output = get_fake_os_input(&fake_win_size); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, SPLIT_VERTICALLY, QUIT]); + fake_input_output.add_terminal_input(&[ + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &QUIT, + ]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -67,10 +72,10 @@ pub fn split_terminals_horizontally() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output @@ -95,12 +100,12 @@ pub fn split_largest_terminal() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output @@ -140,18 +145,18 @@ pub fn resize_right_and_up_on_the_same_axis() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_RIGHT, - RESIZE_LEFT, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &RESIZE_LEFT, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output @@ -175,15 +180,15 @@ pub fn scrolling_inside_a_pane() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - SCROLL_UP, - SCROLL_UP, - SCROLL_DOWN, - SCROLL_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &SCROLL_UP, + &SCROLL_UP, + &SCROLL_DOWN, + &SCROLL_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output @@ -209,13 +214,13 @@ pub fn max_panes() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &QUIT, ]); let mut opts = Opt::default(); opts.max_panes = Some(4); @@ -241,23 +246,23 @@ pub fn toggle_focused_pane_fullscreen() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - SPAWN_TERMINAL, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - MOVE_FOCUS, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - MOVE_FOCUS, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - MOVE_FOCUS, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &SPAWN_TERMINAL, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &MOVE_FOCUS, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &MOVE_FOCUS, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &MOVE_FOCUS, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &QUIT, ]); let mut opts = Opt::default(); opts.max_panes = Some(4); diff --git a/src/tests/integration/close_pane.rs b/src/tests/integration/close_pane.rs index 6658242f..b0c02751 100644 --- a/src/tests/integration/close_pane.rs +++ b/src/tests/integration/close_pane.rs @@ -32,11 +32,11 @@ pub fn close_pane_with_another_pane_above_it() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -69,12 +69,12 @@ pub fn close_pane_with_another_pane_below_it() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -105,11 +105,11 @@ pub fn close_pane_with_another_pane_to_the_left() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -140,12 +140,12 @@ pub fn close_pane_with_another_pane_to_the_right() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -178,15 +178,15 @@ pub fn close_pane_with_multiple_panes_above_it() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -219,13 +219,13 @@ pub fn close_pane_with_multiple_panes_below_it() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -258,15 +258,15 @@ pub fn close_pane_with_multiple_panes_to_the_left() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -299,13 +299,13 @@ pub fn close_pane_with_multiple_panes_to_the_right() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -338,27 +338,27 @@ pub fn close_pane_with_multiple_panes_above_it_away_from_screen_edges() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - RESIZE_UP, - MOVE_FOCUS, - RESIZE_UP, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &RESIZE_UP, + &MOVE_FOCUS, + &RESIZE_UP, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -391,27 +391,27 @@ pub fn close_pane_with_multiple_panes_below_it_away_from_screen_edges() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - RESIZE_DOWN, - MOVE_FOCUS, - RESIZE_DOWN, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &RESIZE_DOWN, + &MOVE_FOCUS, + &RESIZE_DOWN, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -446,27 +446,27 @@ pub fn close_pane_with_multiple_panes_to_the_left_away_from_screen_edges() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - RESIZE_LEFT, - MOVE_FOCUS, - RESIZE_LEFT, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &RESIZE_LEFT, + &MOVE_FOCUS, + &RESIZE_LEFT, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -501,27 +501,27 @@ pub fn close_pane_with_multiple_panes_to_the_right_away_from_screen_edges() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - RESIZE_LEFT, - MOVE_FOCUS, - RESIZE_LEFT, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &RESIZE_LEFT, + &MOVE_FOCUS, + &RESIZE_LEFT, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -546,14 +546,14 @@ pub fn closing_last_pane_exits_app() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - CLOSE_FOCUSED_PANE, - CLOSE_FOCUSED_PANE, - CLOSE_FOCUSED_PANE, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &CLOSE_FOCUSED_PANE, + &CLOSE_FOCUSED_PANE, + &CLOSE_FOCUSED_PANE, ]); start(Box::new(fake_input_output.clone()), Opt::default()); diff --git a/src/tests/integration/compatibility.rs b/src/tests/integration/compatibility.rs index 8034bfb4..c244f5bf 100644 --- a/src/tests/integration/compatibility.rs +++ b/src/tests/integration/compatibility.rs @@ -39,7 +39,7 @@ pub fn run_bandwhich_from_fish_shell() { }; let fixture_name = "fish_and_bandwhich"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -62,7 +62,7 @@ pub fn fish_tab_completion_options() { }; let fixture_name = "fish_tab_completion_options"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -90,7 +90,7 @@ pub fn fish_select_tab_completion_options() { }; let fixture_name = "fish_select_tab_completion_options"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -122,8 +122,7 @@ pub fn vim_scroll_region_down() { }; let fixture_name = "vim_scroll_region_down"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - // fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, 17]); // quit (ctrl-q) - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); // quit (ctrl-q) + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); // quit (ctrl-q) start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -152,7 +151,7 @@ pub fn vim_ctrl_d() { }; let fixture_name = "vim_ctrl_d"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -180,7 +179,7 @@ pub fn vim_ctrl_u() { }; let fixture_name = "vim_ctrl_u"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer @@ -203,7 +202,7 @@ pub fn htop() { }; let fixture_name = "htop"; let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); start(Box::new(fake_input_output.clone()), Opt::default()); let output_frames = fake_input_output .stdout_writer diff --git a/src/tests/integration/layouts.rs b/src/tests/integration/layouts.rs index cef96d87..efc7d8b3 100644 --- a/src/tests/integration/layouts.rs +++ b/src/tests/integration/layouts.rs @@ -20,7 +20,7 @@ pub fn accepts_basic_layout() { y: 0, }; let mut fake_input_output = get_fake_os_input(&fake_win_size); - fake_input_output.add_terminal_input(&[COMMAND_TOGGLE, COMMAND_TOGGLE, QUIT]); + fake_input_output.add_terminal_input(&[&COMMAND_TOGGLE, &COMMAND_TOGGLE, &QUIT]); let mut opts = Opt::default(); opts.layout = Some(PathBuf::from( "src/tests/fixtures/layouts/three-panes-with-nesting.yaml", @@ -61,7 +61,7 @@ pub fn should_throw_for_more_than_100_percent_total() { y: 0, }; let mut fake_input_output = get_fake_os_input(&fake_win_size); - fake_input_output.add_terminal_input(&[QUIT]); + fake_input_output.add_terminal_input(&[&QUIT]); let mut opts = Opt::default(); opts.layout = Some(PathBuf::from( @@ -81,7 +81,7 @@ pub fn should_throw_for_less_than_100_percent_total() { y: 0, }; let mut fake_input_output = get_fake_os_input(&fake_win_size); - fake_input_output.add_terminal_input(&[QUIT]); + fake_input_output.add_terminal_input(&[&QUIT]); let mut opts = Opt::default(); opts.layout = Some(PathBuf::from( diff --git a/src/tests/integration/resize_down.rs b/src/tests/integration/resize_down.rs index c17eecdf..7f5bd742 100644 --- a/src/tests/integration/resize_down.rs +++ b/src/tests/integration/resize_down.rs @@ -33,11 +33,11 @@ pub fn resize_down_with_pane_above() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -70,12 +70,12 @@ pub fn resize_down_with_pane_below() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -111,14 +111,14 @@ pub fn resize_down_with_panes_above_and_below() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -152,15 +152,15 @@ pub fn resize_down_with_multiple_panes_above() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -195,17 +195,17 @@ pub fn resize_down_with_panes_above_aligned_left_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -240,16 +240,16 @@ pub fn resize_down_with_panes_below_aligned_left_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -284,14 +284,14 @@ pub fn resize_down_with_panes_above_aligned_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -326,15 +326,15 @@ pub fn resize_down_with_panes_below_aligned_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -369,18 +369,18 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -415,20 +415,20 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -463,35 +463,35 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_panes_to_the_lef let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - RESIZE_LEFT, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &RESIZE_LEFT, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -526,37 +526,37 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_to_the_left_and_ let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - RESIZE_LEFT, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_DOWN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &RESIZE_LEFT, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_DOWN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); diff --git a/src/tests/integration/resize_left.rs b/src/tests/integration/resize_left.rs index 1ce24c97..705c018e 100644 --- a/src/tests/integration/resize_left.rs +++ b/src/tests/integration/resize_left.rs @@ -29,11 +29,11 @@ pub fn resize_left_with_pane_to_the_left() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -64,12 +64,12 @@ pub fn resize_left_with_pane_to_the_right() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -100,14 +100,14 @@ pub fn resize_left_with_panes_to_the_left_and_right() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -139,15 +139,15 @@ pub fn resize_left_with_multiple_panes_to_the_left() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -180,17 +180,17 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -223,14 +223,14 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -263,16 +263,16 @@ pub fn resize_left_with_panes_to_the_left_aligned_bottom_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -305,15 +305,15 @@ pub fn resize_left_with_panes_to_the_right_aligned_bottom_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -348,18 +348,18 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_current_pa let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -394,20 +394,20 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_current_p let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -442,35 +442,35 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abov let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_UP, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_UP, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -506,37 +506,37 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_panes_abo let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_UP, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_LEFT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_UP, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_LEFT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); diff --git a/src/tests/integration/resize_right.rs b/src/tests/integration/resize_right.rs index a99b1858..93eefc91 100644 --- a/src/tests/integration/resize_right.rs +++ b/src/tests/integration/resize_right.rs @@ -29,11 +29,11 @@ pub fn resize_right_with_pane_to_the_left() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -64,12 +64,12 @@ pub fn resize_right_with_pane_to_the_right() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -100,14 +100,14 @@ pub fn resize_right_with_panes_to_the_left_and_right() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -139,15 +139,15 @@ pub fn resize_right_with_multiple_panes_to_the_left() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -180,17 +180,17 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -223,14 +223,14 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -263,16 +263,16 @@ pub fn resize_right_with_panes_to_the_left_aligned_bottom_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -305,15 +305,15 @@ pub fn resize_right_with_panes_to_the_right_aligned_bottom_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -348,18 +348,18 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_current_p let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -394,20 +394,20 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_current_ let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -442,35 +442,35 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abo let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_UP, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_UP, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -505,37 +505,37 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_panes_ab let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_UP, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - RESIZE_UP, - RESIZE_RIGHT, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_UP, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &RESIZE_UP, + &RESIZE_RIGHT, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); diff --git a/src/tests/integration/resize_up.rs b/src/tests/integration/resize_up.rs index ce3708e6..26962c46 100644 --- a/src/tests/integration/resize_up.rs +++ b/src/tests/integration/resize_up.rs @@ -31,11 +31,11 @@ pub fn resize_up_with_pane_above() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -68,12 +68,12 @@ pub fn resize_up_with_pane_below() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -109,14 +109,14 @@ pub fn resize_up_with_panes_above_and_below() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -149,15 +149,15 @@ pub fn resize_up_with_multiple_panes_above() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -190,17 +190,17 @@ pub fn resize_up_with_panes_above_aligned_left_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -235,16 +235,16 @@ pub fn resize_up_with_panes_below_aligned_left_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -279,14 +279,14 @@ pub fn resize_up_with_panes_above_aligned_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -321,15 +321,15 @@ pub fn resize_up_with_panes_below_aligned_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -364,18 +364,18 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -410,20 +410,20 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_current_pane() { let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -458,35 +458,35 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_panes_to_the_left_ let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - RESIZE_LEFT, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &RESIZE_LEFT, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -521,37 +521,37 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_to_the_left_and_ri let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - RESIZE_LEFT, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_HORIZONTALLY, - MOVE_FOCUS, - MOVE_FOCUS, - SPLIT_VERTICALLY, - SPLIT_VERTICALLY, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_LEFT, - RESIZE_LEFT, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - MOVE_FOCUS, - RESIZE_UP, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &RESIZE_LEFT, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_HORIZONTALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &SPLIT_VERTICALLY, + &SPLIT_VERTICALLY, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_LEFT, + &RESIZE_LEFT, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &MOVE_FOCUS, + &RESIZE_UP, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); diff --git a/src/tests/integration/toggle_fullscreen.rs b/src/tests/integration/toggle_fullscreen.rs index e5a8f599..561e63e6 100644 --- a/src/tests/integration/toggle_fullscreen.rs +++ b/src/tests/integration/toggle_fullscreen.rs @@ -24,13 +24,13 @@ pub fn adding_new_terminal_in_fullscreen() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - SPLIT_HORIZONTALLY, - CLOSE_FOCUSED_PANE, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &SPLIT_HORIZONTALLY, + &CLOSE_FOCUSED_PANE, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); @@ -55,13 +55,13 @@ pub fn move_focus_is_disabled_in_fullscreen() { }; let mut fake_input_output = get_fake_os_input(&fake_win_size); fake_input_output.add_terminal_input(&[ - COMMAND_TOGGLE, - COMMAND_TOGGLE, - SPLIT_VERTICALLY, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - MOVE_FOCUS, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - QUIT, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SPLIT_VERTICALLY, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &MOVE_FOCUS, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &QUIT, ]); start(Box::new(fake_input_output.clone()), Opt::default()); diff --git a/src/tests/utils.rs b/src/tests/utils.rs index 25750a90..49c6a3f8 100644 --- a/src/tests/utils.rs +++ b/src/tests/utils.rs @@ -40,31 +40,31 @@ pub fn get_output_frame_snapshots( pub mod commands { /// ctrl-g - pub const COMMAND_TOGGLE: [u8; 10] = [7, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const COMMAND_TOGGLE: [u8; 1] = [7]; /// b - pub const SPLIT_HORIZONTALLY: [u8; 10] = [98, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const SPLIT_HORIZONTALLY: [u8; 1] = [98]; /// n - pub const SPLIT_VERTICALLY: [u8; 10] = [110, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const SPLIT_VERTICALLY: [u8; 1] = [110]; /// j - pub const RESIZE_DOWN: [u8; 10] = [106, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const RESIZE_DOWN: [u8; 1] = [106]; /// k - pub const RESIZE_UP: [u8; 10] = [107, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const RESIZE_UP: [u8; 1] = [107]; /// p - pub const MOVE_FOCUS: [u8; 10] = [112, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const MOVE_FOCUS: [u8; 1] = [112]; /// h - pub const RESIZE_LEFT: [u8; 10] = [104, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const RESIZE_LEFT: [u8; 1] = [104]; /// l - pub const RESIZE_RIGHT: [u8; 10] = [108, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const RESIZE_RIGHT: [u8; 1] = [108]; /// z - pub const SPAWN_TERMINAL: [u8; 10] = [122, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const SPAWN_TERMINAL: [u8; 1] = [122]; /// q - pub const QUIT: [u8; 10] = [113, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const QUIT: [u8; 1] = [113]; /// PgUp - pub const SCROLL_UP: [u8; 10] = [27, 91, 53, 126, 0, 0, 0, 0, 0, 0]; + pub const SCROLL_UP: [u8; 4] = [27, 91, 53, 126]; /// PgDn - pub const SCROLL_DOWN: [u8; 10] = [27, 91, 54, 126, 0, 0, 0, 0, 0, 0]; + pub const SCROLL_DOWN: [u8; 4] = [27, 91, 54, 126]; /// x - pub const CLOSE_FOCUSED_PANE: [u8; 10] = [120, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const CLOSE_FOCUSED_PANE: [u8; 1] = [120]; /// e - pub const TOGGLE_ACTIVE_TERMINAL_FULLSCREEN: [u8; 10] = [101, 0, 0, 0, 0, 0, 0, 0, 0, 0]; + pub const TOGGLE_ACTIVE_TERMINAL_FULLSCREEN: [u8; 1] = [101]; }