<itemvalue="Whether any listeners are currently registered. Clients should not depend on this value for their behavior, because having one listener's logic change when another listener happens to start or stop listening will lead to extremely hard-to-track bugs. Subclasses might use this information to determine whether to do any work when there are no listeners, however; for example, resuming a [Stream] when a listener is added and pausing it when a listener is removed. Typically this is used by overriding [addListener], checking if [hasListeners] is false before calling `super.addListener()`, and if so, starting whatever work is needed to determine when to call [notifyListeners]; and similarly, by overriding [removeListener], checking if [hasListeners] is false after calling `super.removeListener()`, and if so, stopping that same work."/>
<itemvalue="feat: send message to cloud function; hide animated emojis when dialog showing."/>
<itemvalue="implement"/>
@ -54,13 +56,11 @@
<itemvalue="Used to annotate an instance member (method, getter, setter, operator, or field) `m` in a class `C` or mixin `M`. Indicates that `m` should not be overridden in any classes that extend or mixin `C` or `M`. Tools, such as the analyzer, can provide feedback if the annotation is associated with anything other than an instance member, the annotation is associated with an abstract member (because subclasses are required to override the member), the annotation is associated with an extension method, the annotation is associated with a member `m` in class `C`, and there is a class `D` or mixin `M`, that extends or mixes in `C`, that declares an overriding member `m`."/>
<itemvalue="Annotation marking a class as not allowed as a super-type. Classes in the same package as the marked class may extend, implement or mix-in the annotated class. Tools, such as the analyzer, can provide feedback if the annotation is associated with anything other than a class, the annotation is associated with a class `C`, and there is a class or mixin `D`, which extends, implements, mixes in, or constrains to `C`, and `C` and `D` are declared in different packages."/>
<itemvalue="TODO(srawlins): Add a sentence which defines "referencing" and explicitly mentions tearing off, here and on the other annotations which use the word "referenced.""/>
<itemvalue="on Jump To Bottom"/>
<itemvalue="This notifier's value is true if a scroll is underway and false if the scroll position is idle. Listeners added by stateful widgets should be removed in the widget's [State.dispose] method."/>