fix buscador en release

This commit is contained in:
Abraham
2026-01-19 11:18:11 -08:00
parent 29f119038b
commit 0b6e6d13e8
2 changed files with 30 additions and 3 deletions

View File

@@ -1,3 +1,4 @@
import 'dart:async';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:pluto_grid/pluto_grid.dart'; import 'package:pluto_grid/pluto_grid.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@@ -331,7 +332,14 @@ class _GestorVideosPageState extends State<GestorVideosPage> {
border: InputBorder.none, border: InputBorder.none,
contentPadding: const EdgeInsets.all(16), contentPadding: const EdgeInsets.all(16),
), ),
onChanged: (value) => provider.searchVideos(value), onChanged: (value) {
// Force immediate update in release mode
provider.searchVideos(value);
// Additional setState to ensure UI rebuild
if (mounted) {
setState(() {});
}
},
), ),
); );
} }
@@ -772,6 +780,11 @@ class _GestorVideosPageState extends State<GestorVideosPage> {
_stateManager!.setPageSize(pageSize, notify: true); _stateManager!.setPageSize(pageSize, notify: true);
// Conectar stateManager al provider para actualizaciones directas // Conectar stateManager al provider para actualizaciones directas
provider.stateManager = _stateManager; provider.stateManager = _stateManager;
// Force initial render in release mode
scheduleMicrotask(() {
_stateManager?.notifyListeners();
});
}, },
createFooter: (stateManager) { createFooter: (stateManager) {
return PlutoPagination(stateManager); return PlutoPagination(stateManager);

View File

@@ -1,3 +1,4 @@
import 'dart:async';
import 'dart:typed_data'; import 'dart:typed_data';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart'; import 'package:image_picker/image_picker.dart';
@@ -184,6 +185,11 @@ class VideosProvider extends ChangeNotifier {
), ),
); );
} }
// Force rebuild after rows are built (important for release mode)
scheduleMicrotask(() {
notifyListeners();
});
} }
/// Format duration in seconds to human readable /// Format duration in seconds to human readable
@@ -886,7 +892,10 @@ class VideosProvider extends ChangeNotifier {
if (query.isEmpty) { if (query.isEmpty) {
_buildPlutoRows(); _buildPlutoRows();
gridRebuildKey++; gridRebuildKey++;
notifyListeners(); // Force rebuild in release mode
scheduleMicrotask(() {
notifyListeners();
});
return; return;
} }
@@ -925,7 +934,12 @@ class VideosProvider extends ChangeNotifier {
} }
gridRebuildKey++; gridRebuildKey++;
notifyListeners(); // Force rebuild in release mode using scheduleMicrotask
scheduleMicrotask(() {
notifyListeners();
// Also notify state manager if available
stateManager?.notifyListeners();
});
} }
// ========== CLEANUP ========== // ========== CLEANUP ==========