1 | *** ./mythtv/libs/libmythtv/avformatdecoder.cpp.orig Sat Jan 10 08:24:09 2009 |
---|
2 | --- ./mythtv/libs/libmythtv/avformatdecoder.cpp Wed Jan 21 12:06:59 2009 |
---|
3 | *************** |
---|
4 | *** 3335,3341 **** |
---|
5 | if (!decodeStillFrame && inDVDStill) |
---|
6 | { |
---|
7 | decodeStillFrame = true; |
---|
8 | - GetMythUI()->RestoreScreensaver(); |
---|
9 | d->ResetMPEG2(); |
---|
10 | } |
---|
11 | |
---|
12 | --- 3335,3340 ---- |
---|
13 | *** ./mythtv/libs/libmythtv/DVDRingBuffer.cpp.orig Sat Jan 10 08:24:09 2009 |
---|
14 | --- ./mythtv/libs/libmythtv/DVDRingBuffer.cpp Wed Jan 21 12:20:41 2009 |
---|
15 | *************** |
---|
16 | *** 38,44 **** |
---|
17 | title(0), titleParts(0), |
---|
18 | gotStop(false), |
---|
19 | cellHasStillFrame(false), audioStreamsChanged(false), |
---|
20 | ! dvdWaiting(false), |
---|
21 | titleLength(0), hl_button(0, 0, 0, 0), |
---|
22 | menuSpuPkt(0), |
---|
23 | menuBuflength(0), |
---|
24 | --- 38,44 ---- |
---|
25 | title(0), titleParts(0), |
---|
26 | gotStop(false), |
---|
27 | cellHasStillFrame(false), audioStreamsChanged(false), |
---|
28 | ! dvdWaiting(false), screensaverEnabled(false), |
---|
29 | titleLength(0), hl_button(0, 0, 0, 0), |
---|
30 | menuSpuPkt(0), |
---|
31 | menuBuflength(0), |
---|
32 | *************** |
---|
33 | *** 337,344 **** |
---|
34 | cellid = 0; |
---|
35 | cellRepeated = false; |
---|
36 | menupktpts = 0; |
---|
37 | - if (cellHasStillFrame) |
---|
38 | - GetMythUI()->DisableScreensaver(); |
---|
39 | InStillFrame(false); |
---|
40 | |
---|
41 | if (parent && IsInMenu()) |
---|
42 | --- 337,342 ---- |
---|
43 | *************** |
---|
44 | *** 348,353 **** |
---|
45 | --- 346,367 ---- |
---|
46 | autoselectsubtitle = true; |
---|
47 | } |
---|
48 | |
---|
49 | + if (IsInMenu()) |
---|
50 | + { |
---|
51 | + if (!screensaverEnabled) |
---|
52 | + { |
---|
53 | + GetMythUI()->RestoreScreensaver(); |
---|
54 | + screensaverEnabled = true ; |
---|
55 | + } |
---|
56 | + } else |
---|
57 | + { |
---|
58 | + if (screensaverEnabled) |
---|
59 | + { |
---|
60 | + GetMythUI()->DisableScreensaver(); |
---|
61 | + screensaverEnabled = false ; |
---|
62 | + } |
---|
63 | + } |
---|
64 | + |
---|
65 | if (blockBuf != dvdBlockWriteBuf) |
---|
66 | { |
---|
67 | dvdnav_free_cache_block(dvdnav, blockBuf); |
---|
68 | *** ./mythtv/libs/libmythtv/DVDRingBuffer.h.orig Wed Jan 21 12:09:48 2009 |
---|
69 | --- ./mythtv/libs/libmythtv/DVDRingBuffer.h Wed Jan 21 12:18:58 2009 |
---|
70 | *************** |
---|
71 | *** 49,54 **** |
---|
72 | --- 49,55 ---- |
---|
73 | bool InStillFrame(void) const { return cellHasStillFrame; } |
---|
74 | bool AudioStreamsChanged(void) const { return audioStreamsChanged; } |
---|
75 | bool IsWaiting(void) const { return dvdWaiting; } |
---|
76 | + bool IsScreensaverEnabled(void) const { return screensaverEnabled; } |
---|
77 | int NumPartsInTitle(void) const { return titleParts; } |
---|
78 | void GetMenuSPUPkt(uint8_t *buf, int len, int stream_id); |
---|
79 | |
---|
80 | *************** |
---|
81 | *** 136,141 **** |
---|
82 | --- 137,143 ---- |
---|
83 | bool cellHasStillFrame; |
---|
84 | bool audioStreamsChanged; |
---|
85 | bool dvdWaiting; |
---|
86 | + bool screensaverEnabled; |
---|
87 | long long titleLength; |
---|
88 | MythTimer stillFrameTimer; |
---|
89 | uint32_t clut[16]; |
---|