17 lines
630 B
Dart
17 lines
630 B
Dart
|
|
import 'dart:ui';
|
||
|
|
import 'package:flutter/foundation.dart';
|
||
|
|
import 'package:flutter/services.dart';
|
||
|
|
import 'package:flutter/widgets.dart';
|
||
|
|
|
||
|
|
/// [key] with Cmd on Apple platforms and Ctrl elsewhere.
|
||
|
|
SingleActivator primaryShortcut(LogicalKeyboardKey key, {bool shift = false}) {
|
||
|
|
final apple = defaultTargetPlatform == TargetPlatform.macOS ||
|
||
|
|
defaultTargetPlatform == TargetPlatform.iOS;
|
||
|
|
return SingleActivator(key, control: !apple, meta: apple, shift: shift);
|
||
|
|
}
|
||
|
|
|
||
|
|
final quitShortcut = primaryShortcut(LogicalKeyboardKey.keyQ);
|
||
|
|
|
||
|
|
Future<void> quitApp() =>
|
||
|
|
ServicesBinding.instance.exitApplication(AppExitType.required);
|