mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-16 16:56:09 +03:00
77 lines
1.8 KiB
Zig
77 lines
1.8 KiB
Zig
/// ContentScale is the ratio between the current DPI and the platform's
|
|
/// default DPI. This is used to determine how much certain rendered elements
|
|
/// need to be scaled up or down.
|
|
pub const ContentScale = struct {
|
|
x: f32,
|
|
y: f32,
|
|
};
|
|
|
|
/// The size of the surface in pixels.
|
|
pub const SurfaceSize = struct {
|
|
width: u32,
|
|
height: u32,
|
|
};
|
|
|
|
/// The position of the cursor in pixels.
|
|
pub const CursorPos = struct {
|
|
x: f32,
|
|
y: f32,
|
|
};
|
|
|
|
/// Input Method Editor (IME) position.
|
|
pub const IMEPos = struct {
|
|
x: f64,
|
|
y: f64,
|
|
};
|
|
|
|
/// The clipboard type.
|
|
///
|
|
/// If this is changed, you must also update ghostty.h
|
|
pub const Clipboard = enum(u2) {
|
|
standard = 0, // ctrl+c/v
|
|
selection = 1,
|
|
primary = 2,
|
|
};
|
|
|
|
pub const ClipboardRequestType = enum(u8) {
|
|
paste,
|
|
osc_52_read,
|
|
osc_52_write,
|
|
};
|
|
|
|
/// Clipboard request. This is used to request clipboard contents and must
|
|
/// be sent as a response to a ClipboardRequest event.
|
|
pub const ClipboardRequest = union(ClipboardRequestType) {
|
|
/// A direct paste of clipboard contents.
|
|
paste: void,
|
|
|
|
/// A request to read clipboard contents via OSC 52.
|
|
osc_52_read: Clipboard,
|
|
|
|
/// A request to write clipboard contents via OSC 52.
|
|
osc_52_write: Clipboard,
|
|
};
|
|
|
|
/// A desktop notification.
|
|
pub const DesktopNotification = struct {
|
|
/// The title of the notification. May be an empty string to not show a
|
|
/// title.
|
|
title: []const u8,
|
|
|
|
/// The body of a notification. This will always be shown.
|
|
body: []const u8,
|
|
};
|
|
|
|
// This is made extern (c_int) to make interop easier with our embedded
|
|
// runtime. The small size cost doesn't make a difference in our union.
|
|
pub const SplitDirection = enum(c_int) {
|
|
right,
|
|
down,
|
|
};
|
|
|
|
/// The color scheme in use (light vs dark).
|
|
pub const ColorScheme = enum(u2) {
|
|
light = 0,
|
|
dark = 1,
|
|
};
|