diff --git a/src/widgets/util/qsystemtrayicon.cpp b/src/widgets/util/qsystemtrayicon.cpp
index d22791048f14bd52bc1367fa167e2dde1c050936..31bbbb97396d18642740b3ce5eab412ea9981dc5 100644
--- a/src/widgets/util/qsystemtrayicon.cpp
+++ b/src/widgets/util/qsystemtrayicon.cpp
@@ -284,12 +284,6 @@ bool QSystemTrayIcon::isVisible() const
 */
 bool QSystemTrayIcon::event(QEvent *e)
 {
-#if defined(Q_DEAD_CODE_FROM_QT4_X11)
-    if (e->type() == QEvent::ToolTip) {
-        Q_D(QSystemTrayIcon);
-        return d->sys->deliverToolTipEvent(e);
-    }
-#endif
     return QObject::event(e);
 }
 
diff --git a/src/widgets/util/qsystemtrayicon_x11.cpp b/src/widgets/util/qsystemtrayicon_x11.cpp
index 9a69db1bc864f3b131028e21df914f595283fe08..02bab236c8fad5ff515ed6b8f24a5621cdc7ddda 100644
--- a/src/widgets/util/qsystemtrayicon_x11.cpp
+++ b/src/widgets/util/qsystemtrayicon_x11.cpp
@@ -194,6 +194,9 @@ void QSystemTrayIconSys::mouseDoubleClickEvent(QMouseEvent *ev)
 bool QSystemTrayIconSys::event(QEvent *e)
 {
     switch (e->type()) {
+    case QEvent::ToolTip:
+        QApplication::sendEvent(q, e);
+        break;
 #ifndef QT_NO_WHEELEVENT
     case QEvent::Wheel:
         return QApplication::sendEvent(q, e);