plugin: battery: Replace battery function to syscommon resource driver call 53/312853/1
authorYunhee Seo <yuni.seo@samsung.com>
Fri, 31 May 2024 04:02:59 +0000 (13:02 +0900)
committerYunhee Seo <yuni.seo@samsung.com>
Mon, 17 Jun 2024 02:23:29 +0000 (11:23 +0900)
Before move plugin code to mobile plugin backend side, all functions
that depend on deviced must be replaced with syscommon resource driver function.
By removing the dependency, plugin code in deviced can be transferred to plugin backend.

Change-Id: I8b7e6c585ee400a10b54a9e00f51c1a9323b24bf
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
plugins/mobile/battery/battery-notification.c

index 1a0c327abb6270ee8e0645ec046d46f63f148d93..578d65a8fffd56f2f8e6762e1b8aa3085cf6b2a5 100644 (file)
@@ -56,6 +56,7 @@ static gboolean health_timer_cb(void *data)
        int ret = 0;
        enum syscommon_deviced_battery_health_type battery_health;
        char *battery_health_s = NULL;
+       bool battery_do_not_disturb = false;
 
        health_timer_reset();
 
@@ -81,13 +82,34 @@ static gboolean health_timer_cb(void *data)
        }
 
        syscommon_notifier_emit_notify(DEVICED_NOTIFIER_BATTERY_HEALTH, (void *)&battery_health);
-       battery_pm_change_internal(DEVICED_EVENT_MISC_POPUP, LCD_DIM);
-       display_lock_request_unlock_with_option(DEVICED_EVENT_MISC_POPUP, LCD_OFF, PM_SLEEP_MARGIN);
-       display_lock_request_lock_with_option(DEVICED_EVENT_MISC_POPUP, LCD_DIM, STAY_CUR_STATE, 0);
-       if (battery_health == SYSCOMMON_DEVICED_BATTERY_HEALTH_LOW)
-               battery_charge_err_low_act(NULL);
-       else if (battery_health == SYSCOMMON_DEVICED_BATTERY_HEALTH_HIGH)
-               battery_charge_err_high_act(NULL);
+       ret = syscommon_resman_get_resource_attr_bool(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_BATTERY),
+                       DEVICED_BATTERY_ATTR_BOOL_DO_NOT_DISTURB, &battery_do_not_disturb);
+       if (ret == 0 && !battery_do_not_disturb)
+               syscommon_resman_set_resource_attr_uint64_2(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_DISPLAY),
+                       DEVICED_DISPLAY_ATTR_TUPLE2_CURRENT_STATE_WITH_OPTION, DEVICED_EVENT_MISC_POPUP, SYSCOMMON_DEVICED_DISPLAY_STATE_DIM);
+
+       syscommon_resman_set_resource_attr_uint64_3(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_DISPLAY),
+               DEVICED_DISPLAY_ATTR_TUPLE3_UNLOCK_WITH_OPTION, DEVICED_EVENT_MISC_POPUP,
+               SYSCOMMON_DEVICED_DISPLAY_STATE_OFF, DEVICED_DISPLAY_LOCK_SLEEP_MARGIN);
+
+       syscommon_resman_set_resource_attr_uint64_4(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_DISPLAY),
+               DEVICED_DISPLAY_ATTR_TUPLE4_LOCK_WITH_OPTION, DEVICED_EVENT_MISC_POPUP,
+               SYSCOMMON_DEVICED_DISPLAY_STATE_DIM, DEVICED_DISPLAY_STATE_STAY_CUR_STATE, 0);
+
+       if (battery_health == SYSCOMMON_DEVICED_BATTERY_HEALTH_LOW) {
+               syscommon_resman_set_resource_attr_uint64_4(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_DISPLAY),
+                       DEVICED_DISPLAY_ATTR_TUPLE4_LOCK_WITH_OPTION, DEVICED_EVENT_BATTERY_HEALTH_OVERCOOL,
+                       SYSCOMMON_DEVICED_DISPLAY_STATE_OFF, DEVICED_DISPLAY_STATE_STAY_CUR_STATE, 60000);
+               syscommon_resman_set_resource_attr_int(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_BATTERY),
+                       DEVICED_BATTERY_ATTR_INT_LOW_BATTERY_POPUP, SYSCOMMON_DEVICED_BATTERY_OPT_ERR_TEMP_LOW);
+       } else if (battery_health == SYSCOMMON_DEVICED_BATTERY_HEALTH_HIGH) {
+               syscommon_resman_set_resource_attr_uint64_4(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_DISPLAY),
+                       DEVICED_DISPLAY_ATTR_TUPLE4_LOCK_WITH_OPTION, DEVICED_EVENT_BATTERY_HEALTH_OVERHEAT,
+                       SYSCOMMON_DEVICED_DISPLAY_STATE_OFF, DEVICED_DISPLAY_STATE_STAY_CUR_STATE, 60000);
+               syscommon_resman_set_resource_attr_int(SYSCOMMON_RESOURCE_ID(DEVICED_RESOURCE_TYPE_BATTERY),
+                       DEVICED_BATTERY_ATTR_INT_LOW_BATTERY_POPUP, SYSCOMMON_DEVICED_BATTERY_OPT_ERR_TEMP_HIGH);
+       }
+
        return G_SOURCE_REMOVE;
 }