When distinct is true (the default), the Widget is rebuilt only when the Model changes. In order for this to work correctly, you must implement == and hashCode for the Model.
Model
@override final bool? distinct;