Ticket #2978: prompt_livetv_exit_r12631.diff

File prompt_livetv_exit_r12631.diff, 4.0 KB (added by Neil McBride <neil@…>, 13 years ago)
  • libs/libmythtv/tv_play.cpp

     
    23842384                            break;
    23852385                    }
    23862386                }
    2387                 else if (dialogname == "videoexitplayoptions") 
     2387                else if (dialogname == "videoexitplayoptions")
    23882388                {
    23892389                    int result = GetOSD()->GetDialogResponse(dialogname);
    23902390
     
    27802780
    27812781            if (StateIsLiveTV(GetState()))
    27822782            {
    2783                 if (nvp && gContext->GetNumSetting("PlaybackExitPrompt") == 2)
    2784                     nvp->SetBookmark();
    27852783                if (nvp && gContext->GetNumSetting("AutomaticSetWatched", 0))
    27862784                    nvp->SetWatched();
    27872785                exitPlayer = true;
    27882786                wantsToQuit = true;
     2787                if (nvp)
     2788                {
     2789                    switch(gContext->GetNumSetting("PlaybackExitPrompt"))
     2790                    {
     2791                        case 2:
     2792                            nvp->SetBookmark();
     2793                            break;
     2794                        case 4: case 8:
     2795                            PromptStopWatchingRecording();
     2796                            wantsToQuit = false;
     2797                            exitPlayer = false;
     2798                            break;
     2799                    }
     2800                }
    27892801            }
    27902802            else
    27912803            {
    2792                 if (nvp && gContext->GetNumSetting("PlaybackExitPrompt") == 1 &&
     2804                if (nvp && 5 & gContext->GetNumSetting("PlaybackExitPrompt") &&
    27932805                    !underNetworkControl && !prbuffer->InDVDMenuOrStillFrame())
    27942806                {
    27952807                    PromptStopWatchingRecording();
    27962808                    break;
    27972809                }
    2798                 else if (nvp && gContext->GetNumSetting("PlaybackExitPrompt") == 2)
     2810                else if (nvp &&
     2811                         gContext->GetNumSetting("PlaybackExitPrompt") == 2)
    27992812                    nvp->SetBookmark();
    28002813                if (nvp && gContext->GetNumSetting("AutomaticSetWatched", 0))
    28012814                    nvp->SetWatched();
     
    74847497   
    74857498    if (playbackinfo && allowbookmark)
    74867499    {
    7487         QString videotype = (prbuffer->isDVD()) ? "DVD":"recording";
    7488         message = tr("You are exiting this %1").arg(videotype);
     7500        QString videotype;
     7501        if (StateIsLiveTV(GetState()))
     7502            videotype = "Live TV";
     7503        else
     7504            videotype = (prbuffer->isDVD()) ? "this DVD":"this recording";
    74897505
     7506        message = tr("You are exiting %1").arg(videotype);
     7507
    74907508        options += tr("Save this position and go to the menu");
    74917509        options += tr("Do not save, just exit to the menu");
    74927510        options += tr("Keep watching");
    7493         if (!prbuffer->isDVD())
     7511        if (!prbuffer->isDVD() && !StateIsLiveTV(GetState()))
    74947512            options += tr("Delete this recording");
    74957513
    74967514        dialogname = "exitplayoptions";
    74977515    }
    74987516    else
    74997517    {
    7500 
    75017518        message = tr("You are exiting this Video/DVD");
    75027519       
    75037520        options += tr("Keep Watching");
  • programs/mythfrontend/globalsettings.cpp

     
    12411241    gc->setLabel(QObject::tr("Action on playback exit"));
    12421242    gc->addSelection(QObject::tr("Just exit"), "0");
    12431243    gc->addSelection(QObject::tr("Save position and exit"), "2");
    1244     gc->addSelection(QObject::tr("Always prompt"), "1");
     1244    gc->addSelection(QObject::tr("Always prompt (excluding Live TV)"), "1");
     1245    gc->addSelection(QObject::tr("Always prompt (including Live TV)"), "4");
     1246    gc->addSelection(QObject::tr("Prompt for Live TV only"), "8");
    12451247    gc->setHelpText(QObject::tr("If set to prompt, a menu will be displayed "
    12461248                    "when you exit playback mode.  The options available will "
    12471249                    "allow you to save your position, delete the "