press escape to stop capturing keyboard input
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:flutter_filament/filament_controller.dart';
|
|||||||
|
|
||||||
class HardwareKeyboardListener {
|
class HardwareKeyboardListener {
|
||||||
final EntityTransformController _controller;
|
final EntityTransformController _controller;
|
||||||
|
var _listening = true;
|
||||||
HardwareKeyboardListener(this._controller) {
|
HardwareKeyboardListener(this._controller) {
|
||||||
// Get the global handler.
|
// Get the global handler.
|
||||||
final KeyMessageHandler? existing =
|
final KeyMessageHandler? existing =
|
||||||
@@ -18,8 +19,14 @@ class HardwareKeyboardListener {
|
|||||||
if (keyMessage.rawEvent == null) {
|
if (keyMessage.rawEvent == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (!_listening) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
var event = keyMessage.rawEvent!;
|
var event = keyMessage.rawEvent!;
|
||||||
switch (event.logicalKey) {
|
switch (event.logicalKey) {
|
||||||
|
case LogicalKeyboardKey.escape:
|
||||||
|
_listening = false;
|
||||||
|
break;
|
||||||
case LogicalKeyboardKey.keyW:
|
case LogicalKeyboardKey.keyW:
|
||||||
(event is RawKeyDownEvent)
|
(event is RawKeyDownEvent)
|
||||||
? _controller.forwardPressed()
|
? _controller.forwardPressed()
|
||||||
|
|||||||
Reference in New Issue
Block a user