#ifndef GETTASKBARVALUE_H
#define GETTASKBARVALUE_H

#include <QObject>
#include <kwindowsystem.h>
#include <kstartupinfo.h>
#include <kwindowinfo.h>
#include <QMap>
#include "core/modelmanager.h"
#include "dbusinterfaces/appmanagerinterface.h"
#include "windowmanager/windowmanager.h"

class LauncherItem;
class ModelManagerPrivate;
class ModelManager;

class TaskBarManager : public QObject
{
    Q_OBJECT
public:
    explicit TaskBarManager(ModelManager *parent = nullptr);
    ~TaskBarManager();

    void setWindowDesktopFileName(quint32 wid, const QString &fileName);

public slots:
    void setAppClose(kdk::WindowId wid);
    void appWindowOpen(kdk::WindowId wid);

private:
    QMap<QString, QList<kdk::WindowId>> m_isOpenWindows;
    ModelManager *m_taskbarModelManager;
    AppManagerInterface *m_appManagerInterface;
};

#endif // GETTASKBARVALUE_H
