add _ready check to FixedOrbitCameraDelegate
This commit is contained in:
@@ -28,10 +28,16 @@ class DelegateInputHandler implements InputHandler {
|
|||||||
final List<InputHandlerDelegate> delegates;
|
final List<InputHandlerDelegate> delegates;
|
||||||
|
|
||||||
final bool batch;
|
final bool batch;
|
||||||
|
|
||||||
|
bool _ready = false;
|
||||||
|
bool _processing = false;
|
||||||
|
|
||||||
DelegateInputHandler(
|
DelegateInputHandler(
|
||||||
{required this.viewer, required this.delegates, this.batch = true}) {
|
{required this.viewer, required this.delegates, this.batch = true}) {
|
||||||
FilamentApp.instance!.registerRequestFrameHook(process);
|
FilamentApp.instance!.registerRequestFrameHook(process);
|
||||||
|
viewer.initialized.then((_) {
|
||||||
|
this._ready = true;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
factory DelegateInputHandler.fixedOrbit(ThermionViewer viewer,
|
factory DelegateInputHandler.fixedOrbit(ThermionViewer viewer,
|
||||||
@@ -55,8 +61,6 @@ class DelegateInputHandler implements InputHandler {
|
|||||||
FreeFlightInputHandlerDelegateV2(viewer.view, sensitivity: sensitivity)
|
FreeFlightInputHandlerDelegateV2(viewer.view, sensitivity: sensitivity)
|
||||||
]);
|
]);
|
||||||
|
|
||||||
bool _processing = false;
|
|
||||||
|
|
||||||
Future<void> process() async {
|
Future<void> process() async {
|
||||||
_processing = true;
|
_processing = true;
|
||||||
|
|
||||||
@@ -93,7 +97,8 @@ class DelegateInputHandler implements InputHandler {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Future handle(InputEvent event) async {
|
Future handle(InputEvent event) async {
|
||||||
if (_processing) {
|
|
||||||
|
if (!_ready || _processing) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user