From 330862c98ecc7ed8d94e7cae0c34cd5781da0007 Mon Sep 17 00:00:00 2001 From: Brett Morgan Date: Fri, 16 Feb 2024 09:10:51 +1100 Subject: [PATCH] fix!: Migrate from `RawKeyEvent` to `KeyEvent` (#3002) First pass at migrating from `RawKeyEvent` and `RawKeyboard` to `KeyEvent` and `HardwareKeyboard`. Context: https://docs.flutter.dev/release/breaking-changes/key-event-migration --- .github/workflows/cicd.yml | 2 +- doc/flame/examples/pubspec.yaml | 2 +- .../platformer/app/lib/actors/ember.dart | 2 +- doc/tutorials/platformer/app/pubspec.yaml | 1 + .../games/padracing/lib/padracing_game.dart | 2 +- examples/games/rogue_shooter/pubspec.yaml | 2 +- examples/games/trex/lib/trex_game.dart | 2 +- examples/games/trex/pubspec.yaml | 2 +- .../camera_follow_and_world_bounds.dart | 4 ++-- .../coordinate_systems_example.dart | 4 ++-- .../follow_component_example.dart | 4 ++-- .../collision_detection/quadtree_example.dart | 2 +- .../lib/stories/input/keyboard_example.dart | 6 ++--- .../system/without_flame_game_example.dart | 4 ++-- examples/pubspec.yaml | 2 +- melos.yaml | 1 + packages/flame/example/pubspec.yaml | 2 +- .../input/keyboard_listener_component.dart | 4 ++-- .../components/mixins/keyboard_handler.dart | 2 +- .../lib/src/game/game_widget/game_widget.dart | 9 +++++--- .../flame/lib/src/game/mixins/keyboard.dart | 4 ++-- packages/flame/pubspec.yaml | 2 +- .../keyboard_listener_component_test.dart | 6 ++--- .../game_widget_keyboard_test.dart | 4 ++-- .../game/game_widget/game_widget_test.dart | 6 ++--- .../flame/test/game/mixins/keyboard_test.dart | 20 ++++++++--------- packages/flame_audio/pubspec.yaml | 2 +- .../lib/src/game/components/player.dart | 2 +- packages/flame_bloc/example/pubspec.yaml | 1 + packages/flame_bloc/pubspec.yaml | 2 +- packages/flame_fire_atlas/pubspec.yaml | 2 +- packages/flame_forge2d/example/pubspec.yaml | 2 +- packages/flame_forge2d/pubspec.yaml | 2 +- .../example/lib/colonists_game.dart | 22 +++++++++---------- packages/flame_isolate/example/pubspec.yaml | 1 + packages/flame_isolate/pubspec.yaml | 2 +- packages/flame_jenny/pubspec.yaml | 2 +- packages/flame_lottie/pubspec.yaml | 2 +- packages/flame_markdown/pubspec.yaml | 2 +- packages/flame_network_assets/pubspec.yaml | 2 +- packages/flame_noise/pubspec.yaml | 2 +- packages/flame_oxygen/pubspec.yaml | 2 +- packages/flame_rive/pubspec.yaml | 2 +- packages/flame_riverpod/pubspec.yaml | 2 +- packages/flame_spine/pubspec.yaml | 2 +- .../flame_splash_screen/example/pubspec.yaml | 2 +- packages/flame_splash_screen/pubspec.yaml | 2 +- packages/flame_studio/pubspec.yaml | 2 +- packages/flame_svg/pubspec.yaml | 2 +- packages/flame_test/pubspec.yaml | 2 +- .../flame_texturepacker/example/pubspec.yaml | 2 +- packages/flame_texturepacker/pubspec.yaml | 2 +- packages/flame_tiled/pubspec.yaml | 2 +- 53 files changed, 90 insertions(+), 83 deletions(-) diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 9819835b7..701f4245c 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -9,7 +9,7 @@ on: env: - FLUTTER_MIN_VERSION: '3.16.0' + FLUTTER_MIN_VERSION: '3.19.0' jobs: # BEGIN LINTING STAGE diff --git a/doc/flame/examples/pubspec.yaml b/doc/flame/examples/pubspec.yaml index 79f9bf323..1f1eddc87 100644 --- a/doc/flame/examples/pubspec.yaml +++ b/doc/flame/examples/pubspec.yaml @@ -5,7 +5,7 @@ publish_to: none environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/doc/tutorials/platformer/app/lib/actors/ember.dart b/doc/tutorials/platformer/app/lib/actors/ember.dart index 94e2fe2ed..fc3dac5b1 100644 --- a/doc/tutorials/platformer/app/lib/actors/ember.dart +++ b/doc/tutorials/platformer/app/lib/actors/ember.dart @@ -44,7 +44,7 @@ class EmberPlayer extends SpriteAnimationComponent } @override - bool onKeyEvent(RawKeyEvent event, Set keysPressed) { + bool onKeyEvent(KeyEvent event, Set keysPressed) { horizontalDirection = 0; horizontalDirection += (keysPressed.contains(LogicalKeyboardKey.keyA) || keysPressed.contains(LogicalKeyboardKey.arrowLeft)) diff --git a/doc/tutorials/platformer/app/pubspec.yaml b/doc/tutorials/platformer/app/pubspec.yaml index c4610cbe7..209bf07b4 100644 --- a/doc/tutorials/platformer/app/pubspec.yaml +++ b/doc/tutorials/platformer/app/pubspec.yaml @@ -5,6 +5,7 @@ version: 1.0.0+1 environment: sdk: ">=3.0.0 <4.0.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/examples/games/padracing/lib/padracing_game.dart b/examples/games/padracing/lib/padracing_game.dart index 91bb728d7..9ed5405d6 100644 --- a/examples/games/padracing/lib/padracing_game.dart +++ b/examples/games/padracing/lib/padracing_game.dart @@ -209,7 +209,7 @@ class PadRacingGame extends Forge2DGame with KeyboardEvents { @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { super.onKeyEvent(event, keysPressed); diff --git a/examples/games/rogue_shooter/pubspec.yaml b/examples/games/rogue_shooter/pubspec.yaml index 4435ad1d3..509c3d444 100644 --- a/examples/games/rogue_shooter/pubspec.yaml +++ b/examples/games/rogue_shooter/pubspec.yaml @@ -7,7 +7,7 @@ version: 0.1.0 environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/examples/games/trex/lib/trex_game.dart b/examples/games/trex/lib/trex_game.dart index 638018572..c23447e30 100644 --- a/examples/games/trex/lib/trex_game.dart +++ b/examples/games/trex/lib/trex_game.dart @@ -88,7 +88,7 @@ class TRexGame extends FlameGame @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { if (keysPressed.contains(LogicalKeyboardKey.enter) || diff --git a/examples/games/trex/pubspec.yaml b/examples/games/trex/pubspec.yaml index 4be80b61f..88e4cf751 100644 --- a/examples/games/trex/pubspec.yaml +++ b/examples/games/trex/pubspec.yaml @@ -7,7 +7,7 @@ version: 0.1.0 environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: collection: ^1.16.0 diff --git a/examples/lib/stories/camera_and_viewport/camera_follow_and_world_bounds.dart b/examples/lib/stories/camera_and_viewport/camera_follow_and_world_bounds.dart index 617508a87..5b24773f4 100644 --- a/examples/lib/stories/camera_and_viewport/camera_follow_and_world_bounds.dart +++ b/examples/lib/stories/camera_and_viewport/camera_follow_and_world_bounds.dart @@ -142,8 +142,8 @@ class Player extends PositionComponent with KeyboardHandler { } @override - bool onKeyEvent(RawKeyEvent event, Set keysPressed) { - final isKeyDown = event is RawKeyDownEvent; + bool onKeyEvent(KeyEvent event, Set keysPressed) { + final isKeyDown = event is KeyDownEvent; final keyLeft = (event.logicalKey == LogicalKeyboardKey.arrowLeft) || (event.logicalKey == LogicalKeyboardKey.keyA); final keyRight = (event.logicalKey == LogicalKeyboardKey.arrowRight) || diff --git a/examples/lib/stories/camera_and_viewport/coordinate_systems_example.dart b/examples/lib/stories/camera_and_viewport/coordinate_systems_example.dart index c9294b56b..2d47ceaa3 100644 --- a/examples/lib/stories/camera_and_viewport/coordinate_systems_example.dart +++ b/examples/lib/stories/camera_and_viewport/coordinate_systems_example.dart @@ -155,10 +155,10 @@ class CoordinateSystemsExample extends FlameGame /// Camera controls. @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { - final isKeyDown = event is RawKeyDownEvent; + final isKeyDown = event is KeyDownEvent; if (event.logicalKey == LogicalKeyboardKey.keyA) { cameraVelocity.x = isKeyDown ? -1 : 0; diff --git a/examples/lib/stories/camera_and_viewport/follow_component_example.dart b/examples/lib/stories/camera_and_viewport/follow_component_example.dart index eedbc14d8..c27cce904 100644 --- a/examples/lib/stories/camera_and_viewport/follow_component_example.dart +++ b/examples/lib/stories/camera_and_viewport/follow_component_example.dart @@ -100,8 +100,8 @@ class MovableEmber extends Ember } @override - bool onKeyEvent(RawKeyEvent event, Set keysPressed) { - final isKeyDown = event is RawKeyDownEvent; + bool onKeyEvent(KeyEvent event, Set keysPressed) { + final isKeyDown = event is KeyDownEvent; final bool handled; if (event.logicalKey == LogicalKeyboardKey.keyA) { diff --git a/examples/lib/stories/collision_detection/quadtree_example.dart b/examples/lib/stories/collision_detection/quadtree_example.dart index 8be1859df..98aa77f8e 100644 --- a/examples/lib/stories/collision_detection/quadtree_example.dart +++ b/examples/lib/stories/collision_detection/quadtree_example.dart @@ -142,7 +142,7 @@ Press T button to toggle player to collide with other objects. @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { for (final key in keysPressed) { diff --git a/examples/lib/stories/input/keyboard_example.dart b/examples/lib/stories/input/keyboard_example.dart index 5d04f40fe..6a9e337ee 100644 --- a/examples/lib/stories/input/keyboard_example.dart +++ b/examples/lib/stories/input/keyboard_example.dart @@ -39,14 +39,14 @@ class KeyboardExample extends FlameGame with KeyboardEvents { @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { - final isKeyDown = event is RawKeyDownEvent; + final isKeyDown = event is KeyDownEvent; // Avoiding repeat event as we are interested only in // key up and key down event. - if (!event.repeat) { + if (key is! KeyRepeatEvent) { if (event.logicalKey == LogicalKeyboardKey.keyA) { _direction.x += isKeyDown ? -1 : 1; } else if (event.logicalKey == LogicalKeyboardKey.keyD) { diff --git a/examples/lib/stories/system/without_flame_game_example.dart b/examples/lib/stories/system/without_flame_game_example.dart index 8cd0a1eb5..19686d310 100644 --- a/examples/lib/stories/system/without_flame_game_example.dart +++ b/examples/lib/stories/system/without_flame_game_example.dart @@ -30,10 +30,10 @@ class NoFlameGameExample extends Game with KeyboardEvents { @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { - final isKeyDown = event is RawKeyDownEvent; + final isKeyDown = event is KeyDownEvent; if (event.logicalKey == LogicalKeyboardKey.keyA) { velocity.x = isKeyDown ? -1 : 0; diff --git a/examples/pubspec.yaml b/examples/pubspec.yaml index e2194c918..90d8237e8 100644 --- a/examples/pubspec.yaml +++ b/examples/pubspec.yaml @@ -7,7 +7,7 @@ version: 0.1.0 environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: dashbook: ^0.1.12 diff --git a/melos.yaml b/melos.yaml index 73cee52df..2d5ecde70 100644 --- a/melos.yaml +++ b/melos.yaml @@ -16,6 +16,7 @@ command: bootstrap: environment: sdk: ">=3.0.0 <4.0.0" + flutter: ^3.19.0 dependencies: meta: ^1.9.1 vector_math: ^2.1.4 diff --git a/packages/flame/example/pubspec.yaml b/packages/flame/example/pubspec.yaml index 6dae10390..1ee19d989 100644 --- a/packages/flame/example/pubspec.yaml +++ b/packages/flame/example/pubspec.yaml @@ -5,7 +5,7 @@ publish_to: 'none' environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame/lib/src/components/input/keyboard_listener_component.dart b/packages/flame/lib/src/components/input/keyboard_listener_component.dart index 5fd65de4f..f39d68380 100644 --- a/packages/flame/lib/src/components/input/keyboard_listener_component.dart +++ b/packages/flame/lib/src/components/input/keyboard_listener_component.dart @@ -23,8 +23,8 @@ class KeyboardListenerComponent extends Component with KeyboardHandler { final Map _keyDown; @override - bool onKeyEvent(RawKeyEvent event, Set keysPressed) { - final isUp = event is RawKeyUpEvent; + bool onKeyEvent(KeyEvent event, Set keysPressed) { + final isUp = event is KeyUpEvent; final handlers = isUp ? _keyUp : _keyDown; final handler = handlers[event.logicalKey]; diff --git a/packages/flame/lib/src/components/mixins/keyboard_handler.dart b/packages/flame/lib/src/components/mixins/keyboard_handler.dart index 66cb9e923..30a071c5d 100644 --- a/packages/flame/lib/src/components/mixins/keyboard_handler.dart +++ b/packages/flame/lib/src/components/mixins/keyboard_handler.dart @@ -6,7 +6,7 @@ import 'package:flutter/services.dart'; /// Must be used in components that can only be added to games that are mixed /// with [HasKeyboardHandlerComponents]. mixin KeyboardHandler on Component { - bool onKeyEvent(RawKeyEvent event, Set keysPressed) { + bool onKeyEvent(KeyEvent event, Set keysPressed) { return true; } } diff --git a/packages/flame/lib/src/game/game_widget/game_widget.dart b/packages/flame/lib/src/game/game_widget/game_widget.dart index 6ebe3126e..4a1d06c41 100644 --- a/packages/flame/lib/src/game/game_widget/game_widget.dart +++ b/packages/flame/lib/src/game/game_widget/game_widget.dart @@ -311,7 +311,7 @@ class GameWidgetState extends State> { } } - KeyEventResult _handleKeyEvent(FocusNode focusNode, RawKeyEvent event) { + KeyEventResult _handleKeyEvent(FocusNode focusNode, KeyEvent event) { final game = currentGame; if (!_focusNode.hasPrimaryFocus) { @@ -319,7 +319,10 @@ class GameWidgetState extends State> { } if (game is KeyboardEvents) { - return game.onKeyEvent(event, RawKeyboard.instance.keysPressed); + return game.onKeyEvent( + event, + HardwareKeyboard.instance.logicalKeysPressed, + ); } return KeyEventResult.handled; } @@ -361,7 +364,7 @@ class GameWidgetState extends State> { focusNode: _focusNode, autofocus: widget.autofocus, descendantsAreFocusable: true, - onKey: _handleKeyEvent, + onKeyEvent: _handleKeyEvent, child: MouseRegion( cursor: currentGame.mouseCursor, child: Directionality( diff --git a/packages/flame/lib/src/game/mixins/keyboard.dart b/packages/flame/lib/src/game/mixins/keyboard.dart index ed7384ba8..cf5cae7e0 100644 --- a/packages/flame/lib/src/game/mixins/keyboard.dart +++ b/packages/flame/lib/src/game/mixins/keyboard.dart @@ -13,7 +13,7 @@ mixin HasKeyboardHandlerComponents on FlameGame @override @mustCallSuper KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { final blockedPropagation = !propagateToChildren( @@ -34,7 +34,7 @@ mixin HasKeyboardHandlerComponents on FlameGame /// Override [onKeyEvent] to customize the keyboard handling behavior. mixin KeyboardEvents on Game { KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { assert( diff --git a/packages/flame/pubspec.yaml b/packages/flame/pubspec.yaml index bac5edf59..d9196bbcf 100644 --- a/packages/flame/pubspec.yaml +++ b/packages/flame/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: collection: ^1.17.1 diff --git a/packages/flame/test/components/keyboard_listener_component_test.dart b/packages/flame/test/components/keyboard_listener_component_test.dart index 45fe90d0a..2ecd569c5 100644 --- a/packages/flame/test/components/keyboard_listener_component_test.dart +++ b/packages/flame/test/components/keyboard_listener_component_test.dart @@ -9,15 +9,15 @@ abstract class _KeyCallStub { class KeyCallStub extends Mock implements _KeyCallStub {} -class MockRawKeyUpEvent extends Mock implements RawKeyUpEvent { +class MockKeyUpEvent extends Mock implements KeyUpEvent { @override String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return super.toString(); } } -RawKeyUpEvent _mockKeyUp(LogicalKeyboardKey key) { - final event = MockRawKeyUpEvent(); +KeyUpEvent _mockKeyUp(LogicalKeyboardKey key) { + final event = MockKeyUpEvent(); when(() => event.logicalKey).thenReturn(key); return event; } diff --git a/packages/flame/test/game/game_widget/game_widget_keyboard_test.dart b/packages/flame/test/game/game_widget/game_widget_keyboard_test.dart index ad2dcded1..cf48c4be3 100644 --- a/packages/flame/test/game/game_widget/game_widget_keyboard_test.dart +++ b/packages/flame/test/game/game_widget/game_widget_keyboard_test.dart @@ -12,7 +12,7 @@ class _KeyboardEventsGame extends FlameGame with KeyboardEvents { @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { this.keysPressed.add(event.character ?? 'none'); @@ -25,7 +25,7 @@ class _KeyboardHandlerComponent extends Component with KeyboardHandler { final List keysPressed = []; @override - bool onKeyEvent(RawKeyEvent event, Set keysPressed) { + bool onKeyEvent(KeyEvent event, Set keysPressed) { this.keysPressed.add(event.character ?? 'none'); return false; } diff --git a/packages/flame/test/game/game_widget/game_widget_test.dart b/packages/flame/test/game/game_widget/game_widget_test.dart index 43bddca68..dd5c56e38 100644 --- a/packages/flame/test/game/game_widget/game_widget_test.dart +++ b/packages/flame/test/game/game_widget/game_widget_test.dart @@ -25,7 +25,7 @@ class _GameWithKeyboardEvents extends FlameGame with KeyboardEvents { @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { keyEvents.add(event.logicalKey); @@ -443,7 +443,7 @@ void main() { testWidgets('overlay handles keys', (tester) async { final overlayKeyEvents = []; final overlayFocusNode = FocusNode( - onKey: (_, keyEvent) { + onKeyEvent: (_, keyEvent) { overlayKeyEvents.add(keyEvent.logicalKey); return KeyEventResult.ignored; }, @@ -475,7 +475,7 @@ void main() { await simulateKeyDownEvent(LogicalKeyboardKey.keyA); await tester.pump(); - expect(game.keyEvents, []); + expect(game.keyEvents, []); expect(overlayKeyEvents, [LogicalKeyboardKey.keyA]); }); }); diff --git a/packages/flame/test/game/mixins/keyboard_test.dart b/packages/flame/test/game/mixins/keyboard_test.dart index 66135d09b..ca6c111df 100644 --- a/packages/flame/test/game/mixins/keyboard_test.dart +++ b/packages/flame/test/game/mixins/keyboard_test.dart @@ -3,27 +3,23 @@ import 'package:flame/input.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:mocktail/mocktail.dart'; class _ValidGame extends FlameGame with KeyboardEvents {} class _InvalidGame extends FlameGame with HasKeyboardHandlerComponents, KeyboardEvents {} -class _MockRawKeyEventData extends Mock implements RawKeyEventData { - @override - String toString({DiagnosticLevel minLevel = DiagnosticLevel.debug}) { - return super.toString(); - } -} - void main() { group('Keyboard events', () { test( 'game with KeyboardEvents can handle key events', () { final validGame = _ValidGame(); - final event = RawKeyDownEvent(data: _MockRawKeyEventData()); + const event = KeyDownEvent( + physicalKey: PhysicalKeyboardKey.arrowUp, + logicalKey: LogicalKeyboardKey.arrowUp, + timeStamp: Duration.zero, + ); // Should just work with the default implementation expect( @@ -37,7 +33,11 @@ void main() { 'cannot mix KeyboardEvent and HasKeyboardHandlerComponents together', () { final invalidGame = _InvalidGame(); - final event = RawKeyDownEvent(data: _MockRawKeyEventData()); + const event = KeyDownEvent( + physicalKey: PhysicalKeyboardKey.arrowUp, + logicalKey: LogicalKeyboardKey.arrowUp, + timeStamp: Duration.zero, + ); // Should throw an assertion error expect( diff --git a/packages/flame_audio/pubspec.yaml b/packages/flame_audio/pubspec.yaml index 13e90da28..c9c500bac 100644 --- a/packages/flame_audio/pubspec.yaml +++ b/packages/flame_audio/pubspec.yaml @@ -10,7 +10,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: audioplayers: ^5.0.0 diff --git a/packages/flame_bloc/example/lib/src/game/components/player.dart b/packages/flame_bloc/example/lib/src/game/components/player.dart index 3fd08878b..27ac8a76a 100644 --- a/packages/flame_bloc/example/lib/src/game/components/player.dart +++ b/packages/flame_bloc/example/lib/src/game/components/player.dart @@ -107,7 +107,7 @@ class PlayerComponent extends SpriteAnimationComponent @override bool onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { if (keysPressed.contains(LogicalKeyboardKey.tab)) { diff --git a/packages/flame_bloc/example/pubspec.yaml b/packages/flame_bloc/example/pubspec.yaml index a336374e6..795fc391e 100644 --- a/packages/flame_bloc/example/pubspec.yaml +++ b/packages/flame_bloc/example/pubspec.yaml @@ -7,6 +7,7 @@ version: 1.0.0+1 environment: sdk: ">=3.0.0 <4.0.0" + flutter: ^3.19.0 dependencies: equatable: ^2.0.5 diff --git a/packages/flame_bloc/pubspec.yaml b/packages/flame_bloc/pubspec.yaml index b67ecb30a..611df32c4 100644 --- a/packages/flame_bloc/pubspec.yaml +++ b/packages/flame_bloc/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + flutter: ^3.19.0 dependencies: bloc: ^8.1.1 diff --git a/packages/flame_fire_atlas/pubspec.yaml b/packages/flame_fire_atlas/pubspec.yaml index 6b19d5a68..bb2741675 100644 --- a/packages/flame_fire_atlas/pubspec.yaml +++ b/packages/flame_fire_atlas/pubspec.yaml @@ -10,7 +10,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: archive: ^3.3.9 diff --git a/packages/flame_forge2d/example/pubspec.yaml b/packages/flame_forge2d/example/pubspec.yaml index 137eb74fe..8d6d6e2f1 100644 --- a/packages/flame_forge2d/example/pubspec.yaml +++ b/packages/flame_forge2d/example/pubspec.yaml @@ -7,7 +7,7 @@ version: 1.0.0+1 environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: dashbook: ^0.1.12 diff --git a/packages/flame_forge2d/pubspec.yaml b/packages/flame_forge2d/pubspec.yaml index 53f4a88cb..07a0942ce 100644 --- a/packages/flame_forge2d/pubspec.yaml +++ b/packages/flame_forge2d/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_isolate/example/lib/colonists_game.dart b/packages/flame_isolate/example/lib/colonists_game.dart index 5f376337e..693cd326d 100755 --- a/packages/flame_isolate/example/lib/colonists_game.dart +++ b/packages/flame_isolate/example/lib/colonists_game.dart @@ -58,32 +58,32 @@ class ColonistsGame extends FlameGame with KeyboardEvents { @override KeyEventResult onKeyEvent( - RawKeyEvent event, + KeyEvent event, Set keysPressed, ) { var howMuch = 0.0; - if (event is RawKeyDownEvent) { + if (event is KeyDownEvent) { howMuch = 1; - } else if (event is RawKeyUpEvent) { + } else if (event is KeyUpEvent) { howMuch = 0; } - if (event.data.logicalKey == LogicalKeyboardKey.keyS) { + if (event.logicalKey == LogicalKeyboardKey.keyS) { _downForce = howMuch; - } else if (event.data.logicalKey == LogicalKeyboardKey.keyW) { + } else if (event.logicalKey == LogicalKeyboardKey.keyW) { _upForce = howMuch; - } else if (event.data.logicalKey == LogicalKeyboardKey.keyD) { + } else if (event.logicalKey == LogicalKeyboardKey.keyD) { _rightForce = howMuch; - } else if (event.data.logicalKey == LogicalKeyboardKey.keyA) { + } else if (event.logicalKey == LogicalKeyboardKey.keyA) { _leftForce = howMuch; - } else if (event.data.logicalKey == LogicalKeyboardKey.numpadAdd && - event is RawKeyDownEvent) { + } else if (event.logicalKey == LogicalKeyboardKey.numpadAdd && + event is KeyDownEvent) { camera.viewfinder.zoom = min( camera.viewfinder.zoom + 0.1, 5, ); - } else if (event.data.logicalKey == LogicalKeyboardKey.numpadSubtract && - event is RawKeyDownEvent) { + } else if (event.logicalKey == LogicalKeyboardKey.numpadSubtract && + event is KeyDownEvent) { camera.viewfinder.zoom = max( camera.viewfinder.zoom - 0.1, 0.1, diff --git a/packages/flame_isolate/example/pubspec.yaml b/packages/flame_isolate/example/pubspec.yaml index df446ba35..be6861306 100755 --- a/packages/flame_isolate/example/pubspec.yaml +++ b/packages/flame_isolate/example/pubspec.yaml @@ -7,6 +7,7 @@ version: 1.0.0+1 environment: sdk: ">=3.0.0 <4.0.0" + flutter: ^3.19.0 dependencies: collection: ^1.18.0 diff --git a/packages/flame_isolate/pubspec.yaml b/packages/flame_isolate/pubspec.yaml index d299ef064..8ea6c9638 100644 --- a/packages/flame_isolate/pubspec.yaml +++ b/packages/flame_isolate/pubspec.yaml @@ -5,7 +5,7 @@ repository: https://github.com/flame-engine/flame/blob/main/packages/flame_isola environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=1.17.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_jenny/pubspec.yaml b/packages/flame_jenny/pubspec.yaml index 54694b814..41ed0c022 100644 --- a/packages/flame_jenny/pubspec.yaml +++ b/packages/flame_jenny/pubspec.yaml @@ -10,7 +10,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: collection: ^1.17.1 diff --git a/packages/flame_lottie/pubspec.yaml b/packages/flame_lottie/pubspec.yaml index ed7faf981..d99d4b230 100644 --- a/packages/flame_lottie/pubspec.yaml +++ b/packages/flame_lottie/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_markdown/pubspec.yaml b/packages/flame_markdown/pubspec.yaml index f28066d28..1ea8fda7a 100644 --- a/packages/flame_markdown/pubspec.yaml +++ b/packages/flame_markdown/pubspec.yaml @@ -10,7 +10,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_network_assets/pubspec.yaml b/packages/flame_network_assets/pubspec.yaml index 1509e7a83..2cf2b5485 100644 --- a/packages/flame_network_assets/pubspec.yaml +++ b/packages/flame_network_assets/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=1.17.0" + flutter: ^3.19.0 dependencies: dev: ^1.0.0 diff --git a/packages/flame_noise/pubspec.yaml b/packages/flame_noise/pubspec.yaml index 519d018a7..5ac87e8c4 100644 --- a/packages/flame_noise/pubspec.yaml +++ b/packages/flame_noise/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: fast_noise: ^2.0.0 diff --git a/packages/flame_oxygen/pubspec.yaml b/packages/flame_oxygen/pubspec.yaml index 47746925e..bd420fe4e 100644 --- a/packages/flame_oxygen/pubspec.yaml +++ b/packages/flame_oxygen/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_rive/pubspec.yaml b/packages/flame_rive/pubspec.yaml index 6cc73f2cd..58addf209 100644 --- a/packages/flame_rive/pubspec.yaml +++ b/packages/flame_rive/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_riverpod/pubspec.yaml b/packages/flame_riverpod/pubspec.yaml index c78788c48..d991416ee 100644 --- a/packages/flame_riverpod/pubspec.yaml +++ b/packages/flame_riverpod/pubspec.yaml @@ -5,7 +5,7 @@ version: 5.2.0 homepage: https://github.com/flame-engine/flame/tree/main/packages/flame_riverpod environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=1.17.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 flutter: diff --git a/packages/flame_spine/pubspec.yaml b/packages/flame_spine/pubspec.yaml index 69f449b65..648d1b8ff 100644 --- a/packages/flame_spine/pubspec.yaml +++ b/packages/flame_spine/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: collection: ^1.17.1 diff --git a/packages/flame_splash_screen/example/pubspec.yaml b/packages/flame_splash_screen/example/pubspec.yaml index ee13d9316..9ec589a58 100644 --- a/packages/flame_splash_screen/example/pubspec.yaml +++ b/packages/flame_splash_screen/example/pubspec.yaml @@ -6,7 +6,7 @@ version: 1.0.0+1 environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame_splash_screen: ^0.2.0 diff --git a/packages/flame_splash_screen/pubspec.yaml b/packages/flame_splash_screen/pubspec.yaml index 8a829b4e0..98d7285a4 100644 --- a/packages/flame_splash_screen/pubspec.yaml +++ b/packages/flame_splash_screen/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flutter: diff --git a/packages/flame_studio/pubspec.yaml b/packages/flame_studio/pubspec.yaml index 62028d6ec..9396135db 100644 --- a/packages/flame_studio/pubspec.yaml +++ b/packages/flame_studio/pubspec.yaml @@ -10,7 +10,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + flutter: ^3.19.0 dependencies: collection: ^1.17.1 diff --git a/packages/flame_svg/pubspec.yaml b/packages/flame_svg/pubspec.yaml index e2c14663b..964c7862e 100644 --- a/packages/flame_svg/pubspec.yaml +++ b/packages/flame_svg/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_test/pubspec.yaml b/packages/flame_test/pubspec.yaml index 7453d82e3..17e0cd1d6 100644 --- a/packages/flame_test/pubspec.yaml +++ b/packages/flame_test/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_texturepacker/example/pubspec.yaml b/packages/flame_texturepacker/example/pubspec.yaml index e45ef41cc..9db04fd15 100644 --- a/packages/flame_texturepacker/example/pubspec.yaml +++ b/packages/flame_texturepacker/example/pubspec.yaml @@ -5,7 +5,7 @@ publish_to: none environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: flame: ^1.15.0 diff --git a/packages/flame_texturepacker/pubspec.yaml b/packages/flame_texturepacker/pubspec.yaml index a254ff504..0abb68e85 100644 --- a/packages/flame_texturepacker/pubspec.yaml +++ b/packages/flame_texturepacker/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: collection: ^1.17.1 diff --git a/packages/flame_tiled/pubspec.yaml b/packages/flame_tiled/pubspec.yaml index 8bf6e0583..afec1ab55 100644 --- a/packages/flame_tiled/pubspec.yaml +++ b/packages/flame_tiled/pubspec.yaml @@ -9,7 +9,7 @@ funding: environment: sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.13.0" + flutter: ^3.19.0 dependencies: collection: ^1.17.1