summaryrefslogtreecommitdiff
path: root/myreplaycontrol.c
diff options
context:
space:
mode:
Diffstat (limited to 'myreplaycontrol.c')
-rw-r--r--myreplaycontrol.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/myreplaycontrol.c b/myreplaycontrol.c
index 856ccf4..0e472ed 100644
--- a/myreplaycontrol.c
+++ b/myreplaycontrol.c
@@ -16,16 +16,19 @@ using namespace std;
myReplayControl::myReplayControl()
{
timesearchactive=false;
+ lastState = osUnknown;
}
myReplayControl::~myReplayControl()
{
- if(mysetup.ReturnToPlugin)
+ if(lastState == osRecordings && mysetup.ReturnToPlugin)
cRemote::CallPlugin("extrecmenu");
}
eOSState myReplayControl::ProcessKey(eKeys Key)
{
+ lastState = osUnknown;
+
if(Key!=kNone)
{
if(timesearchactive && mysetup.UseCutterQueue)
@@ -69,10 +72,11 @@ eOSState myReplayControl::ProcessKey(eKeys Key)
if(Key==kRed)
timesearchactive=true;
}
- if(Key==kBack)
- return osEnd;
}
}
- return cReplayControl::ProcessKey(Key);
+ lastState = cReplayControl::ProcessKey(Key);
+ if(lastState == osRecordings && mysetup.ReturnToPlugin == 0)
+ lastState = osEnd;
+ return lastState;
}