/* KWin - the KDE window manager This file is part of the KDE project. SPDX-FileCopyrightText: 2015 Martin Gräßlin SPDX-FileCopyrightText: 2019 Vlad Zahorodnii SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once #include #include namespace KWin { class GraphicsBuffer; class GraphicsBufferView; namespace QPA { class BackingStore : public QPlatformBackingStore { public: explicit BackingStore(QWindow *window); QPaintDevice *paintDevice() override; void flush(QWindow *window, const QRegion ®ion, const QPoint &offset) override; void resize(const QSize &size, const QRegion &staticContents) override; void beginPaint(const QRegion ®ion) override; void endPaint() override; private: QPointer m_buffer; std::unique_ptr m_bufferView; }; } }