`VirtKeyProvider` only used in ssh_term.dart`
This commit is contained in:
lollipopkit
2023-09-24 15:20:56 +08:00
parent 1194a87c76
commit 4619b6ef9c
4 changed files with 9 additions and 9 deletions

View File

@@ -5,7 +5,6 @@ import 'package:toolbox/data/provider/private_key.dart';
import 'package:toolbox/data/provider/server.dart';
import 'package:toolbox/data/provider/sftp.dart';
import 'package:toolbox/data/provider/snippet.dart';
import 'package:toolbox/data/provider/virtual_keyboard.dart';
import 'package:toolbox/locator.dart';
class Providers {
@@ -18,5 +17,4 @@ class Providers {
static final server = locator<ServerProvider>();
static final sftp = locator<SftpProvider>();
static final snippet = locator<SnippetProvider>();
static final virtKey = locator<VirtKeyProvider>();
}

View File

@@ -27,7 +27,6 @@ import 'data/provider/private_key.dart';
import 'data/provider/server.dart';
import 'data/provider/sftp.dart';
import 'data/provider/snippet.dart';
import 'data/provider/virtual_keyboard.dart';
import 'data/res/color.dart';
import 'locator.dart';
import 'view/widget/custom_appbar.dart';
@@ -43,7 +42,6 @@ Future<void> main() async {
ChangeNotifierProvider(create: (_) => locator<DockerProvider>()),
ChangeNotifierProvider(create: (_) => locator<ServerProvider>()),
ChangeNotifierProvider(create: (_) => locator<SnippetProvider>()),
ChangeNotifierProvider(create: (_) => locator<VirtKeyProvider>()),
ChangeNotifierProvider(create: (_) => locator<PrivateKeyProvider>()),
ChangeNotifierProvider(create: (_) => locator<SftpProvider>()),
],

View File

@@ -118,6 +118,7 @@ class _SettingPageState extends State<SettingPage> {
),
],
),
/// Only for debug, this will cause the app to crash
// onDoubleTap: () => context.showRoundDialog(
// title: Text(l10n.attention),

View File

@@ -11,6 +11,7 @@ import 'package:toolbox/core/extension/context/dialog.dart';
import 'package:toolbox/core/extension/context/locale.dart';
import 'package:toolbox/core/extension/context/snackbar.dart';
import 'package:toolbox/core/utils/platform/base.dart';
import 'package:toolbox/data/provider/virtual_keyboard.dart';
import 'package:toolbox/data/res/store.dart';
import 'package:xterm/core.dart';
import 'package:xterm/ui.dart' hide TerminalThemes;
@@ -20,10 +21,8 @@ import '../../core/utils/misc.dart';
import '../../core/utils/server.dart';
import '../../data/model/server/server_private_info.dart';
import '../../data/model/ssh/virtual_key.dart';
import '../../data/provider/virtual_keyboard.dart';
import '../../data/res/color.dart';
import '../../data/res/terminal.dart';
import '../../locator.dart';
const echoPWD = 'echo \$PWD';
@@ -37,7 +36,7 @@ class SSHPage extends StatefulWidget {
}
class _SSHPageState extends State<SSHPage> {
final _keyboard = locator<VirtKeyProvider>();
final _keyboard = VirtKeyProvider();
late final _terminal = Terminal(inputHandler: _keyboard);
final TerminalController _terminalController = TerminalController();
final List<List<VirtKey>> _virtKeysList = [];
@@ -144,8 +143,12 @@ class _SSHPageState extends State<SSHPage> {
child: Container(
color: _terminalTheme.background,
height: _virtKeysHeight,
child: Consumer<VirtKeyProvider>(
builder: (_, __, ___) => _buildVirtualKey(),
child: ChangeNotifierProvider(
create: (_) => _keyboard,
builder: (_, __) =>
Consumer<VirtKeyProvider>(builder: (_, __, ___) {
return _buildVirtualKey();
}),
),
),
),