d2fb4147fc
Things such as Output, InputDevice and so on are made to be multi-purpose. In order to make this separation more clear, this change moves that code in the core directory. Some things still link to the abstraction level above (kwin), they can be tackled in future refactors. Ideally code in core/ should depend either on other code in core/ or system libs.
32 lines
620 B
C++
32 lines
620 B
C++
/*
|
|
SPDX-FileCopyrightText: 2022 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
|
|
|
SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
#pragma once
|
|
#include <memory>
|
|
|
|
#include "core/renderlayerdelegate.h"
|
|
|
|
namespace KWin
|
|
{
|
|
|
|
class GLTexture;
|
|
|
|
class CursorDelegateOpenGL final : public RenderLayerDelegate
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit CursorDelegateOpenGL(QObject *parent = nullptr);
|
|
~CursorDelegateOpenGL() override;
|
|
|
|
void paint(RenderTarget *renderTarget, const QRegion ®ion) override;
|
|
|
|
private:
|
|
std::unique_ptr<GLTexture> m_cursorTexture;
|
|
bool m_cursorTextureDirty = false;
|
|
};
|
|
|
|
} // namespace KWin
|