File indexing completed on 2024-05-19 05:32:19
0001 /* 0002 SPDX-FileCopyrightText: 2022 Vlad Zahorodnii <vlad.zahorodnii@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "core/output.h" 0010 #include "effect/globals.h" 0011 #include "scene/item.h" 0012 0013 namespace KWin 0014 { 0015 0016 class DragAndDropIcon; 0017 class SurfaceInterface; 0018 class SurfaceItemWayland; 0019 class PresentationFeedback; 0020 0021 class DragAndDropIconItem : public Item 0022 { 0023 Q_OBJECT 0024 0025 public: 0026 explicit DragAndDropIconItem(DragAndDropIcon *icon, Scene *scene, Item *parent = nullptr); 0027 ~DragAndDropIconItem() override; 0028 0029 SurfaceInterface *surface() const; 0030 0031 void setOutput(Output *output); 0032 0033 private: 0034 std::unique_ptr<SurfaceItemWayland> m_surfaceItem; 0035 Output *m_output = nullptr; 0036 }; 0037 0038 } // namespace KWin