Ticket #9457 (new enhancement)
Flicker-free drawing/WS_EX_COMPOSITED XP attribute
| Reported by: | codelurker | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | wxMSW | Version: | |
| Keywords: | flickering | Cc: | codelurker |
| Blocked By: | Patch: | no | |
| Blocking: |
Description
On the web page:
http://wiki.wxwidgets.org/Flicker-Free_Drawing
you can see some of the attempts to resolve the
flicker issue. You can see the diffs there from
the wxChandler project, and how they solved the
problem (although their software has unrelated
performance issues). Basically, they added a
wxWS_EX_BUFFERED_DRAW attribute for all windows, that
turns on the XP attribute WS_EX_COMPOSITED. It is
really only needed for top level windows, and
NO_FULL_REPAINT_ON_RESIZE and wxCLIP_CHILDREN are not
needed to end the flickering on resizing things.
Extra credit would be to look over the differences
with the canonical wxWidgets code there and
see if they did anything else that is important to
flickering. Practically speaking, I've been using
wxWidgets with that attribute for some time, and it
seems to solve the lion's share of the flickering
problems. By and large, the coding is already done.
Shouldn't be too hard.
