opt.
This commit is contained in:
@@ -2,7 +2,6 @@ import 'package:get_it/get_it.dart';
|
|||||||
|
|
||||||
import 'data/provider/app.dart';
|
import 'data/provider/app.dart';
|
||||||
import 'data/provider/debug.dart';
|
import 'data/provider/debug.dart';
|
||||||
import 'data/provider/container.dart';
|
|
||||||
import 'data/provider/private_key.dart';
|
import 'data/provider/private_key.dart';
|
||||||
import 'data/provider/server.dart';
|
import 'data/provider/server.dart';
|
||||||
import 'data/provider/sftp.dart';
|
import 'data/provider/sftp.dart';
|
||||||
@@ -25,7 +24,6 @@ void _setupLocatorForServices() {
|
|||||||
void _setupLocatorForProviders() {
|
void _setupLocatorForProviders() {
|
||||||
locator.registerSingleton(AppProvider());
|
locator.registerSingleton(AppProvider());
|
||||||
locator.registerSingleton(DebugProvider());
|
locator.registerSingleton(DebugProvider());
|
||||||
locator.registerSingleton(ContainerProvider());
|
|
||||||
locator.registerSingleton(ServerProvider());
|
locator.registerSingleton(ServerProvider());
|
||||||
locator.registerSingleton(VirtKeyProvider());
|
locator.registerSingleton(VirtKeyProvider());
|
||||||
locator.registerSingleton(SnippetProvider());
|
locator.registerSingleton(SnippetProvider());
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ import 'data/model/server/server_private_info.dart';
|
|||||||
import 'data/model/server/snippet.dart';
|
import 'data/model/server/snippet.dart';
|
||||||
import 'data/model/ssh/virtual_key.dart';
|
import 'data/model/ssh/virtual_key.dart';
|
||||||
import 'data/provider/app.dart';
|
import 'data/provider/app.dart';
|
||||||
import 'data/provider/debug.dart';
|
|
||||||
import 'data/provider/private_key.dart';
|
import 'data/provider/private_key.dart';
|
||||||
import 'data/provider/server.dart';
|
import 'data/provider/server.dart';
|
||||||
import 'data/provider/sftp.dart';
|
import 'data/provider/sftp.dart';
|
||||||
@@ -43,7 +42,6 @@ Future<void> main() async {
|
|||||||
MultiProvider(
|
MultiProvider(
|
||||||
providers: [
|
providers: [
|
||||||
ChangeNotifierProvider(create: (_) => locator<AppProvider>()),
|
ChangeNotifierProvider(create: (_) => locator<AppProvider>()),
|
||||||
ChangeNotifierProvider(create: (_) => locator<DebugProvider>()),
|
|
||||||
ChangeNotifierProvider(create: (_) => locator<ServerProvider>()),
|
ChangeNotifierProvider(create: (_) => locator<ServerProvider>()),
|
||||||
ChangeNotifierProvider(create: (_) => locator<SnippetProvider>()),
|
ChangeNotifierProvider(create: (_) => locator<SnippetProvider>()),
|
||||||
ChangeNotifierProvider(create: (_) => locator<PrivateKeyProvider>()),
|
ChangeNotifierProvider(create: (_) => locator<PrivateKeyProvider>()),
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import 'package:toolbox/core/extension/context/common.dart';
|
import 'package:toolbox/core/extension/context/common.dart';
|
||||||
import 'package:toolbox/data/provider/debug.dart';
|
import 'package:toolbox/data/provider/debug.dart';
|
||||||
|
import 'package:toolbox/data/res/provider.dart';
|
||||||
|
|
||||||
import '../widget/appbar.dart';
|
import '../widget/appbar.dart';
|
||||||
|
|
||||||
@@ -40,14 +41,17 @@ class _DebugPageState extends State<DebugPage> {
|
|||||||
fontWeight: FontWeight.bold,
|
fontWeight: FontWeight.bold,
|
||||||
),
|
),
|
||||||
child: SingleChildScrollView(
|
child: SingleChildScrollView(
|
||||||
child: Consumer<DebugProvider>(
|
child: ChangeNotifierProvider(
|
||||||
builder: (_, debug, __) {
|
create: (_) => Pros.debug,
|
||||||
return Column(
|
child: Consumer<DebugProvider>(
|
||||||
mainAxisSize: MainAxisSize.min,
|
builder: (_, debug, __) {
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
return Column(
|
||||||
children: debug.widgets,
|
mainAxisSize: MainAxisSize.min,
|
||||||
);
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
},
|
children: debug.widgets,
|
||||||
|
);
|
||||||
|
},
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ import 'package:toolbox/core/extension/context/locale.dart';
|
|||||||
import 'package:toolbox/core/extension/context/snackbar.dart';
|
import 'package:toolbox/core/extension/context/snackbar.dart';
|
||||||
import 'package:toolbox/data/model/app/shell_func.dart';
|
import 'package:toolbox/data/model/app/shell_func.dart';
|
||||||
import 'package:toolbox/data/res/provider.dart';
|
import 'package:toolbox/data/res/provider.dart';
|
||||||
import 'package:toolbox/view/widget/expand_tile.dart';
|
|
||||||
|
|
||||||
import '../../../core/route.dart';
|
import '../../../core/route.dart';
|
||||||
import '../../../data/model/server/private_key_info.dart';
|
import '../../../data/model/server/private_key_info.dart';
|
||||||
@@ -219,7 +218,7 @@ class _ServerEditPageState extends State<ServerEditPage> {
|
|||||||
onRenameTag: Pros.server.renameTag,
|
onRenameTag: Pros.server.renameTag,
|
||||||
),
|
),
|
||||||
_buildAuth(),
|
_buildAuth(),
|
||||||
_buildJumpServer(),
|
//_buildJumpServer(),
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text(l10n.autoConnect),
|
title: Text(l10n.autoConnect),
|
||||||
trailing: ListenableBuilder(
|
trailing: ListenableBuilder(
|
||||||
@@ -347,48 +346,48 @@ class _ServerEditPageState extends State<ServerEditPage> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildJumpServer() {
|
// Widget _buildJumpServer() {
|
||||||
return ListenableBuilder(
|
// return ListenableBuilder(
|
||||||
listenable: _jumpServer,
|
// listenable: _jumpServer,
|
||||||
builder: (_, __) {
|
// builder: (_, __) {
|
||||||
final children = Pros.server.servers
|
// final children = Pros.server.servers
|
||||||
.where((element) => element.spi.jumpId == null)
|
// .where((element) => element.spi.jumpId == null)
|
||||||
.where((element) => element.spi.id != widget.spi?.id)
|
// .where((element) => element.spi.id != widget.spi?.id)
|
||||||
.map(
|
// .map(
|
||||||
(e) => ListTile(
|
// (e) => ListTile(
|
||||||
title: Text(e.spi.name),
|
// title: Text(e.spi.name),
|
||||||
subtitle: Text(e.spi.id, style: UIs.textGrey),
|
// subtitle: Text(e.spi.id, style: UIs.textGrey),
|
||||||
trailing: Radio<String>(
|
// trailing: Radio<String>(
|
||||||
groupValue: _jumpServer.value,
|
// groupValue: _jumpServer.value,
|
||||||
value: e.spi.id,
|
// value: e.spi.id,
|
||||||
onChanged: (val) => _jumpServer.value = val,
|
// onChanged: (val) => _jumpServer.value = val,
|
||||||
),
|
// ),
|
||||||
onTap: () {
|
// onTap: () {
|
||||||
_jumpServer.value = e.spi.id;
|
// _jumpServer.value = e.spi.id;
|
||||||
},
|
// },
|
||||||
),
|
// ),
|
||||||
)
|
// )
|
||||||
.toList();
|
// .toList();
|
||||||
children.add(ListTile(
|
// children.add(ListTile(
|
||||||
title: Text(l10n.clear),
|
// title: Text(l10n.clear),
|
||||||
trailing: const Icon(Icons.clear),
|
// trailing: const Icon(Icons.clear),
|
||||||
onTap: () => _jumpServer.value = null,
|
// onTap: () => _jumpServer.value = null,
|
||||||
));
|
// ));
|
||||||
return CardX(
|
// return CardX(
|
||||||
child: ExpandTile(
|
// child: ExpandTile(
|
||||||
leading: const Icon(Icons.map),
|
// leading: const Icon(Icons.map),
|
||||||
initiallyExpanded: _jumpServer.value != null,
|
// initiallyExpanded: _jumpServer.value != null,
|
||||||
title: Text(l10n.jumpServer),
|
// title: Text(l10n.jumpServer),
|
||||||
subtitle: const Text(
|
// subtitle: const Text(
|
||||||
"It was temporarily disabled because it has some bugs (Issues #210)",
|
// "It was temporarily disabled because it has some bugs (Issues #210)",
|
||||||
style: UIs.textGrey,
|
// style: UIs.textGrey,
|
||||||
),
|
// ),
|
||||||
children: children,
|
// children: children,
|
||||||
),
|
// ),
|
||||||
);
|
// );
|
||||||
},
|
// },
|
||||||
);
|
// );
|
||||||
}
|
// }
|
||||||
|
|
||||||
void _onSave() async {
|
void _onSave() async {
|
||||||
if (_ipController.text.isEmpty) {
|
if (_ipController.text.isEmpty) {
|
||||||
|
|||||||
Reference in New Issue
Block a user