Modify dbus for DIM 04/177004/8 accepted/tizen/unified/20180502.071144 submit/tizen/20180430.051948 submit/tizen/20180502.014710
authorlokilee73 <changjoo.lee@samsung.com>
Tue, 24 Apr 2018 11:32:55 +0000 (20:32 +0900)
committerHyotaek Shim <hyotaek.shim@samsung.com>
Mon, 30 Apr 2018 02:25:31 +0000 (02:25 +0000)
Change-Id: I706f6f55accc9858939fc8ae3e621b489f637b15
Signed-off-by: lokilee73 <changjoo.lee@samsung.com>
CMakeLists.txt
packaging/deviced.spec
src/display/device-interface.c
src/display/device-interface.h [changed mode: 0644->0755]
src/display/display-dbus.c [changed mode: 0644->0755]
src/libdeviced/display.c [changed mode: 0644->0755]

index 7ef248b..7000c7d 100755 (executable)
@@ -170,6 +170,7 @@ SET(PKG_MODULES
        hwcommon
        mount
        capi-system-info
+       capi-system-device
        libsystemd
        libgdbus
 )
index ffcd0e7..a908a6d 100755 (executable)
@@ -36,6 +36,7 @@ BuildRequires:        pkgconfig(minizip)
 BuildRequires: pkgconfig(libkmod)
 BuildRequires: pkgconfig(libusbgx)
 BuildRequires: pkgconfig(libgdbus)
+BuildRequires: pkgconfig(capi-system-device)
 
 Requires: %{name}-tools = %{version}-%{release}
 %{?systemd_requires}
index 897906f..1aa0c50 100755 (executable)
@@ -104,7 +104,7 @@ static int bl_brt(int brightness, int delay)
        if (delay > 0)
                usleep(delay);
 
-       if (force_brightness > 0 && brightness != PM_DIM_BRIGHTNESS) {
+       if (force_brightness > 0) {
                _I("brightness(%d), force brightness(%d)",
                    brightness, force_brightness);
                brightness = force_brightness;
@@ -281,8 +281,14 @@ static int backlight_off(enum device_flags flags)
 static int backlight_dim(void)
 {
        int ret;
+       int brightness;
 
-       ret = bl_brt(PM_DIM_BRIGHTNESS, 0);
+       if (vconf_get_int(VCONFKEY_SETAPPL_LCD_DIM_BRIGHTNESS, &brightness) != 0) {
+               _E("Failed to get VCONFKEY_SETAPPL_LCD_DIM_BRIGHTNESS value");
+               return -EPERM;
+       }
+
+       ret = bl_brt(brightness, 0);
 #ifdef ENABLE_PM_LOG
        if (!ret)
                pm_history_save(PM_LOG_LCD_DIM, pm_cur_state);
old mode 100644 (file)
new mode 100755 (executable)
index cd29d23..88e25cf
 #define PM_MAX_BRIGHTNESS       100
 #define PM_MIN_BRIGHTNESS       1
 #define PM_DEFAULT_BRIGHTNESS  60
-#define PM_DIM_BRIGHTNESS      0
 
 #define DISP_INDEX_SHIFT       16
 #define DISP_CMD(prop, index)  ((index << DISP_INDEX_SHIFT) | prop)
 
 #define DEFAULT_DISPLAY_COUNT           1
 #define DEFAULT_DISPLAY_MAX_BRIGHTNESS  100
+#define DEFAULT_DISPLAY_MAX_DIM_BRIGHTNESS  50
 
 /*
  * Event type enumeration
old mode 100644 (file)
new mode 100755 (executable)
index 3e374cf..04fcbe7
 #include "dd-display.h"
 #include "display-actor.h"
 #include "display-ops.h"
+#include <device/display.h>
 
 #define SIGNAL_HOMESCREEN       "HomeScreen"
 
-#define DISPLAY_DIM_BRIGHTNESS  0
 #define DUMP_MODE_WATING_TIME   600000
 
 #define EXPIRED_POPUP_TYPE_POWER   "power_lock_expired"
@@ -338,11 +338,17 @@ GVariant *dbus_getmaxbrightness(GDBusConnection *conn,
        const gchar *sender, const gchar *path, const gchar *iface, const gchar *name,
        GVariant *param, GDBusMethodInvocation *invocation, gpointer user_data)
 {
-       int ret;
+       int ret, state;
 
        CHECK_POWEROFF();
 
-       ret = DEFAULT_DISPLAY_MAX_BRIGHTNESS;
+       g_variant_get(param, "(i)", &state);
+       if (state == DISPLAY_STATE_NORMAL)
+               ret = DEFAULT_DISPLAY_MAX_BRIGHTNESS;
+       else if (state == DISPLAY_STATE_SCREEN_DIM)
+               ret = DEFAULT_DISPLAY_MAX_DIM_BRIGHTNESS;
+       else
+               ret = -EINVAL;
 
        return g_variant_new("(i)", ret);
 }
@@ -364,11 +370,19 @@ GVariant *dbus_getbrightness(GDBusConnection *conn,
        const gchar *sender, const gchar *path, const gchar *iface, const gchar *name,
        GVariant *param, GDBusMethodInvocation *invocation, gpointer user_data)
 {
-       int brt, ret;
+       int brt = -1, state, ret;
 
        CHECK_POWEROFF();
 
-       ret = backlight_ops.get_brightness(&brt);
+       g_variant_get(param, "(i)", &state);
+
+       if (state == DISPLAY_STATE_NORMAL) {
+               ret = backlight_ops.get_brightness(&brt);
+       } else if (state == DISPLAY_STATE_SCREEN_DIM) {
+               ret = vconf_get_int(VCONFKEY_SETAPPL_LCD_DIM_BRIGHTNESS, &brt);
+       } else
+               ret = -EINVAL;
+
        if (ret >= 0)
                ret = brt;
 
@@ -381,7 +395,7 @@ GVariant *dbus_setbrightness(GDBusConnection *conn,
        const gchar *sender, const gchar *path, const gchar *iface, const gchar *name,
        GVariant *param, GDBusMethodInvocation *invocation, gpointer user_data)
 {
-       int brt, autobrt, ret, caps;
+       int state, brt, autobrt, ret = 0, caps;
 
        CHECK_POWEROFF();
 
@@ -393,13 +407,7 @@ GVariant *dbus_setbrightness(GDBusConnection *conn,
                goto error;
        }
 
-       g_variant_get(param, "(i)", &brt);
-
-       if (brt == DISPLAY_DIM_BRIGHTNESS) {
-               _E("application can not set this value(DIM VALUE:%d)", brt);
-               ret = -EPERM;
-               goto error;
-       }
+       g_variant_get(param, "(ii)", &state, &brt);
 
        if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &autobrt) != 0) {
                _E("Failed to get VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT value");
@@ -412,11 +420,24 @@ GVariant *dbus_setbrightness(GDBusConnection *conn,
                goto error;
        }
 
-       ret = backlight_ops.set_brightness(brt);
-       if (ret < 0)
-               goto error;
-       if (vconf_set_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, brt) != 0)
-               _E("Failed to set VCONFKEY_SETAPPL_LCD_BRIGHTNESS value");
+       if (state == DISPLAY_STATE_NORMAL) {
+               ret = backlight_ops.set_brightness(brt);
+               if (ret < 0)
+                       goto error;
+
+               if (vconf_set_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, brt) != 0)
+                       _E("Failed to set VCONFKEY_SETAPPL_LCD_BRIGHTNESS value");
+       } else if (state == DISPLAY_STATE_SCREEN_DIM) {
+               if (pm_cur_state == S_LCDDIM) {
+                       ret = backlight_ops.set_brightness(brt);
+                       if (ret < 0)
+                               goto error;
+               }
+
+               if (vconf_set_int(VCONFKEY_SETAPPL_LCD_DIM_BRIGHTNESS, brt) != 0)
+                       _E("Failed to set VCONFKEY_SETAPPL_LCD_DIM_BRIGHTNESS value");
+       } else
+               ret = -EINVAL;
 
        _I("set brightness %d, %d", brt, ret);
 
@@ -442,12 +463,6 @@ GVariant *dbus_holdbrightness(GDBusConnection *conn,
 
        g_variant_get(param, "(i)", &brt);
 
-       if (brt == DISPLAY_DIM_BRIGHTNESS) {
-               _E("application can not set this value(DIM VALUE:%d)", brt);
-               ret = -EPERM;
-               goto error;
-       }
-
        if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &autobrt) != 0) {
                _E("Failed to get VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT value");
                autobrt = SETTING_BRIGHTNESS_AUTOMATIC_OFF;
@@ -1018,17 +1033,17 @@ static const dbus_method_s dbus_methods[] = {
        { "unlockstate",     "ss",   "i", dbus_unlockstate },
        { "changestate",      "s",   "i", dbus_changestate },
        { "ChangeState",      "s",   "i", dbus_changestate },
-       { "getbrightness",   NULL,   "i", dbus_getbrightness }, /* deprecated */
-       { "setbrightness",    "i",   "i", dbus_setbrightness }, /* deprecated */
+       { "getbrightness",    "i",   "i", dbus_getbrightness }, /* deprecated */
+       { "setbrightness",   "ii",   "i", dbus_setbrightness }, /* deprecated */
        { "setframerate",    "ii",   "i", dbus_setrefreshrate },        /* deprecated */
        { "setautobrightnessmin", "i", "i", dbus_setautobrightnessmin },
        { "setlcdtimeout",  "iii",   "i", dbus_setlcdtimeout },
        { "LockScreenBgOn",   "s",   "i", dbus_lockscreenbgon },
        { "GetDisplayCount", NULL,   "i", dbus_getdisplaycount },
-       { "GetMaxBrightness", NULL,  "i", dbus_getmaxbrightness },
+       { "GetMaxBrightness", "i",  "i", dbus_getmaxbrightness },
        { "SetMaxBrightness", "i",   "i", dbus_setmaxbrightness },
-       { "GetBrightness",   NULL,   "i", dbus_getbrightness },
-       { "SetBrightness",    "i",   "i", dbus_setbrightness },
+       { "GetBrightness",    "i",   "i", dbus_getbrightness },
+       { "SetBrightness",   "ii",   "i", dbus_setbrightness },
        { "HoldBrightness",   "i",   "i", dbus_holdbrightness },
        { "ReleaseBrightness", NULL, "i", dbus_releasebrightness },
        { "SetRefreshRate",  "ii",   "i", dbus_setrefreshrate },
old mode 100644 (file)
new mode 100755 (executable)
index 5df5e3f..63a7c5c
@@ -27,7 +27,6 @@
 
 #define DISPLAY_MAX_BRIGHTNESS  100
 #define DISPLAY_MIN_BRIGHTNESS  1
-#define DISPLAY_DIM_BRIGHTNESS  0
 
 #define HOLDKEY_BLOCK_BIT              0x1