فهرست منبع

rearrange widget tree to avoid re initializing elements of child wiget in DraggableScrollbar when it's enabled property changes. This was causing memories to rebuild when draggableScrollbar is enabled when all files are loaded in gallery

ashilkn 1 سال پیش
والد
کامیت
1ab8d942cc
1فایلهای تغییر یافته به همراه8 افزوده شده و 10 حذف شده
  1. 8 10
      lib/ui/huge_listview/draggable_scrollbar.dart

+ 8 - 10
lib/ui/huge_listview/draggable_scrollbar.dart

@@ -103,16 +103,14 @@ class DraggableScrollbarState extends State<DraggableScrollbar>
 
   @override
   Widget build(BuildContext context) {
-    if (widget.isEnabled) {
-      return Stack(
-        children: [
-          RepaintBoundary(child: widget.child),
-          RepaintBoundary(child: buildThumb()),
-        ],
-      );
-    } else {
-      return widget.child;
-    }
+    return Stack(
+      children: [
+        RepaintBoundary(child: widget.child),
+        widget.isEnabled
+            ? RepaintBoundary(child: buildThumb())
+            : const SizedBox.shrink(),
+      ],
+    );
   }
 
   Widget buildThumb() => Padding(