Raxol.Terminal.ScreenManager (Raxol v0.5.0)
View SourceManages screen buffer operations for the terminal emulator. This module handles operations related to the main and alternate screen buffers, including buffer switching, initialization, and state management.
Summary
Functions
Gets the currently active screen buffer.
Gets the current buffer type (main or alternate).
Initializes both main and alternate screen buffers.
Resizes both screen buffers.
Sets the buffer type.
Switches between main and alternate screen buffers.
Updates the currently active screen buffer.
Functions
@spec get_active_buffer(Raxol.Terminal.Emulator.Struct.t()) :: Raxol.Terminal.ScreenBuffer.t()
Gets the currently active screen buffer.
@spec get_buffer_type(Raxol.Terminal.Emulator.Struct.t()) :: :main | :alternate
Gets the current buffer type (main or alternate).
@spec initialize_buffers( non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: {Raxol.Terminal.ScreenBuffer.t(), Raxol.Terminal.ScreenBuffer.t()}
Initializes both main and alternate screen buffers.
@spec resize_buffers( Raxol.Terminal.Emulator.Struct.t(), non_neg_integer(), non_neg_integer() ) :: Raxol.Terminal.Emulator.Struct.t()
Resizes both screen buffers.
@spec set_buffer_type(Raxol.Terminal.Emulator.Struct.t(), :main | :alternate) :: Raxol.Terminal.Emulator.Struct.t()
Sets the buffer type.
@spec switch_buffer(Raxol.Terminal.Emulator.Struct.t()) :: Raxol.Terminal.Emulator.Struct.t()
Switches between main and alternate screen buffers.
@spec update_active_buffer( Raxol.Terminal.Emulator.Struct.t(), Raxol.Terminal.ScreenBuffer.t() ) :: Raxol.Terminal.Emulator.Struct.t()
Updates the currently active screen buffer.