mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2025-07-23 17:11:23 +00:00
33 lines
1.1 KiB
Dart
33 lines
1.1 KiB
Dart
![]() |
import 'dart:io';
|
||
|
|
||
|
import 'package:app_flowy/startup/startup.dart';
|
||
|
import 'package:app_flowy/workspace/application/home/home_bloc.dart';
|
||
|
import 'package:app_flowy/workspace/presentation/home/home_stack.dart';
|
||
|
import 'package:flutter/material.dart';
|
||
|
import 'package:hotkey_manager/hotkey_manager.dart';
|
||
|
import 'package:provider/provider.dart';
|
||
|
|
||
|
class HomeHotKeys extends StatelessWidget {
|
||
|
final Widget child;
|
||
|
const HomeHotKeys({required this.child});
|
||
|
|
||
|
@override
|
||
|
Widget build(BuildContext context) {
|
||
|
HotKey _hotKey = HotKey(
|
||
|
KeyCode.backslash,
|
||
|
modifiers: [Platform.isMacOS ? KeyModifier.meta : KeyModifier.control],
|
||
|
// Set hotkey scope (default is HotKeyScope.system)
|
||
|
scope: HotKeyScope.inapp, // Set as inapp-wide hotkey.
|
||
|
);
|
||
|
hotKeyManager.register(
|
||
|
_hotKey,
|
||
|
keyDownHandler: (hotKey) {
|
||
|
context.read<HomeBloc>().add(const HomeEvent.collapseMenu());
|
||
|
getIt<HomeStackManager>().collapsedNotifier.value =
|
||
|
!getIt<HomeStackManager>().collapsedNotifier.currentValue!;
|
||
|
},
|
||
|
);
|
||
|
return child;
|
||
|
}
|
||
|
}
|