mirror of
https://github.com/lollipopkit/flutter_server_box.git
synced 2025-12-17 15:24:35 +01:00
#76 opt.
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
import 'package:hive_flutter/hive_flutter.dart';
|
||||
import 'package:toolbox/data/model/server/server_status.dart';
|
||||
|
||||
part 'net_view.g.dart';
|
||||
|
||||
@HiveType(typeId: 5)
|
||||
enum NetViewType {
|
||||
@HiveField(0)
|
||||
|
||||
51
lib/data/model/app/net_view.g.dart
Normal file
51
lib/data/model/app/net_view.g.dart
Normal file
@@ -0,0 +1,51 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'net_view.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// TypeAdapterGenerator
|
||||
// **************************************************************************
|
||||
|
||||
class NetViewTypeAdapter extends TypeAdapter<NetViewType> {
|
||||
@override
|
||||
final int typeId = 5;
|
||||
|
||||
@override
|
||||
NetViewType read(BinaryReader reader) {
|
||||
switch (reader.readByte()) {
|
||||
case 0:
|
||||
return NetViewType.count;
|
||||
case 1:
|
||||
return NetViewType.speed;
|
||||
case 2:
|
||||
return NetViewType.size;
|
||||
default:
|
||||
return NetViewType.count;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void write(BinaryWriter writer, NetViewType obj) {
|
||||
switch (obj) {
|
||||
case NetViewType.count:
|
||||
writer.writeByte(0);
|
||||
break;
|
||||
case NetViewType.speed:
|
||||
writer.writeByte(1);
|
||||
break;
|
||||
case NetViewType.size:
|
||||
writer.writeByte(2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
int get hashCode => typeId.hashCode;
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) =>
|
||||
identical(this, other) ||
|
||||
other is NetViewTypeAdapter &&
|
||||
runtimeType == other.runtimeType &&
|
||||
typeId == other.typeId;
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import 'package:hive_flutter/hive_flutter.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'package:toolbox/data/model/app/net_view.dart';
|
||||
import 'package:toolbox/data/model/ssh/virtual_key.dart';
|
||||
|
||||
import 'app.dart';
|
||||
@@ -55,6 +56,7 @@ Future<void> initHive() async {
|
||||
Hive.registerAdapter(SnippetAdapter());
|
||||
Hive.registerAdapter(ServerPrivateInfoAdapter());
|
||||
Hive.registerAdapter(VirtKeyAdapter());
|
||||
Hive.registerAdapter(NetViewTypeAdapter());
|
||||
}
|
||||
|
||||
void runInZone(dynamic Function() body) {
|
||||
|
||||
@@ -49,7 +49,6 @@ class _ServerPageState extends State<ServerPage>
|
||||
late ServerProvider _serverProvider;
|
||||
late SettingStore _settingStore;
|
||||
late S _s;
|
||||
late NetViewType _netViewType;
|
||||
|
||||
String? _tag;
|
||||
|
||||
@@ -58,7 +57,6 @@ class _ServerPageState extends State<ServerPage>
|
||||
super.initState();
|
||||
_serverProvider = locator<ServerProvider>();
|
||||
_settingStore = locator<SettingStore>();
|
||||
_netViewType = _settingStore.netViewType.fetch() ?? NetViewType.speed;
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -333,11 +331,16 @@ class _ServerPageState extends State<ServerPage>
|
||||
}
|
||||
|
||||
Widget _buildNet(ServerStatus ss) {
|
||||
final data = _netViewType.build(ss);
|
||||
return ValueListenableBuilder<NetViewType>(
|
||||
valueListenable: _settingStore.netViewType.listenable(),
|
||||
builder: (_, val, __) {
|
||||
final data = val.build(ss);
|
||||
return AnimatedSwitcher(
|
||||
duration: const Duration(milliseconds: 177),
|
||||
child: _buildIOData(data.up, data.down),
|
||||
);
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildExplainText(String text) {
|
||||
|
||||
@@ -924,7 +924,7 @@ class _SettingPageState extends State<SettingPage> {
|
||||
),
|
||||
),
|
||||
onTap: () {
|
||||
_keyboardTypeKey.currentState?.showButtonMenu();
|
||||
_netViewTypeKey.currentState?.showButtonMenu();
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user