File indexing completed on 2024-04-28 05:30:23

0001 /*
0002     SPDX-FileCopyrightText: 2020 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "waylandshellintegration.h"
0010 
0011 namespace KWin
0012 {
0013 
0014 class LayerSurfaceV1Interface;
0015 
0016 class LayerShellV1Integration : public WaylandShellIntegration
0017 {
0018     Q_OBJECT
0019 
0020 public:
0021     explicit LayerShellV1Integration(QObject *parent = nullptr);
0022 
0023     void rearrange();
0024     void scheduleRearrange();
0025 
0026     void createWindow(LayerSurfaceV1Interface *shellSurface);
0027     void recreateWindow(LayerSurfaceV1Interface *shellSurface);
0028     void destroyWindow(LayerSurfaceV1Interface *shellSurface);
0029 
0030 private:
0031     QTimer *m_rearrangeTimer;
0032 };
0033 
0034 } // namespace KWin