diff --git a/Terminal.Gui/Core/Event.cs b/Terminal.Gui/Core/Event.cs index a46bbf7e5..af22472df 100644 --- a/Terminal.Gui/Core/Event.cs +++ b/Terminal.Gui/Core/Event.cs @@ -753,13 +753,13 @@ namespace Terminal.Gui { /// WheeledDown = unchecked((int)0x20000000), /// - /// Vertical button wheeled up while pressing ButtonShift. + /// Vertical button wheeled up while pressing ButtonCtrl. /// - WheeledLeft = ButtonShift | WheeledUp, + WheeledLeft = ButtonCtrl | WheeledUp, /// - /// Vertical button wheeled down while pressing ButtonShift. + /// Vertical button wheeled down while pressing ButtonCtrl. /// - WheeledRight = ButtonShift | WheeledDown, + WheeledRight = ButtonCtrl | WheeledDown, /// /// Mask that captures all the events. /// diff --git a/Terminal.Gui/Views/ListView.cs b/Terminal.Gui/Views/ListView.cs index 3ccdc0395..e0d4edbda 100644 --- a/Terminal.Gui/Views/ListView.cs +++ b/Terminal.Gui/Views/ListView.cs @@ -864,7 +864,8 @@ namespace Terminal.Gui { void RenderUstr (ConsoleDriver driver, ustring ustr, int col, int line, int width, int start = 0) { - var u = TextFormatter.ClipAndJustify (ustr, width + start, TextAlignment.Left); + ustring str = start > ustr.ConsoleWidth ? string.Empty : ustr.Substring (Math.Min (start, ustr.ToRunes ().Length - 1)); + ustring u = TextFormatter.ClipAndJustify (str, width, TextAlignment.Left); driver.AddStr (u); width -= TextFormatter.GetTextWidth (u); while (width-- + start > 0) { @@ -876,7 +877,7 @@ namespace Terminal.Gui { public void Render (ListView container, ConsoleDriver driver, bool marked, int item, int col, int line, int width, int start = 0) { var savedClip = container.ClipToBounds (); - container.Move (col - start, line); + container.Move (Math.Max (col - start, 0), line); var t = src? [item]; if (t == null) { RenderUstr (driver, ustring.Make (""), col, line, width); diff --git a/UICatalog/Scenarios/ListViewWithSelection.cs b/UICatalog/Scenarios/ListViewWithSelection.cs index c132cf8f5..2b668b3ea 100644 --- a/UICatalog/Scenarios/ListViewWithSelection.cs +++ b/UICatalog/Scenarios/ListViewWithSelection.cs @@ -79,9 +79,9 @@ namespace UICatalog.Scenarios { }; _listView.DrawContent += (e) => { - _scrollBar.Size = _listView.Source.Count - 1; + _scrollBar.Size = _listView.Source.Count; _scrollBar.Position = _listView.TopItem; - _scrollBar.OtherScrollBarView.Size = _listView.Maxlength - 1; + _scrollBar.OtherScrollBarView.Size = _listView.Maxlength; _scrollBar.OtherScrollBarView.Position = _listView.LeftItem; _scrollBar.Refresh (); };