ChatView
Object Hierarchy:
Description:
public class ChatView : Box
Chat view widget for displaying chat messages with markdown rendering.
This widget displays chat messages with efficient incremental updates. It uses chunk-based rendering to only re-render the current chunk
being updated, improving performance during streaming.
Since:
1.0
Content:
Enums:
Creation methods:
Methods:
- public void add_blank_line ()
Adds a blank line at the end of the buffer if the buffer is not empty.
- public void add_widget_frame (Frame frame)
Adds a widget frame to the end of the chat view.
- public void append_assistant_chunk (string new_text, Chat response)
Appends a streaming chunk from the assistant.
- public void append_complete_assistant_message (Message message, SessionBase session)
Appends a complete assistant message (not streaming). Used when
loading sessions from history.
- public void append_error (string error)
- public void append_tool_message (Message message)
Appends a tool message to the chat view in grey format (same as
summary). Tool messages are processed as markdown before display.
- public void append_user_message (string text, SessionBase session)
Appends a message to the chat view.
- public void clear ()
Clears all content from the chat view.
- public void clear_waiting_indicator (Chat? response = null)
Clears the waiting indicator and resets assistant message state if
needed.
- public void finalize_assistant_message (Chat? response = null)
Finalizes the current assistant message.
- public void remove_widget_frame (Frame frame, TextChildAnchor anchor)
Removes a widget frame from the chat view.
- public void scroll_to_bottom ()
- public void show_waiting_indicator (string label = "waiting for a reply")
Shows an animated "waiting..." indicator. The label is shown with
cycling dots (e.g. "waiting for a reply..."); it is cleared when the first content chunk arrives or clear_waiting_indicator() is
called.
Fields:
Inherited Members:
All known members inherited from class Gtk.Box
- append
- baseline_child
- baseline_position
- get_baseline_child
- get_baseline_position
- get_homogeneous
- get_spacing
- homogeneous
- insert_child_after
- prepend
- remove
- reorder_child_after
- set_baseline_child
- set_baseline_position
- set_homogeneous
- set_spacing
- spacing
All known members inherited from class Gtk.Widget
All known members inherited from class GLib.Object
- @get
- @new
- @ref
- @set
- add_toggle_ref
- add_weak_pointer
- bind_property
- connect
- constructed
- disconnect
- dispose
- dup_data
- dup_qdata
- force_floating
- freeze_notify
- get_class
- get_data
- get_property
- get_qdata
- get_type
- getv
- interface_find_property
- interface_install_property
- interface_list_properties
- is_floating
- new_valist
- new_with_properties
- newv
- notify
- notify_property
- ref_count
- ref_sink
- remove_toggle_ref
- remove_weak_pointer
- replace_data
- replace_qdata
- set_data
- set_data_full
- set_property
- set_qdata
- set_qdata_full
- set_valist
- setv
- steal_data
- steal_qdata
- thaw_notify
- unref
- watch_closure
- weak_ref
- weak_unref
All known members inherited from interface Gtk.Accessible
- accessible_role
- announce
- get_accessible_parent
- get_accessible_role
- get_at_context
- get_bounds
- get_first_accessible_child
- get_next_accessible_sibling
- get_platform_state
- reset_property
- reset_relation
- reset_state
- set_accessible_parent
- update_next_accessible_sibling
- update_property
- update_property_value
- update_relation
- update_relation_value
- update_state
- update_state_value
All known members inherited from interface Gtk.Buildable
- add_child
- custom_finished
- custom_tag_end
- custom_tag_start
- get_buildable_id
- get_id
- get_internal_child
- parser_finished
- set_buildable_property
- set_id
All known members inherited from interface Gtk.Orientable