Ticket #7691: 7691-v3.patch
File 7691-v3.patch, 23.3 KB (added by , 14 years ago) |
---|
-
libs/libmythtv/jobqueue.cpp
2012 2012 .arg(comment)).toLocal8Bit(); 2013 2013 } 2014 2014 2015 MythEvent me("RECORDING_LIST_CHANGE");2016 gContext->dispatch(me);2017 2018 2015 program_info->SetTranscoded(TRANSCODING_COMPLETE); 2019 2016 } 2020 2017 else … … 2165 2162 comment = tr("%n commercial break(s)", "", breaksFound); 2166 2163 ChangeJobStatus(jobID, JOB_FINISHED, comment); 2167 2164 2168 MythEvent me("RECORDING_LIST_CHANGE"); 2169 gContext->dispatch(me); 2165 program_info->SendUpdateEvent(); 2170 2166 2171 2167 program_info->pathname = program_info->GetPlaybackURL(); 2172 2168 (new PreviewGenerator(program_info, PreviewGenerator::kLocal))->Run(); … … 2284 2280 2285 2281 ChangeJobStatus(jobID, JOB_FINISHED, "Successfully Completed."); 2286 2282 2287 MythEvent me("RECORDING_LIST_CHANGE");2288 gContext->dispatch(me);2283 if (pginfo) 2284 pginfo->SendUpdateEvent(); 2289 2285 } 2290 2286 2291 2287 RemoveRunningJob(jobID); -
libs/libmythtv/tv_rec.cpp
504 504 curRecording->recordid = rcinfo->recordid; 505 505 curRecording->recendts = rcinfo->recendts; 506 506 curRecording->UpdateRecordingEnd(); 507 MythEvent me("RECORDING_LIST_CHANGE");508 gContext->dispatch(me);509 507 510 508 recordEndTime = curRecording->recendts.addSecs(post_roll_seconds); 511 509 … … 785 783 } 786 784 787 785 /** \fn TVRec::StartedRecording(RecordingInfo *curRec) 788 * \brief Inserts a "curRec" into the database, and issues a 789 * "RECORDING_LIST_CHANGE" event. 786 * \brief Inserts a "curRec" into the database 790 787 * \param curRec Recording to add to database. 791 788 * \sa ProgramInfo::StartedRecording(const QString&) 792 789 */ … … 801 798 802 799 if (curRec->chancommfree != 0) 803 800 curRec->SetCommFlagged(COMM_FLAG_COMMFREE); 804 805 MythEvent me("RECORDING_LIST_CHANGE");806 gContext->dispatch(me);807 801 } 808 802 809 803 /** \fn TVRec::FinishedRecording(RecordingInfo *curRec) … … 1069 1063 * 1070 1064 * If killfile is true, the recording is deleted. 1071 1065 * 1072 * A "RECORDING_LIST_CHANGE" message is dispatched.1073 *1074 1066 * Finally, if there was a recording and it was not deleted, 1075 1067 * schedule any post-processing jobs. 1076 1068 * … … 1140 1132 curRecording = NULL; 1141 1133 } 1142 1134 1143 MythEvent me("RECORDING_LIST_CHANGE");1144 gContext->dispatch(me);1145 1135 pauseNotify = true; 1146 1136 1147 1137 if (GetDTVChannel()) -
libs/libmythtv/recordinginfo.cpp
223 223 MythDB::DBError("RecGroup update", query); 224 224 225 225 recgroup = newrecgroup; 226 227 SendUpdateEvent(); 226 228 } 227 229 228 230 /** \fn RecordingInfo::ApplyRecordPlayGroupChange(const QString &newplaygroup) … … 246 248 MythDB::DBError("PlayGroup update", query); 247 249 248 250 playgroup = newplaygroup; 251 252 SendUpdateEvent(); 249 253 } 250 254 251 255 /** \fn RecordingInfo::ApplyStorageGroupChange(const QString &newstoragegroup) … … 269 273 MythDB::DBError("StorageGroup update", query); 270 274 271 275 storagegroup = newstoragegroup; 276 277 SendUpdateEvent(); 272 278 } 273 279 274 280 /** \fn RecordingInfo::ApplyRecordRecTitleChange(const QString &newTitle, const QString &newSubtitle) … … 295 301 296 302 title = newTitle; 297 303 subtitle = newSubtitle; 304 305 SendUpdateEvent(); 298 306 } 299 307 300 308 /** \brief Sets the transcoder profile for a recording … … 546 554 query.bindValue(":START", startts); 547 555 if (!query.exec() || !query.isActive()) 548 556 MythDB::DBError("Copy program ratings on record", query); 557 558 SendAddedEvent(); 549 559 } 550 560 551 561 static bool insert_program(const RecordingInfo *pg, … … 705 715 VERBOSE(VB_GENERAL, QString("%1 %2").arg(msg).arg(details)); 706 716 gContext->LogEntry("scheduler", LP_NOTICE, msg, details); 707 717 } 718 719 SendUpdateEvent(); 708 720 } 709 721 710 722 /** \fn RecordingInfo::UpdateRecordingEnd(void) … … 724 736 725 737 if (!query.exec()) 726 738 MythDB::DBError("UpdateRecordingEnd update", query); 739 740 SendUpdateEvent(); 727 741 } 728 742 729 743 /** \fn RecordingInfo::ReactivateRecording(void) -
libs/libmyth/programinfo.h
376 376 // Translations for play,recording, & storage groups + 377 377 static QString i18n(const QString&); 378 378 379 /// Sends event out that the ProgramInfo should be reloaded. 380 void SendUpdateEvent(void) const; 381 /// Sends event out that the ProgramInfo should be added to lists. 382 void SendAddedEvent(void) const; 383 /// Sends event out that the ProgramInfo should be delete from lists. 384 void SendDeletedEvent(void) const; 385 379 386 protected: 380 387 // Creates a basename from the start and end times 381 388 QString CreateRecordBasename(const QString &ext) const; 382 /// Sends event out that the ProgramInfo should be reloaded.383 void Update(void) const;384 389 385 390 public: 386 391 // data -
libs/libmyth/programinfo.cpp
1550 1550 return false; 1551 1551 } 1552 1552 1553 Update();1553 SendUpdateEvent(); 1554 1554 return true; 1555 1555 } 1556 1556 … … 1673 1673 if (!query.exec() || !query.isActive()) 1674 1674 MythDB::DBError("File size update", query); 1675 1675 1676 Update();1676 SendUpdateEvent(); 1677 1677 } 1678 1678 1679 1679 /** \fn ProgramInfo::GetFilesize(void) … … 1759 1759 MythDB::DBError("bookmark flag update", query); 1760 1760 } 1761 1761 1762 Update();1762 SendUpdateEvent(); 1763 1763 } 1764 1764 1765 void ProgramInfo:: Update(void) const1765 void ProgramInfo::SendUpdateEvent(void) const 1766 1766 { 1767 1767 QStringList list; 1768 1768 ToStringList(list); 1769 MythEvent me(QString("UPDATE_PROG_INFO"), list); 1770 RemoteSendEvent(me); 1769 RemoteSendEvent(MythEvent(QString("UPDATE_PROG_INFO"), list)); 1771 1770 } 1772 1771 1772 void ProgramInfo::SendAddedEvent(void) const 1773 { 1774 QStringList list; 1775 ToStringList(list); 1776 RemoteSendEvent(MythEvent(QString("RECORDING_LIST_CHANGE ADD"), list)); 1777 } 1778 1779 void ProgramInfo::SendDeletedEvent(void) const 1780 { 1781 QString msg = QString("RECORDING_LIST_CHANGE DELETE %1 %2") 1782 .arg(chanid).arg(recstartts.toString(Qt::ISODate)); 1783 RemoteSendEvent(MythEvent(msg)); 1784 } 1785 1773 1786 /** \brief Queries Latest bookmark timestamp from the database. 1774 1787 * If the timestamp has not been set this returns an invalid QDateTime. 1775 1788 */ … … 1897 1910 if (!query.exec() || !query.isActive()) 1898 1911 MythDB::DBError("SetDVDBookmark updating", query); 1899 1912 1900 Update();1913 SendUpdateEvent(); 1901 1914 } 1902 1915 /** \fn ProgramInfo::SetWatchedFlag(bool) const 1903 1916 * \brief Set "watched" field in recorded/videometadata to "watchedFlag". … … 1958 1971 MythDB::DBError("Set watched flag", query); 1959 1972 } 1960 1973 1961 Update();1974 SendUpdateEvent(); 1962 1975 } 1963 1976 1964 1977 /** \fn ProgramInfo::IsEditing(void) const … … 2003 2016 if (!query.exec() || !query.isActive()) 2004 2017 MythDB::DBError("Edit status update", query); 2005 2018 2006 Update();2019 SendUpdateEvent(); 2007 2020 } 2008 2021 2009 2022 /** \fn ProgramInfo::SetDeleteFlag(bool) const … … 2029 2042 if (!query.exec() || !query.isActive()) 2030 2043 MythDB::DBError("Set delete flag", query); 2031 2044 2032 Update(); 2045 if (!deleteFlag) 2046 SendAddedEvent(); 2033 2047 } 2034 2048 2035 2049 /** \fn ProgramInfo::IsCommFlagged(void) const … … 2146 2160 if(!query.exec() || !query.isActive()) 2147 2161 MythDB::DBError("Transcoded status update", query); 2148 2162 2149 Update();2163 SendUpdateEvent(); 2150 2164 } 2151 2165 2152 2166 /** \fn ProgramInfo::SetCommFlagged(int) const … … 2168 2182 if (!query.exec() || !query.isActive()) 2169 2183 MythDB::DBError("Commercial Flagged status update", query); 2170 2184 2171 Update();2185 SendUpdateEvent(); 2172 2186 } 2173 2187 2174 2188 /** \fn ProgramInfo::SetPreserveEpisode(bool) const … … 2192 2206 else 2193 2207 UpdateLastDelete(false); 2194 2208 2195 Update();2209 SendUpdateEvent(); 2196 2210 } 2197 2211 2198 2212 /** … … 2216 2230 else if (updateDelete) 2217 2231 UpdateLastDelete(true); 2218 2232 2219 Update();2233 SendUpdateEvent(); 2220 2234 } 2221 2235 2222 2236 /** \fn ProgramInfo::UpdateLastDelete(bool) const … … 2344 2358 MythDB::DBError("cutlist flag update", query); 2345 2359 } 2346 2360 2347 Update();2361 SendUpdateEvent(); 2348 2362 } 2349 2363 2350 2364 void ProgramInfo::SetCommBreakList(frm_dir_map_t &frames) const … … 3489 3503 recgroup = query.value(0).toString(); 3490 3504 } 3491 3505 3492 Update();3506 SendUpdateEvent(); 3493 3507 } 3494 3508 3495 3509 void ProgramInfo::MarkAsInUse(bool inuse, QString usedFor) … … 3528 3542 3529 3543 if (!inuse) 3530 3544 { 3531 if (!gContext->IsBackend())3532 RemoteSendMessage("RECORDING_LIST_CHANGE");3533 3545 inUseForWhat.clear(); 3546 SendUpdateEvent(); 3534 3547 return; 3535 3548 } 3536 3549 … … 3593 3606 query.bindValue(":RECHOST", hostname); 3594 3607 query.bindValue(":RECDIR", recDir); 3595 3608 3596 if (!query.exec() || !query.isActive())3609 if (!query.exec()) 3597 3610 MythDB::DBError("SetInUse", query); 3598 3611 3599 3612 // Let others know we changed status 3600 if (notifyOfChange && !gContext->IsBackend())3601 RemoteSendMessage("RECORDING_LIST_CHANGE");3613 if (notifyOfChange) 3614 SendUpdateEvent(); 3602 3615 } 3603 3616 3604 3617 /** \fn ProgramInfo::GetChannel(QString&,QString&) const -
programs/mythfrontend/playbackbox.cpp
1137 1137 } 1138 1138 1139 1139 m_connected = FillList(m_fillListFromCache); 1140 m_fillListFromCache = true; 1140 1141 } 1141 1142 1142 1143 bool PlaybackBox::FillList(bool useCachedData) … … 3661 3662 if (message.left(21) == "RECORDING_LIST_CHANGE") 3662 3663 { 3663 3664 QStringList tokens = message.simplified().split(" "); 3664 if ( tokens.size() == 1)3665 if ((tokens.size() == 4) && (tokens[1] == "ADD")) 3665 3666 { 3666 m_fillListFromCache = false; 3667 if (!m_fillListTimer->isActive()) 3668 { 3669 m_fillListTimer->stop(); 3670 m_fillListTimer->setSingleShot(true); 3671 m_fillListTimer->start(1000); 3672 } 3667 ProgramInfo evinfo; 3668 if (evinfo.FromStringList(me->ExtraDataList(), 0)) 3669 HandleRecordingAddEvent(evinfo); 3673 3670 } 3674 else if ((tokens[1] == "DELETE") && (tokens.size() == 4))3671 if ((tokens.size() == 4) && (tokens[1] == "DELETE")) 3675 3672 { 3676 m_freeSpaceNeedsUpdate = true; 3677 m_progCacheLock.lock(); 3678 if (!m_progCache) 3679 { 3680 m_progCacheLock.unlock(); 3681 m_freeSpaceNeedsUpdate = true; 3682 m_fillListFromCache = false; 3683 m_fillListTimer->stop(); 3684 m_fillListTimer->setSingleShot(true); 3685 m_fillListTimer->start(1000); 3686 return; 3687 } 3688 vector<ProgramInfo *>::iterator i = m_progCache->begin(); 3689 for ( ; i != m_progCache->end(); ++i) 3690 { 3691 if (((*i)->chanid == tokens[2]) && 3692 ((*i)->recstartts.toString(Qt::ISODate) == tokens[3])) 3693 { 3694 // We've set this recording to be deleted locally 3695 // it's no longer in the recording list, so don't 3696 // trigger a list reload which would cause a UI lag 3697 if ((*i)->availableStatus != asPendingDelete 3698 || m_currentGroup == m_watchGroupLabel) 3699 { 3700 m_recordingList->RemoveItem( 3701 m_recordingList->GetItemByData( 3702 qVariantFromValue(*i))); 3703 if (m_recordingList->GetCount() == 0) 3704 m_groupList->RemoveItem( 3705 m_groupList->GetItemCurrent()); 3706 } 3707 (*i)->availableStatus = asDeleted; 3708 m_progCacheLock.unlock(); 3709 return; 3710 } 3711 } 3712 3713 m_progCacheLock.unlock(); 3714 if (!m_fillListTimer->isActive()) 3715 { 3716 m_fillListFromCache = true; 3717 m_fillListTimer->stop(); 3718 m_fillListTimer->setSingleShot(true); 3719 m_fillListTimer->start(1000); 3720 } 3673 uint chanid = tokens[2].toUInt(); 3674 QDateTime recstartts = QDateTime::fromString(tokens[3]); 3675 if (chanid && recstartts.isValid()) 3676 HandleRecordingRemoveEvent(chanid, recstartts); 3721 3677 } 3678 else 3679 { 3680 m_fillListFromCache = false; 3681 ScheduleFillList(); 3682 } 3722 3683 } 3723 3684 else if (message.left(15) == "NETWORK_CONTROL") 3724 3685 { … … 3758 3719 { 3759 3720 ProgramInfo evinfo; 3760 3721 if (evinfo.FromStringList(me->ExtraDataList(), 0)) 3761 { 3762 UpdateProgramInfo(evinfo); 3722 HandleUpdateProgramInfoEvent(evinfo); 3723 } 3724 } 3725 else 3726 ScheduleCommon::customEvent(event); 3727 } 3763 3728 3764 ProgramInfo *dst = findMatchingProg(&evinfo); 3765 MythUIButtonListItem *item = NULL; 3766 if (dst) 3767 { 3768 item = m_recordingList->GetItemByData( 3769 qVariantFromValue(dst)); 3770 } 3729 void PlaybackBox::HandleRecordingRemoveEvent( 3730 uint chanid, const QDateTime &recstartts) 3731 { 3732 bool found = false; 3771 3733 3772 if (item) 3773 { 3774 MythUIButtonListItem *sel_item = 3775 m_recordingList->GetItemCurrent(); 3776 UpdateProgramInfo(item, item == sel_item, true); 3777 } 3778 else 3779 { 3780 VERBOSE(VB_IMPORTANT, 3781 "Got UPDATE_PROG_INFO, but the program " 3782 "is unknown to us."); 3783 } 3734 m_freeSpaceNeedsUpdate = true; 3735 3736 m_progCacheLock.lock(); 3737 if (m_progCache) 3738 { 3739 vector<ProgramInfo *>::iterator it = m_progCache->begin(); 3740 for ( ; it != m_progCache->end(); ++it) 3741 { 3742 if ((chanid == (*it)->chanid.toUInt()) && 3743 (recstartts == (*it)->recstartts)) 3744 { 3745 found = true; 3746 break; 3784 3747 } 3785 else 3748 } 3749 3750 if (it != m_progCache->end()) 3751 { 3752 if (((*it)->availableStatus != asPendingDelete) || 3753 (m_currentGroup == m_watchGroupLabel)) 3786 3754 { 3787 VERBOSE(VB_IMPORTANT, "Failed to parse UPDATE_PROG_INFO"); 3755 m_recordingList->RemoveItem( 3756 m_recordingList->GetItemByData( 3757 qVariantFromValue(*it))); 3758 if (m_recordingList->GetCount() == 0) 3759 m_groupList->RemoveItem( 3760 m_groupList->GetItemCurrent()); 3788 3761 } 3762 (*it)->availableStatus = asDeleted; 3789 3763 } 3790 3764 } 3791 3765 else 3792 ScheduleCommon::customEvent(event); 3766 { 3767 m_fillListFromCache = false; 3768 } 3769 m_progCacheLock.unlock(); 3770 3771 if (!found) 3772 ScheduleFillList(); 3793 3773 } 3794 3774 3775 void PlaybackBox::HandleRecordingAddEvent(const ProgramInfo &evinfo) 3776 { 3777 m_progCacheLock.lock(); 3778 if (m_progCache) 3779 { 3780 vector<ProgramInfo *>::iterator it = m_progCache->begin(); 3781 for ( ; it != m_progCache->end(); ++it) 3782 { 3783 if ((evinfo.chanid == (*it)->chanid) && 3784 (evinfo.recstartts == (*it)->recstartts)) 3785 { 3786 **it = evinfo; 3787 break; 3788 } 3789 } 3790 3791 if (it == m_progCache->end()) 3792 m_progCache->push_back(new ProgramInfo(evinfo)); 3793 } 3794 m_progCacheLock.unlock(); 3795 3796 ScheduleFillList(); 3797 } 3798 3799 void PlaybackBox::HandleUpdateProgramInfoEvent(const ProgramInfo &evinfo) 3800 { 3801 ProgramInfo *dst = findMatchingProg(&evinfo); 3802 QString old_recgroup; 3803 if (dst) 3804 old_recgroup = dst->recgroup; 3805 3806 UpdateProgramInfo(evinfo); 3807 3808 // If the program is not in the the recording lists, then it 3809 // is either a program that was just removed from the "LiveTV" 3810 // recording list and should possibly be displayed now, or it 3811 // is still in the "LiveTV" recording group and we're not 3812 // displaying programs in that group. Handle appropriately.. 3813 if (!dst) 3814 { 3815 if (evinfo.recgroup != "LiveTV") 3816 ScheduleFillList(); 3817 return; 3818 } 3819 3820 // If the recording group has changed, reload lists from the 3821 // recently updated cache.. 3822 if (dst->recgroup != old_recgroup) 3823 { 3824 ScheduleFillList(); 3825 return; 3826 } 3827 3828 MythUIButtonListItem *item = 3829 m_recordingList->GetItemByData(qVariantFromValue(dst)); 3830 3831 if (item) 3832 { 3833 MythUIButtonListItem *sel_item = 3834 m_recordingList->GetItemCurrent(); 3835 UpdateProgramInfo(item, item == sel_item, true); 3836 } 3837 else 3838 { 3839 VERBOSE(VB_GENERAL, LOC + 3840 QString("Got UPDATE_PROG_INFO event about a title unknown " 3841 "to us only in m_recordingList\n %1:%2") 3842 .arg(evinfo.title).arg(evinfo.subtitle)); 3843 } 3844 } 3845 3846 void PlaybackBox::ScheduleFillList(void) 3847 { 3848 if (!m_fillListTimer->isActive()) 3849 { 3850 m_fillListTimer->stop(); 3851 m_fillListTimer->setSingleShot(true); 3852 m_fillListTimer->start(1000); 3853 } 3854 } 3855 3795 3856 bool PlaybackBox::fileExists(ProgramInfo *pginfo) 3796 3857 { 3797 3858 if (pginfo) -
programs/mythfrontend/playbackbox.h
327 327 void clearProgramCache(void); 328 328 329 329 void HandlePreviewEvent(const ProgramInfo &evinfo); 330 void HandleRecordingRemoveEvent(uint chanid, const QDateTime &recstartts); 331 void HandleRecordingAddEvent(const ProgramInfo &evinfo); 332 void HandleUpdateProgramInfoEvent(const ProgramInfo &evinfo); 333 void ScheduleFillList(void); 330 334 331 335 void ShowMenu(void); 332 336 -
programs/mythbackend/mainserver.cpp
1519 1519 (pginfo->filesize > 0) && 1520 1520 (!ds->forceMetadataDelete)) 1521 1521 { 1522 VERBOSE(VB_IMPORTANT, QString("ERROR when trying to delete file: %1. File " 1523 "doesn't exist. Database metadata" 1524 "will not be removed.") 1525 .arg(ds->filename)); 1522 VERBOSE(VB_IMPORTANT, QString( 1523 "ERROR when trying to delete file: %1. File " 1524 "doesn't exist. Database metadata" 1525 "will not be removed.") 1526 .arg(ds->filename)); 1526 1527 gContext->LogEntry("mythbackend", LP_WARNING, "Delete Recording", 1527 1528 QString("File %1 does not exist for %2 when trying " 1528 1529 "to delete recording.") 1529 1530 .arg(ds->filename).arg(logInfo)); 1530 1531 1531 1532 pginfo->SetDeleteFlag(false); 1532 MythEvent me("RECORDING_LIST_CHANGE");1533 gContext->dispatch(me);1534 1535 1533 return; 1536 1534 } 1537 1535 … … 1577 1575 .arg(ds->filename).arg(logInfo)); 1578 1576 1579 1577 pginfo->SetDeleteFlag(false); 1580 1581 MythEvent me("RECORDING_LIST_CHANGE");1582 gContext->dispatch(me);1583 1584 1578 return; 1585 1579 } 1586 1580 … … 1715 1709 1716 1710 // Notify the frontend so it can requery for Free Space 1717 1711 QString msg = QString("RECORDING_LIST_CHANGE DELETE %1 %2") 1718 .arg(ds->chanid) 1719 .arg(ds->recstartts.toString(Qt::ISODate)); 1720 MythEvent me(msg); 1721 gContext->dispatch(me); 1712 .arg(ds->chanid).arg(ds->recstartts.toString(Qt::ISODate)); 1713 RemoteSendEvent(MythEvent(msg)); 1722 1714 1723 1715 // sleep a little to let frontends reload the recordings list 1724 1716 sleep(3); … … 2109 2101 DoHandleStopRecording(recinfo, NULL); 2110 2102 QStringList outputlist( QString::number(0) ); 2111 2103 SendResponse(pbssock, outputlist); 2112 MythEvent me("RECORDING_LIST_CHANGE");2113 gContext->dispatch(me);2114 2104 return; 2115 2105 } 2116 2106 … … 2233 2223 // Tell MythTV frontends that the recording list needs to be updated. 2234 2224 if ((fileExists) || (recinfo.filesize == 0) || (forceMetadataDelete)) 2235 2225 { 2236 QString msg = QString("RECORDING_LIST_CHANGE DELETE %1 %2") 2237 .arg(recinfo.chanid) 2238 .arg(recinfo.recstartts.toString(Qt::ISODate)); 2239 MythEvent me(msg); 2240 gContext->dispatch(me); 2226 recinfo.SendDeletedEvent(); 2241 2227 } 2242 2228 } 2243 2229 … … 2264 2250 recinfo.UpdateLastDelete(false); 2265 2251 recinfo.SetAutoExpire(kDisableAutoExpire); 2266 2252 ret = 0; 2267 MythEvent me("RECORDING_LIST_CHANGE");2268 gContext->dispatch(me);2269 2253 } 2270 2254 2271 2255 QStringList outputlist( QString::number(ret) ); … … 4244 4228 4245 4229 QString message = slist[1]; 4246 4230 QStringList extra_data; 4247 for (uint i = 2; i < slist.size(); i++)4231 for (uint i = 2; i < (uint) slist.size(); i++) 4248 4232 extra_data.push_back(slist[i]); 4249 4233 4250 4234 if (extra_data.empty()) -
programs/mythlcdserver/lcdprocclient.cpp
2376 2376 { 2377 2377 MythEvent *me = (MythEvent *) e; 2378 2378 2379 if (me->Message().left(21) == "RECORDING_LIST_CHANGE") 2379 if (me->Message().left(21) == "RECORDING_LIST_CHANGE" || 2380 me->Message() == "UPDATE_PROG_INFO") 2380 2381 { 2381 2382 if (lcd_showrecstatus && !updateRecInfoTimer->isActive()) 2382 2383 { -
programs/mythwelcome/welcomedialog.cpp
151 151 { 152 152 MythEvent *me = (MythEvent *) e; 153 153 154 if (me->Message().left(21) == "RECORDING_LIST_CHANGE") 154 if (me->Message().left(21) == "RECORDING_LIST_CHANGE" || 155 me->Message() == "UPDATE_PROG_INFO") 155 156 { 156 VERBOSE(VB_GENERAL, "MythWelcome received a RECORDING_LIST_CHANGE event"); 157 VERBOSE(VB_GENERAL, "MythWelcome received a " 158 "recording list change event"); 157 159 158 160 QMutexLocker lock(&m_RecListUpdateMuxtex); 159 161