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:pluto_grid/pluto_grid.dart';
import 'package:provider/provider.dart';
@@ -331,7 +332,14 @@ class _GestorVideosPageState extends State<GestorVideosPage> {
border: InputBorder.none,
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);
// Conectar stateManager al provider para actualizaciones directas
provider.stateManager = _stateManager;
// Force initial render in release mode
scheduleMicrotask(() {
_stateManager?.notifyListeners();
});
},
createFooter: (stateManager) {
return PlutoPagination(stateManager);

View File

@@ -1,3 +1,4 @@
import 'dart:async';
import 'dart:typed_data';
import 'package:flutter/material.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
@@ -886,7 +892,10 @@ class VideosProvider extends ChangeNotifier {
if (query.isEmpty) {
_buildPlutoRows();
gridRebuildKey++;
notifyListeners();
// Force rebuild in release mode
scheduleMicrotask(() {
notifyListeners();
});
return;
}
@@ -925,7 +934,12 @@ class VideosProvider extends ChangeNotifier {
}
gridRebuildKey++;
notifyListeners();
// Force rebuild in release mode using scheduleMicrotask
scheduleMicrotask(() {
notifyListeners();
// Also notify state manager if available
stateManager?.notifyListeners();
});
}
// ========== CLEANUP ==========