fix(settings): show real version and map equalizer gains
This commit is contained in:
@@ -3,6 +3,7 @@ import 'dart:io';
|
|||||||
|
|
||||||
import 'package:file_picker/file_picker.dart';
|
import 'package:file_picker/file_picker.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import 'package:share_plus/share_plus.dart' show Share, XFile;
|
import 'package:share_plus/share_plus.dart' show Share, XFile;
|
||||||
@@ -556,14 +557,23 @@ class _SeccionInfo extends StatelessWidget {
|
|||||||
(ctx, estado, _) => PluriGlassSurface(
|
(ctx, estado, _) => PluriGlassSurface(
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
const ListTile(
|
FutureBuilder<PackageInfo>(
|
||||||
|
future: PackageInfo.fromPlatform(),
|
||||||
|
builder: (ctx, snap) {
|
||||||
|
final version =
|
||||||
|
snap.hasData
|
||||||
|
? 'v${snap.data!.version}+${snap.data!.buildNumber}'
|
||||||
|
: 'Cargando versión...';
|
||||||
|
return ListTile(
|
||||||
contentPadding: EdgeInsets.zero,
|
contentPadding: EdgeInsets.zero,
|
||||||
leading: PluriIcon(
|
leading: const PluriIcon(
|
||||||
glyph: PluriIconGlyph.settings,
|
glyph: PluriIconGlyph.settings,
|
||||||
variant: PluriIconVariant.filled,
|
variant: PluriIconVariant.filled,
|
||||||
),
|
),
|
||||||
title: Text('PluriWave'),
|
title: const Text('PluriWave'),
|
||||||
subtitle: Text('v0.3.0 — Radio mundial'),
|
subtitle: Text('$version - Radio mundial'),
|
||||||
|
);
|
||||||
|
},
|
||||||
),
|
),
|
||||||
FutureBuilder<int>(
|
FutureBuilder<int>(
|
||||||
future: estado.favoritos.obtenerTodos().then((l) => l.length),
|
future: estado.favoritos.obtenerTodos().then((l) => l.length),
|
||||||
|
|||||||
@@ -374,7 +374,13 @@ class PluriWaveAudioHandler extends BaseAudioHandler with SeekHandler {
|
|||||||
i < params.bands.length && i < preset.bandas.length;
|
i < params.bands.length && i < preset.bandas.length;
|
||||||
i++
|
i++
|
||||||
) {
|
) {
|
||||||
await params.bands[i].setGain(preset.bandas[i]);
|
await params.bands[i].setGain(
|
||||||
|
_mapearGananciaNativa(
|
||||||
|
preset.bandas[i],
|
||||||
|
minDecibels: params.minDecibels,
|
||||||
|
maxDecibels: params.maxDecibels,
|
||||||
|
),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
}
|
}
|
||||||
@@ -390,11 +396,26 @@ class PluriWaveAudioHandler extends BaseAudioHandler with SeekHandler {
|
|||||||
try {
|
try {
|
||||||
final params = await _eq.parameters;
|
final params = await _eq.parameters;
|
||||||
if (index < params.bands.length) {
|
if (index < params.bands.length) {
|
||||||
await params.bands[index].setGain(db);
|
await params.bands[index].setGain(
|
||||||
|
_mapearGananciaNativa(
|
||||||
|
db,
|
||||||
|
minDecibels: params.minDecibels,
|
||||||
|
maxDecibels: params.maxDecibels,
|
||||||
|
),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
double _mapearGananciaNativa(
|
||||||
|
double db, {
|
||||||
|
required double minDecibels,
|
||||||
|
required double maxDecibels,
|
||||||
|
}) {
|
||||||
|
final normalizado = ((db.clamp(-12.0, 12.0) + 12.0) / 24.0).clamp(0.0, 1.0);
|
||||||
|
return minDecibels + (normalizado * (maxDecibels - minDecibels));
|
||||||
|
}
|
||||||
|
|
||||||
Future<void> setEcualizadorActivo(bool activo) async {
|
Future<void> setEcualizadorActivo(bool activo) async {
|
||||||
_ecualizadorActivo = activo;
|
_ecualizadorActivo = activo;
|
||||||
if (!_eqDisponible) return;
|
if (!_eqDisponible) return;
|
||||||
|
|||||||
@@ -493,6 +493,22 @@ packages:
|
|||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.1.0"
|
version: "2.1.0"
|
||||||
|
package_info_plus:
|
||||||
|
dependency: "direct main"
|
||||||
|
description:
|
||||||
|
name: package_info_plus
|
||||||
|
sha256: "16eee997588c60225bda0488b6dcfac69280a6b7a3cf02c741895dd370a02968"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "8.3.1"
|
||||||
|
package_info_plus_platform_interface:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: package_info_plus_platform_interface
|
||||||
|
sha256: "202a487f08836a592a6bd4f901ac69b3a8f146af552bbd14407b6b41e1c3f086"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "3.2.1"
|
||||||
path:
|
path:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ dependencies:
|
|||||||
url_launcher: ^6.3.1
|
url_launcher: ^6.3.1
|
||||||
geolocator: ^13.0.4
|
geolocator: ^13.0.4
|
||||||
geocoding: ^3.0.0
|
geocoding: ^3.0.0
|
||||||
|
package_info_plus: ^8.3.1
|
||||||
|
|
||||||
# Ads (activar cuando tengamos Ad Unit IDs)
|
# Ads (activar cuando tengamos Ad Unit IDs)
|
||||||
# google_mobile_ads: ^5.3.0
|
# google_mobile_ads: ^5.3.0
|
||||||
|
|||||||
Reference in New Issue
Block a user