NABI issue 47695 47846
authorravi.n2@samsung.com <ravi.n2@samsung.com>
Wed, 31 Jul 2013 12:54:03 +0000 (18:24 +0530)
committerravi.n2@samsung.com <ravi.n2@samsung.com>
Wed, 31 Jul 2013 12:55:55 +0000 (18:25 +0530)
Change-Id: Idde319c9dbd79baae21450bbd72b4e624f418c7b

inc/CmCamcorderForm.h
inc/CmCameraPresentationModel.h
src/CmCamcorderForm.cpp
src/CmCameraForm.cpp
src/CmCameraPresentationModel.cpp

index 5dfdb83..698a080 100644 (file)
@@ -370,6 +370,7 @@ private:
        bool __isOrientationChanged;
        bool __doRecording;
        bool __recorderStopped;
+       bool __appcontrolRecordingEnabled;
        
        Tizen::Ui::Controls::Panel* __pSettingPanel;
        Tizen::Ui::Controls::Panel* __pActionPanel;
index afb3dcd..5a2dd18 100644 (file)
@@ -228,6 +228,8 @@ public:
        void SetCurrentSourceForm(SourceForm source);
        SourceForm GetCurrentSourceForm(void);
        void SetRecorderEndReached(bool currentStatus);
+       void SetTimerEnabled(bool timerEnabled);
+       bool GetTimerEnabled(void);
 
 private:
        CameraPresentationModel(void);
@@ -283,6 +285,7 @@ private:
        bool __recorderStopException;
        bool __memoryFullException;
        bool __recorderEndReached;
+       bool __timerEnabled;
        SourceForm __pCurrentSource;
        Tizen::Media::RecorderErrorReason __recorderError;
 };
index 66d3b7e..e9b03cb 100644 (file)
@@ -347,6 +347,7 @@ CamcorderForm::CamcorderForm(void)
        , __isOrientationChanged(false)
        , __doRecording(false)
        ,__recorderStopped(true)
+       ,__appcontrolRecordingEnabled(false)
        , __pSettingPanel(null)
        , __pActionPanel(null)
        , __dir(ORIENTATION_STATUS_NONE)
@@ -1127,7 +1128,15 @@ CamcorderForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)
 
        case IDA_BUTTON_CAMCORDER_SHUTTER:
        {
-               result r = E_SUCCESS;
+               result r = E_SUCCESS;           
+               int requestType = 0;
+               int appcontrolRequest = 0;
+               requestType = _pCameraPresentationModel->GetAppControlRequestType();
+
+               if (GetAppLaunchType() == APP_LAUNCH_TYPE_REQUESET)
+               {
+                       appcontrolRequest = 1;
+               }
 
                r = _pCameraPresentationModel->SetFlashModeOnRecord(true);
 
@@ -1137,6 +1146,15 @@ CamcorderForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)
                        return;
                }
 
+               if (appcontrolRequest == 1)
+               {
+                       if (__appcontrolRecordingEnabled && _isRecording == false)
+                       {
+                               AppLogDebug("Appcontrol Launch so cannot do recording twice");
+                               return;
+                       }
+               }
+
                MakeSettingPopupTab(false);
                if (_isRecording == false)
                {
@@ -1151,6 +1169,12 @@ CamcorderForm::OnActionPerformed(const Tizen::Ui::Control& source, int actionId)
                        AppLogDebug("DoRecording");
 
                        _pCameraPresentationModel->SetMemoryFullException(true);
+
+                       if (appcontrolRequest == 1)
+                       {
+                               __appcontrolRecordingEnabled = true;
+                       }
+
                        DoRecording();
                }
                else
@@ -1824,10 +1848,17 @@ CamcorderForm::OnCameraActionPerformed(CameraActionEvent event)
 
                        if (GetAppLaunchType() == APP_LAUNCH_TYPE_REQUESET && requestType == CameraPresentationModel::APP_CONTROL_REQUEST_TYPE_SUCCEEDED)
                        {
-                               AppLogDebug("Recrrder after TerminateApp");
+                               AppLogDebug("onvideoRecorder after TerminateApp");                      
+                       
                                CameraApp* pCameraApp = static_cast<CameraApp*>(CameraApp::GetInstance());
                                pCameraApp->SetFrameEnabled(false);
 
+                                       if (__appcontrolRecordingEnabled)
+                                       {
+                                               __appcontrolRecordingEnabled = false;
+                                       }
+                               
+
                                r = TerminateApp();
                                return;
                                AppLogDebug("TerminateApp fail [%s]", GetErrorMessage(r));
index 3f0d4cf..cc73288 100644 (file)
@@ -538,6 +538,7 @@ CameraForm::OnTerminating(void)
        __lowMemoryCapacity = false;
 
        __isTimerRunning = false;
+       _pCameraPresentationModel->SetTimerEnabled(false);
 
        _pCameraPresentationModel->SetIntervalTimerRun(false);
 
@@ -625,6 +626,9 @@ CameraForm::OnSceneActivatedN(const Tizen::Ui::Scenes::SceneId& previousSceneId,
        BatteryLevel batteryLevel;
 
        __isTimerRunning = false;
+       _pCameraPresentationModel->SetTimerEnabled(false);
+
+
 
        _pCameraPresentationModel->SetIntervalTimerRun(false);
 
@@ -776,6 +780,8 @@ CameraForm::OnSceneDeactivated(const Tizen::Ui::Scenes::SceneId& currentSceneId,
        AppLogDebug("ENTER");
        __isTimerRunning = false;
 
+       _pCameraPresentationModel->SetTimerEnabled(false);
+
        _pCameraPresentationModel->SetIntervalTimerRun(false);
 
        __resolutionChange = false;
@@ -2099,6 +2105,9 @@ CameraForm::OnIntervalValueTimerExpired(void)
                }
        }
 
+       
+
+       _pCameraPresentationModel->SetTimerEnabled(true);
        _pCameraPresentationModel->Capture();
 
        __isTimerRunning = false;
@@ -9480,6 +9489,7 @@ CameraForm::SendCameraToBackground(void)
                StopPopupTimer();
                _timeCount = INDEX_UNIT_ZERO;
                __isTimerRunning = false;
+               _pCameraPresentationModel->SetTimerEnabled(false);
                _pCameraPresentationModel->SetIntervalTimerRun(false);
                _isUsedTimerCaptured = false;
 
@@ -12085,7 +12095,9 @@ CameraForm::OnFormBackRequested(Tizen::Ui::Controls::Form& source)
        AppLogDebug("ENTER");
        int checkActivePanel=-1;
 
-       if (!__isTimerRunning)
+       bool timerEnabled = _pCameraPresentationModel->GetTimerEnabled();
+
+       if (!__isTimerRunning && !timerEnabled)
        {
                if  ((_pListViewCameraTabMainMenu!= null && _pListViewCameraTabMainMenu->GetShowState()) ||
                                (_pListViewGeneralTabMainMenu!= null && _pListViewGeneralTabMainMenu->GetShowState()) )
index 36debc0..ea2159f 100644 (file)
@@ -126,6 +126,7 @@ CameraPresentationModel::CameraPresentationModel(void)
        ,__recorderStopException(false)
        ,__memoryFullException(false)
        ,__recorderEndReached(false)
+       ,__timerEnabled(false)
        ,__pCurrentSource(SOURCE_FORM_CAMERA)
        ,__recorderError(RECORDER_ERROR_OUT_OF_STORAGE)
 {
@@ -3308,6 +3309,11 @@ CameraPresentationModel::OnCameraCaptured(Tizen::Base::ByteBuffer& capturedData,
                }
        }
 
+       if (__timerEnabled)
+       {
+               __timerEnabled = false;
+       }
+
        AppLogDebug("EXIT");
        return;
 
@@ -4063,3 +4069,16 @@ CameraPresentationModel::SetRecorderEndReached(bool currentStatus)
 {
        __recorderEndReached = currentStatus;
 }
+
+
+void
+CameraPresentationModel::SetTimerEnabled(bool timerEnabled)
+{
+       __timerEnabled = timerEnabled;
+}
+
+bool
+CameraPresentationModel::GetTimerEnabled(void)
+{
+       return __timerEnabled;
+}