wip: merge main
This commit is contained in:
commit
47a918a53c
32 changed files with 335 additions and 130 deletions
99
.github/workflows/release.yml
vendored
99
.github/workflows/release.yml
vendored
|
|
@ -1,99 +0,0 @@
|
||||||
name: Packaging
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
tags:
|
|
||||||
- 'v*.*.*'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish:
|
|
||||||
name: Publish on ${{ matrix.os }} for ${{ matrix.target }}
|
|
||||||
runs-on: ${{ matrix.os }}
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
target:
|
|
||||||
- x86_64-unknown-linux-gnu
|
|
||||||
- x86_64-unknown-linux-musl
|
|
||||||
- x86_64-apple-darwin
|
|
||||||
|
|
||||||
include:
|
|
||||||
- os: ubuntu-18.04
|
|
||||||
target: x86_64-unknown-linux-gnu
|
|
||||||
client_artifact_name: target/x86_64-unknown-linux-gnu/release/mosaic
|
|
||||||
client_release_name: mosaic-x86_64-unknown-linux-gnu
|
|
||||||
strip: true
|
|
||||||
|
|
||||||
- os: ubuntu-18.04
|
|
||||||
target: x86_64-unknown-linux-musl
|
|
||||||
client_artifact_name: target/x86_64-unknown-linux-musl/release/mosaic
|
|
||||||
client_release_name: mosaic-x86_64-unknown-linux-musl
|
|
||||||
strip: true
|
|
||||||
|
|
||||||
- os: macos-latest
|
|
||||||
target: x86_64-apple-darwin
|
|
||||||
client_artifact_name: target/x86_64-apple-darwin/release/mosaic
|
|
||||||
client_release_name: mosaic-x86_64-macos-darwin
|
|
||||||
strip: true
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- name: Setup Rust toolchain
|
|
||||||
uses: actions-rs/toolchain@v1
|
|
||||||
with:
|
|
||||||
toolchain: stable
|
|
||||||
target: ${{ matrix.target }}
|
|
||||||
override: true
|
|
||||||
|
|
||||||
- name: Install musl
|
|
||||||
if: matrix.target == 'x86_64-unknown-linux-musl'
|
|
||||||
run: |
|
|
||||||
sudo apt update
|
|
||||||
sudo apt install musl-tools -y
|
|
||||||
|
|
||||||
- name: cargo build
|
|
||||||
uses: actions-rs/cargo@v1
|
|
||||||
with:
|
|
||||||
command: build
|
|
||||||
args: --release --locked --target=${{ matrix.target }}
|
|
||||||
|
|
||||||
|
|
||||||
- name: Compress client
|
|
||||||
uses: svenstaro/upx-action@v2
|
|
||||||
with:
|
|
||||||
file: ${{ matrix.client_artifact_name }}
|
|
||||||
args: --lzma
|
|
||||||
strip: ${{ matrix.strip }}
|
|
||||||
|
|
||||||
|
|
||||||
# TODO?
|
|
||||||
# - name: Get CHANGELOG.md entry
|
|
||||||
# id: changelog_reader
|
|
||||||
# uses: mindsers/changelog-reader-action@v1.2.0
|
|
||||||
# with:
|
|
||||||
# path: ./CHANGELOG.md
|
|
||||||
|
|
||||||
- name: Upload client binaries to release
|
|
||||||
uses: svenstaro/upload-release-action@v2
|
|
||||||
with:
|
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
file: ${{ matrix.client_artifact_name }}
|
|
||||||
asset_name: ${{ matrix.client_release_name }}
|
|
||||||
tag: ${{ github.ref }}
|
|
||||||
|
|
||||||
deb-build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@master
|
|
||||||
- name: Deb Build
|
|
||||||
uses: ebbflow-io/cargo-deb-amd64-ubuntu@1.0
|
|
||||||
|
|
||||||
- name: Upload deb to release
|
|
||||||
uses: svenstaro/upload-release-action@v2
|
|
||||||
with:
|
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
file: target/x86_64-unknown-linux-musl/debian/mosaic*
|
|
||||||
asset_name: mosaic-amd64.deb
|
|
||||||
tag: ${{ github.ref }}
|
|
||||||
file_glob: true
|
|
||||||
|
|
@ -5,12 +5,17 @@ All notable changes to this project will be documented in this file.
|
||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
* Doesn't quit anymore on single `q` press while in tab mode (https://github.com/zellij-org/zellij/pull/342)
|
||||||
|
|
||||||
|
## [0.5.1] - 2021-04-23
|
||||||
* Change config to flag (https://github.com/zellij-org/zellij/pull/300)
|
* Change config to flag (https://github.com/zellij-org/zellij/pull/300)
|
||||||
* Add ZELLIJ environment variable on startup (https://github.com/zellij-org/zellij/pull/305)
|
* Add ZELLIJ environment variable on startup (https://github.com/zellij-org/zellij/pull/305)
|
||||||
* Terminal fix: do not clear line if it's not there (https://github.com/zellij-org/zellij/pull/289)
|
* Terminal fix: do not clear line if it's not there (https://github.com/zellij-org/zellij/pull/289)
|
||||||
* Do not allow opening new pane on the status bar (https://github.com/zellij-org/zellij/pull/314)
|
* Do not allow opening new pane on the status bar (https://github.com/zellij-org/zellij/pull/314)
|
||||||
* Allow scrolling by full pages (https://github.com/zellij-org/zellij/pull/298)
|
* Allow scrolling by full pages (https://github.com/zellij-org/zellij/pull/298)
|
||||||
* Reduce crate size by 4.8MB using `cargo diet`, to 77kB (https://github.com/zellij-org/zellij/pull/293)
|
* Reduce crate size by 4.8MB using `cargo diet`, to 77kB (https://github.com/zellij-org/zellij/pull/293)
|
||||||
|
* Draw UI properly when instantiated as the default terminal command (https://github.com/zellij-org/zellij/pull/323)
|
||||||
|
* Resolve ambiguous pane movements by their activity history (https://github.com/zellij-org/zellij/pull/294)
|
||||||
|
|
||||||
## [0.5.0] - 2021-04-20
|
## [0.5.0] - 2021-04-20
|
||||||
Beta release with all the things
|
Beta release with all the things
|
||||||
|
|
|
||||||
2
Cargo.lock
generated
2
Cargo.lock
generated
|
|
@ -2217,7 +2217,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zellij"
|
name = "zellij"
|
||||||
version = "0.5.0"
|
version = "0.6.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ansi_term 0.12.1",
|
"ansi_term 0.12.1",
|
||||||
"async-std",
|
"async-std",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "zellij"
|
name = "zellij"
|
||||||
version = "0.5.0"
|
version = "0.6.0"
|
||||||
authors = ["Aram Drevekenin <aram@poor.dev>"]
|
authors = ["Aram Drevekenin <aram@poor.dev>"]
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
description = "A terminal workspace with batteries included"
|
description = "A terminal workspace with batteries included"
|
||||||
|
|
|
||||||
|
|
@ -17,14 +17,17 @@ fn split_space_to_parts_vertically(
|
||||||
|
|
||||||
// First fit in the parameterized sizes
|
// First fit in the parameterized sizes
|
||||||
for size in sizes {
|
for size in sizes {
|
||||||
let columns = match size {
|
let (columns, max_columns) = match size {
|
||||||
Some(SplitSize::Percent(percent)) => {
|
Some(SplitSize::Percent(percent)) => {
|
||||||
(max_width as f32 * (percent as f32 / 100.0)) as usize
|
((max_width as f32 * (percent as f32 / 100.0)) as usize, None)
|
||||||
} // TODO: round properly
|
} // TODO: round properly
|
||||||
Some(SplitSize::Fixed(size)) => size as usize,
|
Some(SplitSize::Fixed(size)) => (size as usize, Some(size as usize)),
|
||||||
None => {
|
None => {
|
||||||
parts_to_grow.push(current_x_position);
|
parts_to_grow.push(current_x_position);
|
||||||
1 // This is grown later on
|
(
|
||||||
|
1, // This is grown later on
|
||||||
|
None,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
split_parts.push(PositionAndSize {
|
split_parts.push(PositionAndSize {
|
||||||
|
|
@ -32,6 +35,8 @@ fn split_space_to_parts_vertically(
|
||||||
y: space_to_split.y,
|
y: space_to_split.y,
|
||||||
columns,
|
columns,
|
||||||
rows: space_to_split.rows,
|
rows: space_to_split.rows,
|
||||||
|
max_columns,
|
||||||
|
..Default::default()
|
||||||
});
|
});
|
||||||
current_width += columns;
|
current_width += columns;
|
||||||
current_x_position += columns + 1; // 1 for gap
|
current_x_position += columns + 1; // 1 for gap
|
||||||
|
|
@ -80,14 +85,18 @@ fn split_space_to_parts_horizontally(
|
||||||
let mut parts_to_grow = Vec::new();
|
let mut parts_to_grow = Vec::new();
|
||||||
|
|
||||||
for size in sizes {
|
for size in sizes {
|
||||||
let rows = match size {
|
let (rows, max_rows) = match size {
|
||||||
Some(SplitSize::Percent(percent)) => {
|
Some(SplitSize::Percent(percent)) => (
|
||||||
(max_height as f32 * (percent as f32 / 100.0)) as usize
|
(max_height as f32 * (percent as f32 / 100.0)) as usize,
|
||||||
} // TODO: round properly
|
None,
|
||||||
Some(SplitSize::Fixed(size)) => size as usize,
|
), // TODO: round properly
|
||||||
|
Some(SplitSize::Fixed(size)) => (size as usize, Some(size as usize)),
|
||||||
None => {
|
None => {
|
||||||
parts_to_grow.push(current_y_position);
|
parts_to_grow.push(current_y_position);
|
||||||
1 // This is grown later on
|
(
|
||||||
|
1, // This is grown later on
|
||||||
|
None,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
split_parts.push(PositionAndSize {
|
split_parts.push(PositionAndSize {
|
||||||
|
|
@ -95,6 +104,8 @@ fn split_space_to_parts_horizontally(
|
||||||
y: current_y_position,
|
y: current_y_position,
|
||||||
columns: space_to_split.columns,
|
columns: space_to_split.columns,
|
||||||
rows,
|
rows,
|
||||||
|
max_rows,
|
||||||
|
..Default::default()
|
||||||
});
|
});
|
||||||
current_height += rows;
|
current_height += rows;
|
||||||
current_y_position += rows + 1; // 1 for gap
|
current_y_position += rows + 1; // 1 for gap
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,10 @@
|
||||||
use crate::{common::SenderWithContext, pty_bus::VteBytes, tab::Pane, wasm_vm::PluginInstruction};
|
use crate::{common::SenderWithContext, pty_bus::VteBytes, tab::Pane, wasm_vm::PluginInstruction};
|
||||||
|
|
||||||
use std::{sync::mpsc::channel, unimplemented};
|
|
||||||
|
|
||||||
use crate::panes::{PaneId, PositionAndSize};
|
use crate::panes::{PaneId, PositionAndSize};
|
||||||
|
|
||||||
|
use std::time::Instant;
|
||||||
|
use std::{sync::mpsc::channel, unimplemented};
|
||||||
|
|
||||||
pub struct PluginPane {
|
pub struct PluginPane {
|
||||||
pub pid: u32,
|
pub pid: u32,
|
||||||
pub should_render: bool,
|
pub should_render: bool,
|
||||||
|
|
@ -13,6 +14,8 @@ pub struct PluginPane {
|
||||||
pub position_and_size_override: Option<PositionAndSize>,
|
pub position_and_size_override: Option<PositionAndSize>,
|
||||||
pub send_plugin_instructions: SenderWithContext<PluginInstruction>,
|
pub send_plugin_instructions: SenderWithContext<PluginInstruction>,
|
||||||
pub max_height: Option<usize>,
|
pub max_height: Option<usize>,
|
||||||
|
pub max_width: Option<usize>,
|
||||||
|
pub active_at: Instant,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl PluginPane {
|
impl PluginPane {
|
||||||
|
|
@ -30,6 +33,8 @@ impl PluginPane {
|
||||||
position_and_size_override: None,
|
position_and_size_override: None,
|
||||||
send_plugin_instructions,
|
send_plugin_instructions,
|
||||||
max_height: None,
|
max_height: None,
|
||||||
|
max_width: None,
|
||||||
|
active_at: Instant::now(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -73,6 +78,7 @@ impl Pane for PluginPane {
|
||||||
y,
|
y,
|
||||||
rows: size.rows,
|
rows: size.rows,
|
||||||
columns: size.columns,
|
columns: size.columns,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
self.position_and_size_override = Some(position_and_size_override);
|
self.position_and_size_override = Some(position_and_size_override);
|
||||||
self.should_render = true;
|
self.should_render = true;
|
||||||
|
|
@ -108,6 +114,9 @@ impl Pane for PluginPane {
|
||||||
fn set_max_height(&mut self, max_height: usize) {
|
fn set_max_height(&mut self, max_height: usize) {
|
||||||
self.max_height = Some(max_height);
|
self.max_height = Some(max_height);
|
||||||
}
|
}
|
||||||
|
fn set_max_width(&mut self, max_width: usize) {
|
||||||
|
self.max_width = Some(max_width);
|
||||||
|
}
|
||||||
fn render(&mut self) -> Option<String> {
|
fn render(&mut self) -> Option<String> {
|
||||||
// if self.should_render {
|
// if self.should_render {
|
||||||
if true {
|
if true {
|
||||||
|
|
@ -195,7 +204,18 @@ impl Pane for PluginPane {
|
||||||
fn max_height(&self) -> Option<usize> {
|
fn max_height(&self) -> Option<usize> {
|
||||||
self.max_height
|
self.max_height
|
||||||
}
|
}
|
||||||
|
fn max_width(&self) -> Option<usize> {
|
||||||
|
self.max_width
|
||||||
|
}
|
||||||
fn invisible_borders(&self) -> bool {
|
fn invisible_borders(&self) -> bool {
|
||||||
self.invisible_borders
|
self.invisible_borders
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn active_at(&self) -> Instant {
|
||||||
|
self.active_at
|
||||||
|
}
|
||||||
|
|
||||||
|
fn set_active_at(&mut self, time: Instant) {
|
||||||
|
self.active_at = time;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ use crate::tab::Pane;
|
||||||
use ::nix::pty::Winsize;
|
use ::nix::pty::Winsize;
|
||||||
use ::std::os::unix::io::RawFd;
|
use ::std::os::unix::io::RawFd;
|
||||||
use std::fmt::Debug;
|
use std::fmt::Debug;
|
||||||
|
use std::time::Instant;
|
||||||
|
|
||||||
use crate::panes::grid::Grid;
|
use crate::panes::grid::Grid;
|
||||||
use crate::panes::terminal_character::{
|
use crate::panes::terminal_character::{
|
||||||
|
|
@ -23,6 +24,8 @@ pub struct PositionAndSize {
|
||||||
pub y: usize,
|
pub y: usize,
|
||||||
pub rows: usize,
|
pub rows: usize,
|
||||||
pub columns: usize,
|
pub columns: usize,
|
||||||
|
pub max_rows: Option<usize>,
|
||||||
|
pub max_columns: Option<usize>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl From<Winsize> for PositionAndSize {
|
impl From<Winsize> for PositionAndSize {
|
||||||
|
|
@ -42,6 +45,8 @@ pub struct TerminalPane {
|
||||||
pub position_and_size: PositionAndSize,
|
pub position_and_size: PositionAndSize,
|
||||||
pub position_and_size_override: Option<PositionAndSize>,
|
pub position_and_size_override: Option<PositionAndSize>,
|
||||||
pub max_height: Option<usize>,
|
pub max_height: Option<usize>,
|
||||||
|
pub max_width: Option<usize>,
|
||||||
|
pub active_at: Instant,
|
||||||
vte_parser: vte::Parser,
|
vte_parser: vte::Parser,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -73,6 +78,7 @@ impl Pane for TerminalPane {
|
||||||
y,
|
y,
|
||||||
rows: size.rows,
|
rows: size.rows,
|
||||||
columns: size.columns,
|
columns: size.columns,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
self.position_and_size_override = Some(position_and_size_override);
|
self.position_and_size_override = Some(position_and_size_override);
|
||||||
self.reflow_lines();
|
self.reflow_lines();
|
||||||
|
|
@ -147,12 +153,18 @@ impl Pane for TerminalPane {
|
||||||
fn set_max_height(&mut self, max_height: usize) {
|
fn set_max_height(&mut self, max_height: usize) {
|
||||||
self.max_height = Some(max_height);
|
self.max_height = Some(max_height);
|
||||||
}
|
}
|
||||||
|
fn set_max_width(&mut self, max_width: usize) {
|
||||||
|
self.max_width = Some(max_width);
|
||||||
|
}
|
||||||
fn set_invisible_borders(&mut self, _invisible_borders: bool) {
|
fn set_invisible_borders(&mut self, _invisible_borders: bool) {
|
||||||
unimplemented!();
|
unimplemented!();
|
||||||
}
|
}
|
||||||
fn max_height(&self) -> Option<usize> {
|
fn max_height(&self) -> Option<usize> {
|
||||||
self.max_height
|
self.max_height
|
||||||
}
|
}
|
||||||
|
fn max_width(&self) -> Option<usize> {
|
||||||
|
self.max_width
|
||||||
|
}
|
||||||
fn render(&mut self) -> Option<String> {
|
fn render(&mut self) -> Option<String> {
|
||||||
// FIXME:
|
// FIXME:
|
||||||
// the below conditional is commented out because it causes several bugs:
|
// the below conditional is commented out because it causes several bugs:
|
||||||
|
|
@ -272,6 +284,14 @@ impl Pane for TerminalPane {
|
||||||
self.grid.reset_viewport();
|
self.grid.reset_viewport();
|
||||||
self.grid.should_render = true;
|
self.grid.should_render = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn active_at(&self) -> Instant {
|
||||||
|
self.active_at
|
||||||
|
}
|
||||||
|
|
||||||
|
fn set_active_at(&mut self, time: Instant) {
|
||||||
|
self.active_at = time;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl TerminalPane {
|
impl TerminalPane {
|
||||||
|
|
@ -284,7 +304,9 @@ impl TerminalPane {
|
||||||
position_and_size,
|
position_and_size,
|
||||||
position_and_size_override: None,
|
position_and_size_override: None,
|
||||||
max_height: None,
|
max_height: None,
|
||||||
|
max_width: None,
|
||||||
vte_parser: vte::Parser::new(),
|
vte_parser: vte::Parser::new(),
|
||||||
|
active_at: Instant::now(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pub fn get_x(&self) -> usize {
|
pub fn get_x(&self) -> usize {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ use crate::wasm_vm::PluginInstruction;
|
||||||
use crate::{boundaries::Boundaries, panes::PluginPane};
|
use crate::{boundaries::Boundaries, panes::PluginPane};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use std::os::unix::io::RawFd;
|
use std::os::unix::io::RawFd;
|
||||||
|
use std::time::Instant;
|
||||||
use std::{
|
use std::{
|
||||||
cmp::Reverse,
|
cmp::Reverse,
|
||||||
collections::{BTreeMap, HashSet},
|
collections::{BTreeMap, HashSet},
|
||||||
|
|
@ -107,6 +108,7 @@ pub trait Pane {
|
||||||
fn set_selectable(&mut self, selectable: bool);
|
fn set_selectable(&mut self, selectable: bool);
|
||||||
fn set_invisible_borders(&mut self, invisible_borders: bool);
|
fn set_invisible_borders(&mut self, invisible_borders: bool);
|
||||||
fn set_max_height(&mut self, max_height: usize);
|
fn set_max_height(&mut self, max_height: usize);
|
||||||
|
fn set_max_width(&mut self, max_width: usize);
|
||||||
fn render(&mut self) -> Option<String>;
|
fn render(&mut self) -> Option<String>;
|
||||||
fn pid(&self) -> PaneId;
|
fn pid(&self) -> PaneId;
|
||||||
fn reduce_height_down(&mut self, count: usize);
|
fn reduce_height_down(&mut self, count: usize);
|
||||||
|
|
@ -124,6 +126,8 @@ pub trait Pane {
|
||||||
fn scroll_up(&mut self, count: usize);
|
fn scroll_up(&mut self, count: usize);
|
||||||
fn scroll_down(&mut self, count: usize);
|
fn scroll_down(&mut self, count: usize);
|
||||||
fn clear_scroll(&mut self);
|
fn clear_scroll(&mut self);
|
||||||
|
fn active_at(&self) -> Instant;
|
||||||
|
fn set_active_at(&mut self, instant: Instant);
|
||||||
|
|
||||||
fn right_boundary_x_coords(&self) -> usize {
|
fn right_boundary_x_coords(&self) -> usize {
|
||||||
self.x() + self.columns()
|
self.x() + self.columns()
|
||||||
|
|
@ -173,6 +177,7 @@ pub trait Pane {
|
||||||
y: self.y(),
|
y: self.y(),
|
||||||
columns: self.columns(),
|
columns: self.columns(),
|
||||||
rows: self.rows(),
|
rows: self.rows(),
|
||||||
|
..Default::default()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fn can_increase_height_by(&self, increase_by: usize) -> bool {
|
fn can_increase_height_by(&self, increase_by: usize) -> bool {
|
||||||
|
|
@ -267,6 +272,7 @@ impl Tab {
|
||||||
y: 0,
|
y: 0,
|
||||||
rows: self.full_screen_ws.rows,
|
rows: self.full_screen_ws.rows,
|
||||||
columns: self.full_screen_ws.columns,
|
columns: self.full_screen_ws.columns,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
self.panes_to_hide.clear();
|
self.panes_to_hide.clear();
|
||||||
let positions_in_layout = layout.position_panes_in_space(&free_space);
|
let positions_in_layout = layout.position_panes_in_space(&free_space);
|
||||||
|
|
@ -277,6 +283,12 @@ impl Tab {
|
||||||
match positions_and_size.next() {
|
match positions_and_size.next() {
|
||||||
Some((_, position_and_size)) => {
|
Some((_, position_and_size)) => {
|
||||||
terminal_pane.reset_size_and_position_override();
|
terminal_pane.reset_size_and_position_override();
|
||||||
|
if let Some(max_rows) = position_and_size.max_rows {
|
||||||
|
terminal_pane.set_max_height(max_rows);
|
||||||
|
}
|
||||||
|
if let Some(max_columns) = position_and_size.max_columns {
|
||||||
|
terminal_pane.set_max_width(max_columns);
|
||||||
|
}
|
||||||
terminal_pane.change_pos_and_size(&position_and_size);
|
terminal_pane.change_pos_and_size(&position_and_size);
|
||||||
self.os_api.set_terminal_size_using_fd(
|
self.os_api.set_terminal_size_using_fd(
|
||||||
*pid,
|
*pid,
|
||||||
|
|
@ -301,11 +313,17 @@ impl Tab {
|
||||||
.send(PluginInstruction::Load(pid_tx, plugin.clone()))
|
.send(PluginInstruction::Load(pid_tx, plugin.clone()))
|
||||||
.unwrap();
|
.unwrap();
|
||||||
let pid = pid_rx.recv().unwrap();
|
let pid = pid_rx.recv().unwrap();
|
||||||
let new_plugin = PluginPane::new(
|
let mut new_plugin = PluginPane::new(
|
||||||
pid,
|
pid,
|
||||||
*position_and_size,
|
*position_and_size,
|
||||||
self.send_plugin_instructions.clone(),
|
self.send_plugin_instructions.clone(),
|
||||||
);
|
);
|
||||||
|
if let Some(max_rows) = position_and_size.max_rows {
|
||||||
|
new_plugin.set_max_height(max_rows);
|
||||||
|
}
|
||||||
|
if let Some(max_columns) = position_and_size.max_columns {
|
||||||
|
new_plugin.set_max_width(max_columns);
|
||||||
|
}
|
||||||
self.panes.insert(PaneId::Plugin(pid), Box::new(new_plugin));
|
self.panes.insert(PaneId::Plugin(pid), Box::new(new_plugin));
|
||||||
// Send an initial mode update to the newly loaded plugin only!
|
// Send an initial mode update to the newly loaded plugin only!
|
||||||
self.send_plugin_instructions
|
self.send_plugin_instructions
|
||||||
|
|
@ -388,6 +406,7 @@ impl Tab {
|
||||||
columns: terminal_to_split.columns(),
|
columns: terminal_to_split.columns(),
|
||||||
x: terminal_to_split.x(),
|
x: terminal_to_split.x(),
|
||||||
y: terminal_to_split.y(),
|
y: terminal_to_split.y(),
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
if terminal_to_split.rows() * CURSOR_HEIGHT_WIDTH_RATIO > terminal_to_split.columns()
|
if terminal_to_split.rows() * CURSOR_HEIGHT_WIDTH_RATIO > terminal_to_split.columns()
|
||||||
&& terminal_to_split.rows() > terminal_to_split.min_height() * 2
|
&& terminal_to_split.rows() > terminal_to_split.min_height() * 2
|
||||||
|
|
@ -466,6 +485,7 @@ impl Tab {
|
||||||
y: active_pane.y(),
|
y: active_pane.y(),
|
||||||
rows: active_pane.rows(),
|
rows: active_pane.rows(),
|
||||||
columns: active_pane.columns(),
|
columns: active_pane.columns(),
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let (top_winsize, bottom_winsize) = split_horizontally_with_gap(&terminal_ws);
|
let (top_winsize, bottom_winsize) = split_horizontally_with_gap(&terminal_ws);
|
||||||
|
|
||||||
|
|
@ -522,6 +542,7 @@ impl Tab {
|
||||||
y: active_pane.y(),
|
y: active_pane.y(),
|
||||||
rows: active_pane.rows(),
|
rows: active_pane.rows(),
|
||||||
columns: active_pane.columns(),
|
columns: active_pane.columns(),
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let (left_winsize, right_winsize) = split_vertically_with_gap(&terminal_ws);
|
let (left_winsize, right_winsize) = split_vertically_with_gap(&terminal_ws);
|
||||||
|
|
||||||
|
|
@ -689,6 +710,7 @@ impl Tab {
|
||||||
if !self.panes_to_hide.contains(&pane.pid()) {
|
if !self.panes_to_hide.contains(&pane.pid()) {
|
||||||
match self.active_terminal.unwrap() == pane.pid() {
|
match self.active_terminal.unwrap() == pane.pid() {
|
||||||
true => {
|
true => {
|
||||||
|
pane.set_active_at(Instant::now());
|
||||||
boundaries.add_rect(pane.as_ref(), self.mode_info.mode, Some(self.colors))
|
boundaries.add_rect(pane.as_ref(), self.mode_info.mode, Some(self.colors))
|
||||||
}
|
}
|
||||||
false => boundaries.add_rect(pane.as_ref(), self.mode_info.mode, None),
|
false => boundaries.add_rect(pane.as_ref(), self.mode_info.mode, None),
|
||||||
|
|
@ -1826,7 +1848,7 @@ impl Tab {
|
||||||
.filter(|(_, (_, c))| {
|
.filter(|(_, (_, c))| {
|
||||||
c.is_directly_left_of(active) && c.horizontally_overlaps_with(active)
|
c.is_directly_left_of(active) && c.horizontally_overlaps_with(active)
|
||||||
})
|
})
|
||||||
.max_by_key(|(_, (_, c))| c.get_horizontal_overlap_with(active))
|
.max_by_key(|(_, (_, c))| c.active_at())
|
||||||
.map(|(_, (pid, _))| pid);
|
.map(|(_, (pid, _))| pid);
|
||||||
match next_index {
|
match next_index {
|
||||||
Some(&p) => {
|
Some(&p) => {
|
||||||
|
|
@ -1856,7 +1878,7 @@ impl Tab {
|
||||||
.filter(|(_, (_, c))| {
|
.filter(|(_, (_, c))| {
|
||||||
c.is_directly_below(active) && c.vertically_overlaps_with(active)
|
c.is_directly_below(active) && c.vertically_overlaps_with(active)
|
||||||
})
|
})
|
||||||
.max_by_key(|(_, (_, c))| c.get_vertical_overlap_with(active))
|
.max_by_key(|(_, (_, c))| c.active_at())
|
||||||
.map(|(_, (pid, _))| pid);
|
.map(|(_, (pid, _))| pid);
|
||||||
match next_index {
|
match next_index {
|
||||||
Some(&p) => {
|
Some(&p) => {
|
||||||
|
|
@ -1886,7 +1908,7 @@ impl Tab {
|
||||||
.filter(|(_, (_, c))| {
|
.filter(|(_, (_, c))| {
|
||||||
c.is_directly_above(active) && c.vertically_overlaps_with(active)
|
c.is_directly_above(active) && c.vertically_overlaps_with(active)
|
||||||
})
|
})
|
||||||
.max_by_key(|(_, (_, c))| c.get_vertical_overlap_with(active))
|
.max_by_key(|(_, (_, c))| c.active_at())
|
||||||
.map(|(_, (pid, _))| pid);
|
.map(|(_, (pid, _))| pid);
|
||||||
match next_index {
|
match next_index {
|
||||||
Some(&p) => {
|
Some(&p) => {
|
||||||
|
|
@ -1916,7 +1938,7 @@ impl Tab {
|
||||||
.filter(|(_, (_, c))| {
|
.filter(|(_, (_, c))| {
|
||||||
c.is_directly_right_of(active) && c.horizontally_overlaps_with(active)
|
c.is_directly_right_of(active) && c.horizontally_overlaps_with(active)
|
||||||
})
|
})
|
||||||
.max_by_key(|(_, (_, c))| c.get_horizontal_overlap_with(active))
|
.max_by_key(|(_, (_, c))| c.active_at())
|
||||||
.map(|(_, (pid, _))| pid);
|
.map(|(_, (pid, _))| pid);
|
||||||
match next_index {
|
match next_index {
|
||||||
Some(&p) => {
|
Some(&p) => {
|
||||||
|
|
|
||||||
|
|
@ -295,7 +295,6 @@ impl Keybinds {
|
||||||
Action::TabNameInput(vec![0]),
|
Action::TabNameInput(vec![0]),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
defaults.insert(Key::Char('q'), vec![Action::Quit]);
|
|
||||||
defaults.insert(
|
defaults.insert(
|
||||||
Key::Ctrl('g'),
|
Key::Ctrl('g'),
|
||||||
vec![Action::SwitchToMode(InputMode::Normal)],
|
vec![Action::SwitchToMode(InputMode::Normal)],
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ pub fn starts_with_one_terminal() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
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]);
|
||||||
|
|
@ -44,6 +45,7 @@ pub fn split_terminals_vertically() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_RIGHT_IN_PANE_MODE, &QUIT]);
|
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_RIGHT_IN_PANE_MODE, &QUIT]);
|
||||||
|
|
@ -66,6 +68,7 @@ pub fn split_terminals_horizontally() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_DOWN_IN_PANE_MODE, &QUIT]);
|
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_DOWN_IN_PANE_MODE, &QUIT]);
|
||||||
|
|
@ -89,6 +92,7 @@ pub fn split_largest_terminal() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -117,6 +121,7 @@ pub fn cannot_split_terminals_vertically_when_active_terminal_is_too_small() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_RIGHT_IN_PANE_MODE, &QUIT]);
|
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_RIGHT_IN_PANE_MODE, &QUIT]);
|
||||||
|
|
@ -139,6 +144,7 @@ pub fn cannot_split_terminals_horizontally_when_active_terminal_is_too_small() {
|
||||||
rows: 4,
|
rows: 4,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_DOWN_IN_PANE_MODE, &QUIT]);
|
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPLIT_DOWN_IN_PANE_MODE, &QUIT]);
|
||||||
|
|
@ -161,6 +167,7 @@ pub fn cannot_split_largest_terminal_when_there_is_no_room() {
|
||||||
rows: 4,
|
rows: 4,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPAWN_TERMINAL_IN_PANE_MODE, &QUIT]);
|
fake_input_output.add_terminal_input(&[&PANE_MODE, &SPAWN_TERMINAL_IN_PANE_MODE, &QUIT]);
|
||||||
|
|
@ -183,6 +190,7 @@ pub fn scrolling_up_inside_a_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -213,6 +221,7 @@ pub fn scrolling_down_inside_a_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -245,6 +254,7 @@ pub fn scrolling_page_up_inside_a_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -274,6 +284,7 @@ pub fn scrolling_page_down_inside_a_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -308,6 +319,7 @@ pub fn max_panes() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -339,6 +351,7 @@ pub fn toggle_focused_pane_fullscreen() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ pub fn close_pane_with_another_pane_above_it() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -66,6 +67,7 @@ pub fn close_pane_with_another_pane_below_it() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -101,6 +103,7 @@ pub fn close_pane_with_another_pane_to_the_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -135,6 +138,7 @@ pub fn close_pane_with_another_pane_to_the_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -172,6 +176,7 @@ pub fn close_pane_with_multiple_panes_above_it() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -212,6 +217,7 @@ pub fn close_pane_with_multiple_panes_below_it() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -250,6 +256,7 @@ pub fn close_pane_with_multiple_panes_to_the_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -290,6 +297,7 @@ pub fn close_pane_with_multiple_panes_to_the_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -328,6 +336,7 @@ pub fn close_pane_with_multiple_panes_above_it_away_from_screen_edges() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -388,6 +397,7 @@ pub fn close_pane_with_multiple_panes_below_it_away_from_screen_edges() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -446,6 +456,7 @@ pub fn close_pane_with_multiple_panes_to_the_left_away_from_screen_edges() {
|
||||||
rows: 30,
|
rows: 30,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -504,6 +515,7 @@ pub fn close_pane_with_multiple_panes_to_the_right_away_from_screen_edges() {
|
||||||
rows: 30,
|
rows: 30,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -552,6 +564,7 @@ pub fn closing_last_pane_exits_app() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -36,6 +36,7 @@ pub fn run_bandwhich_from_fish_shell() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "fish_and_bandwhich";
|
let fixture_name = "fish_and_bandwhich";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -59,6 +60,7 @@ pub fn fish_tab_completion_options() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "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);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -87,6 +89,7 @@ pub fn fish_select_tab_completion_options() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "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);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -119,6 +122,7 @@ pub fn vim_scroll_region_down() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "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);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -148,6 +152,7 @@ pub fn vim_ctrl_d() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "vim_ctrl_d";
|
let fixture_name = "vim_ctrl_d";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -176,6 +181,7 @@ pub fn vim_ctrl_u() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "vim_ctrl_u";
|
let fixture_name = "vim_ctrl_u";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -199,6 +205,7 @@ pub fn htop() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "htop";
|
let fixture_name = "htop";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -222,6 +229,7 @@ pub fn htop_scrolling() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "htop_scrolling";
|
let fixture_name = "htop_scrolling";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -245,6 +253,7 @@ pub fn htop_right_scrolling() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "htop_right_scrolling";
|
let fixture_name = "htop_right_scrolling";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -276,6 +285,7 @@ pub fn vim_overwrite() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "vim_overwrite";
|
let fixture_name = "vim_overwrite";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -302,6 +312,7 @@ pub fn clear_scroll_region() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "clear_scroll_region";
|
let fixture_name = "clear_scroll_region";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -325,6 +336,7 @@ pub fn display_tab_characters_properly() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "tab_characters";
|
let fixture_name = "tab_characters";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -348,6 +360,7 @@ pub fn neovim_insert_mode() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "nvim_insert";
|
let fixture_name = "nvim_insert";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -373,6 +386,7 @@ pub fn bash_cursor_linewrap() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "bash_cursor_linewrap";
|
let fixture_name = "bash_cursor_linewrap";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -398,6 +412,7 @@ pub fn fish_paste_multiline() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "fish_paste_multiline";
|
let fixture_name = "fish_paste_multiline";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -421,6 +436,7 @@ pub fn git_log() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "git_log";
|
let fixture_name = "git_log";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -446,6 +462,7 @@ pub fn git_diff_scrollup() {
|
||||||
rows: 28,
|
rows: 28,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "git_diff_scrollup";
|
let fixture_name = "git_diff_scrollup";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -469,6 +486,7 @@ pub fn emacs_longbuf() {
|
||||||
rows: 60,
|
rows: 60,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "emacs_longbuf_tutorial";
|
let fixture_name = "emacs_longbuf_tutorial";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -492,6 +510,7 @@ pub fn top_and_quit() {
|
||||||
rows: 56,
|
rows: 56,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "top_and_quit";
|
let fixture_name = "top_and_quit";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
@ -521,6 +540,7 @@ pub fn exa_plus_omf_theme() {
|
||||||
rows: 56,
|
rows: 56,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let fixture_name = "exa_plus_omf_theme";
|
let fixture_name = "exa_plus_omf_theme";
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size, fixture_name);
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ pub fn accepts_basic_layout() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
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]);
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ pub fn move_focus_down() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -44,12 +45,13 @@ pub fn move_focus_down() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
pub fn move_focus_down_to_the_largest_overlap() {
|
pub fn move_focus_down_to_the_most_recently_used_pane() {
|
||||||
let fake_win_size = PositionAndSize {
|
let fake_win_size = PositionAndSize {
|
||||||
columns: 121,
|
columns: 121,
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ pub fn move_focus_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -43,12 +44,13 @@ pub fn move_focus_left() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
pub fn move_focus_left_to_the_largest_overlap() {
|
pub fn move_focus_left_to_the_most_recently_used_pane() {
|
||||||
let fake_win_size = PositionAndSize {
|
let fake_win_size = PositionAndSize {
|
||||||
columns: 121,
|
columns: 121,
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ pub fn move_focus_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -44,12 +45,13 @@ pub fn move_focus_right() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
pub fn move_focus_right_to_the_largest_overlap() {
|
pub fn move_focus_right_to_the_most_recently_used_pane() {
|
||||||
let fake_win_size = PositionAndSize {
|
let fake_win_size = PositionAndSize {
|
||||||
columns: 121,
|
columns: 121,
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ pub fn move_focus_up() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -43,12 +44,13 @@ pub fn move_focus_up() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
pub fn move_focus_up_to_the_largest_overlap() {
|
pub fn move_focus_up_to_the_most_recently_used_pane() {
|
||||||
let fake_win_size = PositionAndSize {
|
let fake_win_size = PositionAndSize {
|
||||||
columns: 121,
|
columns: 121,
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,7 @@ pub fn resize_down_with_pane_above() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -69,6 +70,7 @@ pub fn resize_down_with_pane_below() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -112,6 +114,7 @@ pub fn resize_down_with_panes_above_and_below() {
|
||||||
rows: 25,
|
rows: 25,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -153,6 +156,7 @@ pub fn resize_down_with_multiple_panes_above() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -197,6 +201,7 @@ pub fn resize_down_with_panes_above_aligned_left_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -243,6 +248,7 @@ pub fn resize_down_with_panes_below_aligned_left_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -288,6 +294,7 @@ pub fn resize_down_with_panes_above_aligned_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -331,6 +338,7 @@ pub fn resize_down_with_panes_below_aligned_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -375,6 +383,7 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -422,6 +431,7 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -471,6 +481,7 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_panes_to_the_lef
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -537,6 +548,7 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_to_the_left_and_
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -603,6 +615,7 @@ pub fn cannot_resize_down_when_pane_below_is_at_minimum_height() {
|
||||||
rows: 7,
|
rows: 7,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ pub fn resize_left_with_pane_to_the_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -63,6 +64,7 @@ pub fn resize_left_with_pane_to_the_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -100,6 +102,7 @@ pub fn resize_left_with_panes_to_the_left_and_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -139,6 +142,7 @@ pub fn resize_left_with_multiple_panes_to_the_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -181,6 +185,7 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -225,6 +230,7 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -266,6 +272,7 @@ pub fn resize_left_with_panes_to_the_left_aligned_bottom_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -309,6 +316,7 @@ pub fn resize_left_with_panes_to_the_right_aligned_bottom_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -353,6 +361,7 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_current_pa
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -400,6 +409,7 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_current_p
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -449,6 +459,7 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abov
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -516,6 +527,7 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_panes_abo
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -582,6 +594,7 @@ pub fn cannot_resize_left_when_pane_to_the_left_is_at_minimum_width() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ pub fn resize_right_with_pane_to_the_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -63,6 +64,7 @@ pub fn resize_right_with_pane_to_the_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -100,6 +102,7 @@ pub fn resize_right_with_panes_to_the_left_and_right() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -139,6 +142,7 @@ pub fn resize_right_with_multiple_panes_to_the_left() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -181,6 +185,7 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -225,6 +230,7 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -266,6 +272,7 @@ pub fn resize_right_with_panes_to_the_left_aligned_bottom_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -309,6 +316,7 @@ pub fn resize_right_with_panes_to_the_right_aligned_bottom_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -353,6 +361,7 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_current_p
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -400,6 +409,7 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_current_
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -449,6 +459,7 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abo
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -515,6 +526,7 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_panes_ab
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -581,6 +593,7 @@ pub fn cannot_resize_right_when_pane_to_the_left_is_at_minimum_width() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@ pub fn resize_up_with_pane_above() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -67,6 +68,7 @@ pub fn resize_up_with_pane_below() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -109,6 +111,7 @@ pub fn resize_up_with_panes_above_and_below() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -149,6 +152,7 @@ pub fn resize_up_with_multiple_panes_above() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -191,6 +195,7 @@ pub fn resize_up_with_panes_above_aligned_left_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -237,6 +242,7 @@ pub fn resize_up_with_panes_below_aligned_left_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -282,6 +288,7 @@ pub fn resize_up_with_panes_above_aligned_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -325,6 +332,7 @@ pub fn resize_up_with_panes_below_aligned_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -369,6 +377,7 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -416,6 +425,7 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_current_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -465,6 +475,7 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_panes_to_the_left_
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -531,6 +542,7 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_to_the_left_and_ri
|
||||||
rows: 40,
|
rows: 40,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
|
|
||||||
|
|
@ -597,6 +609,7 @@ pub fn cannot_resize_up_when_pane_above_is_at_minimum_height() {
|
||||||
rows: 7,
|
rows: 7,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -22,4 +22,4 @@ a │line18-bbbbbbbbbb
|
||||||
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbb
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbb
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbb
|
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
prompt $ █ │prompt $ │prompt $
|
prompt $ │prompt $ │prompt $ █
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
---
|
||||||
|
source: src/tests/integration/move_focus_down.rs
|
||||||
|
expression: snapshot_before_quit
|
||||||
|
|
||||||
|
---
|
||||||
|
line11-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line12-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line13-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line14-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line15-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
prompt $
|
||||||
|
────────────────────────────────────────────────────────────┬──────────────────────────────┬─────────────────────────────
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line16-bbbbbbbbbbbbbbbbbbbbbbb│line12-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line13-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbb│line14-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line15-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line18-bbbbbbbbbbbbbbbbbbbbbbb│line16-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
prompt $ │prompt $ │prompt $ █
|
||||||
|
|
@ -12,7 +12,7 @@ a │line6-bbbbbbbbbbb
|
||||||
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line7-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line7-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line8-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line8-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
a │line9-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
a │line9-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
prompt $ █ │line10-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
prompt $ │line10-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
────────────────────────────────────────────────────────────┤line11-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
────────────────────────────────────────────────────────────┤line11-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line12-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line12-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line13-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line13-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
|
@ -22,4 +22,4 @@ prompt $ │line15-bbbbbbbbbb
|
||||||
line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
prompt $ │prompt $
|
prompt $ █ │prompt $
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
---
|
||||||
|
source: src/tests/integration/move_focus_left.rs
|
||||||
|
expression: snapshot_before_quit
|
||||||
|
|
||||||
|
---
|
||||||
|
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line1-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line2-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line3-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line4-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line5-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line6-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line7-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line8-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line9-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
prompt $ │line10-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
────────────────────────────────────────────────────────────┤line11-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line12-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line13-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line14-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
prompt $ │line15-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
────────────────────────────────────────────────────────────┤line16-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
prompt $ █ │prompt $
|
||||||
|
|
@ -12,7 +12,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line16-bbbbbbbbbb
|
||||||
a │line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
a │line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
a │prompt $ █
|
a │prompt $
|
||||||
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa├────────────────────────────────────────────────────────────
|
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa├────────────────────────────────────────────────────────────
|
||||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
a │line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
a │line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
|
@ -22,4 +22,4 @@ a ├─────
|
||||||
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
a │line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
a │line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
prompt $ │prompt $
|
prompt $ │prompt $ █
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
---
|
||||||
|
source: src/tests/integration/move_focus_right.rs
|
||||||
|
expression: snapshot_before_quit
|
||||||
|
|
||||||
|
---
|
||||||
|
a │line11-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line14-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line12-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line13-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line14-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line15-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line15-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line16-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │prompt $
|
||||||
|
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa├────────────────────────────────────────────────────────────
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│prompt $
|
||||||
|
a ├────────────────────────────────────────────────────────────
|
||||||
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line18-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line19-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
prompt $ │prompt $ █
|
||||||
|
|
@ -12,7 +12,7 @@ a │line18-bbbbbbbbbb
|
||||||
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbb
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbb
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbb
|
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
prompt $ █ │prompt $ │prompt $
|
prompt $ │prompt $ │prompt $ █
|
||||||
────────────────────────────────────────────────────────────┴──────────────────────────────┴─────────────────────────────
|
────────────────────────────────────────────────────────────┴──────────────────────────────┴─────────────────────────────
|
||||||
line12-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
line12-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
line13-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
line13-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
---
|
||||||
|
source: src/tests/integration/move_focus_up.rs
|
||||||
|
expression: snapshot_before_quit
|
||||||
|
|
||||||
|
---
|
||||||
|
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line11-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line16-bbbbbbbbbbbbbbbbbbbbbbb│line12-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line13-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line17-bbbbbbbbbbbbbbbbbbbbbbb│line14-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line15-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │line18-bbbbbbbbbbbbbbbbbbbbbbb│line16-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line17-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa│line19-bbbbbbbbbbbbbbbbbbbbbbb│line18-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
a │bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb│line19-bbbbbbbbbbbbbbbbbbbbbb
|
||||||
|
prompt $ │prompt $ │prompt $ █
|
||||||
|
────────────────────────────────────────────────────────────┴──────────────────────────────┴─────────────────────────────
|
||||||
|
line12-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line13-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line14-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line15-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||||
|
prompt $
|
||||||
|
|
@ -22,6 +22,7 @@ pub fn open_new_tab() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -51,6 +52,7 @@ pub fn switch_to_prev_tab() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -81,6 +83,7 @@ pub fn switch_to_next_tab() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -111,6 +114,7 @@ pub fn close_tab() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -141,6 +145,7 @@ pub fn close_last_pane_in_a_tab() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -172,6 +177,7 @@ pub fn close_the_middle_tab() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -205,6 +211,7 @@ pub fn close_the_tab_that_has_a_pane_in_fullscreen() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -243,6 +250,7 @@ pub fn closing_last_tab_exits_the_app() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@ pub fn window_width_decrease_with_one_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
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]);
|
||||||
|
|
@ -25,6 +26,7 @@ pub fn window_width_decrease_with_one_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
});
|
});
|
||||||
let opts = CliArgs::default();
|
let opts = CliArgs::default();
|
||||||
start(Box::new(fake_input_output.clone()), opts);
|
start(Box::new(fake_input_output.clone()), opts);
|
||||||
|
|
@ -46,6 +48,7 @@ pub fn window_width_increase_with_one_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
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]);
|
||||||
|
|
@ -54,6 +57,7 @@ pub fn window_width_increase_with_one_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
});
|
});
|
||||||
let opts = CliArgs::default();
|
let opts = CliArgs::default();
|
||||||
start(Box::new(fake_input_output.clone()), opts);
|
start(Box::new(fake_input_output.clone()), opts);
|
||||||
|
|
@ -75,6 +79,7 @@ pub fn window_height_increase_with_one_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
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]);
|
||||||
|
|
@ -83,6 +88,7 @@ pub fn window_height_increase_with_one_pane() {
|
||||||
rows: 30,
|
rows: 30,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
});
|
});
|
||||||
let opts = CliArgs::default();
|
let opts = CliArgs::default();
|
||||||
start(Box::new(fake_input_output.clone()), opts);
|
start(Box::new(fake_input_output.clone()), opts);
|
||||||
|
|
@ -104,6 +110,7 @@ pub fn window_width_and_height_decrease_with_one_pane() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
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]);
|
||||||
|
|
@ -112,6 +119,7 @@ pub fn window_width_and_height_decrease_with_one_pane() {
|
||||||
rows: 10,
|
rows: 10,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
});
|
});
|
||||||
let opts = CliArgs::default();
|
let opts = CliArgs::default();
|
||||||
start(Box::new(fake_input_output.clone()), opts);
|
start(Box::new(fake_input_output.clone()), opts);
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ pub fn adding_new_terminal_in_fullscreen() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
@ -50,6 +51,7 @@ pub fn move_focus_is_disabled_in_fullscreen() {
|
||||||
rows: 20,
|
rows: 20,
|
||||||
x: 0,
|
x: 0,
|
||||||
y: 0,
|
y: 0,
|
||||||
|
..Default::default()
|
||||||
};
|
};
|
||||||
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
let mut fake_input_output = get_fake_os_input(&fake_win_size);
|
||||||
fake_input_output.add_terminal_input(&[
|
fake_input_output.add_terminal_input(&[
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue