try {
m_currentTab = true;
- m_updateTimer->start();
+ m_updateTimer->resume();
m_view->resumeBox();
} catch (...) {
return false;
if (!background) {
m_currentTab = false;
}
- m_updateTimer->stop();
+ m_updateTimer->pause();
m_view->pauseBox();
} catch (...) {
return false;
{
LogD("enter");
- if (!m_currentTab) {
- return false;
- }
- // reload box
m_boxBuffer->startCanvasUpdate();
RenderInfoPtr renderInfo = makeRenderInfo(renderTypeUpdate);
m_view->showBox(renderInfo);
#include <Core/Util/Log.h>
#include "BoxUpdateTimer.h"
-#define UPDATE_TIME_MIN 10.0
+#define UPDATE_TIME_MIN 60.0
BoxUpdateTimer::BoxUpdateTimer(float period, Ecore_Task_Cb callback, void* data)
: m_period(period)
return;
}
+ if (m_timer) {
+ stop();
+ }
+
m_timer = ecore_timer_add(m_period, m_callback, m_data);
}
m_timer = NULL;
}
+void BoxUpdateTimer::resume()
+{
+ LogD("enter");
+ ecore_timer_thaw(m_timer);
+}
+
+void BoxUpdateTimer::pause()
+{
+ LogD("enter");
+ ecore_timer_freeze(m_timer);
+}
+
void BoxUpdateTimer::restart()
{
if (m_timer) {
public:
virtual void start() = 0;
virtual void stop() = 0;
+ virtual void resume() = 0;
+ virtual void pause() = 0;
virtual void restart() = 0;
virtual void setPeriod(float period) = 0;