mirror of
https://github.com/flutter/flutter
synced 2024-10-13 03:32:55 +00:00
Remove deprecated decodedCacheRatioCap (#32041)
This commit is contained in:
parent
57d6666462
commit
fecba55888
|
@ -10,8 +10,6 @@ import 'package:flutter/services.dart' show ServicesBinding;
|
|||
import 'image_cache.dart';
|
||||
import 'shader_warm_up.dart';
|
||||
|
||||
const double _kDefaultDecodedCacheRatioCap = 0.0;
|
||||
|
||||
/// Binding for the painting library.
|
||||
///
|
||||
/// Hooks into the cache eviction logic to clear the image cache.
|
||||
|
@ -71,50 +69,9 @@ mixin PaintingBinding on BindingBase, ServicesBinding {
|
|||
@protected
|
||||
ImageCache createImageCache() => ImageCache();
|
||||
|
||||
/// The maximum multiple of the compressed image size used when caching an
|
||||
/// animated image.
|
||||
///
|
||||
/// Individual frames of animated images can be cached into memory to avoid
|
||||
/// using CPU to re-decode them for every loop in the animation. This behavior
|
||||
/// will result in out-of-memory crashes when decoding large (or large numbers
|
||||
/// of) animated images so is disabled by default. Set this value to control
|
||||
/// how much memory each animated image is allowed to use for caching decoded
|
||||
/// frames compared to its compressed size. For example, setting this to `2.0`
|
||||
/// means that a 400KB GIF would be allowed at most to use 800KB of memory
|
||||
/// caching unessential decoded frames. A setting of `1.0` or less disables
|
||||
/// all caching of unessential decoded frames. See
|
||||
/// [_kDefaultDecodedCacheRatioCap] for the default value.
|
||||
///
|
||||
/// @deprecated The in-memory cache of decoded frames causes issues with
|
||||
/// memory consumption. Soon this API and the in-memory cache will be removed.
|
||||
/// See
|
||||
/// [flutter/flutter#26081](https://github.com/flutter/flutter/issues/26081)
|
||||
/// for more context.
|
||||
@deprecated
|
||||
double get decodedCacheRatioCap => _kDecodedCacheRatioCap;
|
||||
double _kDecodedCacheRatioCap = _kDefaultDecodedCacheRatioCap;
|
||||
/// Changes the maximum multiple of compressed image size used when caching an
|
||||
/// animated image.
|
||||
///
|
||||
/// Changing this value only affects new images, not images that have already
|
||||
/// been decoded.
|
||||
///
|
||||
/// @deprecated The in-memory cache of decoded frames causes issues with
|
||||
/// memory consumption. Soon this API and the in-memory cache will be removed.
|
||||
/// See
|
||||
/// [flutter/flutter#26081](https://github.com/flutter/flutter/issues/26081)
|
||||
/// for more context.
|
||||
@deprecated
|
||||
set decodedCacheRatioCap(double value) {
|
||||
assert (value != null);
|
||||
assert (value >= 0.0);
|
||||
_kDecodedCacheRatioCap = value;
|
||||
}
|
||||
|
||||
// ignore: deprecated_member_use_from_same_package
|
||||
/// Calls through to [dart:ui] with [decodedCacheRatioCap] from [ImageCache].
|
||||
Future<ui.Codec> instantiateImageCodec(Uint8List list) {
|
||||
return ui.instantiateImageCodec(list, decodedCacheRatioCap: decodedCacheRatioCap); // ignore: deprecated_member_use_from_same_package
|
||||
return ui.instantiateImageCodec(list);
|
||||
}
|
||||
|
||||
@override
|
||||
|
|
|
@ -14,16 +14,6 @@ import 'painting_utils.dart';
|
|||
void main() {
|
||||
final PaintingBindingSpy binding = PaintingBindingSpy();
|
||||
|
||||
test('decodedCacheRatio', () async {
|
||||
// final PaintingBinding binding = PaintingBinding.instance;
|
||||
// Has default value.
|
||||
expect(binding.decodedCacheRatioCap, isNot(null)); // ignore: deprecated_member_use_from_same_package
|
||||
|
||||
// Can be set.
|
||||
binding.decodedCacheRatioCap = 1.0; // ignore: deprecated_member_use_from_same_package
|
||||
expect(binding.decodedCacheRatioCap, 1.0); // ignore: deprecated_member_use_from_same_package
|
||||
});
|
||||
|
||||
test('instantiateImageCodec used for loading images', () async {
|
||||
expect(binding.instantiateImageCodecCalledCount, 0);
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@ class PaintingBindingSpy extends BindingBase with ServicesBinding, PaintingBindi
|
|||
@override
|
||||
Future<ui.Codec> instantiateImageCodec(Uint8List list) {
|
||||
counter++;
|
||||
return ui.instantiateImageCodec(list, decodedCacheRatioCap: decodedCacheRatioCap); // ignore: deprecated_member_use_from_same_package
|
||||
return ui.instantiateImageCodec(list);
|
||||
}
|
||||
|
||||
@override
|
||||
|
|
Loading…
Reference in a new issue