From 2b94cffe7e6957b438ca30f1240f9a5ee987b53d Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 23 Jan 2025 12:13:01 +0400 Subject: [PATCH] Allow getting name or path for sound. --- .../SourceFiles/media/audio/media_audio_local_cache.cpp | 7 ++++++- Telegram/SourceFiles/media/audio/media_audio_local_cache.h | 1 + .../SourceFiles/platform/mac/notifications_manager_mac.mm | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/media/audio/media_audio_local_cache.cpp b/Telegram/SourceFiles/media/audio/media_audio_local_cache.cpp index 5e5f9771f..66a169de0 100644 --- a/Telegram/SourceFiles/media/audio/media_audio_local_cache.cpp +++ b/Telegram/SourceFiles/media/audio/media_audio_local_cache.cpp @@ -333,7 +333,7 @@ LocalDiskCache::LocalDiskCache(const QString &folder) QDir().mkpath(_base); } -QString LocalDiskCache::path(const LocalSound &sound) { +QString LocalDiskCache::name(const LocalSound &sound) { if (!sound) { return {}; } @@ -357,4 +357,9 @@ QString LocalDiskCache::path(const LocalSound &sound) { return result; } +QString LocalDiskCache::path(const LocalSound &sound) { + const auto part = name(sound); + return part.isEmpty() ? QString() : _base + part + u".wav"_q; +} + } // namespace Media::Audio diff --git a/Telegram/SourceFiles/media/audio/media_audio_local_cache.h b/Telegram/SourceFiles/media/audio/media_audio_local_cache.h index 09886c9b3..53f4295d3 100644 --- a/Telegram/SourceFiles/media/audio/media_audio_local_cache.h +++ b/Telegram/SourceFiles/media/audio/media_audio_local_cache.h @@ -34,6 +34,7 @@ class LocalDiskCache final { public: explicit LocalDiskCache(const QString &folder); + [[nodiscard]] QString name(const LocalSound &sound); [[nodiscard]] QString path(const LocalSound &sound); private: diff --git a/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm b/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm index 290cce13f..28ddec721 100644 --- a/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm +++ b/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm @@ -338,7 +338,7 @@ void Manager::Private::showNotification( const auto sound = info.sound ? info.sound() : Media::Audio::LocalSound(); if (sound) { - [notification setSoundName:Q2NSString(_sounds.path(sound))]; + [notification setSoundName:Q2NSString(_sounds.name(sound))]; } else { [notification setSoundName:nil]; }