Compare commits

...

4 Commits

Author SHA1 Message Date
Nick Fisher
8e47332ce8 chore(release): publish packages
- thermion_dart@0.2.0-dev.6.0
 - thermion_flutter_web@0.1.0-dev.6.0
 - thermion_flutter@0.2.0-dev.6.0
 - thermion_flutter_platform_interface@0.2.0-dev.6.0
 - thermion_flutter_ffi@0.2.0-dev.6.0
2024-09-25 21:58:28 +08:00
Nick Fisher
ffe8bee98b chore!: cleanup deleted export 2024-09-25 21:58:19 +08:00
Nick Fisher
1e07486017 chore(release): publish packages
- thermion_flutter@0.2.0-dev.6.0
2024-09-25 21:57:38 +08:00
Nick Fisher
58da196876 chore!: remove superseded HardwareKeyboard* classes 2024-09-25 21:56:16 +08:00
14 changed files with 96 additions and 114 deletions

View File

@@ -3,6 +3,60 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## 2024-09-25
### Changes
---
Packages with breaking changes:
- [`thermion_dart` - `v0.2.0-dev.6.0`](#thermion_dart---v020-dev60)
Packages with other changes:
- [`thermion_flutter_web` - `v0.1.0-dev.6.0`](#thermion_flutter_web---v010-dev60)
- [`thermion_flutter` - `v0.2.0-dev.6.0`](#thermion_flutter---v020-dev60)
- [`thermion_flutter_platform_interface` - `v0.2.0-dev.6.0`](#thermion_flutter_platform_interface---v020-dev60)
- [`thermion_flutter_ffi` - `v0.2.0-dev.6.0`](#thermion_flutter_ffi---v020-dev60)
Packages with dependency updates only:
> Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
- `thermion_flutter_web` - `v0.1.0-dev.6.0`
- `thermion_flutter` - `v0.2.0-dev.6.0`
- `thermion_flutter_platform_interface` - `v0.2.0-dev.6.0`
- `thermion_flutter_ffi` - `v0.2.0-dev.6.0`
---
#### `thermion_dart` - `v0.2.0-dev.6.0`
- **BREAKING** **CHORE**: cleanup deleted export.
## 2024-09-25
### Changes
---
Packages with breaking changes:
- [`thermion_flutter` - `v0.2.0-dev.6.0`](#thermion_flutter---v020-dev60)
Packages with other changes:
- There are no other changes in this release.
---
#### `thermion_flutter` - `v0.2.0-dev.6.0`
- **BREAKING** **CHORE**: remove superseded HardwareKeyboard* classes.
## 2024-09-25 ## 2024-09-25
### Changes ### Changes

View File

@@ -1,3 +1,9 @@
## 0.2.0-dev.6.0
> Note: This release has breaking changes.
- **BREAKING** **CHORE**: cleanup deleted export.
## 0.2.0-dev.5.0 ## 0.2.0-dev.5.0
> Note: This release has breaking changes. > Note: This release has breaking changes.

View File

@@ -1,5 +1,4 @@
library filament_dart; library filament_dart;
export 'thermion_dart/thermion_viewer.dart'; export 'thermion_dart/thermion_viewer.dart';
export 'thermion_dart/entities/entity_transform_controller.dart';
export 'thermion_dart/utils/geometry.dart'; export 'thermion_dart/utils/geometry.dart';

View File

@@ -1,6 +1,6 @@
name: thermion_dart name: thermion_dart
description: 3D rendering toolkit for Dart. description: 3D rendering toolkit for Dart.
version: 0.2.0-dev.5.0 version: 0.2.0-dev.6.0
homepage: https://thermion.dev homepage: https://thermion.dev
repository: https://github.com/nmfisher/thermion repository: https://github.com/nmfisher/thermion

View File

@@ -1,3 +1,13 @@
## 0.2.0-dev.6.0
- Update a dependency to the latest release.
## 0.2.0-dev.6.0
> Note: This release has breaking changes.
- **BREAKING** **CHORE**: remove superseded HardwareKeyboard* classes.
## 0.2.0-dev.5.0 ## 0.2.0-dev.5.0
- Update a dependency to the latest release. - Update a dependency to the latest release.

View File

@@ -1,60 +0,0 @@
import 'package:thermion_dart/thermion_dart/entities/entity_transform_controller.dart';
import 'package:flutter/services.dart';
class HardwareKeyboardListener {
final EntityTransformController _controller;
var _listening = true;
HardwareKeyboardListener(this._controller) {
// Get the global handler.
final KeyMessageHandler? existing =
ServicesBinding.instance.keyEventManager.keyMessageHandler;
// The handler is guaranteed non-null since
// `FallbackKeyEventRegistrar.instance` is only called during
// `Focus.onFocusChange`, at which time `ServicesBinding.instance` must
// have been called somewhere.
assert(existing != null);
// Assign the global handler with a patched handler.
ServicesBinding.instance.keyEventManager.keyMessageHandler = (keyMessage) {
if (keyMessage.rawEvent == null) {
return false;
}
if (!_listening) {
return false;
}
var event = keyMessage.rawEvent!;
switch (event.logicalKey) {
case LogicalKeyboardKey.escape:
_listening = false;
break;
case LogicalKeyboardKey.keyW:
(event is RawKeyDownEvent)
? _controller.forwardPressed()
: _controller.forwardReleased();
break;
case LogicalKeyboardKey.keyA:
event is RawKeyDownEvent
? _controller.strafeLeftPressed()
: _controller.strafeLeftReleased();
break;
case LogicalKeyboardKey.keyS:
event is RawKeyDownEvent
? _controller.backPressed()
: _controller.backReleased();
break;
case LogicalKeyboardKey.keyD:
event is RawKeyDownEvent
? _controller.strafeRightPressed()
: _controller.strafeRightReleased();
break;
default:
break;
}
return true;
};
}
void dispose() {
ServicesBinding.instance.keyEventManager.keyMessageHandler = null;
_controller.dispose();
}
}

View File

@@ -1,39 +0,0 @@
import 'dart:async';
import 'package:thermion_dart/thermion_dart/entities/entity_transform_controller.dart';
import 'package:flutter/services.dart';
class HardwareKeyboardPoll {
final EntityTransformController _controller;
late Timer _timer;
HardwareKeyboardPoll(this._controller) {
_timer = Timer.periodic(const Duration(milliseconds: 16), (_) {
if (RawKeyboard.instance.keysPressed.contains(LogicalKeyboardKey.keyW)) {
_controller.forwardPressed();
} else {
_controller.forwardReleased();
}
if (RawKeyboard.instance.keysPressed.contains(LogicalKeyboardKey.keyS)) {
_controller.backPressed();
} else {
_controller.backReleased();
}
if (RawKeyboard.instance.keysPressed.contains(LogicalKeyboardKey.keyA)) {
_controller.strafeLeftPressed();
} else {
_controller.strafeLeftReleased();
}
if (RawKeyboard.instance.keysPressed.contains(LogicalKeyboardKey.keyD)) {
_controller.strafeRightPressed();
} else {
_controller.strafeRightReleased();
}
});
}
void dispose() {
_timer.cancel();
}
}

View File

@@ -1,6 +1,6 @@
name: thermion_flutter name: thermion_flutter
description: Flutter plugin for 3D rendering with the Thermion toolkit. description: Flutter plugin for 3D rendering with the Thermion toolkit.
version: 0.2.0-dev.5.0 version: 0.2.0-dev.6.0
homepage: https://thermion.dev homepage: https://thermion.dev
repository: https://github.com/nmfisher/thermion repository: https://github.com/nmfisher/thermion
@@ -17,10 +17,10 @@ dependencies:
plugin_platform_interface: ^2.0.0 plugin_platform_interface: ^2.0.0
ffi: ^2.1.2 ffi: ^2.1.2
animation_tools_dart: ^0.0.4 animation_tools_dart: ^0.0.4
thermion_dart: ^0.2.0-dev.5.0 thermion_dart: ^0.2.0-dev.6.0
thermion_flutter_platform_interface: ^0.2.0-dev.5.0 thermion_flutter_platform_interface: ^0.2.0-dev.6.0
thermion_flutter_ffi: ^0.2.0-dev.5.0 thermion_flutter_ffi: ^0.2.0-dev.6.0
thermion_flutter_web: ^0.1.0-dev.5.0 thermion_flutter_web: ^0.1.0-dev.6.0
logging: ^1.2.0 logging: ^1.2.0
web: ^1.0.0 web: ^1.0.0

View File

@@ -1,3 +1,7 @@
## 0.2.0-dev.6.0
- Update a dependency to the latest release.
## 0.2.0-dev.5.0 ## 0.2.0-dev.5.0
- Update a dependency to the latest release. - Update a dependency to the latest release.

View File

@@ -1,7 +1,7 @@
name: thermion_flutter_ffi name: thermion_flutter_ffi
description: An FFI interface for the thermion_flutter plugin (all platforms except web). description: An FFI interface for the thermion_flutter plugin (all platforms except web).
repository: https://github.com/nmfisher/thermion_flutter/thermion_flutter repository: https://github.com/nmfisher/thermion_flutter/thermion_flutter
version: 0.2.0-dev.5.0 version: 0.2.0-dev.6.0
environment: environment:
sdk: ">=3.3.0 <4.0.0" sdk: ">=3.3.0 <4.0.0"
@@ -22,8 +22,8 @@ dependencies:
flutter: flutter:
sdk: flutter sdk: flutter
plugin_platform_interface: ^2.1.0 plugin_platform_interface: ^2.1.0
thermion_flutter_platform_interface: ^0.2.0-dev.5.0 thermion_flutter_platform_interface: ^0.2.0-dev.6.0
thermion_dart: ^0.2.0-dev.5.0 thermion_dart: ^0.2.0-dev.6.0
logging: ^1.2.0 logging: ^1.2.0
dev_dependencies: dev_dependencies:

View File

@@ -1,3 +1,7 @@
## 0.2.0-dev.6.0
- Update a dependency to the latest release.
## 0.2.0-dev.5.0 ## 0.2.0-dev.5.0
- Update a dependency to the latest release. - Update a dependency to the latest release.

View File

@@ -1,7 +1,7 @@
name: thermion_flutter_platform_interface name: thermion_flutter_platform_interface
description: A common platform interface for the thermion_flutter plugin. description: A common platform interface for the thermion_flutter plugin.
repository: https://github.com/nmfisher/thermion_flutter/thermion_flutter repository: https://github.com/nmfisher/thermion_flutter/thermion_flutter
version: 0.2.0-dev.5.0 version: 0.2.0-dev.6.0
environment: environment:
sdk: ">=3.3.0 <4.0.0" sdk: ">=3.3.0 <4.0.0"
@@ -11,7 +11,7 @@ dependencies:
flutter: flutter:
sdk: flutter sdk: flutter
plugin_platform_interface: ^2.1.0 plugin_platform_interface: ^2.1.0
thermion_dart: ^0.2.0-dev.5.0 thermion_dart: ^0.2.0-dev.6.0
dev_dependencies: dev_dependencies:
flutter_test: flutter_test:

View File

@@ -1,3 +1,7 @@
## 0.1.0-dev.6.0
- Update a dependency to the latest release.
## 0.1.0-dev.5.0 ## 0.1.0-dev.5.0
- Update a dependency to the latest release. - Update a dependency to the latest release.

View File

@@ -1,7 +1,7 @@
name: thermion_flutter_web name: thermion_flutter_web
description: A web platform interface for the thermion_flutter plugin. description: A web platform interface for the thermion_flutter plugin.
repository: https://github.com/nmfisher/thermion_flutter/thermion_flutter repository: https://github.com/nmfisher/thermion_flutter/thermion_flutter
version: 0.1.0-dev.5.0 version: 0.1.0-dev.6.0
environment: environment:
sdk: ">=3.3.0 <4.0.0" sdk: ">=3.3.0 <4.0.0"
@@ -20,8 +20,8 @@ dependencies:
sdk: flutter sdk: flutter
plugin_platform_interface: ^2.1.0 plugin_platform_interface: ^2.1.0
web: ^1.0.0 web: ^1.0.0
thermion_dart: ^0.2.0-dev.5.0 thermion_dart: ^0.2.0-dev.6.0
thermion_flutter_platform_interface: ^0.2.0-dev.5.0 thermion_flutter_platform_interface: ^0.2.0-dev.6.0
flutter_web_plugins: flutter_web_plugins:
sdk: flutter sdk: flutter