Ticket #1752: jump_ffw_rew_in_dvd.patch
File jump_ffw_rew_in_dvd.patch, 2.9 KB (added by , 18 years ago) |
---|
-
libs/libmythtv/tv_play.cpp
2409 2409 if (prbuffer->InDVDMenuOrStillFrame()) 2410 2410 UpdateOSDSeekMessage(tr("Skip Back Not Allowed"), 2411 2411 osd_general_timeout); 2412 else if (prbuffer->DVD()->NumPartsInTitle() <2)2412 else if (prbuffer->DVD()->NumPartsInTitle() > 2) 2413 2413 { 2414 nvp-> GoToDVDProgram(0);2415 UpdateOSDSeekMessage(tr("Previous Title"),2416 osd_general_timeout);2414 nvp->ChangeDVDTrack(0); 2415 UpdateOSDSeekMessage(tr("Previous Chapter"), 2416 osd_general_timeout); 2417 2417 } 2418 2418 else 2419 2419 { 2420 nvp->ChangeDVDTrack(0); 2421 UpdateOSDSeekMessage(tr("Previous Chapter"), 2422 osd_general_timeout); 2420 uint titleLength = prbuffer->DVD()->GetTotalTimeOfTitle(); 2421 uint chapterLength = prbuffer->DVD()->GetChapterLength(); 2422 if ((titleLength == chapterLength) && 2423 chapterLength > 300) 2424 { 2425 DoSeek(-jumptime * 60, tr("Jump Back")); 2426 } 2427 else 2428 { 2429 nvp->GoToDVDProgram(0); 2430 UpdateOSDSeekMessage(tr("Previous Title"), 2431 osd_general_timeout); 2432 } 2423 2433 } 2424 2434 } 2425 2435 else … … 2443 2453 UpdateOSDSeekMessage(tr("Next Chapter"), 2444 2454 osd_general_timeout); 2445 2455 } 2446 else 2456 else 2447 2457 { 2448 nvp->GoToDVDProgram(1); 2449 UpdateOSDSeekMessage(tr("Next Title"), 2458 uint titleLength = prbuffer->DVD()->GetTotalTimeOfTitle(); 2459 uint chapterLength = prbuffer->DVD()->GetChapterLength(); 2460 uint currentTime = prbuffer->DVD()->GetCurrentTime(); 2461 if ((titleLength == chapterLength) && 2462 (currentTime < (chapterLength - (jumptime * 60))) && 2463 chapterLength > 300) 2464 { 2465 DoSeek(jumptime * 60, tr("Jump Ahead")); 2466 } 2467 else 2468 { 2469 nvp->GoToDVDProgram(1); 2470 UpdateOSDSeekMessage(tr("Next Title"), 2450 2471 osd_general_timeout); 2472 } 2451 2473 } 2452 2474 } 2453 2475 else