polybar/include/modules/systray.hpp

41 lines
859 B
C++

#if DEBUG
#pragma once
#include "modules/meta/static_module.hpp"
#include "modules/meta/input_handler.hpp"
POLYBAR_NS
class connection;
namespace modules {
/**
* Module used to display information about the
* currently active X window.
*/
class systray_module : public static_module<systray_module>, public input_handler {
public:
explicit systray_module(const bar_settings&, string);
void update();
bool build(builder* builder, const string& tag) const;
protected:
bool input(string&& cmd);
private:
static constexpr const char* EVENT_TOGGLE{"systray-toggle"};
static constexpr const char* TAG_LABEL_TOGGLE{"<label-toggle>"};
static constexpr const char* TAG_TRAY_CLIENTS{"<tray-clients>"};
connection& m_connection;
label_t m_label;
bool m_hidden{false};
};
}
POLYBAR_NS_END
#endif