Tig 3 周之前
父節點
當前提交
1cf47f63d5

+ 0 - 0
Terminal.Gui/Views/TextInput/TextView/PARTIAL-SPLIT-PLAN.md


+ 2 - 20
Terminal.Gui/Views/TextInput/TextView/TextView.Layout.cs

@@ -9,9 +9,6 @@ public partial class TextView
     /// </summary>
     private void ConfigureLayout ()
     {
-        // Subscribe to ViewportChanged to sync internal scroll fields
-        ViewportChanged += TextView_ViewportChanged;
-
         // Vertical ScrollBar: AutoShow enabled by default as per requirements
         VerticalScrollBar.AutoShow = true;
 
@@ -21,28 +18,13 @@ public partial class TextView
 
     private void TextView_LayoutComplete (object? sender, LayoutEventArgs e)
     {
+        _topRow = Viewport.Y;
+        _leftColumn = Viewport.X;
         WrapTextModel ();
         UpdateContentSize ();
         AdjustScrollPosition ();
     }
 
-
-    private void TextView_ViewportChanged (object? sender, DrawEventArgs e)
-    {
-        // Sync internal scroll position fields with Viewport
-        // Only update if values actually changed to prevent infinite loops
-        if (_topRow != Viewport.Y)
-        {
-            _topRow = Viewport.Y;
-        }
-
-        if (_leftColumn != Viewport.X)
-        {
-            _leftColumn = Viewport.X;
-        }
-    }
-
-
     /// <summary>
     ///     INTERNAL: Adjusts the scroll position and cursor to ensure the cursor is visible in the viewport.
     ///     This method handles both horizontal and vertical scrolling, word wrap considerations, and syncs