From 46ee0cd0155c814f2f459dc139a8f83d0f66ff62 Mon Sep 17 00:00:00 2001 From: ctrlvnt Date: Thu, 16 Apr 2026 00:53:20 +0200 Subject: [PATCH 1/3] fix: microphone permission for MacOS --- lib/view/widgets/channel_parameters_widget.dart | 6 +++++- macos/Runner/DebugProfile.entitlements | 2 ++ macos/Runner/Info.plist | 2 ++ macos/Runner/Release.entitlements | 2 ++ 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/view/widgets/channel_parameters_widget.dart b/lib/view/widgets/channel_parameters_widget.dart index 81e1be353..8ed7496b4 100644 --- a/lib/view/widgets/channel_parameters_widget.dart +++ b/lib/view/widgets/channel_parameters_widget.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:flutter/material.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:provider/provider.dart'; @@ -249,7 +251,9 @@ class _ChannelParametersState extends State { groupValue: oscilloscopeStateProvider.isInBuiltMICSelected, onChanged: (bool? value) async { - await Permission.microphone.request(); + if(!Platform.isMacOS) { + await Permission.microphone.request(); + } setState( () { if (value == null) { diff --git a/macos/Runner/DebugProfile.entitlements b/macos/Runner/DebugProfile.entitlements index e5e064720..3611078a0 100644 --- a/macos/Runner/DebugProfile.entitlements +++ b/macos/Runner/DebugProfile.entitlements @@ -12,5 +12,7 @@ com.apple.security.personal-information.location + com.apple.security.device.audio-input + diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist index 7dc77d9b1..b94ff67b4 100644 --- a/macos/Runner/Info.plist +++ b/macos/Runner/Info.plist @@ -30,5 +30,7 @@ NSApplication NSLocationUsageDescription This app needs access to location. + NSMicrophoneUsageDescription + This app needs access to microphone for oscilloscope. diff --git a/macos/Runner/Release.entitlements b/macos/Runner/Release.entitlements index fef12b430..7f08a057e 100644 --- a/macos/Runner/Release.entitlements +++ b/macos/Runner/Release.entitlements @@ -8,5 +8,7 @@ com.apple.security.personal-information.location + com.apple.security.device.audio-input + From dc55262f1960ea863c37b03386638706b6fde9ac Mon Sep 17 00:00:00 2001 From: ctrlvnt Date: Thu, 16 Apr 2026 10:53:01 +0200 Subject: [PATCH 2/3] fix: microphone permission for MacOS --- lib/view/widgets/channel_parameters_widget.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/view/widgets/channel_parameters_widget.dart b/lib/view/widgets/channel_parameters_widget.dart index 8ed7496b4..876ee4b2c 100644 --- a/lib/view/widgets/channel_parameters_widget.dart +++ b/lib/view/widgets/channel_parameters_widget.dart @@ -251,7 +251,7 @@ class _ChannelParametersState extends State { groupValue: oscilloscopeStateProvider.isInBuiltMICSelected, onChanged: (bool? value) async { - if(!Platform.isMacOS) { + if (!Platform.isMacOS) { await Permission.microphone.request(); } setState( From a07be7c613daf271690ff8826cf489d8c1a7c860 Mon Sep 17 00:00:00 2001 From: ctrlvnt Date: Sat, 18 Apr 2026 21:48:17 +0200 Subject: [PATCH 3/3] fix: microphone permission for Chrome --- lib/view/widgets/channel_parameters_widget.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/view/widgets/channel_parameters_widget.dart b/lib/view/widgets/channel_parameters_widget.dart index 876ee4b2c..1c1b36cfc 100644 --- a/lib/view/widgets/channel_parameters_widget.dart +++ b/lib/view/widgets/channel_parameters_widget.dart @@ -1,5 +1,6 @@ import 'dart:io'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:provider/provider.dart'; @@ -251,7 +252,7 @@ class _ChannelParametersState extends State { groupValue: oscilloscopeStateProvider.isInBuiltMICSelected, onChanged: (bool? value) async { - if (!Platform.isMacOS) { + if (!kIsWeb && !Platform.isMacOS) { await Permission.microphone.request(); } setState(