Skip to content

Commit

Permalink
Fix useMessageListeners onInitialMessage getting called during build (#…
Browse files Browse the repository at this point in the history
…49)

* Use addPostFrameCallback for scheduling onInitialMessage after build
is done

* Bump comms package, leancode_lint and increase min flutter version
constraint

* Update changelog and pubspec
  • Loading branch information
lewandowski-jan authored Feb 12, 2023
1 parent 492d764 commit 444395e
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 8 deletions.
4 changes: 4 additions & 0 deletions packages/flutter_comms/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 0.0.6

- Fix `useMessageListener`s `onInitialMessage` getting called during build (#49)

## 0.0.5

- **Breaking:** Change `useMessageListener`s `onInitialMessage` and `keys` to named parameters (#47)
Expand Down
2 changes: 0 additions & 2 deletions packages/flutter_comms/lib/flutter_comms.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
library flutter_comms;

export 'package:comms/comms.dart';

export 'src/listener_bloc.dart';
Expand Down
8 changes: 6 additions & 2 deletions packages/flutter_comms/lib/src/use_message_listener.dart
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ void useMessageListener<Message>(
use(
_MessageListenerHook<Message>(
onMessage: onMessage,
onInitialMessage: onInitialMessage,
keys: keys,
),
);
Expand Down Expand Up @@ -47,8 +48,11 @@ class _MessageListenerHookState<Message>
void onMessage(Message message) => hook.onMessage(message);

@override
void onInitialMessage(Message message) =>
hook.onInitialMessage?.call(message);
void onInitialMessage(Message message) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => hook.onInitialMessage?.call(message),
);
}

@override
void dispose() {
Expand Down
8 changes: 4 additions & 4 deletions packages/flutter_comms/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
name: flutter_comms
description: Simple communication pattern abstraction on streams, created for communication between blocs and or widgets.
version: 0.0.5
version: 0.0.6
homepage: https://github.com/leancodepl/comms

environment:
sdk: ">=2.16.0 <3.0.0"
flutter: ">=2.10.0 <4.0.0"
flutter: ">=2.17.0 <4.0.0"

dependencies:
bloc: ^8.1.0
comms: ^0.0.8+2
comms: ^0.0.9
flutter:
sdk: flutter
flutter_hooks: ^0.18.2
Expand All @@ -21,4 +21,4 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
leancode_lint: ^1.1.0
leancode_lint: ^2.1.0

0 comments on commit 444395e

Please sign in to comment.