Przeglądaj źródła

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 rok temu
rodzic
commit
1ab8d942cc
1 zmienionych plików z 8 dodań i 10 usunięć
  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
   @override
   Widget build(BuildContext context) {
   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(
   Widget buildThumb() => Padding(