diff --git a/frame/item/components/appdragwidget.cpp b/frame/item/components/appdragwidget.cpp index a6957e4cf..30ce5890c 100644 --- a/frame/item/components/appdragwidget.cpp +++ b/frame/item/components/appdragwidget.cpp @@ -70,9 +70,9 @@ AppDragWidget::AppDragWidget(QWidget *parent) setAcceptDrops(true); initAnimations(); - + m_followMouseTimer->setSingleShot(Utils::IS_WAYLAND_DISPLAY); - m_followMouseTimer->setInterval(1); + m_followMouseTimer->setInterval(16); connect(m_followMouseTimer, &QTimer::timeout, this, &AppDragWidget::onFollowMouse); m_followMouseTimer->start(); } @@ -376,7 +376,7 @@ void AppDragWidget::onFollowMouse() if (DWindowManagerHelper::instance()->hasComposite()) { move(destPos.x() - width() / 2, destPos.y() - height() / 2); } else { - move(destPos.x(), destPos.y()); //窗口特效未开启时会隐藏m_object绘制的图标,移动的图标为QDrag绘制的图标,大小为(10,10) + move(destPos.x(), destPos.y()); // 窗口特效未开启时会隐藏m_object绘制的图标,移动的图标为QDrag绘制的图标 } } diff --git a/frame/window/mainpanelcontrol.cpp b/frame/window/mainpanelcontrol.cpp index c879f0f41..bda56be85 100755 --- a/frame/window/mainpanelcontrol.cpp +++ b/frame/window/mainpanelcontrol.cpp @@ -422,6 +422,8 @@ void MainPanelControl::removeItem(DockItem *item) break; } + item->removeEventFilter(this); + /** 此处重新计算大小的时候icon的个数在原有个数上减少了一个,导致每个icon的大小跟原来大小不一致,需要重新设置setFixedSize * 在龙芯处理器上当app数量过多时,会导致拖动app耗时严重,造成卡顿 * 注意:不能屏蔽此接口,否则会造成插件移除时无法更新icon大小