Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 18 additions & 5 deletions .github/actions/pana/action.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,21 @@
name: Pana Workflow
description: "Runs pana and checks the score for the package"

inputs:
min_score:
description: "The minimum pana score required"
required: false
type: number
default: 120
default: "120"
pana_version:
description: "The pana version to use"
required: false
type: string
runs_on:
description: "The runner to use"
required: false
type: string
default: "ubuntu-latest"
working_directory:
description: "The working directory"
required: false
type: string
default: "."

runs:
Expand All @@ -24,9 +25,21 @@ runs:
uses: mikefarah/yq@master
with:
cmd: |
# --- stream_video_flutter ---
yq eval '.dependencies.stream_video = {"path": "../stream_video"}' -i packages/stream_video_flutter/pubspec.yaml
yq eval '.dependency_overrides.stream_video = {"path": "../stream_video"}' -i packages/stream_video_flutter/pubspec.yaml

# --- stream_video_push_notification ---
yq eval '.dependencies.stream_video = {"path": "../stream_video"}' -i packages/stream_video_push_notification/pubspec.yaml
yq eval '.dependencies.stream_video_flutter = {"path": "../stream_video_flutter"}' -i packages/stream_video_push_notification/pubspec.yaml
yq eval '.dependency_overrides.stream_video = {"path": "../stream_video"}' -i packages/stream_video_push_notification/pubspec.yaml
yq eval '.dependency_overrides.stream_video_flutter = {"path": "../stream_video_flutter"}' -i packages/stream_video_push_notification/pubspec.yaml

# --- stream_video_noise_cancellation ---
yq eval '.dependencies.stream_video = {"path": "../stream_video"}' -i packages/stream_video_noise_cancellation/pubspec.yaml
yq eval '.dependencies.stream_video_flutter = {"path": "../stream_video_flutter"}' -i packages/stream_video_noise_cancellation/pubspec.yaml
yq eval '.dependency_overrides.stream_video = {"path": "../stream_video"}' -i packages/stream_video_noise_cancellation/pubspec.yaml
yq eval '.dependency_overrides.stream_video_flutter = {"path": "../stream_video_flutter"}' -i packages/stream_video_noise_cancellation/pubspec.yaml

- name: Install Flutter
uses: subosito/flutter-action@v2
Expand Down
2 changes: 0 additions & 2 deletions dogfooding/android/app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
-keep class io.flutter.view.** { *; }
-keep class io.flutter.plugins.** { *; }

-keep class com.hiennv.flutter_callkit_incoming.** { *; }

-keep class java.beans.Transient.** {*;}
-keep class java.beans.ConstructorProperties.** {*;}
-keep class java.nio.file.Path.** {*;}
Expand Down
Binary file added dogfooding/assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions dogfooding/lib/app/app_content.dart
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ class _StreamDogFoodingAppContentState
if (!locator.isRegistered<StreamVideo>()) return;

// Observe call kit events.
_observeCallKitEvents();
_observeRingingEvents();
// Observes deep links.
_observeDeepLinks();
// Observe FCM messages.
Expand Down Expand Up @@ -114,15 +114,15 @@ class _StreamDogFoodingAppContentState
}
}

void _observeCallKitEvents() {
void _observeRingingEvents() {
final streamVideo = locator.get<StreamVideo>();

// On mobile we depend on call kit notifications.
// On desktop and web they are (currently) not available, so we depend on a
// websocket which can receive a call when the app is open.
if (CurrentPlatform.isMobile) {
_compositeSubscription.add(
streamVideo.observeCoreCallKitEvents(
streamVideo.observeCoreRingingEvents(
onCallAccepted: (callToJoin) {
// Navigate to the call screen.
final extra = (
Expand Down
2 changes: 1 addition & 1 deletion dogfooding/lib/app/firebase_messaging_handler.dart
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Future<void> firebaseMessagingBackgroundHandler(RemoteMessage message) async {
prefs.environment,
);

final subscription = streamVideo.observeCallDeclinedCallKitEvent();
final subscription = streamVideo.observeCallDeclinedRingingEvent();

streamVideo.disposeAfterResolvingRinging(
disposingCallback: () {
Expand Down
7 changes: 3 additions & 4 deletions dogfooding/lib/di/injector.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ import '../core/repos/token_service.dart';
import '../core/repos/user_auth_repository.dart';
import '../core/repos/user_chat_repository.dart';
import '../log_config.dart';
import '../utils/consts.dart';

GetIt locator = GetIt.instance;

Expand Down Expand Up @@ -167,9 +166,9 @@ StreamVideo _initStreamVideo(
androidPushProvider: const StreamVideoPushProvider.firebase(
name: 'flutter-firebase',
),
pushParams: const StreamVideoPushParams(
appName: kAppName,
ios: IOSParams(iconName: 'IconMask'),
pushConfiguration: const StreamVideoPushConfiguration(
ios: IOSPushConfiguration(iconName: 'IconMask'),
android: AndroidPushConfiguration(defaultAvatar: 'assets/logo.png'),
),
registerApnDeviceToken: true,
),
Expand Down
11 changes: 11 additions & 0 deletions packages/stream_video/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
## Unreleased

🚧 Breaking changes

### API renames and type changes

- `onCallKitEvent` → `onRingingEvent`
- `observeCoreCallKitEvents` → `observeCoreRingingEvents`
- `observeCallAcceptCallKitEvent` → `observeCallAcceptRingingEvent`
- `observeCallDeclinedCallKitEvent` → `observeCallDeclinedRingingEvent`
- `observeCallEndedCallKitEvent` → `observeCallEndedRingingEvent`
- `CallKitEvent` (type) → `RingingEvent`

🔄 Changed
- The `byParticipantSource` participant sorting now accepts a list of sources. The default sorting for `speaker` and `livestream` presets now include other ingress sources.

Expand Down
86 changes: 86 additions & 0 deletions packages/stream_video/lib/fix_data.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# Docs on data driven fixes: https://github.com/flutter/flutter/blob/master/docs/contributing/Data-driven-Fixes.md

version: 1
transforms:
- title: "replace CallKitEvent with RingingEvent"
date: "2025-08-28"
element:
uris:
[
"package:stream_video/src/push_notification/push_notification_manager.dart",
"package:stream_video/stream_video.dart",
]
typedef: "CallKitEvent"
changes:
- kind: "rename"
newName: "RingingEvent"

- title: "replace observeCallDeclinedCallKitEvent with observeCallDeclinedRingingEvent"
date: "2025-08-28"
element:
uris:
[
"package:stream_video/src/stream_video.dart",
"package:stream_video/stream_video.dart",
]
inClass: "StreamVideo"
method: "observeCallDeclinedCallKitEvent"
changes:
- kind: "rename"
newName: "observeCallDeclinedRingingEvent"

- title: "replace onCallKitEvent with onRingingEvent"
date: "2025-08-28"
element:
uris:
[
"package:stream_video/src/stream_video.dart",
"package:stream_video/stream_video.dart",
]
inClass: "StreamVideo"
method: "onCallKitEvent"
changes:
- kind: "rename"
newName: "onRingingEvent"

- title: "replace observeCoreCallKitEvents with observeCoreRingingEvents"
date: "2025-08-28"
element:
uris:
[
"package:stream_video/src/stream_video.dart",
"package:stream_video/stream_video.dart",
]
inClass: "StreamVideo"
method: "observeCoreCallKitEvents"
changes:
- kind: "rename"
newName: "observeCoreRingingEvents"

- title: "replace observeCallAcceptCallKitEvent with observeCallAcceptRingingEvent"
date: "2025-08-28"
element:
uris:
[
"package:stream_video/src/stream_video.dart",
"package:stream_video/stream_video.dart",
]
inClass: "StreamVideo"
method: "observeCallAcceptCallKitEvent"
changes:
- kind: "rename"
newName: "observeCallAcceptRingingEvent"

- title: "replace observeCallEndedCallKitEvent with observeCallEndedRingingEvent"
date: "2025-08-28"
element:
uris:
[
"package:stream_video/src/stream_video.dart",
"package:stream_video/stream_video.dart",
]
inClass: "StreamVideo"
method: "observeCallEndedCallKitEvent"
changes:
- kind: "rename"
newName: "observeCallEndedRingingEvent"
Loading