diff options
Diffstat (limited to 'src/protocols/SinglePixel.cpp')
| -rw-r--r-- | src/protocols/SinglePixel.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/protocols/SinglePixel.cpp b/src/protocols/SinglePixel.cpp index 6ca48a35..9abde68a 100644 --- a/src/protocols/SinglePixel.cpp +++ b/src/protocols/SinglePixel.cpp @@ -12,16 +12,9 @@ CSinglePixelBuffer::CSinglePixelBuffer(uint32_t id, wl_client* client, CHyprColo m_opaque = col_.a >= 1.F; - m_texture = makeShared<CTexture>(DRM_FORMAT_ARGB8888, rc<uint8_t*>(&m_color), 4, Vector2D{1, 1}); - m_resource = CWLBufferResource::create(makeShared<CWlBuffer>(client, 1, id)); - m_success = m_texture->m_texID; - size = {1, 1}; - - if (!m_success) - Debug::log(ERR, "Failed creating a single pixel texture: null texture id"); } CSinglePixelBuffer::~CSinglePixelBuffer() { @@ -57,6 +50,17 @@ void CSinglePixelBuffer::endDataPtr() { ; } +SP<CTexture> CSinglePixelBuffer::createTexture() { + auto tex = makeShared<CTexture>(DRM_FORMAT_ARGB8888, rc<uint8_t*>(&m_color), 4, Vector2D{1, 1}); + + if (!tex->m_texID) { + Debug::log(ERR, "Failed creating a single pixel texture: null texture id"); + return nullptr; + } + + return tex; +} + bool CSinglePixelBuffer::good() { return m_resource->good(); } |
