From 7fbd66af3a7bcb0193970beef792a06f31f51ef1 Mon Sep 17 00:00:00 2001 From: ViscousPot <167028444+ViscousPot@users.noreply.github.com> Date: Tue, 5 Aug 2025 22:56:41 +0100 Subject: [PATCH 1/2] Update gutter.dart --- lib/src/gutter/gutter.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/gutter/gutter.dart b/lib/src/gutter/gutter.dart index 88c7424e..8eee21de 100644 --- a/lib/src/gutter/gutter.dart +++ b/lib/src/gutter/gutter.dart @@ -66,7 +66,7 @@ class GutterWidget extends StatelessWidget { } return Container( - padding: EdgeInsets.only(top: 12, bottom: 12, right: style.margin), + padding: EdgeInsets.only(top: 16, bottom: 16, right: style.margin), width: style.showLineNumbers ? gutterWidth : null, child: Table( columnWidths: { From 3721be205f1ee5737923f8472fa72601a4e50a21 Mon Sep 17 00:00:00 2001 From: ViscousPot Date: Tue, 5 Aug 2025 23:34:30 +0100 Subject: [PATCH 2/2] fix: scroll not following --- lib/src/code_field/code_field.dart | 1 + lib/src/gutter/gutter.dart | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/lib/src/code_field/code_field.dart b/lib/src/code_field/code_field.dart index efd45057..8e40fd85 100644 --- a/lib/src/code_field/code_field.dart +++ b/lib/src/code_field/code_field.dart @@ -506,6 +506,7 @@ class _CodeFieldState extends State { return GutterWidget( codeController: widget.controller, style: gutterStyle, + scrollController: _numberScroll, ); } diff --git a/lib/src/gutter/gutter.dart b/lib/src/gutter/gutter.dart index 8eee21de..a9391d5f 100644 --- a/lib/src/gutter/gutter.dart +++ b/lib/src/gutter/gutter.dart @@ -19,16 +19,24 @@ class GutterWidget extends StatelessWidget { const GutterWidget({ required this.codeController, required this.style, + required this.scrollController, }); final CodeController codeController; final GutterStyle style; + final ScrollController? scrollController; @override Widget build(BuildContext context) { - return AnimatedBuilder( - animation: codeController, - builder: _buildOnChange, + return Padding( + padding: const EdgeInsets.symmetric(vertical: 16), + child: SingleChildScrollView( + controller: scrollController, + child: AnimatedBuilder( + animation: codeController, + builder: _buildOnChange, + ), + ), ); } @@ -66,7 +74,7 @@ class GutterWidget extends StatelessWidget { } return Container( - padding: EdgeInsets.only(top: 16, bottom: 16, right: style.margin), + padding: EdgeInsets.only(right: style.margin), width: style.showLineNumbers ? gutterWidth : null, child: Table( columnWidths: {