Add unique keys for widgets
This commit is contained in:
parent
4be9424b53
commit
1447d895d1
|
@ -35,7 +35,7 @@ class LazyLoadingGallery extends StatefulWidget {
|
||||||
this.tag,
|
this.tag,
|
||||||
this.currentIndexStream, {
|
this.currentIndexStream, {
|
||||||
Key key,
|
Key key,
|
||||||
}) : super(key: key);
|
}) : super(key: key ?? UniqueKey());
|
||||||
|
|
||||||
@override
|
@override
|
||||||
_LazyLoadingGalleryState createState() => _LazyLoadingGalleryState();
|
_LazyLoadingGalleryState createState() => _LazyLoadingGalleryState();
|
||||||
|
@ -201,7 +201,7 @@ class LazyLoadingGridView extends StatefulWidget {
|
||||||
this.shouldRender,
|
this.shouldRender,
|
||||||
this.shouldRecycle, {
|
this.shouldRecycle, {
|
||||||
Key key,
|
Key key,
|
||||||
}) : super(key: key ?? GlobalKey<_LazyLoadingGridViewState>());
|
}) : super(key: key ?? UniqueKey());
|
||||||
|
|
||||||
@override
|
@override
|
||||||
_LazyLoadingGridViewState createState() => _LazyLoadingGridViewState();
|
_LazyLoadingGridViewState createState() => _LazyLoadingGridViewState();
|
||||||
|
@ -248,7 +248,7 @@ class _LazyLoadingGridViewState extends State<LazyLoadingGridView> {
|
||||||
|
|
||||||
Widget _getRecyclableView() {
|
Widget _getRecyclableView() {
|
||||||
return VisibilityDetector(
|
return VisibilityDetector(
|
||||||
key: Key(widget.tag + widget.files[0].creationTime.toString()),
|
key: UniqueKey(),
|
||||||
onVisibilityChanged: (visibility) {
|
onVisibilityChanged: (visibility) {
|
||||||
final shouldRender = visibility.visibleFraction > 0;
|
final shouldRender = visibility.visibleFraction > 0;
|
||||||
if (mounted && shouldRender != _shouldRender) {
|
if (mounted && shouldRender != _shouldRender) {
|
||||||
|
@ -266,7 +266,7 @@ class _LazyLoadingGridViewState extends State<LazyLoadingGridView> {
|
||||||
Widget _getNonRecyclableView() {
|
Widget _getNonRecyclableView() {
|
||||||
if (!_shouldRender) {
|
if (!_shouldRender) {
|
||||||
return VisibilityDetector(
|
return VisibilityDetector(
|
||||||
key: Key(widget.tag + widget.files[0].creationTime.toString()),
|
key: UniqueKey(),
|
||||||
onVisibilityChanged: (visibility) {
|
onVisibilityChanged: (visibility) {
|
||||||
if (mounted && visibility.visibleFraction > 0 && !_shouldRender) {
|
if (mounted && visibility.visibleFraction > 0 && !_shouldRender) {
|
||||||
setState(() {
|
setState(() {
|
||||||
|
|
Loading…
Reference in a new issue