dde-dock/frame/screenspliter/screenspliter_xcb.h
tsic404 5f6cacdf2a refactor: Rewrite the calling method of dock settings
Rewrite the calling method of dock settings, using the new dconfig interface instead of AM's dbus interface

log: as title
2023-07-18 07:35:19 +00:00

33 lines
902 B
C++

// Copyright (C) 2022 ~ 2022 Deepin Technology Co., Ltd.
// SPDX-FileCopyrightText: 2018 - 2023 UnionTech Software Technology Co., Ltd.
//
// SPDX-License-Identifier: LGPL-3.0-or-later
#ifndef SCREENSPLITER_XCB_H
#define SCREENSPLITER_XCB_H
#include "screenspliter.h"
#include <QRect>
class WindowInfo;
typedef QMap<quint32, WindowInfo> WindowInfoMap;
class ScreenSpliter_Xcb : public ScreenSpliter
{
public:
explicit ScreenSpliter_Xcb(AppItem *appItem, QObject *parent = nullptr);
void startSplit(const QRect &rect) override;
bool split(ScreenSpliter::SplitDirection direction) override;
bool suportSplitScreen() override;
bool releaseSplit() override;
private:
uint32_t direction_x11(ScreenSpliter::SplitDirection direction);
void showSplitScreenEffect(const QRect &rect, bool visible);
bool windowSupportSplit(quint32 winId);
};
#endif // SCREENSPLITER_XCB_H