File indexing completed on 2024-05-12 16:59:36
0001 /* 0002 * SPDX-FileCopyrightText: 2011 Aaron Seigo <aseigo@kde.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef CONTENTTRACKER_H 0008 #define CONTENTTRACKER_H 0009 0010 #include <QObject> 0011 #include <QPointer> 0012 0013 class OrgKdeActivityManagerSLCInterface; 0014 0015 class ContentTracker : public QObject 0016 { 0017 Q_OBJECT 0018 Q_PROPERTY(QString uri READ uri NOTIFY changed) 0019 Q_PROPERTY(QString mimeType READ mimeType NOTIFY changed) 0020 Q_PROPERTY(QString title READ title NOTIFY changed) 0021 0022 public: 0023 explicit ContentTracker(QObject *parent = nullptr); 0024 ~ContentTracker() override; 0025 0026 QString uri() const; 0027 QString mimeType() const; 0028 QString title() const; 0029 0030 Q_SIGNALS: 0031 void changed(); 0032 0033 protected: 0034 void connectToActivityManager(); 0035 0036 private Q_SLOTS: 0037 void focusChanged(const QString &uri, const QString &mimetype, const QString &title); 0038 void serviceChange(const QString &name, const QString &oldOwner, const QString &newOwner); 0039 0040 private: 0041 QPointer<OrgKdeActivityManagerSLCInterface> m_activityManagerIface; 0042 QString m_uri; 0043 QString m_mimetype; 0044 QString m_title; 0045 int m_window; 0046 }; 0047 0048 #endif