diff --git a/ios/Podfile.lock b/ios/Podfile.lock index b843e42..2845cc7 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -43,58 +43,58 @@ PODS: - Flutter - file_saver (0.0.1): - Flutter - - Firebase/Analytics (11.6.0): + - Firebase/Analytics (11.7.0): - Firebase/Core - - Firebase/Core (11.6.0): + - Firebase/Core (11.7.0): - Firebase/CoreOnly - - FirebaseAnalytics (~> 11.6.0) - - Firebase/CoreOnly (11.6.0): - - FirebaseCore (~> 11.6.0) - - Firebase/Messaging (11.6.0): + - FirebaseAnalytics (~> 11.7.0) + - Firebase/CoreOnly (11.7.0): + - FirebaseCore (~> 11.7.0) + - Firebase/Messaging (11.7.0): - Firebase/CoreOnly - - FirebaseMessaging (~> 11.6.0) - - firebase_analytics (11.4.1): - - Firebase/Analytics (= 11.6.0) + - FirebaseMessaging (~> 11.7.0) + - firebase_analytics (11.4.2): + - Firebase/Analytics (= 11.7.0) - firebase_core - Flutter - - firebase_core (3.10.1): - - Firebase/CoreOnly (= 11.6.0) + - firebase_core (3.11.0): + - Firebase/CoreOnly (= 11.7.0) - Flutter - - firebase_messaging (15.2.1): - - Firebase/Messaging (= 11.6.0) + - firebase_messaging (15.2.2): + - Firebase/Messaging (= 11.7.0) - firebase_core - Flutter - - FirebaseAnalytics (11.6.0): - - FirebaseAnalytics/AdIdSupport (= 11.6.0) - - FirebaseCore (~> 11.6.0) + - FirebaseAnalytics (11.7.0): + - FirebaseAnalytics/AdIdSupport (= 11.7.0) + - FirebaseCore (~> 11.7.0) - FirebaseInstallations (~> 11.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - FirebaseAnalytics/AdIdSupport (11.6.0): - - FirebaseCore (~> 11.6.0) + - FirebaseAnalytics/AdIdSupport (11.7.0): + - FirebaseCore (~> 11.7.0) - FirebaseInstallations (~> 11.0) - - GoogleAppMeasurement (= 11.6.0) + - GoogleAppMeasurement (= 11.7.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - FirebaseCore (11.6.0): - - FirebaseCoreInternal (~> 11.6.0) + - FirebaseCore (11.7.0): + - FirebaseCoreInternal (~> 11.7.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/Logger (~> 8.0) - - FirebaseCoreInternal (11.6.0): + - FirebaseCoreInternal (11.7.0): - "GoogleUtilities/NSData+zlib (~> 8.0)" - - FirebaseInstallations (11.6.0): - - FirebaseCore (~> 11.6.0) + - FirebaseInstallations (11.7.0): + - FirebaseCore (~> 11.7.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/UserDefaults (~> 8.0) - PromisesObjC (~> 2.4) - - FirebaseMessaging (11.6.0): - - FirebaseCore (~> 11.6.0) + - FirebaseMessaging (11.7.0): + - FirebaseCore (~> 11.7.0) - FirebaseInstallations (~> 11.0) - GoogleDataTransport (~> 10.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) @@ -123,21 +123,21 @@ PODS: - gal (1.0.0): - Flutter - FlutterMacOS - - GoogleAppMeasurement (11.6.0): - - GoogleAppMeasurement/AdIdSupport (= 11.6.0) + - GoogleAppMeasurement (11.7.0): + - GoogleAppMeasurement/AdIdSupport (= 11.7.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - GoogleAppMeasurement/AdIdSupport (11.6.0): - - GoogleAppMeasurement/WithoutAdIdSupport (= 11.6.0) + - GoogleAppMeasurement/AdIdSupport (11.7.0): + - GoogleAppMeasurement/WithoutAdIdSupport (= 11.7.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - GoogleAppMeasurement/WithoutAdIdSupport (11.6.0): + - GoogleAppMeasurement/WithoutAdIdSupport (11.7.0): - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) @@ -179,7 +179,7 @@ PODS: - Flutter - in_app_review (2.0.0): - Flutter - - Kingfisher (8.1.3) + - Kingfisher (8.2.0) - livekit_client (2.3.5): - Flutter - flutter_webrtc @@ -381,15 +381,15 @@ SPEC CHECKSUMS: DKPhotoGallery: b3834fecb755ee09a593d7c9e389d8b5d6deed60 file_picker: b159e0c068aef54932bb15dc9fd1571818edaf49 file_saver: 503e386464dbe118f630e17b4c2e1190fa0cf808 - Firebase: 374a441a91ead896215703a674d58cdb3e9d772b - firebase_analytics: 13ea4ad8a42c5060bad7e6694304dabb8b02fe7e - firebase_core: e2aa06dbd854d961f8ce46c2e20933bee1bf2d2b - firebase_messaging: 96cf6d67121b3f39746b2a4f29a26c0eee4af70e - FirebaseAnalytics: 7114c698cac995602e3b1b96663473e50d54d6e7 - FirebaseCore: 48b0dd707581cf9c1a1220da68223fb0a562afaa - FirebaseCoreInternal: d98ab91e2d80a56d7b246856a8885443b302c0c2 - FirebaseInstallations: efc0946fc756e4d22d8113f7c761948120322e8c - FirebaseMessaging: e1aca1fcc23e8b9eddb0e33f375ff90944623021 + Firebase: a64bf6a8546e6eab54f1c715cd6151f39d2329f4 + firebase_analytics: 7236e6115c1b4e62c2270faa29c052a317e31107 + firebase_core: aa979ae726f00b3ef4ccf59dfb96170af84efbd4 + firebase_messaging: 3af84b6a90aeac4d7a67fbf4c43a91e7083bea1f + FirebaseAnalytics: bc9e565af9044ba8d6c6e4157e4edca8e5fdf7ec + FirebaseCore: 3227e35f4197a924206fbcdc0349325baf4f5de4 + FirebaseCoreInternal: d6c17dafc8dc33614733a8b52df78fcb4394c881 + FirebaseInstallations: 9347e719c3d52d8d7b9074b2c32407dd027305e9 + FirebaseMessaging: 00ece041b71ddb52a2862ffdee73fb6e9824bd0c Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 flutter_app_update: 65f61da626cb111d1b24674abc4b01728d7723bc flutter_inappwebview_ios: 6f63631e2c62a7c350263b13fa5427aedefe81d4 @@ -397,13 +397,13 @@ SPEC CHECKSUMS: flutter_udid: b2417673f287ee62817a1de3d1643f47b9f508ab flutter_webrtc: 90260f83024b1b96d239a575ea4e3708e79344d1 gal: 6a522c75909f1244732d4596d11d6a2f86ff37a5 - GoogleAppMeasurement: 6a9e6317b6a6d810ad03d4a66564ca6c4c5818a3 + GoogleAppMeasurement: 0471a5b5bff51f3a91b1e76df22c952d04c63967 GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7 GoogleUtilities: 26a3abef001b6533cf678d3eb38fd3f614b7872d home_widget: 0434835a4c9a75704264feff6be17ea40e0f0d57 image_picker_ios: c560581cceedb403a6ff17f2f816d7fea1421fc1 in_app_review: a31b5257259646ea78e0e35fc914979b0031d011 - Kingfisher: f2af9028b16baf9dc6c07c570072bc41cbf009ef + Kingfisher: 323e5c4ec7983aaace12af655a7b51a7f88a599d livekit_client: dcc5fd47ba69c98fc6baeb12e862c9d43807d976 media_kit_libs_ios_video: a5fe24bc7875ccd6378a0978c13185e1344651c1 media_kit_native_event_loop: e6b2ab20cf0746eb1c33be961fcf79667304fa2a diff --git a/lib/main.dart b/lib/main.dart index 9bac356..92e9c30 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -14,6 +14,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:go_router/go_router.dart'; import 'package:hive_flutter/hive_flutter.dart'; +import 'package:hotkey_manager/hotkey_manager.dart'; import 'package:package_info_plus/package_info_plus.dart'; import 'package:provider/provider.dart'; import 'package:relative_time/relative_time.dart'; @@ -297,6 +298,22 @@ class _AppSplashScreenState extends State<_AppSplashScreen> with TrayListener { await widgetUpdateRandomPost(); } + Future _hotkeyInitialization() async { + if (kIsWeb) return; + + if (Platform.isMacOS) { + HotKey quitHotKey = HotKey( + key: PhysicalKeyboardKey.keyQ, + modifiers: [HotKeyModifier.meta], + scope: HotKeyScope.inapp, + ); + await hotKeyManager.register(quitHotKey, keyUpHandler: (_) { + _appLifecycleListener?.dispose(); + SystemChannels.platform.invokeMethod('SystemNavigator.pop'); + }); + } + } + Future _trayInitialization() async { if (kIsWeb || Platform.isAndroid || Platform.isIOS) return; @@ -336,6 +353,7 @@ class _AppSplashScreenState extends State<_AppSplashScreen> with TrayListener { } _trayInitialization(); + _hotkeyInitialization(); _initialize().then((_) { _postInitialization(); _tryRequestRating(); @@ -378,7 +396,10 @@ class _AppSplashScreenState extends State<_AppSplashScreen> with TrayListener { @override void dispose() { - if (!kIsWeb && !(Platform.isAndroid || Platform.isIOS)) trayManager.removeListener(this); + if (!kIsWeb && !(Platform.isAndroid || Platform.isIOS)) { + trayManager.removeListener(this); + hotKeyManager.unregisterAll(); + } super.dispose(); } diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc index a611662..c19b7cd 100644 --- a/linux/flutter/generated_plugin_registrant.cc +++ b/linux/flutter/generated_plugin_registrant.cc @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -33,6 +34,9 @@ void fl_register_plugins(FlPluginRegistry* registry) { g_autoptr(FlPluginRegistrar) flutter_webrtc_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "FlutterWebRTCPlugin"); flutter_web_r_t_c_plugin_register_with_registrar(flutter_webrtc_registrar); + g_autoptr(FlPluginRegistrar) hotkey_manager_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "HotkeyManagerLinuxPlugin"); + hotkey_manager_linux_plugin_register_with_registrar(hotkey_manager_linux_registrar); g_autoptr(FlPluginRegistrar) media_kit_libs_linux_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "MediaKitLibsLinuxPlugin"); media_kit_libs_linux_plugin_register_with_registrar(media_kit_libs_linux_registrar); diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake index 0fc5c17..5dfc9ee 100644 --- a/linux/flutter/generated_plugins.cmake +++ b/linux/flutter/generated_plugins.cmake @@ -8,6 +8,7 @@ list(APPEND FLUTTER_PLUGIN_LIST file_selector_linux flutter_udid flutter_webrtc + hotkey_manager_linux media_kit_libs_linux media_kit_video pasteboard diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index 03e0386..5b7a10b 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -18,6 +18,7 @@ import flutter_inappwebview_macos import flutter_udid import flutter_webrtc import gal +import hotkey_manager_macos import in_app_review import livekit_client import media_kit_libs_macos_video @@ -48,6 +49,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FlutterUdidPlugin.register(with: registry.registrar(forPlugin: "FlutterUdidPlugin")) FlutterWebRTCPlugin.register(with: registry.registrar(forPlugin: "FlutterWebRTCPlugin")) GalPlugin.register(with: registry.registrar(forPlugin: "GalPlugin")) + HotkeyManagerMacosPlugin.register(with: registry.registrar(forPlugin: "HotkeyManagerMacosPlugin")) InAppReviewPlugin.register(with: registry.registrar(forPlugin: "InAppReviewPlugin")) LiveKitPlugin.register(with: registry.registrar(forPlugin: "LiveKitPlugin")) MediaKitLibsMacosVideoPlugin.register(with: registry.registrar(forPlugin: "MediaKitLibsMacosVideoPlugin")) diff --git a/macos/Podfile.lock b/macos/Podfile.lock index 3048cf7..69bbdbf 100644 --- a/macos/Podfile.lock +++ b/macos/Podfile.lock @@ -14,59 +14,59 @@ PODS: - FlutterMacOS - file_selector_macos (0.0.1): - FlutterMacOS - - Firebase/Analytics (11.6.0): + - Firebase/Analytics (11.7.0): - Firebase/Core - - Firebase/Core (11.6.0): + - Firebase/Core (11.7.0): - Firebase/CoreOnly - - FirebaseAnalytics (~> 11.6.0) - - Firebase/CoreOnly (11.6.0): - - FirebaseCore (~> 11.6.0) - - Firebase/Messaging (11.6.0): + - FirebaseAnalytics (~> 11.7.0) + - Firebase/CoreOnly (11.7.0): + - FirebaseCore (~> 11.7.0) + - Firebase/Messaging (11.7.0): - Firebase/CoreOnly - - FirebaseMessaging (~> 11.6.0) - - firebase_analytics (11.4.1): - - Firebase/Analytics (= 11.6.0) + - FirebaseMessaging (~> 11.7.0) + - firebase_analytics (11.4.2): + - Firebase/Analytics (= 11.7.0) - firebase_core - FlutterMacOS - - firebase_core (3.10.1): - - Firebase/CoreOnly (~> 11.6.0) + - firebase_core (3.11.0): + - Firebase/CoreOnly (~> 11.7.0) - FlutterMacOS - - firebase_messaging (15.2.1): - - Firebase/CoreOnly (~> 11.6.0) - - Firebase/Messaging (~> 11.6.0) + - firebase_messaging (15.2.2): + - Firebase/CoreOnly (~> 11.7.0) + - Firebase/Messaging (~> 11.7.0) - firebase_core - FlutterMacOS - - FirebaseAnalytics (11.6.0): - - FirebaseAnalytics/AdIdSupport (= 11.6.0) - - FirebaseCore (~> 11.6.0) + - FirebaseAnalytics (11.7.0): + - FirebaseAnalytics/AdIdSupport (= 11.7.0) + - FirebaseCore (~> 11.7.0) - FirebaseInstallations (~> 11.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - FirebaseAnalytics/AdIdSupport (11.6.0): - - FirebaseCore (~> 11.6.0) + - FirebaseAnalytics/AdIdSupport (11.7.0): + - FirebaseCore (~> 11.7.0) - FirebaseInstallations (~> 11.0) - - GoogleAppMeasurement (= 11.6.0) + - GoogleAppMeasurement (= 11.7.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - FirebaseCore (11.6.0): - - FirebaseCoreInternal (~> 11.6.0) + - FirebaseCore (11.7.0): + - FirebaseCoreInternal (~> 11.7.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/Logger (~> 8.0) - - FirebaseCoreInternal (11.6.0): + - FirebaseCoreInternal (11.7.0): - "GoogleUtilities/NSData+zlib (~> 8.0)" - - FirebaseInstallations (11.6.0): - - FirebaseCore (~> 11.6.0) + - FirebaseInstallations (11.7.0): + - FirebaseCore (~> 11.7.0) - GoogleUtilities/Environment (~> 8.0) - GoogleUtilities/UserDefaults (~> 8.0) - PromisesObjC (~> 2.4) - - FirebaseMessaging (11.6.0): - - FirebaseCore (~> 11.6.0) + - FirebaseMessaging (11.7.0): + - FirebaseCore (~> 11.7.0) - FirebaseInstallations (~> 11.0) - GoogleDataTransport (~> 10.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) @@ -87,21 +87,21 @@ PODS: - gal (1.0.0): - Flutter - FlutterMacOS - - GoogleAppMeasurement (11.6.0): - - GoogleAppMeasurement/AdIdSupport (= 11.6.0) + - GoogleAppMeasurement (11.7.0): + - GoogleAppMeasurement/AdIdSupport (= 11.7.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - GoogleAppMeasurement/AdIdSupport (11.6.0): - - GoogleAppMeasurement/WithoutAdIdSupport (= 11.6.0) + - GoogleAppMeasurement/AdIdSupport (11.7.0): + - GoogleAppMeasurement/WithoutAdIdSupport (= 11.7.0) - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) - "GoogleUtilities/NSData+zlib (~> 8.0)" - nanopb (~> 3.30910.0) - - GoogleAppMeasurement/WithoutAdIdSupport (11.6.0): + - GoogleAppMeasurement/WithoutAdIdSupport (11.7.0): - GoogleUtilities/AppDelegateSwizzler (~> 8.0) - GoogleUtilities/MethodSwizzler (~> 8.0) - GoogleUtilities/Network (~> 8.0) @@ -137,6 +137,10 @@ PODS: - GoogleUtilities/UserDefaults (8.0.2): - GoogleUtilities/Logger - GoogleUtilities/Privacy + - HotKey (0.2.1) + - hotkey_manager_macos (0.0.1): + - FlutterMacOS + - HotKey - in_app_review (2.0.0): - FlutterMacOS - livekit_client (2.3.5): @@ -200,6 +204,7 @@ DEPENDENCIES: - flutter_webrtc (from `Flutter/ephemeral/.symlinks/plugins/flutter_webrtc/macos`) - FlutterMacOS (from `Flutter/ephemeral`) - gal (from `Flutter/ephemeral/.symlinks/plugins/gal/darwin`) + - hotkey_manager_macos (from `Flutter/ephemeral/.symlinks/plugins/hotkey_manager_macos/macos`) - in_app_review (from `Flutter/ephemeral/.symlinks/plugins/in_app_review/macos`) - livekit_client (from `Flutter/ephemeral/.symlinks/plugins/livekit_client/macos`) - media_kit_libs_macos_video (from `Flutter/ephemeral/.symlinks/plugins/media_kit_libs_macos_video/macos`) @@ -228,6 +233,7 @@ SPEC REPOS: - GoogleAppMeasurement - GoogleDataTransport - GoogleUtilities + - HotKey - nanopb - OrderedSet - PromisesObjC @@ -265,6 +271,8 @@ EXTERNAL SOURCES: :path: Flutter/ephemeral gal: :path: Flutter/ephemeral/.symlinks/plugins/gal/darwin + hotkey_manager_macos: + :path: Flutter/ephemeral/.symlinks/plugins/hotkey_manager_macos/macos in_app_review: :path: Flutter/ephemeral/.symlinks/plugins/in_app_review/macos livekit_client: @@ -306,23 +314,25 @@ SPEC CHECKSUMS: file_picker: e716a70a9fe5fd9e09ebc922d7541464289443af file_saver: 44e6fbf666677faf097302460e214e977fdd977b file_selector_macos: cc3858c981fe6889f364731200d6232dac1d812d - Firebase: 374a441a91ead896215703a674d58cdb3e9d772b - firebase_analytics: 91efc58e8e37964469fdd59ad11ba36bc97e75d6 - firebase_core: 75e003524565fb5bd80c9960bc5892e8475821cd - firebase_messaging: 082a385eb98b5bb843a566cb30404859c4bd6e25 - FirebaseAnalytics: 7114c698cac995602e3b1b96663473e50d54d6e7 - FirebaseCore: 48b0dd707581cf9c1a1220da68223fb0a562afaa - FirebaseCoreInternal: d98ab91e2d80a56d7b246856a8885443b302c0c2 - FirebaseInstallations: efc0946fc756e4d22d8113f7c761948120322e8c - FirebaseMessaging: e1aca1fcc23e8b9eddb0e33f375ff90944623021 + Firebase: a64bf6a8546e6eab54f1c715cd6151f39d2329f4 + firebase_analytics: 41d88c024a7756462a803e36236ba74f24cdc2c5 + firebase_core: 751d3d919b95d4ae46ab049d0d64d42d4eec086b + firebase_messaging: cc174f19945e9541e140e3cb0118448e59b38c6c + FirebaseAnalytics: bc9e565af9044ba8d6c6e4157e4edca8e5fdf7ec + FirebaseCore: 3227e35f4197a924206fbcdc0349325baf4f5de4 + FirebaseCoreInternal: d6c17dafc8dc33614733a8b52df78fcb4394c881 + FirebaseInstallations: 9347e719c3d52d8d7b9074b2c32407dd027305e9 + FirebaseMessaging: 00ece041b71ddb52a2862ffdee73fb6e9824bd0c flutter_inappwebview_macos: bdf207b8f4ebd58e86ae06cd96b147de99a67c9b flutter_udid: 2e7b3da4b5fdfba86a396b97898f5fe8f4ec1a52 flutter_webrtc: d55fd3f5c75b42940b6b4b2cf376a5797398d1f8 FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 gal: 6a522c75909f1244732d4596d11d6a2f86ff37a5 - GoogleAppMeasurement: 6a9e6317b6a6d810ad03d4a66564ca6c4c5818a3 + GoogleAppMeasurement: 0471a5b5bff51f3a91b1e76df22c952d04c63967 GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7 GoogleUtilities: 26a3abef001b6533cf678d3eb38fd3f614b7872d + HotKey: 400beb7caa29054ea8d864c96f5ba7e5b4852277 + hotkey_manager_macos: 1e2edb0c7ae4fe67108af44a9d3445de41404160 in_app_review: a6a031b9acd03c7d103e341aa334adf2c493fb93 livekit_client: 91c68237edede55f8891a166a28c1daec8a1e4b1 media_kit_libs_macos_video: b3e2bbec2eef97c285f2b1baa7963c67c753fb82 diff --git a/pubspec.lock b/pubspec.lock index 2e08f53..de2fcd0 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -13,10 +13,10 @@ packages: dependency: transitive description: name: _flutterfire_internals - sha256: e4f2a7ef31b0ab2c89d2bde35ef3e6e6aff1dce5e66069c6540b0e9cfe33ee6b + sha256: e051259913915ea5bc8fe18664596bea08592fd123930605d562969cd7315fcd url: "https://pub.dev" source: hosted - version: "1.3.50" + version: "1.3.51" _macros: dependency: transitive description: dart @@ -538,34 +538,34 @@ packages: dependency: "direct main" description: name: firebase_analytics - sha256: eac382bbcd5ae78c1d1ce5619d13f5a7424429f4bf55df9e3ad5110da34d1060 + sha256: "47428047a0778f72af53a3c7cb5d556e1cb25e2327cc8aa40d544971dc6245b2" url: "https://pub.dev" source: hosted - version: "11.4.1" + version: "11.4.2" firebase_analytics_platform_interface: dependency: transitive description: name: firebase_analytics_platform_interface - sha256: a34db46c367265c4c961626e4b128bfb7b7e50958e7add4c27ba103f5f81b9b0 + sha256: "1076f4b041f76143e14878c70f0758f17fe5910c0cd992db9e93bd3c3584512b" url: "https://pub.dev" source: hosted - version: "4.3.1" + version: "4.3.2" firebase_analytics_web: dependency: transitive description: name: firebase_analytics_web - sha256: b6b4cef08e45e4c7d48476d9fc49fe9577081809a59026fe95b1a1b1eea165fa + sha256: "8f6dd64ea6d28b7f5b9e739d183a9e1c7f17027794a3e9aba1879621d42426ef" url: "https://pub.dev" source: hosted - version: "0.5.10+7" + version: "0.5.10+8" firebase_core: dependency: "direct main" description: name: firebase_core - sha256: d851c1ca98fd5a4c07c747f8c65dacc2edd84a4d9ac055d32a5f0342529069f5 + sha256: "93dc4dd12f9b02c5767f235307f609e61ed9211047132d07f9e02c668f0bfc33" url: "https://pub.dev" source: hosted - version: "3.10.1" + version: "3.11.0" firebase_core_platform_interface: dependency: transitive description: @@ -578,34 +578,34 @@ packages: dependency: transitive description: name: firebase_core_web - sha256: fbc008cf390d909b823763064b63afefe9f02d8afdb13eb3f485b871afee956b + sha256: "0e13c80f0de8acaa5d0519cbe23c8b4cc138a2d5d508b5755c861bdfc9762678" url: "https://pub.dev" source: hosted - version: "2.19.0" + version: "2.20.0" firebase_messaging: dependency: "direct main" description: name: firebase_messaging - sha256: e20ea2a0ecf9b0971575ab3ab42a6e285a94e50092c555b090c1a588a81b4d54 + sha256: "3dee3b0cbfe719e64773cb7d1cad57c58b2235a8c136f5715fe733a54058c783" url: "https://pub.dev" source: hosted - version: "15.2.1" + version: "15.2.2" firebase_messaging_platform_interface: dependency: transitive description: name: firebase_messaging_platform_interface - sha256: c57a92b5ae1857ef4fe4ae2e73452b44d32e984e15ab8b53415ea1bb514bdabd + sha256: e9ea726b9bb864fc6223bb66422bd9877b9973ae51967754a769b0d01e201c1e url: "https://pub.dev" source: hosted - version: "4.6.1" + version: "4.6.2" firebase_messaging_web: dependency: transitive description: name: firebase_messaging_web - sha256: "83694a990d8525d6b01039240b97757298369622ca0253ad0ebcfed221bf8ee0" + sha256: "5f7b40e8bf861a37f8b8196e347d8a919750421a45f0b45d1bb74e98fa72726e" url: "https://pub.dev" source: hosted - version: "3.10.1" + version: "3.10.2" fixnum: dependency: transitive description: @@ -764,10 +764,10 @@ packages: dependency: "direct main" description: name: flutter_markdown - sha256: "46cdcdcd216f15ac04c80e24e814a89ea7143654442c53ba67fec349b4d44565" + sha256: b3ff1ef5fb3924ee02b4d38b974ffae3969d50603e68787684ee9dd45f6f144a url: "https://pub.dev" source: hosted - version: "0.7.6" + version: "0.7.6+1" flutter_native_splash: dependency: "direct dev" description: @@ -938,6 +938,46 @@ packages: url: "https://pub.dev" source: hosted version: "0.7.0" + hotkey_manager: + dependency: "direct main" + description: + name: hotkey_manager + sha256: "06f0655b76c8dd322fb7101dc615afbdbf39c3d3414df9e059c33892104479cd" + url: "https://pub.dev" + source: hosted + version: "0.2.3" + hotkey_manager_linux: + dependency: transitive + description: + name: hotkey_manager_linux + sha256: "83676bda8210a3377bc6f1977f193bc1dbdd4c46f1bdd02875f44b6eff9a8473" + url: "https://pub.dev" + source: hosted + version: "0.2.0" + hotkey_manager_macos: + dependency: transitive + description: + name: hotkey_manager_macos + sha256: "03b5967e64357b9ac05188ea4a5df6fe4ed4205762cb80aaccf8916ee1713c96" + url: "https://pub.dev" + source: hosted + version: "0.2.0" + hotkey_manager_platform_interface: + dependency: transitive + description: + name: hotkey_manager_platform_interface + sha256: "98ffca25b8cc9081552902747b2942e3bc37855389a4218c9d50ca316b653b13" + url: "https://pub.dev" + source: hosted + version: "0.2.0" + hotkey_manager_windows: + dependency: transitive + description: + name: hotkey_manager_windows + sha256: "0d03ced9fe563ed0b68f0a0e1b22c9ffe26eb8053cb960e401f68a4f070e0117" + url: "https://pub.dev" + source: hosted + version: "0.2.0" html: dependency: "direct main" description: @@ -1983,6 +2023,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.4.0" + uni_platform: + dependency: transitive + description: + name: uni_platform + sha256: e02213a7ee5352212412ca026afd41d269eb00d982faa552f419ffc2debfad84 + url: "https://pub.dev" + source: hosted + version: "0.1.3" universal_io: dependency: transitive description: @@ -2083,10 +2131,10 @@ packages: dependency: transitive description: name: vector_graphics - sha256: a1870d398158844fe5db12441611ed9a2222ff4340258b539eaf3590c1b4bd7e + sha256: "44cc7104ff32563122a929e4620cf3efd584194eec6d1d913eb5ba593dbcf6de" url: "https://pub.dev" source: hosted - version: "1.1.17" + version: "1.1.18" vector_graphics_codec: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index dffdda3..3498876 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -119,6 +119,7 @@ dependencies: html: ^0.15.5 xml: ^6.5.0 tray_manager: ^0.3.2 + hotkey_manager: ^0.2.3 dev_dependencies: flutter_test: diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index d668d1d..cd1d049 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include @@ -44,6 +45,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) { registry->GetRegistrarForPlugin("FlutterWebRTCPlugin")); GalPluginCApiRegisterWithRegistrar( registry->GetRegistrarForPlugin("GalPluginCApi")); + HotkeyManagerWindowsPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("HotkeyManagerWindowsPluginCApi")); LiveKitPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("LiveKitPlugin")); MediaKitLibsWindowsVideoPluginCApiRegisterWithRegistrar( diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 47538d7..ad95f7e 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -12,6 +12,7 @@ list(APPEND FLUTTER_PLUGIN_LIST flutter_udid flutter_webrtc gal + hotkey_manager_windows livekit_client media_kit_libs_windows_video media_kit_video