1 /*
2     SPDX-FileCopyrightText: 2019 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
3 
4     SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6 
7 #ifndef KWINDOWSHADOW_P_X11_H
8 #define KWINDOWSHADOW_P_X11_H
9 
10 #include "kwindowshadow_p.h"
11 
12 #include <xcb/xcb.h>
13 
14 class KWindowShadowTilePrivateX11 final : public KWindowShadowTilePrivate
15 {
16 public:
17     bool create() override;
18     void destroy() override;
19 
20     static KWindowShadowTilePrivateX11 *get(const KWindowShadowTile *tile);
21 
22     xcb_pixmap_t pixmap = XCB_PIXMAP_NONE;
23     xcb_gcontext_t gc = XCB_NONE;
24 };
25 
26 class KWindowShadowPrivateX11 final : public KWindowShadowPrivate
27 {
28 public:
29     bool create() override;
30     void destroy() override;
31 
32     KWindowShadowTile::Ptr getOrCreateEmptyTile();
33 
34     KWindowShadowTile::Ptr emptyTile;
35 };
36 
37 #endif // KWINDOWSHADOW_P_X11_H
38