Skip to content

Commit

Permalink
Add from_file_descriptors() to tty::unix
Browse files Browse the repository at this point in the history
  • Loading branch information
someone13574 committed May 1, 2024
1 parent ce800bf commit ed3fac8
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 0 deletions.
4 changes: 4 additions & 0 deletions alacritty_terminal/CHANGELOG.md
Expand Up @@ -10,6 +10,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## 0.23.0-dev

### Added

- `tty::unix::from_fd()` to create a TTY from a pre-opened PTY's file-descriptors

### Changed

- **`Term` is not focused by default anymore**
6 changes: 6 additions & 0 deletions alacritty_terminal/src/tty/unix.rs
Expand Up @@ -4,6 +4,7 @@ use std::ffi::CStr;
use std::fs::File;
use std::io::{Error, ErrorKind, Read, Result};
use std::mem::MaybeUninit;
use std::os::fd::OwnedFd;
use std::os::unix::io::{AsRawFd, FromRawFd};
use std::os::unix::net::UnixStream;
use std::os::unix::process::CommandExt;
Expand Down Expand Up @@ -184,6 +185,11 @@ fn default_shell_command(shell: &str, user: &str) -> Command {
pub fn new(config: &Options, window_size: WindowSize, window_id: u64) -> Result<Pty> {
let pty = openpty(None, Some(&window_size.to_winsize()))?;
let (master, slave) = (pty.controller, pty.user);
from_fd(config, window_id, master, slave)
}

/// Create a new TTY from a PTY's file descriptors.
pub fn from_fd(config: &Options, window_id: u64, master: OwnedFd, slave: OwnedFd) -> Result<Pty> {
let master_fd = master.as_raw_fd();
let slave_fd = slave.as_raw_fd();

Expand Down

0 comments on commit ed3fac8

Please sign in to comment.