[mythtv-commits] Ticket #10161: Speed up loading of Watch Recordings screen

MythTV noreply at mythtv.org
Wed Mar 21 06:43:57 UTC 2012

#10161: Speed up loading of Watch Recordings screen
 Reporter:  Jim Stichnoth <stichnot@…>          |          Owner:  stichnot
     Type:  Patch - Feature                     |         Status:  accepted
 Priority:  minor                               |      Milestone:  0.26
Component:  MythTV - General                    |        Version:  Master
 Severity:  medium                              |  Head
 Keywords:                                      |     Resolution:
                                                |  Ticket locked:  0

Comment (by stichnot):

 The v12 patch is optimistically the final structure of this patch.  I
 would appreciate anyone who can try it out for some time before it gets

 This approach defers initialization of the button list items until after
 all items are created.  Then it adds an event to initialize a "page" of
 items.  After that event is handled and the page of items is initialized,
 another event is added for the next page, and so forth until all button
 list items are initialized.

 The page size is set to 20 button list items.  A redraw is forced after
 each page, so a small page size will take a lot of time to go through all
 items, whereas a large page size will impact UI responsiveness during the
 background operation.  Processing 20 at a time gets through a large set
 reasonably fast with little or no perceptible sluggishness, and almost
 certainly keeps ahead of a fast-scrolling user.

 If the button list is regenerated while background processing is going on,
 the original processing is aborted and the new button list is processed in
 the background.  If playback begins during background processing, the
 processing is aborted and restarted after playback finishes.

Ticket URL: <http://code.mythtv.org/trac/ticket/10161#comment:10>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center

More information about the mythtv-commits mailing list