TizenRefApp-7647 Audio less than 1 second can be recorded 56/104456/4
authorSergei Kobec <s.kobec@samsung.com>
Tue, 13 Dec 2016 13:46:12 +0000 (15:46 +0200)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Wed, 14 Dec 2016 12:14:22 +0000 (04:14 -0800)
Change-Id: I9f448d599c5423a799f489f3f3ef381d611e91d9
Signed-off-by: Sergei Kobec <s.kobec@samsung.com>
lib-common/inc/Common/Recorder.h
lib-common/src/Common/Recorder.cpp
memo-app/src/Input/RecordField.cpp

index 4435e72f0764ca05812664e26ca8594846f0692b..3f8d4c9a82ace3683a87acb677258ceee663d68b 100644 (file)
@@ -107,6 +107,11 @@ namespace Common
                 */
                void save();
 
+               /**
+                * @brief Cancel recording and reset result.
+                */
+               void cancel();
+
        private:
                void onRecording(unsigned long long elapsedTime, unsigned long long fileSize);
                void onLimitReached(recorder_recording_limit_type_e type);
index 7f167e5b288b1e3eccdcb1bade71ed3f986f2811..9c09ed51f3c376ef737e215fd613b791d6d84ec9 100644 (file)
@@ -92,6 +92,11 @@ void Recorder::save()
        recorder_commit(m_Recorder);
 }
 
+void Recorder::cancel()
+{
+       recorder_cancel(m_Recorder);
+}
+
 void Recorder::onRecording(unsigned long long elapsedTime, unsigned long long fileSize)
 {
        m_RecordLength = elapsedTime;
index 1671c55065371d99917a06d577e070bc37d58906..c0328adbbde59a97e7cbcc20e5f949a11363add1 100644 (file)
@@ -216,10 +216,17 @@ Evas_Object *RecordField::createProgressBar(Evas_Object *parent)
 
 void RecordField::stop()
 {
-       m_Recorder->save();
        elm_object_signal_emit(getEvasObject(), SIGNAL_BTN_STOP_HIDE, "*");
        elm_object_signal_emit(getEvasObject(), SIGNAL_ICON_HIDE, "*");
-       setMode(ModePlayer);
+       if (m_Recorder->getRecordLength() <= MIN_RECORD_LEN) {
+               m_Recorder->cancel();
+               elm_object_signal_emit(m_RecordBtn, SIGNAL_BTN_RESUME, "*");
+               elm_layout_text_set(getEvasObject(), PART_RECORD_TIME, DEFAULT_TIME);
+               notification_status_message_post(_("IDS_MEMO_TPOP_RECORDING_CANCELLED_RECORDING_TOO_SHORT"));
+       } else {
+               m_Recorder->save();
+               setMode(ModePlayer);
+       }
 }
 
 void RecordField::pauseRecorder()