#pragma once #include "configobject.hpp" #include namespace ZShell::config { class NotifsSizes : public ConfigObject { Q_OBJECT QML_ANONYMOUS CFG_PROPERTY(int, badge, 20) CFG_PROPERTY(int, image, 41) CFG_PROPERTY(int, width, 400) public: explicit NotifsSizes(QObject* parent = nullptr) : ConfigObject(parent) {} }; class Notifs : public ConfigObject { Q_OBJECT QML_ANONYMOUS CFG_PROPERTY(bool, actionOnClick, false) CFG_PROPERTY(int, appNotifCooldown, 0) CFG_PROPERTY(qreal, clearThreshold, 0.3) CFG_PROPERTY(int, defaultExpireTimeout, 5000) CFG_PROPERTY(int, expandThreshold, 20) CFG_PROPERTY(bool, expire, true) CFG_PROPERTY(int, groupPreviewNum, 5) CFG_PROPERTY(bool, openExpanded, false) CFG_PROPERTY(bool, showInFullscreen, false) CONFIG_SUBOBJECT(NotifsSizes, sizes) public: explicit Notifs(QObject* parent = nullptr) : ConfigObject(parent), m_sizes(new NotifsSizes(this)) {} }; } // namespace ZShell::config