Compare commits

..

4 Commits

+11 -11
View File
@@ -6,6 +6,15 @@
<option name="newTranslationDialogY" value="447" /> <option name="newTranslationDialogY" value="447" />
<option name="pinTranslationDialog" value="true" /> <option name="pinTranslationDialog" value="true" />
<histories> <histories>
<item value="已修复" />
<item value="FIXED" />
<item value="decline" />
<item value="gamification" />
<item value="sealed" />
<item value="A [DocumentReference] refers to a document location in a [FirebaseFirestore] database and can be used to write, read, or listen to the location. The document at the referenced location may or may not exist. A [DocumentReference] can also be used to create a [CollectionReference] to a subcollection." />
<item value="is Lol" />
<item value="is Rant" />
<item value="is Comfort" />
<item value="If true the [body] and the scaffold's floating widgets should size themselves to avoid the onscreen keyboard whose height is defined by the ambient [MediaQuery]'s [MediaQueryData.viewInsets] `bottom` property. For example, if there is an onscreen keyboard displayed above the scaffold, the body can be resized to avoid overlapping the keyboard, which prevents widgets inside the body from being obscured by the keyboard. Defaults to true." /> <item value="If true the [body] and the scaffold's floating widgets should size themselves to avoid the onscreen keyboard whose height is defined by the ambient [MediaQuery]'s [MediaQueryData.viewInsets] `bottom` property. For example, if there is an onscreen keyboard displayed above the scaffold, the body can be resized to avoid overlapping the keyboard, which prevents widgets inside the body from being obscured by the keyboard. Defaults to true." />
<item value="Position the control relative to the text in the fashion that is typical for the current platform, and place the secondary widget on the opposite side." /> <item value="Position the control relative to the text in the fashion that is typical for the current platform, and place the secondary widget on the opposite side." />
<item value="Position the control on the trailing edge, and the secondary widget, if any, on the leading edge." /> <item value="Position the control on the trailing edge, and the secondary widget, if any, on the leading edge." />
@@ -47,20 +56,11 @@
<item value="Register a closure to be called when the object changes. If the given closure is already registered, an additional instance is added, and must be removed the same number of times it is added before it will stop being called. This method must not be called after [dispose] has been called. {@template flutter.foundation.ChangeNotifier.addListener} If a listener is added twice, and is removed once during an iteration (e.g. in response to a notification), it will still be called again. If, on the other hand, it is removed as many times as it was registered, then it will no longer be called. This odd behavior is the result of the [ChangeNotifier] not being able to determine which listener is being removed, since they are identical, therefore it will conservatively still call all the listeners when it knows that any are still registered. This surprising behavior can be unexpectedly observed when registering a listener on two separate objects which are both forwarding all registrations to a common upstream object. {@endtemplate} See also: [removeListener], which removes a previously registered closure from the list of closures that are notified when the object changes." /> <item value="Register a closure to be called when the object changes. If the given closure is already registered, an additional instance is added, and must be removed the same number of times it is added before it will stop being called. This method must not be called after [dispose] has been called. {@template flutter.foundation.ChangeNotifier.addListener} If a listener is added twice, and is removed once during an iteration (e.g. in response to a notification), it will still be called again. If, on the other hand, it is removed as many times as it was registered, then it will no longer be called. This odd behavior is the result of the [ChangeNotifier] not being able to determine which listener is being removed, since they are identical, therefore it will conservatively still call all the listeners when it knows that any are still registered. This surprising behavior can be unexpectedly observed when registering a listener on two separate objects which are both forwarding all registrations to a common upstream object. {@endtemplate} See also: [removeListener], which removes a previously registered closure from the list of closures that are notified when the object changes." />
<item value="initial" /> <item value="initial" />
<item value="to Go" /> <item value="to Go" />
<item value="intro" />
<item value="change time text font to TINY on post detail page." />
<item value="Stops calling this [Ticker]'s callback. If called with the `canceled` argument set to false (the default), causes the future returned by [start] to resolve. If called with the `canceled` argument set to true, the future does not resolve, and the future obtained from [TickerFuture.orCancel], if any, resolves with a [TickerCanceled] error. Calling this sets [isActive] to false. This method does nothing if called when the ticker is inactive. By convention, this method is used by the object that receives the ticks (as opposed to the [TickerProvider] which created the ticker)." />
<item value="The length of time this animation should last. If [reverseDuration] is specified, then [duration] is only used when going [forward]. Otherwise, it specifies the duration going in both directions." />
<item value="Called whenever the widget configuration changes. If the parent widget rebuilds and request that this location in the tree update to display a new widget with the same [runtimeType] and [Widget.key], the framework will update the [widget] property of this [State] object to refer to the new widget and then call this method with the previous widget as an argument. Override this method to respond when the [widget] changes (e.g., to start implicit animations). The framework always calls [build] after calling [didUpdateWidget], which means any calls to [setState] in [didUpdateWidget] are redundant. {@macro flutter.widgets.State.initState} Implementations of this method should start with a call to the inherited method, as in `super.didUpdateWidget(oldWidget)`." />
<item value="Called when a dependency of this [State] object changes. For example, if the previous call to [build] referenced an [InheritedWidget] that later changed, the framework would call this method to notify this object about the change. This method is also called immediately after [initState]. It is safe to call [BuildContext.dependOnInheritedWidgetOfExactType] from this method. Subclasses rarely override this method because the framework always calls [build] after a dependency changes. Some subclasses do override this method because they need to do some expensive work (e.g., network fetches) when their dependencies change, and that work would be too expensive to do for every build." />
<item value="Whether to continue showing the old image (true), or briefly show nothing (false), when the image provider changes. The default value is false. Design discussion Why is the default value of [gaplessPlayback] false? Having the default value of [gaplessPlayback] be false helps prevent situations where stale or misleading information might be presented. Consider the following case: We have constructed a 'Person' widget that displays an avatar [Image] of the currently loaded person along with their name. We could request for a new person to be loaded into the widget at any time. Suppose we have a person currently loaded and the widget loads a new person. What happens if the [Image] fails to load? Option A ([gaplessPlayback] = false): The new person's name is coupled with a blank image. Option B ([gaplessPlayback] = true): The widget displays the avatar of the previous person and the name of the newly loaded person. This is why the default value is false. Most of the time, when you change the image provider you're not just changing the image, you're removing the old widget and adding a new one and not expecting them to have any relationship. With [gaplessPlayback] on you might accidentally break this expectation and re-use the old widget." />
<item value="gapless Playback" />
<item value="If [cacheWidth] or [cacheHeight] are provided, it indicates to the engine that the image must be decoded at the specified size. The image will be rendered to the constraints of the layout or [width] and [height] regardless of these parameters. These parameters are primarily intended to reduce the memory usage of [ImageCache]." />
</histories> </histories>
<option name="languageScores"> <option name="languageScores">
<map> <map>
<entry key="CHINESE" value="420" /> <entry key="CHINESE" value="430" />
<entry key="ENGLISH" value="421" /> <entry key="ENGLISH" value="430" />
<entry key="GERMAN" value="1" /> <entry key="GERMAN" value="1" />
<entry key="FRENCH" value="1" /> <entry key="FRENCH" value="1" />
</map> </map>