#define POWER_METHOD "reboot"
#define POWER_OPERATION_OFF "poweroff"
+#define OVERTEMP_TIMEOUT 30
+
+static int overtemp_timer = OVERTEMP_TIMEOUT;
+
static const struct popup_ops overheat_ops;
static const struct popup_ops overheat_poweroff_warning_ops;
static void register_handlers(const struct popup_ops *ops);
if (index == 2) {
text = _(items[2]);
- snprintf(buffer, sizeof(buffer), text, 30);
+ snprintf(buffer, sizeof(buffer), text, overtemp_timer);
return strdup(buffer);
} else return strdup(_(items[index]));
ecore_timer_del(timer);
}
+static Eina_Bool update_overtemp_time(Evas_Object *label)
+{
+ overtemp_timer--;
+
+ if (overtemp_timer < 0) {
+ overtemp_timer = OVERTEMP_TIMEOUT;
+ return ECORE_CALLBACK_CANCEL;
+ } else {
+ elm_object_text_set(label, gl_text_get(2));
+ return ECORE_CALLBACK_RENEW;
+ }
+}
+
static void unregister_handlers(const struct popup_ops *ops)
{
return;
static void register_handlers(const struct popup_ops *ops)
{
- return;
+ return;
}
static void overheat_poweroff(const struct popup_ops *ops)
elm_object_style_set(label2, "popup/default");
elm_label_line_wrap_set(label2, ELM_WRAP_MIXED);
elm_object_text_set(label2, gl_text_get(2));
+
+ /* set timer */
+ if (!ecore_timer_add(1, update_overtemp_time, label2)) {
+ _E("Fail to set timer");
+ return -EINVAL;
+ }
+
evas_object_size_hint_weight_set(label2, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(label2, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_show(label2);