dde-dock/frame/util/touchsignalmanager.h
范朋程 2d958dd670 chore: V23接口改造适配
V23接口改造适配

Log: V23接口改造适配
Influence: 无
Task: https://pms.uniontech.com/task-view-207483.html
Change-Id: Ide530c023ea41f86fad2e8001ec67f1afaa897ab
2022-12-06 14:40:35 +08:00

64 lines
2.0 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* Copyright (C) 2018 ~ 2020 Uniontech Technology Co., Ltd.
*
* Author: liuxing <liuxing@uniontech.com>
*
* Maintainer: liuxing <liuxing@uniontech.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef TOUCHSIGNALMANAGER_H
#define TOUCHSIGNALMANAGER_H
#include "org_deepin_dde_gesture1.h"
#include <QObject>
using Gesture = org::deepin::dde::Gesture1;
class TouchSignalManager : public QObject
{
Q_OBJECT
public:
static TouchSignalManager *instance();
bool isDragIconPress() const;
signals:
// 转发后端拖拽图标触控按压信号当前设计200ms
void shortTouchPress(int time, double scaleX, double scaleY);
void touchRelease(double scaleX, double scaleY);
// 转发后端拖拽任务栏高度单指触控按压信号当前设计1000ms
void middleTouchPress(double scaleX, double scaleY);
void touchMove(double scaleX, double scaleY);
private slots:
void dealShortTouchPress(int time, double scaleX, double scaleY);
void dealTouchRelease(double scaleX, double scaleY);
void dealMiddleTouchPress(double scaleX, double scaleY);
void dealTouchPress(int figerNum, int time, double scaleX, double scaleY);
private:
explicit TouchSignalManager(QObject *parent = nullptr);
private:
static TouchSignalManager *m_touchManager;
Gesture *m_gestureInter;
// 保存触控屏图标拖动长按状态当前长按200ms
bool m_dragIconPressed;
};
#endif // TOUCHSIGNALMANAGER_H