mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-02 15:45:21 +00:00

添加以下类的单元测试代码: mainwindow, 删除部分用不到的代码 Log: Change-Id: I2c6d5f01b730f230d1fdb73fabc8421442fd9e39
34 lines
1002 B
C++
34 lines
1002 B
C++
#include "dockapplication.h"
|
||
#include "constants.h"
|
||
|
||
#include <QMouseEvent>
|
||
#include <QTouchEvent>
|
||
|
||
DockApplication::DockApplication(int &argc, char **argv)
|
||
: DApplication (argc, argv)
|
||
{
|
||
}
|
||
|
||
bool DockApplication::notify(QObject *obj, QEvent *event)
|
||
{
|
||
QMouseEvent *mouseEvent = dynamic_cast<QMouseEvent *>(event);
|
||
|
||
if (mouseEvent) {
|
||
// 鼠标事件可以通过source函数确定是否触屏事件,并将结果写入qApp的动态属性中
|
||
const Qt::MouseEventSource src = mouseEvent->source();
|
||
if (src == Qt::MouseEventSynthesizedByQt || src == Qt::MouseEventSynthesizedByApplication) {
|
||
qApp->setProperty(IS_TOUCH_STATE, true);
|
||
} else {
|
||
qApp->setProperty(IS_TOUCH_STATE, false);
|
||
}
|
||
}
|
||
|
||
// 任务栏屏蔽多指触控
|
||
QTouchEvent *touchEvent = dynamic_cast<QTouchEvent *>(event);
|
||
if(touchEvent && (touchEvent->touchPoints().size() > 1)) {
|
||
return true;
|
||
}
|
||
|
||
return DApplication::notify(obj, event);
|
||
}
|