aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/hyprerror/HyprError.hpp
blob: 4d01e78d0e1e028c8ca1b4d5ad150bedd4321ac6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once

#include "../defines.hpp"
#include "../render/Texture.hpp"

#include <cairo/cairo.h>

class CHyprError {
  public:
    void queueCreate(std::string message, const CColor& color);
    void draw();
    void destroy();

  private:
    void        createQueued();
    std::string m_szQueued = "";
    CColor      m_cQueued;
    bool        m_bQueuedDestroy = false;
    bool        m_bIsCreated     = false;
    CTexture    m_tTexture;
};

inline std::unique_ptr<CHyprError> g_pHyprError; // This is a full-screen error. Treat it with respect, and there can only be one at a time.