diff options
author | Morten Sorvig <msorvig@trolltech.com> | 2009-08-25 16:15:33 +0200 |
---|---|---|
committer | Morten Sorvig <msorvig@trolltech.com> | 2009-08-25 16:15:33 +0200 |
commit | ad4f2f7a9c7049aa07bb4e150ca391059a0b0af7 (patch) | |
tree | e21d70398acebc5faf473c85383fa1bdb31b716f /src/widgeteventhandler.cpp | |
parent | be92e5b92322e4cbc8386b3a098689c718e4a9af (diff) |
filter away paint events for text-based widgets
Diffstat (limited to 'src/widgeteventhandler.cpp')
-rw-r--r-- | src/widgeteventhandler.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/widgeteventhandler.cpp b/src/widgeteventhandler.cpp index 741e489..e610a41 100644 --- a/src/widgeteventhandler.cpp +++ b/src/widgeteventhandler.cpp @@ -110,18 +110,20 @@ bool WidgetEventHandler::eventFilter(QObject *object, QEvent *event) QWidget *widget = qobject_cast<QWidget *>(object); if (event->type() == QEvent::Paint) { - if (server->sendUpdatesForPlainQWidgets == false && - qstrcmp(widget->metaObject()->className(), "QWidget") == 0) { + if (server->shouldSkipUpdate(widget->metaObject()->className())) { // qDebug() << "skip plain widget" << widget; - return false; + return true; } if (QLabel *label = qobject_cast<QLabel *>(widget)) { events.addEvent((int)widget, EventEntry::TextUpdate); + return true; } else if (QTextEdit *textEdit = qobject_cast<QTextEdit *>(widget)) { events.addEvent((int)widget, EventEntry::TextUpdate); + return true; } else if (QPushButton *textEdit = qobject_cast<QPushButton *>(widget)) { events.addEvent((int)widget, EventEntry::TextUpdate); + return true; } else if (!grabbing) { DEBUG << " add paint update" << object; |