diff options
author | lokilee73 <changjoo.lee@samsung.com> | 2018-04-24 20:32:55 +0900 |
---|---|---|
committer | Hyotaek Shim <hyotaek.shim@samsung.com> | 2018-04-30 02:25:31 +0000 |
commit | 4425cc54326396ca773310f5ede0af7b0159bf53 (patch) | |
tree | 2639e9e00d9ba742a85745357781cdbb890bcd5f | |
parent | 2ba981c32cca7b0e6469e220ad0b6bf1aa15f571 (diff) | |
download | deviced-4425cc54326396ca773310f5ede0af7b0159bf53.tar.gz deviced-4425cc54326396ca773310f5ede0af7b0159bf53.tar.bz2 deviced-4425cc54326396ca773310f5ede0af7b0159bf53.zip |
Modify dbus for DIMsubmit/tizen/20180502.014710submit/tizen/20180430.051948accepted/tizen/unified/20180502.071144
Change-Id: I706f6f55accc9858939fc8ae3e621b489f637b15
Signed-off-by: lokilee73 <changjoo.lee@samsung.com>
-rwxr-xr-x | CMakeLists.txt | 1 | ||||
-rwxr-xr-x | packaging/deviced.spec | 1 | ||||
-rwxr-xr-x | src/display/device-interface.c | 10 | ||||
-rwxr-xr-x[-rw-r--r--] | src/display/device-interface.h | 2 | ||||
-rwxr-xr-x[-rw-r--r--] | src/display/display-dbus.c | 73 | ||||
-rwxr-xr-x[-rw-r--r--] | src/libdeviced/display.c | 1 |
6 files changed, 55 insertions, 33 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 7ef248b5..7000c7d8 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -170,6 +170,7 @@ SET(PKG_MODULES hwcommon mount capi-system-info + capi-system-device libsystemd libgdbus ) diff --git a/packaging/deviced.spec b/packaging/deviced.spec index ffcd0e70..a908a6d1 100755 --- a/packaging/deviced.spec +++ b/packaging/deviced.spec @@ -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} diff --git a/src/display/device-interface.c b/src/display/device-interface.c index 897906fc..1aa0c50c 100755 --- a/src/display/device-interface.c +++ b/src/display/device-interface.c @@ -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); diff --git a/src/display/device-interface.h b/src/display/device-interface.h index cd29d238..88e25cff 100644..100755 --- a/src/display/device-interface.h +++ b/src/display/device-interface.h @@ -34,13 +34,13 @@ #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 diff --git a/src/display/display-dbus.c b/src/display/display-dbus.c index 3e374cff..04fcbe74 100644..100755 --- a/src/display/display-dbus.c +++ b/src/display/display-dbus.c @@ -41,10 +41,10 @@ #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 }, diff --git a/src/libdeviced/display.c b/src/libdeviced/display.c index 5df5e3f2..63a7c5cb 100644..100755 --- a/src/libdeviced/display.c +++ b/src/libdeviced/display.c @@ -27,7 +27,6 @@ #define DISPLAY_MAX_BRIGHTNESS 100 #define DISPLAY_MIN_BRIGHTNESS 1 -#define DISPLAY_DIM_BRIGHTNESS 0 #define HOLDKEY_BLOCK_BIT 0x1 |