summaryrefslogtreecommitdiff
path: root/src/protocols
diff options
context:
space:
mode:
authorVaxry <43317083+vaxerski@users.noreply.github.com>2024-12-03 18:58:24 +0000
committerGitHub <noreply@github.com>2024-12-03 18:58:24 +0000
commit320144ae7288fe23686935ebb235d9fe0c900862 (patch)
tree351b04e228926f98c12c340284c25450bb1fed4f /src/protocols
parent92186898c0ca1b3f72922b72c4af1723f0d9b888 (diff)
core: move colorspace handling to oklab (#8635)
* Meson: add hyprgraphics * Nix: add hyprgraphics * CI/setup_base: get hyprgraphics-git --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
Diffstat (limited to 'src/protocols')
-rw-r--r--src/protocols/SinglePixel.cpp8
-rw-r--r--src/protocols/SinglePixel.hpp4
-rw-r--r--src/protocols/ToplevelExport.cpp4
3 files changed, 8 insertions, 8 deletions
diff --git a/src/protocols/SinglePixel.cpp b/src/protocols/SinglePixel.cpp
index d800539d..41771ce2 100644
--- a/src/protocols/SinglePixel.cpp
+++ b/src/protocols/SinglePixel.cpp
@@ -2,7 +2,7 @@
#include <limits>
#include "render/Renderer.hpp"
-CSinglePixelBuffer::CSinglePixelBuffer(uint32_t id, wl_client* client, CColor col_) {
+CSinglePixelBuffer::CSinglePixelBuffer(uint32_t id, wl_client* client, CHyprColor col_) {
LOGM(LOG, "New single-pixel buffer with color 0x{:x}", col_.getAsHex());
color = col_.getAsHex();
@@ -59,7 +59,7 @@ bool CSinglePixelBuffer::good() {
return resource->good();
}
-CSinglePixelBufferResource::CSinglePixelBufferResource(uint32_t id, wl_client* client, CColor color) {
+CSinglePixelBufferResource::CSinglePixelBufferResource(uint32_t id, wl_client* client, CHyprColor color) {
buffer = makeShared<CSinglePixelBuffer>(id, client, color);
if (!buffer->good())
@@ -89,8 +89,8 @@ CSinglePixelBufferManagerResource::CSinglePixelBufferManagerResource(SP<CWpSingl
resource->setOnDestroy([this](CWpSinglePixelBufferManagerV1* r) { PROTO::singlePixel->destroyResource(this); });
resource->setCreateU32RgbaBuffer([this](CWpSinglePixelBufferManagerV1* res, uint32_t id, uint32_t r, uint32_t g, uint32_t b, uint32_t a) {
- CColor color{r / (float)std::numeric_limits<uint32_t>::max(), g / (float)std::numeric_limits<uint32_t>::max(), b / (float)std::numeric_limits<uint32_t>::max(),
- a / (float)std::numeric_limits<uint32_t>::max()};
+ CHyprColor color{r / (float)std::numeric_limits<uint32_t>::max(), g / (float)std::numeric_limits<uint32_t>::max(), b / (float)std::numeric_limits<uint32_t>::max(),
+ a / (float)std::numeric_limits<uint32_t>::max()};
const auto RESOURCE = PROTO::singlePixel->m_vBuffers.emplace_back(makeShared<CSinglePixelBufferResource>(id, resource->client(), color));
if (!RESOURCE->good()) {
diff --git a/src/protocols/SinglePixel.hpp b/src/protocols/SinglePixel.hpp
index ab74825c..b20f582a 100644
--- a/src/protocols/SinglePixel.hpp
+++ b/src/protocols/SinglePixel.hpp
@@ -9,7 +9,7 @@
class CSinglePixelBuffer : public IHLBuffer {
public:
- CSinglePixelBuffer(uint32_t id, wl_client* client, CColor col);
+ CSinglePixelBuffer(uint32_t id, wl_client* client, CHyprColor col);
virtual ~CSinglePixelBuffer();
virtual Aquamarine::eBufferCapability caps();
@@ -33,7 +33,7 @@ class CSinglePixelBuffer : public IHLBuffer {
class CSinglePixelBufferResource {
public:
- CSinglePixelBufferResource(uint32_t id, wl_client* client, CColor color);
+ CSinglePixelBufferResource(uint32_t id, wl_client* client, CHyprColor color);
~CSinglePixelBufferResource();
bool good();
diff --git a/src/protocols/ToplevelExport.cpp b/src/protocols/ToplevelExport.cpp
index 04c089d7..d00e9dce 100644
--- a/src/protocols/ToplevelExport.cpp
+++ b/src/protocols/ToplevelExport.cpp
@@ -255,7 +255,7 @@ bool CToplevelExportFrame::copyShm(timespec* now) {
if (!g_pHyprRenderer->beginRender(PMONITOR, fakeDamage, RENDER_MODE_FULL_FAKE, nullptr, &outFB))
return false;
- g_pHyprOpenGL->clear(CColor(0, 0, 0, 1.0));
+ g_pHyprOpenGL->clear(CHyprColor(0, 0, 0, 1.0));
// render client at 0,0
g_pHyprRenderer->m_bBlockSurfaceFeedback = g_pHyprRenderer->shouldRenderWindow(pWindow); // block the feedback to avoid spamming the surface if it's visible
@@ -308,7 +308,7 @@ bool CToplevelExportFrame::copyDmabuf(timespec* now) {
if (!g_pHyprRenderer->beginRender(PMONITOR, fakeDamage, RENDER_MODE_TO_BUFFER, buffer.lock()))
return false;
- g_pHyprOpenGL->clear(CColor(0, 0, 0, 1.0));
+ g_pHyprOpenGL->clear(CHyprColor(0, 0, 0, 1.0));
g_pHyprRenderer->m_bBlockSurfaceFeedback = g_pHyprRenderer->shouldRenderWindow(pWindow); // block the feedback to avoid spamming the surface if it's visible
g_pHyprRenderer->renderWindow(pWindow, PMONITOR, now, false, RENDER_PASS_ALL, true, true);