From b2cb63d1100829efe4523d717e811471e8abb22b Mon Sep 17 00:00:00 2001 From: ssk-wh Date: Fri, 26 Apr 2024 17:02:16 +0800 Subject: [PATCH] chore: update icon such as weixin(wine) as title log: as title issue: https://github.com/linuxdeepin/developer-center/issues/8280 --- .../window/tray/widgets/xembedtrayitemwidget.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/panels/dock/tray/frame/window/tray/widgets/xembedtrayitemwidget.cpp b/panels/dock/tray/frame/window/tray/widgets/xembedtrayitemwidget.cpp index 3a5e6afb0..f189ee908 100644 --- a/panels/dock/tray/frame/window/tray/widgets/xembedtrayitemwidget.cpp +++ b/panels/dock/tray/frame/window/tray/widgets/xembedtrayitemwidget.cpp @@ -92,9 +92,6 @@ XEmbedTrayItemWidget::XEmbedTrayItemWidget(quint32 winId, xcb_connection_t *cnn, connect(m_sendHoverEvent, &QTimer::timeout, this, &XEmbedTrayItemWidget::sendHoverEvent); m_updateTimer->start(); - - // FIXME: wine:weixinwork not show icon when first startup,so force refresh icon - QMetaObject::invokeMethod(this, &XEmbedTrayItemWidget::refershIconImage, Qt::QueuedConnection); } XEmbedTrayItemWidget::~XEmbedTrayItemWidget() @@ -127,9 +124,11 @@ void XEmbedTrayItemWidget::paintEvent(QPaintEvent *e) if (!needShow()) { return; } - - if (m_image.isNull()) - return m_updateTimer->start(); + if (m_image.isNull()) { + // NOTE: widget which insert onto qml will rendered in other thread, timer cannot be started, just refreshIcon instead. + // return m_updateTimer->start(); + return; + } QPainter painter; painter.begin(this);