# window.navigation.Window.last_pane

- **Module:** window.navigation.Window
- **Package:** libtmux
- **Language:** Rust
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-rs/blob/8a648c0894dfffc9303583f753b6c8ae01f2fe76/crates/libtmux/src/window/navigation.rs#L215
- **Page:** https://libtmux.org/reference/rs/window-navigation-window-last_pane/

```
window.navigation.Window.last_pane(self) -> Result<Option<Pane>, Error>
```

Move to the pane that was active before this one, and return it.

`None` when nothing else has been active yet, which a window holding
one pane never has. That is an ordinary state rather than a failure,
so it is reported as absence; an error means tmux could not be reached
or refused the move for some other reason.

# Errors

Returns an error when tmux cannot be reached or refuses the move.

## Example

```rust
use libtmux::{SplitDirection, SplitOptions};

let guard = libtmux::test::TestServer::new().await?;
let session = guard.server().new_session("panes").await?;
let mut window = session.active_window().await?.expect("a window");

// One pane, so there is nowhere to go back to and nothing broke.
assert!(window.last_pane().await?.is_none());

window.split(SplitOptions::new(SplitDirection::Below).select()).await?;
assert!(window.last_pane().await?.is_some());

guard.shutdown().await?;
```
