From 002980cd0b02fa04e74ed264b4f795afd2dac187 Mon Sep 17 00:00:00 2001 From: Vid Tadel Date: Fri, 21 Aug 2026 11:11:22 +0200 Subject: [PATCH 1/3] scroallable debug view --- .../debug_item_details_view.dart | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/src/debug_feature/debug_item_details_view.dart b/lib/src/debug_feature/debug_item_details_view.dart index 71c3b5bf..d726302f 100644 --- a/lib/src/debug_feature/debug_item_details_view.dart +++ b/lib/src/debug_feature/debug_item_details_view.dart @@ -47,14 +47,16 @@ class _De1DebugViewState extends State { ), actions: [_buildStateDropdown(context)], ), - body: LayoutBuilder( - builder: (context, constraints) { - final isWide = constraints.maxWidth > 900; - if (isWide) { - return _buildWideLayout(theme); - } - return _buildNarrowLayout(theme); - }, + body: SingleChildScrollView( + child: LayoutBuilder( + builder: (context, constraints) { + final isWide = constraints.maxWidth > 900; + if (isWide) { + return _buildWideLayout(theme); + } + return _buildNarrowLayout(theme); + }, + ), ), ); } @@ -284,6 +286,7 @@ class _De1DebugViewState extends State { crossAxisAlignment: CrossAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ + Text('Firmware: ${widget.machine.machineInfo.version}'), ShadButton.outline( size: ShadButtonSize.sm, child: const Text('Firmware Update'), From f0daf5b7daf60bf4e65957f81e40d89ade182ad9 Mon Sep 17 00:00:00 2001 From: Vid Tadel Date: Sat, 22 Aug 2026 11:47:23 +0200 Subject: [PATCH 2/3] batch pause increase for bengle --- lib/src/models/device/impl/bengle/bengle.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/models/device/impl/bengle/bengle.dart b/lib/src/models/device/impl/bengle/bengle.dart index 42827e0b..7e36ed14 100644 --- a/lib/src/models/device/impl/bengle/bengle.dart +++ b/lib/src/models/device/impl/bengle/bengle.dart @@ -45,7 +45,7 @@ class Bengle extends UnifiedDe1 @override @protected - Duration get firmwareUploadBatchPause => Duration.zero; + Duration get firmwareUploadBatchPause => Duration(milliseconds: 50); final BehaviorSubject _stopAtTempTarget = BehaviorSubject.seeded(0.0); From b300cd28798c896c227831b5017f198b08b72163 Mon Sep 17 00:00:00 2001 From: Vid Tadel Date: Mon, 24 Aug 2026 14:30:35 +0200 Subject: [PATCH 3/3] fix(debug): bottom inset for debug view lists - drop redundant outer scroll wrapper (both layouts scroll themselves) - add SafeArea so list content clears system nav bars on android/ios - use inherited transportType for bengle upload batch pause --- lib/src/debug_feature/debug_item_details_view.dart | 3 ++- lib/src/models/device/impl/bengle/bengle.dart | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/src/debug_feature/debug_item_details_view.dart b/lib/src/debug_feature/debug_item_details_view.dart index d726302f..3d446f26 100644 --- a/lib/src/debug_feature/debug_item_details_view.dart +++ b/lib/src/debug_feature/debug_item_details_view.dart @@ -47,7 +47,8 @@ class _De1DebugViewState extends State { ), actions: [_buildStateDropdown(context)], ), - body: SingleChildScrollView( + body: SafeArea( + top: false, child: LayoutBuilder( builder: (context, constraints) { final isWide = constraints.maxWidth > 900; diff --git a/lib/src/models/device/impl/bengle/bengle.dart b/lib/src/models/device/impl/bengle/bengle.dart index 7e36ed14..2a72fad7 100644 --- a/lib/src/models/device/impl/bengle/bengle.dart +++ b/lib/src/models/device/impl/bengle/bengle.dart @@ -8,6 +8,7 @@ import 'package:reaprime/src/models/device/impl/de1/de1.models.dart'; import 'package:reaprime/src/models/device/impl/de1/unified_de1/bengle_shot_sample.dart'; import 'package:reaprime/src/models/device/impl/de1/unified_de1/unified_de1.dart'; import 'package:reaprime/src/models/device/machine.dart'; +import 'package:reaprime/src/models/device/transport/data_transport.dart'; import 'package:reaprime/src/models/errors.dart'; import 'package:rxdart/rxdart.dart'; @@ -45,7 +46,12 @@ class Bengle extends UnifiedDe1 @override @protected - Duration get firmwareUploadBatchPause => Duration(milliseconds: 50); + Duration get firmwareUploadBatchPause { + return switch (transportType) { + TransportType.serial => const Duration(milliseconds: 20), + _ => Duration.zero, + }; + } final BehaviorSubject _stopAtTempTarget = BehaviorSubject.seeded(0.0);