-
Bug
-
Resolution: Done
-
P3: Somewhat important
-
4.6.0
-
None
-
All
-
5cea290a567a0270d3d00e2b475b923bd5462691
The QLineEdit changes from 4.5 to 4.6 caused a performance regression in partial updates. Now, if the control needs an update (which may be partial), the whole line edit is updated all the time. The following commit shows the problem quite clearly:
http://qt.gitorious.org/qt/releases/commit/31fa1d0f6144e7e92748b33f8633eeb2f52483a1
The fix is to adjust the control's update rect to the line edit's display rect, and then call update(QRect) on QLineEdit.
To demonstrate this problem, simply show any app with a QLineEdit and either type a character, move the cursor around some text, or just wait and see the cursor blink. The whole edit is repainted every time (also try QT_FLUSH_PAINT=1).