"Fossies" - the Fresh Open Source Software Archive

Member "tdesktop-2.6.1/Telegram/SourceFiles/platform/linux/notifications_manager_linux.h" (24 Feb 2021, 1163 Bytes) of package /linux/misc/tdesktop-2.6.1.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "notifications_manager_linux.h" see the Fossies "Dox" file reference documentation.

    1 /*
    2 This file is part of Telegram Desktop,
    3 the official desktop application for the Telegram messaging service.
    4 
    5 For license and copyright information please follow this link:
    6 https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
    7 */
    8 #pragma once
    9 
   10 #include "platform/platform_notifications_manager.h"
   11 #include "base/weak_ptr.h"
   12 
   13 namespace Platform {
   14 namespace Notifications {
   15 
   16 class Manager
   17     : public Window::Notifications::NativeManager
   18     , public base::has_weak_ptr {
   19 public:
   20     Manager(not_null<Window::Notifications::System*> system);
   21     void clearNotification(NotificationId id);
   22     ~Manager();
   23 
   24 protected:
   25     void doShowNativeNotification(
   26         not_null<PeerData*> peer,
   27         std::shared_ptr<Data::CloudImageView> &userpicView,
   28         MsgId msgId,
   29         const QString &title,
   30         const QString &subtitle,
   31         const QString &msg,
   32         bool hideNameAndPhoto,
   33         bool hideReplyButton) override;
   34     void doClearAllFast() override;
   35     void doClearFromHistory(not_null<History*> history) override;
   36     void doClearFromSession(not_null<Main::Session*> session) override;
   37 
   38 private:
   39     class Private;
   40     const std::unique_ptr<Private> _private;
   41 
   42 };
   43 
   44 } // namespace Notifications
   45 } // namespace Platform