diff options
-rw-r--r-- | myreplaycontrol.c | 14 | ||||
-rw-r--r-- | myreplaycontrol.h | 2 |
2 files changed, 9 insertions, 7 deletions
diff --git a/myreplaycontrol.c b/myreplaycontrol.c index 0e472ed..dcef55d 100644 --- a/myreplaycontrol.c +++ b/myreplaycontrol.c @@ -16,19 +16,17 @@ using namespace std; myReplayControl::myReplayControl() { timesearchactive=false; - lastState = osUnknown; + fCallPlugin = mysetup.ReturnToPlugin; } myReplayControl::~myReplayControl() { - if(lastState == osRecordings && mysetup.ReturnToPlugin) + if(fCallPlugin) cRemote::CallPlugin("extrecmenu"); } eOSState myReplayControl::ProcessKey(eKeys Key) { - lastState = osUnknown; - if(Key!=kNone) { if(timesearchactive && mysetup.UseCutterQueue) @@ -75,8 +73,12 @@ eOSState myReplayControl::ProcessKey(eKeys Key) } } - lastState = cReplayControl::ProcessKey(Key); - if(lastState == osRecordings && mysetup.ReturnToPlugin == 0) + eOSState lastState = cReplayControl::ProcessKey(Key); + if(lastState == osRecordings) lastState = osEnd; + if(lastState == osEnd && mysetup.ReturnToPlugin) + fCallPlugin = true; + if(Key==kBlue) + fCallPlugin = false; return lastState; } diff --git a/myreplaycontrol.h b/myreplaycontrol.h index ae4a9c0..f28a67f 100644 --- a/myreplaycontrol.h +++ b/myreplaycontrol.h @@ -2,7 +2,7 @@ class myReplayControl:public cReplayControl { private: bool timesearchactive; - eOSState lastState; + bool fCallPlugin; public: myReplayControl(); ~myReplayControl(); |