[mythtv-commits] Ticket #10695: [PATCH] libmythui: Fix a redraw bug in MythUIType

MythTV noreply at mythtv.org
Mon Oct 8 19:03:30 UTC 2012


#10695: [PATCH] libmythui: Fix a redraw bug in MythUIType
--------------------------------------+-----------------------------
 Reporter:  Lawrence Rust <lvr@…>     |          Owner:  stuartm
     Type:  Patch - Bug Fix           |         Status:  closed
 Priority:  minor                     |      Milestone:  0.27
Component:  MythTV - General          |        Version:  Master Head
 Severity:  medium                    |     Resolution:  fixed
 Keywords:  keypress redraw tearfree  |  Ticket locked:  0
--------------------------------------+-----------------------------

Comment (by Lawrence Rust <lvr@…>):

 In [changeset:2d2932ac11ed6d01f05f502a8e373455774ba46a/mythtv]:
 {{{
 #!CommitTicketReference repository="mythtv"
 revision="2d2932ac11ed6d01f05f502a8e373455774ba46a"
 libmythui: Fix a redraw bug in MythUIType

 While evaluating the ATI Catalyst 'TearFree Desktop' option I noticed
 that sometimes a keypress was apparently being held up until the time
 on the main menu was updated.  Initially I thought that this was a lirc
 or fglrx issue, but on investigation it turned out that
 MythMainWindow::animate
 was requesting updates for empty repaint regions.  Delving further
 showed that MythUIType::Draw was resetting m_DirtyRegion to empty
 even if the clipRect was smaller, thus leaving unpainted regions.

 m_DirtyRegion may be extended by HandleMovementPulse, SetRedraw
 or SetChildNeedsRedraw etc AFTER GetDirtyArea is called.
 So when MythUIType::Draw is called, clipRect may not include the whole
 of m_DirtyRegion.

 This patch subtracts the Draw clipRect from m_DirtyRegion instead of
 simply emtying it.

 Fixes #10695

 Signed-off-by: Lawrence Rust <lvr at softsystem.co.uk>
 Signed-off-by: Stuart Morgan <smorgan at mythtv.org>
 (cherry picked from commit 39984eb579369f6cb25cd8f57acb8b23ebcccfc6)
 }}}

-- 
Ticket URL: <http://code.mythtv.org/trac/ticket/10695#comment:4>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center


More information about the mythtv-commits mailing list