From 6e25d13f33a937ea82513cf4f1be8b249c91edbb Mon Sep 17 00:00:00 2001 From: ZhuchkaTriplesix Date: Thu, 30 Jul 2026 09:49:46 +0300 Subject: [PATCH 1/2] chore(ui): replace deprecated cacheExtent with scrollCacheExtent --- lib/features/mongodb/mongo_collections_view.dart | 3 ++- lib/features/mongodb/mongo_documents_view.dart | 3 ++- lib/features/postgresql/postgres_browser_views.dart | 11 ++++++----- lib/features/redis/redis_keys_view.dart | 3 ++- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/lib/features/mongodb/mongo_collections_view.dart b/lib/features/mongodb/mongo_collections_view.dart index 8e6a9168..33a0dbfc 100644 --- a/lib/features/mongodb/mongo_collections_view.dart +++ b/lib/features/mongodb/mongo_collections_view.dart @@ -1,6 +1,7 @@ import 'dart:math' show min; import 'package:flutter/material.dart' as material; +import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/mongodb_connection.dart'; import 'package:querya_desktop/core/database/mongodb_service.dart'; import 'package:querya_desktop/shared/widgets/widgets.dart'; @@ -332,7 +333,7 @@ class _MongoCollectionsViewState extends material.State { child: const Text('No collections found').muted(), ) : material.ListView.separated( - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _collections.length, separatorBuilder: (_, __) => Divider( height: 1, diff --git a/lib/features/mongodb/mongo_documents_view.dart b/lib/features/mongodb/mongo_documents_view.dart index f75cc028..e746e0f0 100644 --- a/lib/features/mongodb/mongo_documents_view.dart +++ b/lib/features/mongodb/mongo_documents_view.dart @@ -1,6 +1,7 @@ import 'dart:convert'; import 'package:flutter/material.dart' as material; +import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/mongodb_connection.dart'; import 'package:querya_desktop/core/database/mongodb_service.dart'; import 'package:querya_desktop/shared/widgets/widgets.dart'; @@ -220,7 +221,7 @@ class _MongoDocumentsViewState extends material.State { ) : material.ListView.separated( padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _documents.length, separatorBuilder: (_, __) => const Gap(8), itemBuilder: (context, i) { diff --git a/lib/features/postgresql/postgres_browser_views.dart b/lib/features/postgresql/postgres_browser_views.dart index 4d67d575..e75b9cf2 100644 --- a/lib/features/postgresql/postgres_browser_views.dart +++ b/lib/features/postgresql/postgres_browser_views.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart' as material; +import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/postgres_service.dart'; import 'package:querya_desktop/core/database/postgres_metadata.dart'; import 'package:querya_desktop/core/storage/local_db.dart'; @@ -129,7 +130,7 @@ class _PostgresIndexListViewState child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -309,7 +310,7 @@ class _PostgresTriggerListViewState child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -473,7 +474,7 @@ class _PostgresTypeListViewState extends material.State { child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -625,7 +626,7 @@ class _PostgresExtensionListViewState child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -781,7 +782,7 @@ class _PostgresFdwListViewState extends material.State { child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: totalItems, itemBuilder: (context, i) { if (i == 0) { diff --git a/lib/features/redis/redis_keys_view.dart b/lib/features/redis/redis_keys_view.dart index 364402ce..11444812 100644 --- a/lib/features/redis/redis_keys_view.dart +++ b/lib/features/redis/redis_keys_view.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart' as material; +import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/redis_connection.dart'; import 'package:querya_desktop/core/theme/querya_semantic_palette.dart'; import 'package:querya_desktop/shared/widgets/widgets.dart'; @@ -186,7 +187,7 @@ class _RedisKeysViewState extends material.State { ) : material.ListView.builder( padding: const material.EdgeInsets.all(16), - cacheExtent: 400, + scrollCacheExtent: const ScrollCacheExtent.pixels(400), itemCount: _keys.length + (_hasMore ? 1 : 0), itemBuilder: (context, i) { final shadcnCs = shadcn.Theme.of(context).colorScheme; From f77f92ce4f52b5246ad36079a67f289570c39258 Mon Sep 17 00:00:00 2001 From: ZhuchkaTriplesix Date: Thu, 30 Jul 2026 10:16:08 +0300 Subject: [PATCH 2/2] fix(ui): revert scrollCacheExtent to cacheExtent for Flutter 3.41.6 stable compatibility --- lib/features/mongodb/mongo_collections_view.dart | 3 +-- lib/features/mongodb/mongo_documents_view.dart | 3 +-- lib/features/postgresql/postgres_browser_views.dart | 11 +++++------ lib/features/redis/redis_keys_view.dart | 3 +-- 4 files changed, 8 insertions(+), 12 deletions(-) diff --git a/lib/features/mongodb/mongo_collections_view.dart b/lib/features/mongodb/mongo_collections_view.dart index 33a0dbfc..8e6a9168 100644 --- a/lib/features/mongodb/mongo_collections_view.dart +++ b/lib/features/mongodb/mongo_collections_view.dart @@ -1,7 +1,6 @@ import 'dart:math' show min; import 'package:flutter/material.dart' as material; -import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/mongodb_connection.dart'; import 'package:querya_desktop/core/database/mongodb_service.dart'; import 'package:querya_desktop/shared/widgets/widgets.dart'; @@ -333,7 +332,7 @@ class _MongoCollectionsViewState extends material.State { child: const Text('No collections found').muted(), ) : material.ListView.separated( - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _collections.length, separatorBuilder: (_, __) => Divider( height: 1, diff --git a/lib/features/mongodb/mongo_documents_view.dart b/lib/features/mongodb/mongo_documents_view.dart index e746e0f0..f75cc028 100644 --- a/lib/features/mongodb/mongo_documents_view.dart +++ b/lib/features/mongodb/mongo_documents_view.dart @@ -1,7 +1,6 @@ import 'dart:convert'; import 'package:flutter/material.dart' as material; -import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/mongodb_connection.dart'; import 'package:querya_desktop/core/database/mongodb_service.dart'; import 'package:querya_desktop/shared/widgets/widgets.dart'; @@ -221,7 +220,7 @@ class _MongoDocumentsViewState extends material.State { ) : material.ListView.separated( padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _documents.length, separatorBuilder: (_, __) => const Gap(8), itemBuilder: (context, i) { diff --git a/lib/features/postgresql/postgres_browser_views.dart b/lib/features/postgresql/postgres_browser_views.dart index e75b9cf2..4d67d575 100644 --- a/lib/features/postgresql/postgres_browser_views.dart +++ b/lib/features/postgresql/postgres_browser_views.dart @@ -1,5 +1,4 @@ import 'package:flutter/material.dart' as material; -import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/postgres_service.dart'; import 'package:querya_desktop/core/database/postgres_metadata.dart'; import 'package:querya_desktop/core/storage/local_db.dart'; @@ -130,7 +129,7 @@ class _PostgresIndexListViewState child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -310,7 +309,7 @@ class _PostgresTriggerListViewState child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -474,7 +473,7 @@ class _PostgresTypeListViewState extends material.State { child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -626,7 +625,7 @@ class _PostgresExtensionListViewState child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _rows.isEmpty ? 1 : _rows.length, itemBuilder: (context, i) { if (_rows.isEmpty) { @@ -782,7 +781,7 @@ class _PostgresFdwListViewState extends material.State { child: material.ListView.builder( controller: _scroll, padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: totalItems, itemBuilder: (context, i) { if (i == 0) { diff --git a/lib/features/redis/redis_keys_view.dart b/lib/features/redis/redis_keys_view.dart index 11444812..364402ce 100644 --- a/lib/features/redis/redis_keys_view.dart +++ b/lib/features/redis/redis_keys_view.dart @@ -1,5 +1,4 @@ import 'package:flutter/material.dart' as material; -import 'package:flutter/rendering.dart'; import 'package:querya_desktop/core/database/redis_connection.dart'; import 'package:querya_desktop/core/theme/querya_semantic_palette.dart'; import 'package:querya_desktop/shared/widgets/widgets.dart'; @@ -187,7 +186,7 @@ class _RedisKeysViewState extends material.State { ) : material.ListView.builder( padding: const material.EdgeInsets.all(16), - scrollCacheExtent: const ScrollCacheExtent.pixels(400), + cacheExtent: 400, itemCount: _keys.length + (_hasMore ? 1 : 0), itemBuilder: (context, i) { final shadcnCs = shadcn.Theme.of(context).colorScheme;