using Avalonia.Controls;
using ClawdDotNet.Desktop.ViewModels;

namespace ClawdDotNet.Desktop.Views;

public partial class LogPageView : UserControl
{
    public LogPageView()
    {
        InitializeComponent();

        // Mitlaufen: Nach jeder neuen Zeile ans Ende springen — aber nur, solange der
        // Haken gesetzt ist. Das gehoert in die Ansicht, weil nur sie den ScrollViewer
        // kennt; das Ansichtsmodell haelt lediglich den Schalter.
        Scroller.ScrollChanged += (_, _) =>
        {
            if (DataContext is LogPageViewModel { FollowTail: true })
                Scroller.ScrollToEnd();
        };
    }
}
