The current xdg-shell wrappers don't match existing abstractions in the xdg-shell protocol well, which makes it more difficult to refactor code that is responsible for managing configure events and geometry in kwin. Given that the xdg_decoration and the xdg_shell protocols are tightly coupled together, I had to rewrite our wrappers for the xdg_decoration protocol as well.
35 lines
662 B
C++
35 lines
662 B
C++
/*
|
|
SPDX-FileCopyrightText: 2019 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
|
|
|
|
SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
|
|
*/
|
|
|
|
#ifndef KWAYLAND_SERVER_SURFACEROLE_P_H
|
|
#define KWAYLAND_SERVER_SURFACEROLE_P_H
|
|
|
|
#include <QPointer>
|
|
|
|
namespace KWaylandServer
|
|
{
|
|
|
|
class SurfaceInterface;
|
|
|
|
class SurfaceRole
|
|
{
|
|
public:
|
|
explicit SurfaceRole(SurfaceInterface *surface);
|
|
virtual ~SurfaceRole();
|
|
|
|
virtual void commit() = 0;
|
|
|
|
static SurfaceRole *get(SurfaceInterface *surface);
|
|
|
|
private:
|
|
QPointer<SurfaceInterface> m_surface;
|
|
|
|
Q_DISABLE_COPY(SurfaceRole)
|
|
};
|
|
|
|
}
|
|
|
|
#endif // KWAYLAND_SERVER_SURFACEROLE_P_H
|